Boundary conditions control in ORCA2
Eugene Kazantsev
To cite this version:
Eugene Kazantsev. Boundary conditions control in ORCA2. Journee thematique - Que peuventattendre les modelisateurs de l’assimilation ?, Feb 2013, Paris, France. 2013. <hal-00925863>
HAL Id: hal-00925863
https://hal.inria.fr/hal-00925863
Submitted on 8 Jan 2014
HAL is a multi-disciplinary open accessarchive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come fromteaching and research institutions in France orabroad, or from public or private research centers.
L’archive ouverte pluridisciplinaire HAL, estdestinee au depot et a la diffusion de documentsscientifiques de niveau recherche, publies ou non,emanant des etablissements d’enseignement et derecherche francais ou etrangers, des laboratoirespublics ou prives.
Boundary conditions control in ORCA2
Eugene Kazantsev
INRIA, Moise
Journee thematique“Que peuvent attendre les modelisateurs de l’assimilation de donnees ?”
Paris, le 12 fevrier 2013
Eugene Kazantsev Boundary conditions control for ORCA2 page 1 of 19
Model configuration
ORCA-2 configuration of NEMO
182× 149× 31 nodes in curvilinear (x, y) coordinates;
z levels with partial steps at the bottom;
leap-frog scheme with Asselin filter;
implicit surface pressure gradient with External Gravity Waves filter;
implicit vertical diffusion with TKE Turbulent Closure Scheme;
Solar Radiation + Geothermal Heating + BBL + Surfaceevaporation/precipitation;
surface wind stress.
Eugene Kazantsev Boundary conditions control for ORCA2 page 2 of 19
Space discretization on the C-grid
∂u
∂t=
(
SxSyv
)
Sy(ω + f)−DxSxu2 + Syv2
2− Sz
(
SxwDzu
)
+DxAhuξ +DyA
huω +
+ g
∫ z
0DxSzρ(x, y, ζ)dζ +Dzz(A
zuu) + gDx(η + Tcφ)
∂T
∂t= −Dx(uSxT )−Dy(vSyT )−Dz(wSzT ) +Ah
T
(
DxDxT +DyDyT
)
+
+ Dzz(AzTT ) + Solar Radiation + Geothermal Heating + BBL
ξ = Dxu+Dyv, ω = Dyu−Dxv, w =
∫ z
Hξ(x, y, ζ)dζ;w(x, y,H) = 0
Interpolations and Derivatives
(Sw)k+1/2 =wk+1 + wk
2k = 1, . . . ,K − 1
(DT )k =Tk+1/2 − Tk−1/2
hk = 1, . . . ,K − 1
Eugene Kazantsev Boundary conditions control for ORCA2 page 3 of 19
Space discretization on the C-grid
∂u
∂t=
(
SxSyv
)
Sy(ω + f)−DxSxu2 + Syv2
2− Sz
(
SxwDzu
)
+DxAhuξ +DyA
huω +
+ g
∫ z
0DxSzρ(x, y, ζ)dζ +Dzz(A
zuu) + gDx(η + Tcφ)
∂T
∂t= −Dx(uSxT )−Dy(vSyT )−Dz(wSzT ) +Ah
T
(
DxDxT +DyDyT
)
+
+ Dzz(AzTT ) + Solar Radiation + Geothermal Heating + BBL
ξ = Dxu+Dyv, ω = Dyu−Dxv, w =
∫ z
Hξ(x, y, ζ)dζ;w(x, y,H) = 0
Interpolations and Derivatives Modified Near the boundary
(Sw)k+1/2 =wk+1 + wk
2, k = 1, . . . ,K − 2, (Sw)1/2 = αS
0 + αS1w0 + αS
2w1
(DT )k =Tk+1/2 − Tk−1/2
h, i = 2, . . . ,K − 2, (DT )1 = αD
0 +αD1 T1/2 + αD
2 T3/2
h
· · ·w0 w1 w2 w3 wKwK−1wK−2wK−3
❜
T1/2❜
T3/2❜
T5/2❜
T7/2❜
TK−1/2❜
TK−3/2❜
TK−5/2
Eugene Kazantsev Boundary conditions control for ORCA2 page 3 of 19
Space discretization on the C-grid
∂u
∂t=
(
SxSyv
)
Sy(ω + f)−DxSxu2 + Syv2
2− Sz
(
SxwDzu
)
+DxAhuξ +DyA
huω +
+ g
∫ z
0DxSzρ(x, y, ζ)dζ +Dzz(A
zuu) + gDx(η + Tcφ)
∂T
∂t= −Dx(uSxT )−Dy(vSyT )−Dz(wSzT ) +Ah
T
(
DxDxT +DyDyT
)
+
+ Dzz(AzTT ) + Solar Radiation + Geothermal Heating + BBL
ξ = Dxu+Dyv, ω = Dyu−Dxv, w =
∫ z
Hξ(x, y, ζ)dζ;w(x, y,H) = α0(x, y)
Vertical velocity
wi,j,K−1 = αwb
0 − αwb
1 hzi,j,K−1/2ξi,j,K−1/2
wi,j,k−1 = wi,j,k − hzi,j,k−1/2ξi,j,k−1/2 ∀k : 2 ≤ k ≤ K − 1
wi,j,0 = wi,j,1 + αws
0 − αws
1 hzi,j,1/2ξi,j,1/2
· · ·w0
αw0
αw1 hz1/2︷ ︸︸ ︷
w1 w2 w3 wK
+αw0αw
1 hzK−1/2︷ ︸︸ ︷
wK−1wK−2wK−3
Eugene Kazantsev Boundary conditions control for ORCA2 page 3 of 19
Space discretization on the C-grid
Vertical diffusion
∂
∂zA
zu
∂u
∂zis replaced by
(
Dzzu
)
i,j,1/2=
(Azu)1
hz1hz1/2
(αDzzUs
2 u3/2 − αDzzUs
1 u1/2)
(
Dzzu
)
i,j,k−1/2=
1
hzk−1/2
( (Azu)k
hzk
(uk+1/2 − uk−1/2) −(Az
u)k−1
hzk−1
(uk−1/2 − uk−3/2)
)
∀k : 2
(
Dzzu
)
i,j,K−1/2=
1
hzK−1/2
[
αDzzUb
2
(Azu)K−1
hzK−1
uK−1/2 − αDzzUb
1
( (Azu)K
hzK
+(Az
u)K−1
hzK−1
)
uK−3/
∂u
∂z
∣∣∣∣w0
= αDzzUs
0 +τx
hz1ρ0
,∂v
∂z
∣∣∣∣w0
= αDzzUs
0 +τy
hz1ρ0
,∂T
∂z
∣∣∣∣w0
=∂S
∂z
∣∣∣∣w0
= αDzzTs
0
u|bottom = v|bottom = αDzzUb
0 T |bottom = S|bottom = αDzzTb
0 (1)
· · ·
hz1/2︷ ︸︸ ︷
hz3/2︷ ︸︸ ︷
hz5/2︷ ︸︸ ︷
hzK−1/2︷ ︸︸ ︷
hzK−3/2︷ ︸︸ ︷
❜
u1/2
︸ ︷︷ ︸
hz1
❜
u3/2
︸ ︷︷ ︸
hz2
❜
u5/2
︸ ︷︷ ︸
hz3
❜
u7/2❜
uK−1/2
︸ ︷︷ ︸
hzK−1
❜
uK−3/2
︸ ︷︷ ︸
hzK−2
❜
uK−5/2
Eugene Kazantsev Boundary conditions control for ORCA2 page 3 of 19
Adjoint
The models solution depend on initial and boundary conditions :
∂T
∂t= −Dx(uSxT )−Dy(vSyT )−D
(α)z (wS
(α)z T )+Ah
T
(
DxxT+DyyT
)
+Dzz(α)(AzT )T
The model x(t) = M0,t(x0, α)
We calculate the derivatives and their adjoints with respect to
x0, α
by TAPENADE 3.6 (Tropics team, INRIA) that allows us
to avoid a HUGE development/coding (a double of the classical one, at least)
to obtain immediately the derivative with respect to any parameter we want.
Eugene Kazantsev Boundary conditions control for ORCA2 page 4 of 19
Adjoint
TAPENADE 3.6 (Tropics team, INRIA)with the Memory Usage Optimization:
search for push/pop
CALL PUSHREAL8ARRAY(sold, nx*ny*nz)CALL PUSHREAL8ARRAY(told, nx*ny*nz)CALL PUSHREAL8ARRAY(vold, nx*ny*nz)CALL PUSHREAL8ARRAY(uold, nx*ny*nz)CALL PUSHREAL8ARRAY(ssh, nx*ny)CALL PUSHREAL8ARRAY(s, nx*ny*nz)CALL PUSHREAL8ARRAY(t, nx*ny*nz)CALL PUSHREAL8ARRAY(v, nx*ny*nz)CALL PUSHREAL8ARRAY(u, nx*ny*nz)
replace by
call push uvts(u,v,t,s,ssh)
Procedure push/pop uvts(u,v,t,s,ssh):
does not push n− 1 step and pops appropriate values (divides the requiredmemory by 2)
does not push u, v, t, s in lower level routines
does not push values on continents (divides by 2)
pushes values in Real*4 format (divides by 2)
eventually pushes only odd timesteps and interpolate when poping (dividesby 2)
Total reduction of required memory is up to 25 times.10 hours window =⇒ 10 days window.
Eugene Kazantsev Boundary conditions control for ORCA2 page 4 of 19
Data
ECMWF data issued from Jason-1 and Envisat altimetric missions andENACT/ENSEMBLES data banque.
January, 1, 2006.
Difference between observations and background during the 1st of January.
Eugene Kazantsev Boundary conditions control for ORCA2 page 5 of 19
Cost function
The model: xN = M0,N (x0, α) with x = (u, v, T, S, ssh)T
Cost function J
J = ‖x0 − xbgr‖2B−1 + ‖α− αbgr‖
2B−1 +
+N∑
n=0
tn‖HM0,n(x0, α)− yn‖2R−1
Matrices: B−1 = diag(10−4),
R−1 = diag(1/σu, 1/σv , 1/σT , 1/σS , 1/σssh) where σ2u = 1
Nobs
∑(uobs − ubgr)
2
Minimization is performed by M1QN3 (JC Gilbert, C.Lemarechal)
Data Assimilation – Forecast
Assimilation window — 10 days (Jan. 1-10, 2006),Test time — 20 or 30 days (Jan. 1-31, 2006).
Eugene Kazantsev Boundary conditions control for ORCA2 page 6 of 19
Distance Model-Observations
The model: x(t) = M0,t(x0, α) with x = (u, v, T, S, ssh)T
Distance: ξ(t) =t∑
n=0
‖HM0,n(x0, α)− yn‖R−1
Convergence of J and evolution of ξ
20 Cost function calls with T = 5 days and 40 calls with T = 10 days.
Eugene Kazantsev Boundary conditions control for ORCA2 page 7 of 19
Optimal IC and Optimal BCz
SSH, North Atlantic, January,1-30 2006.
Optimal IC Optimal BCz
Eugene Kazantsev Boundary conditions control for ORCA2 page 8 of 19
Optimal IC and Optimal BCz
SSH, North Pacific, January,1-30 2006.
Optimal IC Optimal BCz
Eugene Kazantsev Boundary conditions control for ORCA2 page 9 of 19
BC for the vertical velocity
Modified formula
wi,j,K−1 = αwb
0 − αwb
2 hzi,j,K−1/2ξi,j,K−1/2
wi,j,k−1 = wi,j,k − hzi,j,k−1/2ξi,j,k−1/2 ∀k : 1 ≤ k ≤ K − 2
wi,j,0 = wi,j,1 + αws
0 − αws
2 hzi,j,1/2ξi,j,1/2
Eugene Kazantsev Boundary conditions control for ORCA2 page 10 of 19
BC for the vertical velocity
α for the vertical velocity w. North Atlantic.
α0 on the surface α2 on the surface
α0 on the bottom α2 on the bottomEugene Kazantsev Boundary conditions control for ORCA2 page 10 of 19
Vertical velocity
North Atlantic, January, 30, 2006, surface
Original model Optimal BCz
Eugene Kazantsev Boundary conditions control for ORCA2 page 11 of 19
Vertical velocity
North Atlantic, January, 30, 2006, y − z section
Original model Optimal BCz
Eugene Kazantsev Boundary conditions control for ORCA2 page 11 of 19
Vertical velocity
North Atlantic, January, 30, 2006, x− z section
Original model Optimal BCz
Eugene Kazantsev Boundary conditions control for ORCA2 page 11 of 19
Tourbillon
Levels z = 28 and z = 29
Velocity u Velocity v Velocity w
Velocity u Velocity v Velocity w
Eugene Kazantsev Boundary conditions control for ORCA2 page 12 of 19
α0 for the operator Dzzu
∂u
∂z
∣∣∣∣w0
= αDzzUs
0 +τx
hz1ρ0,
∂v
∂z
∣∣∣∣w0
= αDzzUs
0 +τy
hz1ρ0,
u|bottom = v|bottom = αDzzUb
0
North Atlantic
Surface Bottom
Eugene Kazantsev Boundary conditions control for ORCA2 page 13 of 19
Velocity components
North Atlantic, January, 30, 2006, Velocity u, y − z section
Original model Optimal BCzEugene Kazantsev Boundary conditions control for ORCA2 page 14 of 19
It is not an artefact.
North Atlantic
Modification of the SSH in the North Atlantic is strongly related to the boundaryconditions of u and v especially on the bottom.
Eugene Kazantsev Boundary conditions control for ORCA2 page 15 of 19
Restrained control
Only α0 on the Bottom for u and v, only in the Vertical diffusion
∂
∂zA
zu
∂u
∂zis replaced by
(
Dzzu
)
i,j,1/2=
(Azu)1
hz1hz1/2
(u3/2−u1/2)
(
Dzzu
)
i,j,k−1/2=
1
hzk−1/2
( (Azu)k
hzk
(uk+1/2 − uk−1/2) −(Az
u)k−1
hzk−1
(uk−1/2 − uk−3/2)
)
∀k : 2
(
Dzzu
)
i,j,K−1/2=
1
hzK−1/2
[ (Azu)K−1
hzK−1
uK−1/2 −
( (Azu)K
hzK
+(Az
u)K−1
hzK−1
)
uK−3/2
]
u|bottom = αu0 v|bottom = α
v0 (2)
Control space dimension
Initial conditions: 1 707 245Full vertical boundary: 1 197 792Only bottom: 33 272
Eugene Kazantsev Boundary conditions control for ORCA2 page 16 of 19
SSH in the restrained control experiment
North Atlantic
Eugene Kazantsev Boundary conditions control for ORCA2 page 17 of 19
SSH in the restrained control experiment
North Pacific
Eugene Kazantsev Boundary conditions control for ORCA2 page 18 of 19
Que peuvent attendre les modelisateurs de l’assimilation de donnees ?
Extending the set of control parameters we can
find a way to compensate model errors
showing the most influent parameter and the most important geographicalregions.
Automatic adjoint code generation helps us
to generate TLM/AM almost immediately,
to avoid a HUGE development/coding,
to obtain immediately the derivative with respect to any parameter we want.
http://www-ljk.imag.fr/membres/Kazantsev/orca2/index.html
Eugene Kazantsev Boundary conditions control for ORCA2 page 19 of 19