1 | \documentclass[../main/NEMO_manual]{subfiles} |
---|
2 | |
---|
3 | \begin{document} |
---|
4 | % ================================================================ |
---|
5 | % Chapter 1 ——— Ocean Tracers (TRA) |
---|
6 | % ================================================================ |
---|
7 | \chapter{Ocean Tracers (TRA)} |
---|
8 | \label{chap:TRA} |
---|
9 | |
---|
10 | \minitoc |
---|
11 | |
---|
12 | % missing/update |
---|
13 | % traqsr: need to coordinate with SBC module |
---|
14 | |
---|
15 | %STEVEN : is the use of the word "positive" to describe a scheme enough, or should it be "positive definite"? I added a comment to this effect on some instances of this below |
---|
16 | |
---|
17 | Using the representation described in \autoref{chap:DOM}, several semi -discrete space forms of |
---|
18 | the tracer equations are available depending on the vertical coordinate used and on the physics used. |
---|
19 | In all the equations presented here, the masking has been omitted for simplicity. |
---|
20 | One must be aware that all the quantities are masked fields and that each time a mean or |
---|
21 | difference operator is used, the resulting field is multiplied by a mask. |
---|
22 | |
---|
23 | The two active tracers are potential temperature and salinity. |
---|
24 | Their prognostic equations can be summarized as follows: |
---|
25 | \[ |
---|
26 | \text{NXT} = \text{ADV} + \text{LDF} + \text{ZDF} + \text{SBC} |
---|
27 | + \{\text{QSR}, \text{BBC}, \text{BBL}, \text{DMP}\} |
---|
28 | \] |
---|
29 | |
---|
30 | NXT stands for next, referring to the time-stepping. |
---|
31 | From left to right, the terms on the rhs of the tracer equations are the advection (ADV), |
---|
32 | the lateral diffusion (LDF), the vertical diffusion (ZDF), the contributions from the external forcings |
---|
33 | (SBC: Surface Boundary Condition, QSR: penetrative Solar Radiation, and BBC: Bottom Boundary Condition), |
---|
34 | the contribution from the bottom boundary Layer (BBL) parametrisation, and an internal damping (DMP) term. |
---|
35 | The terms QSR, BBC, BBL and DMP are optional. |
---|
36 | The external forcings and parameterisations require complex inputs and complex calculations |
---|
37 | (\eg bulk formulae, estimation of mixing coefficients) that are carried out in the SBC, |
---|
38 | LDF and ZDF modules and described in \autoref{chap:SBC}, \autoref{chap:LDF} and |
---|
39 | \autoref{chap:ZDF}, respectively. |
---|
40 | Note that \mdl{tranpc}, the non-penetrative convection module, although located in |
---|
41 | the \path{./src/OCE/TRA} directory as it directly modifies the tracer fields, |
---|
42 | is described with the model vertical physics (ZDF) together with |
---|
43 | other available parameterization of convection. |
---|
44 | |
---|
45 | In the present chapter we also describe the diagnostic equations used to compute the sea-water properties |
---|
46 | (density, Brunt-V\"{a}is\"{a}l\"{a} frequency, specific heat and freezing point with |
---|
47 | associated modules \mdl{eosbn2} and \mdl{phycst}). |
---|
48 | |
---|
49 | The different options available to the user are managed by namelist logicals or CPP keys. |
---|
50 | For each equation term \textit{TTT}, the namelist logicals are \textit{ln\_traTTT\_xxx}, |
---|
51 | where \textit{xxx} is a 3 or 4 letter acronym corresponding to each optional scheme. |
---|
52 | The CPP key (when it exists) is \key{traTTT}. |
---|
53 | The equivalent code can be found in the \textit{traTTT} or \textit{traTTT\_xxx} module, |
---|
54 | in the \path{./src/OCE/TRA} directory. |
---|
55 | |
---|
56 | The user has the option of extracting each tendency term on the RHS of the tracer equation for output |
---|
57 | (\np{ln\_tra\_trd} or \np{ln\_tra\_mxl}\forcode{ = .true.}), as described in \autoref{chap:DIA}. |
---|
58 | |
---|
59 | % ================================================================ |
---|
60 | % Tracer Advection |
---|
61 | % ================================================================ |
---|
62 | \section[Tracer advection (\textit{traadv.F90})] |
---|
63 | {Tracer advection (\protect\mdl{traadv})} |
---|
64 | \label{sec:TRA_adv} |
---|
65 | %------------------------------------------namtra_adv----------------------------------------------------- |
---|
66 | |
---|
67 | \nlst{namtra_adv} |
---|
68 | %------------------------------------------------------------------------------------------------------------- |
---|
69 | |
---|
70 | When considered (\ie when \np{ln\_traadv\_NONE} is not set to \forcode{.true.}), |
---|
71 | the advection tendency of a tracer is expressed in flux form, |
---|
72 | \ie as the divergence of the advective fluxes. |
---|
73 | Its discrete expression is given by : |
---|
74 | \begin{equation} |
---|
75 | \label{eq:tra_adv} |
---|
76 | ADV_\tau = - \frac{1}{b_t} \Big( \delta_i [ e_{2u} \, e_{3u} \; u \; \tau_u] |
---|
77 | + \delta_j [ e_{1v} \, e_{3v} \; v \; \tau_v] \Big) |
---|
78 | - \frac{1}{e_{3t}} \delta_k [w \; \tau_w] |
---|
79 | \end{equation} |
---|
80 | where $\tau$ is either T or S, and $b_t = e_{1t} \, e_{2t} \, e_{3t}$ is the volume of $T$-cells. |
---|
81 | The flux form in \autoref{eq:tra_adv} implicitly requires the use of the continuity equation. |
---|
82 | Indeed, it is obtained by using the following equality: $\nabla \cdot (\vect U \, T) = \vect U \cdot \nabla T$ which |
---|
83 | results from the use of the continuity equation, $\partial_t e_3 + e_3 \; \nabla \cdot \vect U = 0$ |
---|
84 | (which reduces to $\nabla \cdot \vect U = 0$ in linear free surface, \ie \np{ln\_linssh}\forcode{ = .true.}). |
---|
85 | Therefore it is of paramount importance to design the discrete analogue of the advection tendency so that |
---|
86 | it is consistent with the continuity equation in order to enforce the conservation properties of |
---|
87 | the continuous equations. |
---|
88 | In other words, by setting $\tau = 1$ in (\autoref{eq:tra_adv}) we recover the discrete form of |
---|
89 | the continuity equation which is used to calculate the vertical velocity. |
---|
90 | %>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
91 | \begin{figure}[!t] |
---|
92 | \begin{center} |
---|
93 | \includegraphics[width=\textwidth]{Fig_adv_scheme} |
---|
94 | \caption{ |
---|
95 | \protect\label{fig:adv_scheme} |
---|
96 | Schematic representation of some ways used to evaluate the tracer value at $u$-point and |
---|
97 | the amount of tracer exchanged between two neighbouring grid points. |
---|
98 | Upsteam biased scheme (ups): |
---|
99 | the upstream value is used and the black area is exchanged. |
---|
100 | Piecewise parabolic method (ppm): |
---|
101 | a parabolic interpolation is used and the black and dark grey areas are exchanged. |
---|
102 | Monotonic upstream scheme for conservative laws (muscl): |
---|
103 | a parabolic interpolation is used and black, dark grey and grey areas are exchanged. |
---|
104 | Second order scheme (cen2): |
---|
105 | the mean value is used and black, dark grey, grey and light grey areas are exchanged. |
---|
106 | Note that this illustration does not include the flux limiter used in ppm and muscl schemes. |
---|
107 | } |
---|
108 | \end{center} |
---|
109 | \end{figure} |
---|
110 | %>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
111 | |
---|
112 | The key difference between the advection schemes available in \NEMO is the choice made in space and |
---|
113 | time interpolation to define the value of the tracer at the velocity points |
---|
114 | (\autoref{fig:adv_scheme}). |
---|
115 | |
---|
116 | Along solid lateral and bottom boundaries a zero tracer flux is automatically specified, |
---|
117 | since the normal velocity is zero there. |
---|
118 | At the sea surface the boundary condition depends on the type of sea surface chosen: |
---|
119 | |
---|
120 | \begin{description} |
---|
121 | \item[linear free surface:] |
---|
122 | (\np{ln\_linssh}\forcode{ = .true.}) |
---|
123 | the first level thickness is constant in time: |
---|
124 | the vertical boundary condition is applied at the fixed surface $z = 0$ rather than on |
---|
125 | the moving surface $z = \eta$. |
---|
126 | There is a non-zero advective flux which is set for all advection schemes as |
---|
127 | $\tau_w|_{k = 1/2} = T_{k = 1}$, \ie the product of surface velocity (at $z = 0$) by |
---|
128 | the first level tracer value. |
---|
129 | \item[non-linear free surface:] |
---|
130 | (\np{ln\_linssh}\forcode{ = .false.}) |
---|
131 | convergence/divergence in the first ocean level moves the free surface up/down. |
---|
132 | There is no tracer advection through it so that the advective fluxes through the surface are also zero. |
---|
133 | \end{description} |
---|
134 | |
---|
135 | In all cases, this boundary condition retains local conservation of tracer. |
---|
136 | Global conservation is obtained in non-linear free surface case, but \textit{not} in the linear free surface case. |
---|
137 | Nevertheless, in the latter case, it is achieved to a good approximation since |
---|
138 | the non-conservative term is the product of the time derivative of the tracer and the free surface height, |
---|
139 | two quantities that are not correlated \citep{roullet.madec_JGR00, griffies.pacanowski.ea_MWR01, campin.adcroft.ea_OM04}. |
---|
140 | |
---|
141 | The velocity field that appears in (\autoref{eq:tra_adv} and \autoref{eq:tra_adv_zco?}) is |
---|
142 | the centred (\textit{now}) \textit{effective} ocean velocity, \ie the \textit{eulerian} velocity |
---|
143 | (see \autoref{chap:DYN}) plus the eddy induced velocity (\textit{eiv}) and/or |
---|
144 | the mixed layer eddy induced velocity (\textit{eiv}) when those parameterisations are used |
---|
145 | (see \autoref{chap:LDF}). |
---|
146 | |
---|
147 | Several tracer advection scheme are proposed, namely a $2^{nd}$ or $4^{th}$ order centred schemes (CEN), |
---|
148 | a $2^{nd}$ or $4^{th}$ order Flux Corrected Transport scheme (FCT), a Monotone Upstream Scheme for |
---|
149 | Conservative Laws scheme (MUSCL), a $3^{rd}$ Upstream Biased Scheme (UBS, also often called UP3), |
---|
150 | and a Quadratic Upstream Interpolation for Convective Kinematics with Estimated Streaming Terms scheme (QUICKEST). |
---|
151 | The choice is made in the \ngn{namtra\_adv} namelist, by setting to \forcode{.true.} one of |
---|
152 | the logicals \textit{ln\_traadv\_xxx}. |
---|
153 | The corresponding code can be found in the \textit{traadv\_xxx.F90} module, where |
---|
154 | \textit{xxx} is a 3 or 4 letter acronym corresponding to each scheme. |
---|
155 | By default (\ie in the reference namelist, \textit{namelist\_ref}), all the logicals are set to \forcode{.false.}. |
---|
156 | If the user does not select an advection scheme in the configuration namelist (\textit{namelist\_cfg}), |
---|
157 | the tracers will \textit{not} be advected! |
---|
158 | |
---|
159 | Details of the advection schemes are given below. |
---|
160 | The choosing an advection scheme is a complex matter which depends on the model physics, model resolution, |
---|
161 | type of tracer, as well as the issue of numerical cost. In particular, we note that |
---|
162 | |
---|
163 | \begin{enumerate} |
---|
164 | \item |
---|
165 | CEN and FCT schemes require an explicit diffusion operator while the other schemes are diffusive enough so that |
---|
166 | they do not necessarily need additional diffusion; |
---|
167 | \item |
---|
168 | CEN and UBS are not \textit{positive} schemes |
---|
169 | \footnote{negative values can appear in an initially strictly positive tracer field which is advected}, |
---|
170 | implying that false extrema are permitted. |
---|
171 | Their use is not recommended on passive tracers; |
---|
172 | \item |
---|
173 | It is recommended that the same advection-diffusion scheme is used on both active and passive tracers. |
---|
174 | \end{enumerate} |
---|
175 | |
---|
176 | Indeed, if a source or sink of a passive tracer depends on an active one, the difference of treatment of active and |
---|
177 | passive tracers can create very nice-looking frontal structures that are pure numerical artefacts. |
---|
178 | Nevertheless, most of our users set a different treatment on passive and active tracers, |
---|
179 | that's the reason why this possibility is offered. |
---|
180 | We strongly suggest them to perform a sensitivity experiment using a same treatment to assess the robustness of |
---|
181 | their results. |
---|
182 | |
---|
183 | % ------------------------------------------------------------------------------------------------------------- |
---|
184 | % 2nd and 4th order centred schemes |
---|
185 | % ------------------------------------------------------------------------------------------------------------- |
---|
186 | \subsection[CEN: Centred scheme (\forcode{ln_traadv_cen = .true.})] |
---|
187 | {CEN: Centred scheme (\protect\np{ln\_traadv\_cen}\forcode{ = .true.})} |
---|
188 | \label{subsec:TRA_adv_cen} |
---|
189 | |
---|
190 | % 2nd order centred scheme |
---|
191 | |
---|
192 | The centred advection scheme (CEN) is used when \np{ln\_traadv\_cen}\forcode{ = .true.}. |
---|
193 | Its order ($2^{nd}$ or $4^{th}$) can be chosen independently on horizontal (iso-level) and vertical direction by |
---|
194 | setting \np{nn\_cen\_h} and \np{nn\_cen\_v} to $2$ or $4$. |
---|
195 | CEN implementation can be found in the \mdl{traadv\_cen} module. |
---|
196 | |
---|
197 | In the $2^{nd}$ order centred formulation (CEN2), the tracer at velocity points is evaluated as the mean of |
---|
198 | the two neighbouring $T$-point values. |
---|
199 | For example, in the $i$-direction : |
---|
200 | \begin{equation} |
---|
201 | \label{eq:tra_adv_cen2} |
---|
202 | \tau_u^{cen2} = \overline T ^{i + 1/2} |
---|
203 | \end{equation} |
---|
204 | |
---|
205 | CEN2 is non diffusive (\ie it conserves the tracer variance, $\tau^2$) but dispersive |
---|
206 | (\ie it may create false extrema). |
---|
207 | It is therefore notoriously noisy and must be used in conjunction with an explicit diffusion operator to |
---|
208 | produce a sensible solution. |
---|
209 | The associated time-stepping is performed using a leapfrog scheme in conjunction with an Asselin time-filter, |
---|
210 | so $T$ in (\autoref{eq:tra_adv_cen2}) is the \textit{now} tracer value. |
---|
211 | |
---|
212 | Note that using the CEN2, the overall tracer advection is of second order accuracy since |
---|
213 | both (\autoref{eq:tra_adv}) and (\autoref{eq:tra_adv_cen2}) have this order of accuracy. |
---|
214 | |
---|
215 | % 4nd order centred scheme |
---|
216 | |
---|
217 | In the $4^{th}$ order formulation (CEN4), tracer values are evaluated at u- and v-points as |
---|
218 | a $4^{th}$ order interpolation, and thus depend on the four neighbouring $T$-points. |
---|
219 | For example, in the $i$-direction: |
---|
220 | \begin{equation} |
---|
221 | \label{eq:tra_adv_cen4} |
---|
222 | \tau_u^{cen4} = \overline{T - \frac{1}{6} \, \delta_i \Big[ \delta_{i + 1/2}[T] \, \Big]}^{\,i + 1/2} |
---|
223 | \end{equation} |
---|
224 | In the vertical direction (\np{nn\_cen\_v}\forcode{ = 4}), |
---|
225 | a $4^{th}$ COMPACT interpolation has been prefered \citep{demange_phd14}. |
---|
226 | In the COMPACT scheme, both the field and its derivative are interpolated, which leads, after a matrix inversion, |
---|
227 | spectral characteristics similar to schemes of higher order \citep{lele_JCP92}. |
---|
228 | |
---|
229 | Strictly speaking, the CEN4 scheme is not a $4^{th}$ order advection scheme but |
---|
230 | a $4^{th}$ order evaluation of advective fluxes, |
---|
231 | since the divergence of advective fluxes \autoref{eq:tra_adv} is kept at $2^{nd}$ order. |
---|
232 | The expression \textit{$4^{th}$ order scheme} used in oceanographic literature is usually associated with |
---|
233 | the scheme presented here. |
---|
234 | Introducing a \forcode{.true.} $4^{th}$ order advection scheme is feasible but, for consistency reasons, |
---|
235 | it requires changes in the discretisation of the tracer advection together with changes in the continuity equation, |
---|
236 | and the momentum advection and pressure terms. |
---|
237 | |
---|
238 | A direct consequence of the pseudo-fourth order nature of the scheme is that it is not non-diffusive, |
---|
239 | \ie the global variance of a tracer is not preserved using CEN4. |
---|
240 | Furthermore, it must be used in conjunction with an explicit diffusion operator to produce a sensible solution. |
---|
241 | As in CEN2 case, the time-stepping is performed using a leapfrog scheme in conjunction with an Asselin time-filter, |
---|
242 | so $T$ in (\autoref{eq:tra_adv_cen4}) is the \textit{now} tracer. |
---|
243 | |
---|
244 | At a $T$-grid cell adjacent to a boundary (coastline, bottom and surface), |
---|
245 | an additional hypothesis must be made to evaluate $\tau_u^{cen4}$. |
---|
246 | This hypothesis usually reduces the order of the scheme. |
---|
247 | Here we choose to set the gradient of $T$ across the boundary to zero. |
---|
248 | Alternative conditions can be specified, such as a reduction to a second order scheme for |
---|
249 | these near boundary grid points. |
---|
250 | |
---|
251 | % ------------------------------------------------------------------------------------------------------------- |
---|
252 | % FCT scheme |
---|
253 | % ------------------------------------------------------------------------------------------------------------- |
---|
254 | \subsection[FCT: Flux Corrected Transport scheme (\forcode{ln_traadv_fct = .true.})] |
---|
255 | {FCT: Flux Corrected Transport scheme (\protect\np{ln\_traadv\_fct}\forcode{ = .true.})} |
---|
256 | \label{subsec:TRA_adv_tvd} |
---|
257 | |
---|
258 | The Flux Corrected Transport schemes (FCT) is used when \np{ln\_traadv\_fct}\forcode{ = .true.}. |
---|
259 | Its order ($2^{nd}$ or $4^{th}$) can be chosen independently on horizontal (iso-level) and vertical direction by |
---|
260 | setting \np{nn\_fct\_h} and \np{nn\_fct\_v} to $2$ or $4$. |
---|
261 | FCT implementation can be found in the \mdl{traadv\_fct} module. |
---|
262 | |
---|
263 | In FCT formulation, the tracer at velocity points is evaluated using a combination of an upstream and |
---|
264 | a centred scheme. |
---|
265 | For example, in the $i$-direction : |
---|
266 | \begin{equation} |
---|
267 | \label{eq:tra_adv_fct} |
---|
268 | \begin{split} |
---|
269 | \tau_u^{ups} &= |
---|
270 | \begin{cases} |
---|
271 | T_{i + 1} & \text{if~} u_{i + 1/2} < 0 \\ |
---|
272 | T_i & \text{if~} u_{i + 1/2} \geq 0 \\ |
---|
273 | \end{cases} |
---|
274 | \\ |
---|
275 | \tau_u^{fct} &= \tau_u^{ups} + c_u \, \big( \tau_u^{cen} - \tau_u^{ups} \big) |
---|
276 | \end{split} |
---|
277 | \end{equation} |
---|
278 | where $c_u$ is a flux limiter function taking values between 0 and 1. |
---|
279 | The FCT order is the one of the centred scheme used |
---|
280 | (\ie it depends on the setting of \np{nn\_fct\_h} and \np{nn\_fct\_v}). |
---|
281 | There exist many ways to define $c_u$, each corresponding to a different FCT scheme. |
---|
282 | The one chosen in \NEMO is described in \citet{zalesak_JCP79}. |
---|
283 | $c_u$ only departs from $1$ when the advective term produces a local extremum in the tracer field. |
---|
284 | The resulting scheme is quite expensive but \textit{positive}. |
---|
285 | It can be used on both active and passive tracers. |
---|
286 | A comparison of FCT-2 with MUSCL and a MPDATA scheme can be found in \citet{levy.estublier.ea_GRL01}. |
---|
287 | |
---|
288 | An additional option has been added controlled by \np{nn\_fct\_zts}. |
---|
289 | By setting this integer to a value larger than zero, |
---|
290 | a $2^{nd}$ order FCT scheme is used on both horizontal and vertical direction, but on the latter, |
---|
291 | a split-explicit time stepping is used, with a number of sub-timestep equals to \np{nn\_fct\_zts}. |
---|
292 | This option can be useful when the size of the timestep is limited by vertical advection \citep{lemarie.debreu.ea_OM15}. |
---|
293 | Note that in this case, a similar split-explicit time stepping should be used on vertical advection of momentum to |
---|
294 | insure a better stability (see \autoref{subsec:DYN_zad}). |
---|
295 | |
---|
296 | For stability reasons (see \autoref{chap:STP}), |
---|
297 | $\tau_u^{cen}$ is evaluated in (\autoref{eq:tra_adv_fct}) using the \textit{now} tracer while |
---|
298 | $\tau_u^{ups}$ is evaluated using the \textit{before} tracer. |
---|
299 | In other words, the advective part of the scheme is time stepped with a leap-frog scheme |
---|
300 | while a forward scheme is used for the diffusive part. |
---|
301 | |
---|
302 | % ------------------------------------------------------------------------------------------------------------- |
---|
303 | % MUSCL scheme |
---|
304 | % ------------------------------------------------------------------------------------------------------------- |
---|
305 | \subsection[MUSCL: Monotone Upstream Scheme for Conservative Laws (\forcode{ln_traadv_mus = .true.})] |
---|
306 | {MUSCL: Monotone Upstream Scheme for Conservative Laws (\protect\np{ln\_traadv\_mus}\forcode{ = .true.})} |
---|
307 | \label{subsec:TRA_adv_mus} |
---|
308 | |
---|
309 | The Monotone Upstream Scheme for Conservative Laws (MUSCL) is used when \np{ln\_traadv\_mus}\forcode{ = .true.}. |
---|
310 | MUSCL implementation can be found in the \mdl{traadv\_mus} module. |
---|
311 | |
---|
312 | MUSCL has been first implemented in \NEMO by \citet{levy.estublier.ea_GRL01}. |
---|
313 | In its formulation, the tracer at velocity points is evaluated assuming a linear tracer variation between |
---|
314 | two $T$-points (\autoref{fig:adv_scheme}). |
---|
315 | For example, in the $i$-direction : |
---|
316 | \begin{equation} |
---|
317 | % \label{eq:tra_adv_mus} |
---|
318 | \tau_u^{mus} = \lt\{ |
---|
319 | \begin{split} |
---|
320 | \tau_i &+ \frac{1}{2} \lt( 1 - \frac{u_{i + 1/2} \, \rdt}{e_{1u}} \rt) |
---|
321 | \widetilde{\partial_i \tau} & \text{if~} u_{i + 1/2} \geqslant 0 \\ |
---|
322 | \tau_{i + 1/2} &+ \frac{1}{2} \lt( 1 + \frac{u_{i + 1/2} \, \rdt}{e_{1u}} \rt) |
---|
323 | \widetilde{\partial_{i + 1/2} \tau} & \text{if~} u_{i + 1/2} < 0 |
---|
324 | \end{split} |
---|
325 | \rt. |
---|
326 | \end{equation} |
---|
327 | where $\widetilde{\partial_i \tau}$ is the slope of the tracer on which a limitation is imposed to |
---|
328 | ensure the \textit{positive} character of the scheme. |
---|
329 | |
---|
330 | The time stepping is performed using a forward scheme, that is the \textit{before} tracer field is used to |
---|
331 | evaluate $\tau_u^{mus}$. |
---|
332 | |
---|
333 | For an ocean grid point adjacent to land and where the ocean velocity is directed toward land, |
---|
334 | an upstream flux is used. |
---|
335 | This choice ensure the \textit{positive} character of the scheme. |
---|
336 | In addition, fluxes round a grid-point where a runoff is applied can optionally be computed using upstream fluxes |
---|
337 | (\np{ln\_mus\_ups}\forcode{ = .true.}). |
---|
338 | |
---|
339 | % ------------------------------------------------------------------------------------------------------------- |
---|
340 | % UBS scheme |
---|
341 | % ------------------------------------------------------------------------------------------------------------- |
---|
342 | \subsection[UBS a.k.a. UP3: Upstream-Biased Scheme (\forcode{ln_traadv_ubs = .true.})] |
---|
343 | {UBS a.k.a. UP3: Upstream-Biased Scheme (\protect\np{ln\_traadv\_ubs}\forcode{ = .true.})} |
---|
344 | \label{subsec:TRA_adv_ubs} |
---|
345 | |
---|
346 | The Upstream-Biased Scheme (UBS) is used when \np{ln\_traadv\_ubs}\forcode{ = .true.}. |
---|
347 | UBS implementation can be found in the \mdl{traadv\_mus} module. |
---|
348 | |
---|
349 | The UBS scheme, often called UP3, is also known as the Cell Averaged QUICK scheme |
---|
350 | (Quadratic Upstream Interpolation for Convective Kinematics). |
---|
351 | It is an upstream-biased third order scheme based on an upstream-biased parabolic interpolation. |
---|
352 | For example, in the $i$-direction: |
---|
353 | \begin{equation} |
---|
354 | \label{eq:tra_adv_ubs} |
---|
355 | \tau_u^{ubs} = \overline T ^{i + 1/2} - \frac{1}{6} |
---|
356 | \begin{cases} |
---|
357 | \tau"_i & \text{if~} u_{i + 1/2} \geqslant 0 \\ |
---|
358 | \tau"_{i + 1} & \text{if~} u_{i + 1/2} < 0 |
---|
359 | \end{cases} |
---|
360 | \quad |
---|
361 | \text{where~} \tau"_i = \delta_i \lt[ \delta_{i + 1/2} [\tau] \rt] |
---|
362 | \end{equation} |
---|
363 | |
---|
364 | This results in a dissipatively dominant (i.e. hyper-diffusive) truncation error |
---|
365 | \citep{shchepetkin.mcwilliams_OM05}. |
---|
366 | The overall performance of the advection scheme is similar to that reported in \cite{farrow.stevens_JPO95}. |
---|
367 | It is a relatively good compromise between accuracy and smoothness. |
---|
368 | Nevertheless the scheme is not \textit{positive}, meaning that false extrema are permitted, |
---|
369 | but the amplitude of such are significantly reduced over the centred second or fourth order method. |
---|
370 | Therefore it is not recommended that it should be applied to a passive tracer that requires positivity. |
---|
371 | |
---|
372 | The intrinsic diffusion of UBS makes its use risky in the vertical direction where |
---|
373 | the control of artificial diapycnal fluxes is of paramount importance |
---|
374 | \citep{shchepetkin.mcwilliams_OM05, demange_phd14}. |
---|
375 | Therefore the vertical flux is evaluated using either a $2^nd$ order FCT scheme or a $4^th$ order COMPACT scheme |
---|
376 | (\np{nn\_cen\_v}\forcode{ = 2 or 4}). |
---|
377 | |
---|
378 | For stability reasons (see \autoref{chap:STP}), the first term in \autoref{eq:tra_adv_ubs} |
---|
379 | (which corresponds to a second order centred scheme) |
---|
380 | is evaluated using the \textit{now} tracer (centred in time) while the second term |
---|
381 | (which is the diffusive part of the scheme), |
---|
382 | is evaluated using the \textit{before} tracer (forward in time). |
---|
383 | This choice is discussed by \citet{webb.de-cuevas.ea_JAOT98} in the context of the QUICK advection scheme. |
---|
384 | UBS and QUICK schemes only differ by one coefficient. |
---|
385 | Replacing 1/6 with 1/8 in \autoref{eq:tra_adv_ubs} leads to the QUICK advection scheme \citep{webb.de-cuevas.ea_JAOT98}. |
---|
386 | This option is not available through a namelist parameter, since the 1/6 coefficient is hard coded. |
---|
387 | Nevertheless it is quite easy to make the substitution in the \mdl{traadv\_ubs} module and obtain a QUICK scheme. |
---|
388 | |
---|
389 | Note that it is straightforward to rewrite \autoref{eq:tra_adv_ubs} as follows: |
---|
390 | \begin{gather} |
---|
391 | \label{eq:traadv_ubs2} |
---|
392 | \tau_u^{ubs} = \tau_u^{cen4} + \frac{1}{12} |
---|
393 | \begin{cases} |
---|
394 | + \tau"_i & \text{if} \ u_{i + 1/2} \geqslant 0 \\ |
---|
395 | - \tau"_{i + 1} & \text{if} \ u_{i + 1/2} < 0 |
---|
396 | \end{cases} |
---|
397 | \intertext{or equivalently} |
---|
398 | % \label{eq:traadv_ubs2b} |
---|
399 | u_{i + 1/2} \ \tau_u^{ubs} = u_{i + 1/2} \, \overline{T - \frac{1}{6} \, \delta_i \Big[ \delta_{i + 1/2}[T] \Big]}^{\,i + 1/2} |
---|
400 | - \frac{1}{2} |u|_{i + 1/2} \, \frac{1}{6} \, \delta_{i + 1/2} [\tau"_i] \nonumber |
---|
401 | \end{gather} |
---|
402 | |
---|
403 | \autoref{eq:traadv_ubs2} has several advantages. |
---|
404 | Firstly, it clearly reveals that the UBS scheme is based on the fourth order scheme to which |
---|
405 | an upstream-biased diffusion term is added. |
---|
406 | Secondly, this emphasises that the $4^{th}$ order part (as well as the $2^{nd}$ order part as stated above) has to |
---|
407 | be evaluated at the \textit{now} time step using \autoref{eq:tra_adv_ubs}. |
---|
408 | Thirdly, the diffusion term is in fact a biharmonic operator with an eddy coefficient which |
---|
409 | is simply proportional to the velocity: $A_u^{lm} = \frac{1}{12} \, {e_{1u}}^3 \, |u|$. |
---|
410 | Note the current version of NEMO uses the computationally more efficient formulation \autoref{eq:tra_adv_ubs}. |
---|
411 | |
---|
412 | % ------------------------------------------------------------------------------------------------------------- |
---|
413 | % QCK scheme |
---|
414 | % ------------------------------------------------------------------------------------------------------------- |
---|
415 | \subsection[QCK: QuiCKest scheme (\forcode{ln_traadv_qck = .true.})] |
---|
416 | {QCK: QuiCKest scheme (\protect\np{ln\_traadv\_qck}\forcode{ = .true.})} |
---|
417 | \label{subsec:TRA_adv_qck} |
---|
418 | |
---|
419 | The Quadratic Upstream Interpolation for Convective Kinematics with Estimated Streaming Terms (QUICKEST) scheme |
---|
420 | proposed by \citet{leonard_CMAME79} is used when \np{ln\_traadv\_qck}\forcode{ = .true.}. |
---|
421 | QUICKEST implementation can be found in the \mdl{traadv\_qck} module. |
---|
422 | |
---|
423 | QUICKEST is the third order Godunov scheme which is associated with the ULTIMATE QUICKEST limiter |
---|
424 | \citep{leonard_CMAME91}. |
---|
425 | It has been implemented in NEMO by G. Reffray (MERCATOR-ocean) and can be found in the \mdl{traadv\_qck} module. |
---|
426 | The resulting scheme is quite expensive but \textit{positive}. |
---|
427 | It can be used on both active and passive tracers. |
---|
428 | However, the intrinsic diffusion of QCK makes its use risky in the vertical direction where |
---|
429 | the control of artificial diapycnal fluxes is of paramount importance. |
---|
430 | Therefore the vertical flux is evaluated using the CEN2 scheme. |
---|
431 | This no longer guarantees the positivity of the scheme. |
---|
432 | The use of FCT in the vertical direction (as for the UBS case) should be implemented to restore this property. |
---|
433 | |
---|
434 | %%%gmcomment : Cross term are missing in the current implementation.... |
---|
435 | |
---|
436 | % ================================================================ |
---|
437 | % Tracer Lateral Diffusion |
---|
438 | % ================================================================ |
---|
439 | \section[Tracer lateral diffusion (\textit{traldf.F90})] |
---|
440 | {Tracer lateral diffusion (\protect\mdl{traldf})} |
---|
441 | \label{sec:TRA_ldf} |
---|
442 | %-----------------------------------------nam_traldf------------------------------------------------------ |
---|
443 | |
---|
444 | \nlst{namtra_ldf} |
---|
445 | %------------------------------------------------------------------------------------------------------------- |
---|
446 | |
---|
447 | Options are defined through the \ngn{namtra\_ldf} namelist variables. |
---|
448 | They are regrouped in four items, allowing to specify |
---|
449 | $(i)$ the type of operator used (none, laplacian, bilaplacian), |
---|
450 | $(ii)$ the direction along which the operator acts (iso-level, horizontal, iso-neutral), |
---|
451 | $(iii)$ some specific options related to the rotated operators (\ie non-iso-level operator), and |
---|
452 | $(iv)$ the specification of eddy diffusivity coefficient (either constant or variable in space and time). |
---|
453 | Item $(iv)$ will be described in \autoref{chap:LDF}. |
---|
454 | The direction along which the operators act is defined through the slope between |
---|
455 | this direction and the iso-level surfaces. |
---|
456 | The slope is computed in the \mdl{ldfslp} module and will also be described in \autoref{chap:LDF}. |
---|
457 | |
---|
458 | The lateral diffusion of tracers is evaluated using a forward scheme, |
---|
459 | \ie the tracers appearing in its expression are the \textit{before} tracers in time, |
---|
460 | except for the pure vertical component that appears when a rotation tensor is used. |
---|
461 | This latter component is solved implicitly together with the vertical diffusion term (see \autoref{chap:STP}). |
---|
462 | When \np{ln\_traldf\_msc}\forcode{ = .true.}, a Method of Stabilizing Correction is used in which |
---|
463 | the pure vertical component is split into an explicit and an implicit part \citep{lemarie.debreu.ea_OM12}. |
---|
464 | |
---|
465 | % ------------------------------------------------------------------------------------------------------------- |
---|
466 | % Type of operator |
---|
467 | % ------------------------------------------------------------------------------------------------------------- |
---|
468 | \subsection[Type of operator (\texttt{ln\_traldf}\{\texttt{\_NONE,\_lap,\_blp}\})] |
---|
469 | {Type of operator (\protect\np{ln\_traldf\_NONE}, \protect\np{ln\_traldf\_lap}, or \protect\np{ln\_traldf\_blp}) } |
---|
470 | \label{subsec:TRA_ldf_op} |
---|
471 | |
---|
472 | Three operator options are proposed and, one and only one of them must be selected: |
---|
473 | |
---|
474 | \begin{description} |
---|
475 | \item[\np{ln\_traldf\_NONE}\forcode{ = .true.}:] |
---|
476 | no operator selected, the lateral diffusive tendency will not be applied to the tracer equation. |
---|
477 | This option can be used when the selected advection scheme is diffusive enough (MUSCL scheme for example). |
---|
478 | \item[\np{ln\_traldf\_lap}\forcode{ = .true.}:] |
---|
479 | a laplacian operator is selected. |
---|
480 | This harmonic operator takes the following expression: $\mathpzc{L}(T) = \nabla \cdot A_{ht} \; \nabla T $, |
---|
481 | where the gradient operates along the selected direction (see \autoref{subsec:TRA_ldf_dir}), |
---|
482 | and $A_{ht}$ is the eddy diffusivity coefficient expressed in $m^2/s$ (see \autoref{chap:LDF}). |
---|
483 | \item[\np{ln\_traldf\_blp}\forcode{ = .true.}]: |
---|
484 | a bilaplacian operator is selected. |
---|
485 | This biharmonic operator takes the following expression: |
---|
486 | $\mathpzc{B} = - \mathpzc{L}(\mathpzc{L}(T)) = - \nabla \cdot b \nabla (\nabla \cdot b \nabla T)$ |
---|
487 | where the gradient operats along the selected direction, |
---|
488 | and $b^2 = B_{ht}$ is the eddy diffusivity coefficient expressed in $m^4/s$ (see \autoref{chap:LDF}). |
---|
489 | In the code, the bilaplacian operator is obtained by calling the laplacian twice. |
---|
490 | \end{description} |
---|
491 | |
---|
492 | Both laplacian and bilaplacian operators ensure the total tracer variance decrease. |
---|
493 | Their primary role is to provide strong dissipation at the smallest scale supported by the grid while |
---|
494 | minimizing the impact on the larger scale features. |
---|
495 | The main difference between the two operators is the scale selectiveness. |
---|
496 | The bilaplacian damping time (\ie its spin down time) scales like $\lambda^{-4}$ for |
---|
497 | disturbances of wavelength $\lambda$ (so that short waves damped more rapidelly than long ones), |
---|
498 | whereas the laplacian damping time scales only like $\lambda^{-2}$. |
---|
499 | |
---|
500 | % ------------------------------------------------------------------------------------------------------------- |
---|
501 | % Direction of action |
---|
502 | % ------------------------------------------------------------------------------------------------------------- |
---|
503 | \subsection[Action direction (\texttt{ln\_traldf}\{\texttt{\_lev,\_hor,\_iso,\_triad}\})] |
---|
504 | {Direction of action (\protect\np{ln\_traldf\_lev}, \protect\np{ln\_traldf\_hor}, \protect\np{ln\_traldf\_iso}, or \protect\np{ln\_traldf\_triad}) } |
---|
505 | \label{subsec:TRA_ldf_dir} |
---|
506 | |
---|
507 | The choice of a direction of action determines the form of operator used. |
---|
508 | The operator is a simple (re-entrant) laplacian acting in the (\textbf{i},\textbf{j}) plane when |
---|
509 | iso-level option is used (\np{ln\_traldf\_lev}\forcode{ = .true.}) or |
---|
510 | when a horizontal (\ie geopotential) operator is demanded in \textit{z}-coordinate |
---|
511 | (\np{ln\_traldf\_hor} and \np{ln\_zco} equal \forcode{.true.}). |
---|
512 | The associated code can be found in the \mdl{traldf\_lap\_blp} module. |
---|
513 | The operator is a rotated (re-entrant) laplacian when |
---|
514 | the direction along which it acts does not coincide with the iso-level surfaces, |
---|
515 | that is when standard or triad iso-neutral option is used |
---|
516 | (\np{ln\_traldf\_iso} or \np{ln\_traldf\_triad} equals \forcode{.true.}, |
---|
517 | see \mdl{traldf\_iso} or \mdl{traldf\_triad} module, resp.), or |
---|
518 | when a horizontal (\ie geopotential) operator is demanded in \textit{s}-coordinate |
---|
519 | (\np{ln\_traldf\_hor} and \np{ln\_sco} equal \forcode{.true.}) |
---|
520 | \footnote{In this case, the standard iso-neutral operator will be automatically selected}. |
---|
521 | In that case, a rotation is applied to the gradient(s) that appears in the operator so that |
---|
522 | diffusive fluxes acts on the three spatial direction. |
---|
523 | |
---|
524 | The resulting discret form of the three operators (one iso-level and two rotated one) is given in |
---|
525 | the next two sub-sections. |
---|
526 | |
---|
527 | % ------------------------------------------------------------------------------------------------------------- |
---|
528 | % iso-level operator |
---|
529 | % ------------------------------------------------------------------------------------------------------------- |
---|
530 | \subsection[Iso-level (bi-)laplacian operator (\texttt{ln\_traldf\_iso})] |
---|
531 | {Iso-level (bi-)laplacian operator ( \protect\np{ln\_traldf\_iso})} |
---|
532 | \label{subsec:TRA_ldf_lev} |
---|
533 | |
---|
534 | The laplacian diffusion operator acting along the model (\textit{i,j})-surfaces is given by: |
---|
535 | \begin{equation} |
---|
536 | \label{eq:tra_ldf_lap} |
---|
537 | D_t^{lT} = \frac{1}{b_t} \Bigg( \delta_{i} \lt[ A_u^{lT} \; \frac{e_{2u} \, e_{3u}}{e_{1u}} \; \delta_{i + 1/2} [T] \rt] |
---|
538 | + \delta_{j} \lt[ A_v^{lT} \; \frac{e_{1v} \, e_{3v}}{e_{2v}} \; \delta_{j + 1/2} [T] \rt] \Bigg) |
---|
539 | \end{equation} |
---|
540 | where $b_t = e_{1t} \, e_{2t} \, e_{3t}$ is the volume of $T$-cells and |
---|
541 | where zero diffusive fluxes is assumed across solid boundaries, |
---|
542 | first (and third in bilaplacian case) horizontal tracer derivative are masked. |
---|
543 | It is implemented in the \rou{traldf\_lap} subroutine found in the \mdl{traldf\_lap} module. |
---|
544 | The module also contains \rou{traldf\_blp}, the subroutine calling twice \rou{traldf\_lap} in order to |
---|
545 | compute the iso-level bilaplacian operator. |
---|
546 | |
---|
547 | It is a \textit{horizontal} operator (\ie acting along geopotential surfaces) in |
---|
548 | the $z$-coordinate with or without partial steps, but is simply an iso-level operator in the $s$-coordinate. |
---|
549 | It is thus used when, in addition to \np{ln\_traldf\_lap} or \np{ln\_traldf\_blp}\forcode{ = .true.}, |
---|
550 | we have \np{ln\_traldf\_lev}\forcode{ = .true.} or \np{ln\_traldf\_hor}~=~\np{ln\_zco}\forcode{ = .true.}. |
---|
551 | In both cases, it significantly contributes to diapycnal mixing. |
---|
552 | It is therefore never recommended, even when using it in the bilaplacian case. |
---|
553 | |
---|
554 | Note that in the partial step $z$-coordinate (\np{ln\_zps}\forcode{ = .true.}), |
---|
555 | tracers in horizontally adjacent cells are located at different depths in the vicinity of the bottom. |
---|
556 | In this case, horizontal derivatives in (\autoref{eq:tra_ldf_lap}) at the bottom level require a specific treatment. |
---|
557 | They are calculated in the \mdl{zpshde} module, described in \autoref{sec:TRA_zpshde}. |
---|
558 | |
---|
559 | % ------------------------------------------------------------------------------------------------------------- |
---|
560 | % Rotated laplacian operator |
---|
561 | % ------------------------------------------------------------------------------------------------------------- |
---|
562 | \subsection{Standard and triad (bi-)laplacian operator} |
---|
563 | \label{subsec:TRA_ldf_iso_triad} |
---|
564 | |
---|
565 | %&& Standard rotated (bi-)laplacian operator |
---|
566 | %&& ---------------------------------------------- |
---|
567 | \subsubsection[Standard rotated (bi-)laplacian operator (\textit{traldf\_iso.F90})] |
---|
568 | {Standard rotated (bi-)laplacian operator (\protect\mdl{traldf\_iso})} |
---|
569 | \label{subsec:TRA_ldf_iso} |
---|
570 | The general form of the second order lateral tracer subgrid scale physics (\autoref{eq:PE_zdf}) |
---|
571 | takes the following semi -discrete space form in $z$- and $s$-coordinates: |
---|
572 | \begin{equation} |
---|
573 | \label{eq:tra_ldf_iso} |
---|
574 | \begin{split} |
---|
575 | D_T^{lT} = \frac{1}{b_t} \Bigg[ \quad &\delta_i A_u^{lT} \lt( \frac{e_{2u} e_{3u}}{e_{1u}} \, \delta_{i + 1/2} [T] |
---|
576 | - e_{2u} r_{1u} \, \overline{\overline{\delta_{k + 1/2} [T]}}^{\,i + 1/2,k} \rt) \Bigg. \\ |
---|
577 | + &\delta_j A_v^{lT} \lt( \frac{e_{1v} e_{3v}}{e_{2v}} \, \delta_{j + 1/2} [T] |
---|
578 | - e_{1v} r_{2v} \, \overline{\overline{\delta_{k + 1/2} [T]}}^{\,j + 1/2,k} \rt) \\ |
---|
579 | + &\delta_k A_w^{lT} \lt( \frac{e_{1w} e_{2w}}{e_{3w}} (r_{1w}^2 + r_{2w}^2) \, \delta_{k + 1/2} [T] \rt. \\ |
---|
580 | & \qquad \quad \Bigg. \lt. - e_{2w} r_{1w} \, \overline{\overline{\delta_{i + 1/2} [T]}}^{\,i,k + 1/2} |
---|
581 | - e_{1w} r_{2w} \, \overline{\overline{\delta_{j + 1/2} [T]}}^{\,j,k + 1/2} \rt) \Bigg] |
---|
582 | \end{split} |
---|
583 | \end{equation} |
---|
584 | where $b_t = e_{1t} \, e_{2t} \, e_{3t}$ is the volume of $T$-cells, |
---|
585 | $r_1$ and $r_2$ are the slopes between the surface of computation ($z$- or $s$-surfaces) and |
---|
586 | the surface along which the diffusion operator acts (\ie horizontal or iso-neutral surfaces). |
---|
587 | It is thus used when, in addition to \np{ln\_traldf\_lap}\forcode{ = .true.}, |
---|
588 | we have \np{ln\_traldf\_iso}\forcode{ = .true.}, |
---|
589 | or both \np{ln\_traldf\_hor}\forcode{ = .true.} and \np{ln\_zco}\forcode{ = .true.}. |
---|
590 | The way these slopes are evaluated is given in \autoref{sec:LDF_slp}. |
---|
591 | At the surface, bottom and lateral boundaries, the turbulent fluxes of heat and salt are set to zero using |
---|
592 | the mask technique (see \autoref{sec:LBC_coast}). |
---|
593 | |
---|
594 | The operator in \autoref{eq:tra_ldf_iso} involves both lateral and vertical derivatives. |
---|
595 | For numerical stability, the vertical second derivative must be solved using the same implicit time scheme as that |
---|
596 | used in the vertical physics (see \autoref{sec:TRA_zdf}). |
---|
597 | For computer efficiency reasons, this term is not computed in the \mdl{traldf\_iso} module, |
---|
598 | but in the \mdl{trazdf} module where, if iso-neutral mixing is used, |
---|
599 | the vertical mixing coefficient is simply increased by $\frac{e_{1w} e_{2w}}{e_{3w}}(r_{1w}^2 + r_{2w}^2)$. |
---|
600 | |
---|
601 | This formulation conserves the tracer but does not ensure the decrease of the tracer variance. |
---|
602 | Nevertheless the treatment performed on the slopes (see \autoref{chap:LDF}) allows the model to run safely without |
---|
603 | any additional background horizontal diffusion \citep{guilyardi.madec.ea_CD01}. |
---|
604 | |
---|
605 | Note that in the partial step $z$-coordinate (\np{ln\_zps}\forcode{ = .true.}), |
---|
606 | the horizontal derivatives at the bottom level in \autoref{eq:tra_ldf_iso} require a specific treatment. |
---|
607 | They are calculated in module zpshde, described in \autoref{sec:TRA_zpshde}. |
---|
608 | |
---|
609 | %&& Triad rotated (bi-)laplacian operator |
---|
610 | %&& ------------------------------------------- |
---|
611 | \subsubsection[Triad rotated (bi-)laplacian operator (\textit{ln\_traldf\_triad})] |
---|
612 | {Triad rotated (bi-)laplacian operator (\protect\np{ln\_traldf\_triad})} |
---|
613 | \label{subsec:TRA_ldf_triad} |
---|
614 | |
---|
615 | If the Griffies triad scheme is employed (\np{ln\_traldf\_triad}\forcode{ = .true.}; see \autoref{apdx:triad}) |
---|
616 | |
---|
617 | An alternative scheme developed by \cite{griffies.gnanadesikan.ea_JPO98} which ensures tracer variance decreases |
---|
618 | is also available in \NEMO (\np{ln\_traldf\_grif}\forcode{ = .true.}). |
---|
619 | A complete description of the algorithm is given in \autoref{apdx:triad}. |
---|
620 | |
---|
621 | The lateral fourth order bilaplacian operator on tracers is obtained by applying (\autoref{eq:tra_ldf_lap}) twice. |
---|
622 | The operator requires an additional assumption on boundary conditions: |
---|
623 | both first and third derivative terms normal to the coast are set to zero. |
---|
624 | |
---|
625 | The lateral fourth order operator formulation on tracers is obtained by applying (\autoref{eq:tra_ldf_iso}) twice. |
---|
626 | It requires an additional assumption on boundary conditions: |
---|
627 | first and third derivative terms normal to the coast, |
---|
628 | normal to the bottom and normal to the surface are set to zero. |
---|
629 | |
---|
630 | %&& Option for the rotated operators |
---|
631 | %&& ---------------------------------------------- |
---|
632 | \subsubsection{Option for the rotated operators} |
---|
633 | \label{subsec:TRA_ldf_options} |
---|
634 | |
---|
635 | \begin{itemize} |
---|
636 | \item \np{ln\_traldf\_msc} = Method of Stabilizing Correction (both operators) |
---|
637 | \item \np{rn\_slpmax} = slope limit (both operators) |
---|
638 | \item \np{ln\_triad\_iso} = pure horizontal mixing in ML (triad only) |
---|
639 | \item \np{rn\_sw\_triad} $= 1$ switching triad; $= 0$ all 4 triads used (triad only) |
---|
640 | \item \np{ln\_botmix\_triad} = lateral mixing on bottom (triad only) |
---|
641 | \end{itemize} |
---|
642 | |
---|
643 | % ================================================================ |
---|
644 | % Tracer Vertical Diffusion |
---|
645 | % ================================================================ |
---|
646 | \section[Tracer vertical diffusion (\textit{trazdf.F90})] |
---|
647 | {Tracer vertical diffusion (\protect\mdl{trazdf})} |
---|
648 | \label{sec:TRA_zdf} |
---|
649 | %--------------------------------------------namzdf--------------------------------------------------------- |
---|
650 | |
---|
651 | \nlst{namzdf} |
---|
652 | %-------------------------------------------------------------------------------------------------------------- |
---|
653 | |
---|
654 | Options are defined through the \ngn{namzdf} namelist variables. |
---|
655 | The formulation of the vertical subgrid scale tracer physics is the same for all the vertical coordinates, |
---|
656 | and is based on a laplacian operator. |
---|
657 | The vertical diffusion operator given by (\autoref{eq:PE_zdf}) takes the following semi -discrete space form: |
---|
658 | \begin{gather*} |
---|
659 | % \label{eq:tra_zdf} |
---|
660 | D^{vT}_T = \frac{1}{e_{3t}} \, \delta_k \lt[ \, \frac{A^{vT}_w}{e_{3w}} \delta_{k + 1/2}[T] \, \rt] \\ |
---|
661 | D^{vS}_T = \frac{1}{e_{3t}} \; \delta_k \lt[ \, \frac{A^{vS}_w}{e_{3w}} \delta_{k + 1/2}[S] \, \rt] |
---|
662 | \end{gather*} |
---|
663 | where $A_w^{vT}$ and $A_w^{vS}$ are the vertical eddy diffusivity coefficients on temperature and salinity, |
---|
664 | respectively. |
---|
665 | Generally, $A_w^{vT} = A_w^{vS}$ except when double diffusive mixing is parameterised |
---|
666 | (\ie \key{zdfddm} is defined). |
---|
667 | The way these coefficients are evaluated is given in \autoref{chap:ZDF} (ZDF). |
---|
668 | Furthermore, when iso-neutral mixing is used, both mixing coefficients are increased by |
---|
669 | $\frac{e_{1w} e_{2w}}{e_{3w} }({r_{1w}^2 + r_{2w}^2})$ to account for the vertical second derivative of |
---|
670 | \autoref{eq:tra_ldf_iso}. |
---|
671 | |
---|
672 | At the surface and bottom boundaries, the turbulent fluxes of heat and salt must be specified. |
---|
673 | At the surface they are prescribed from the surface forcing and added in a dedicated routine |
---|
674 | (see \autoref{subsec:TRA_sbc}), whilst at the bottom they are set to zero for heat and salt unless |
---|
675 | a geothermal flux forcing is prescribed as a bottom boundary condition (see \autoref{subsec:TRA_bbc}). |
---|
676 | |
---|
677 | The large eddy coefficient found in the mixed layer together with high vertical resolution implies that |
---|
678 | in the case of explicit time stepping (\np{ln\_zdfexp}\forcode{ = .true.}) |
---|
679 | there would be too restrictive a constraint on the time step. |
---|
680 | Therefore, the default implicit time stepping is preferred for the vertical diffusion since |
---|
681 | it overcomes the stability constraint. |
---|
682 | A forward time differencing scheme (\np{ln\_zdfexp}\forcode{ = .true.}) using |
---|
683 | a time splitting technique (\np{nn\_zdfexp} $> 1$) is provided as an alternative. |
---|
684 | Namelist variables \np{ln\_zdfexp} and \np{nn\_zdfexp} apply to both tracers and dynamics. |
---|
685 | |
---|
686 | % ================================================================ |
---|
687 | % External Forcing |
---|
688 | % ================================================================ |
---|
689 | \section{External forcing} |
---|
690 | \label{sec:TRA_sbc_qsr_bbc} |
---|
691 | |
---|
692 | % ------------------------------------------------------------------------------------------------------------- |
---|
693 | % surface boundary condition |
---|
694 | % ------------------------------------------------------------------------------------------------------------- |
---|
695 | \subsection[Surface boundary condition (\textit{trasbc.F90})] |
---|
696 | {Surface boundary condition (\protect\mdl{trasbc})} |
---|
697 | \label{subsec:TRA_sbc} |
---|
698 | |
---|
699 | The surface boundary condition for tracers is implemented in a separate module (\mdl{trasbc}) instead of |
---|
700 | entering as a boundary condition on the vertical diffusion operator (as in the case of momentum). |
---|
701 | This has been found to enhance readability of the code. |
---|
702 | The two formulations are completely equivalent; |
---|
703 | the forcing terms in trasbc are the surface fluxes divided by the thickness of the top model layer. |
---|
704 | |
---|
705 | Due to interactions and mass exchange of water ($F_{mass}$) with other Earth system components |
---|
706 | (\ie atmosphere, sea-ice, land), the change in the heat and salt content of the surface layer of the ocean is due |
---|
707 | both to the heat and salt fluxes crossing the sea surface (not linked with $F_{mass}$) and |
---|
708 | to the heat and salt content of the mass exchange. |
---|
709 | They are both included directly in $Q_{ns}$, the surface heat flux, |
---|
710 | and $F_{salt}$, the surface salt flux (see \autoref{chap:SBC} for further details). |
---|
711 | By doing this, the forcing formulation is the same for any tracer (including temperature and salinity). |
---|
712 | |
---|
713 | The surface module (\mdl{sbcmod}, see \autoref{chap:SBC}) provides the following forcing fields (used on tracers): |
---|
714 | |
---|
715 | \begin{itemize} |
---|
716 | \item |
---|
717 | $Q_{ns}$, the non-solar part of the net surface heat flux that crosses the sea surface |
---|
718 | (\ie the difference between the total surface heat flux and the fraction of the short wave flux that |
---|
719 | penetrates into the water column, see \autoref{subsec:TRA_qsr}) |
---|
720 | plus the heat content associated with of the mass exchange with the atmosphere and lands. |
---|
721 | \item |
---|
722 | $\textit{sfx}$, the salt flux resulting from ice-ocean mass exchange (freezing, melting, ridging...) |
---|
723 | \item |
---|
724 | \textit{emp}, the mass flux exchanged with the atmosphere (evaporation minus precipitation) and |
---|
725 | possibly with the sea-ice and ice-shelves. |
---|
726 | \item |
---|
727 | \textit{rnf}, the mass flux associated with runoff |
---|
728 | (see \autoref{sec:SBC_rnf} for further detail of how it acts on temperature and salinity tendencies) |
---|
729 | \item |
---|
730 | \textit{fwfisf}, the mass flux associated with ice shelf melt, |
---|
731 | (see \autoref{sec:SBC_isf} for further details on how the ice shelf melt is computed and applied). |
---|
732 | \end{itemize} |
---|
733 | |
---|
734 | The surface boundary condition on temperature and salinity is applied as follows: |
---|
735 | \begin{equation} |
---|
736 | \label{eq:tra_sbc} |
---|
737 | \begin{alignedat}{2} |
---|
738 | F^T &= \frac{1}{C_p} &\frac{1}{\rho_o \lt. e_{3t} \rt|_{k = 1}} &\overline{Q_{ns} }^t \\ |
---|
739 | F^S &= &\frac{1}{\rho_o \lt. e_{3t} \rt|_{k = 1}} &\overline{\textit{sfx}}^t |
---|
740 | \end{alignedat} |
---|
741 | \end{equation} |
---|
742 | where $\overline x^t$ means that $x$ is averaged over two consecutive time steps |
---|
743 | ($t - \rdt / 2$ and $t + \rdt / 2$). |
---|
744 | Such time averaging prevents the divergence of odd and even time step (see \autoref{chap:STP}). |
---|
745 | |
---|
746 | In the linear free surface case (\np{ln\_linssh}\forcode{ = .true.}), an additional term has to be added on |
---|
747 | both temperature and salinity. |
---|
748 | On temperature, this term remove the heat content associated with mass exchange that has been added to $Q_{ns}$. |
---|
749 | On salinity, this term mimics the concentration/dilution effect that would have resulted from a change in |
---|
750 | the volume of the first level. |
---|
751 | The resulting surface boundary condition is applied as follows: |
---|
752 | \begin{equation} |
---|
753 | \label{eq:tra_sbc_lin} |
---|
754 | \begin{alignedat}{2} |
---|
755 | F^T &= \frac{1}{C_p} &\frac{1}{\rho_o \lt. e_{3t} \rt|_{k = 1}} |
---|
756 | &\overline{(Q_{ns} - C_p \, \textit{emp} \lt. T \rt|_{k = 1})}^t \\ |
---|
757 | F^S &= &\frac{1}{\rho_o \lt. e_{3t} \rt|_{k = 1}} |
---|
758 | &\overline{(\textit{sfx} - \textit{emp} \lt. S \rt|_{k = 1})}^t |
---|
759 | \end{alignedat} |
---|
760 | \end{equation} |
---|
761 | Note that an exact conservation of heat and salt content is only achieved with non-linear free surface. |
---|
762 | In the linear free surface case, there is a small imbalance. |
---|
763 | The imbalance is larger than the imbalance associated with the Asselin time filter \citep{leclair.madec_OM09}. |
---|
764 | This is the reason why the modified filter is not applied in the linear free surface case (see \autoref{chap:STP}). |
---|
765 | |
---|
766 | % ------------------------------------------------------------------------------------------------------------- |
---|
767 | % Solar Radiation Penetration |
---|
768 | % ------------------------------------------------------------------------------------------------------------- |
---|
769 | \subsection[Solar radiation penetration (\textit{traqsr.F90})] |
---|
770 | {Solar radiation penetration (\protect\mdl{traqsr})} |
---|
771 | \label{subsec:TRA_qsr} |
---|
772 | %--------------------------------------------namqsr-------------------------------------------------------- |
---|
773 | |
---|
774 | \nlst{namtra_qsr} |
---|
775 | %-------------------------------------------------------------------------------------------------------------- |
---|
776 | |
---|
777 | Options are defined through the \ngn{namtra\_qsr} namelist variables. |
---|
778 | When the penetrative solar radiation option is used (\np{ln\_flxqsr}\forcode{ = .true.}), |
---|
779 | the solar radiation penetrates the top few tens of meters of the ocean. |
---|
780 | If it is not used (\np{ln\_flxqsr}\forcode{ = .false.}) all the heat flux is absorbed in the first ocean level. |
---|
781 | Thus, in the former case a term is added to the time evolution equation of temperature \autoref{eq:PE_tra_T} and |
---|
782 | the surface boundary condition is modified to take into account only the non-penetrative part of the surface |
---|
783 | heat flux: |
---|
784 | \begin{equation} |
---|
785 | \label{eq:PE_qsr} |
---|
786 | \begin{gathered} |
---|
787 | \pd[T]{t} = \ldots + \frac{1}{\rho_o \, C_p \, e_3} \; \pd[I]{k} \\ |
---|
788 | Q_{ns} = Q_\text{Total} - Q_{sr} |
---|
789 | \end{gathered} |
---|
790 | \end{equation} |
---|
791 | where $Q_{sr}$ is the penetrative part of the surface heat flux (\ie the shortwave radiation) and |
---|
792 | $I$ is the downward irradiance ($\lt. I \rt|_{z = \eta} = Q_{sr}$). |
---|
793 | The additional term in \autoref{eq:PE_qsr} is discretized as follows: |
---|
794 | \begin{equation} |
---|
795 | \label{eq:tra_qsr} |
---|
796 | \frac{1}{\rho_o \, C_p \, e_3} \, \pd[I]{k} \equiv \frac{1}{\rho_o \, C_p \, e_{3t}} \delta_k [I_w] |
---|
797 | \end{equation} |
---|
798 | |
---|
799 | The shortwave radiation, $Q_{sr}$, consists of energy distributed across a wide spectral range. |
---|
800 | The ocean is strongly absorbing for wavelengths longer than 700~nm and these wavelengths contribute to |
---|
801 | heating the upper few tens of centimetres. |
---|
802 | The fraction of $Q_{sr}$ that resides in these almost non-penetrative wavebands, $R$, is $\sim 58\%$ |
---|
803 | (specified through namelist parameter \np{rn\_abs}). |
---|
804 | It is assumed to penetrate the ocean with a decreasing exponential profile, with an e-folding depth scale, $\xi_0$, |
---|
805 | of a few tens of centimetres (typically $\xi_0 = 0.35~m$ set as \np{rn\_si0} in the \ngn{namtra\_qsr} namelist). |
---|
806 | For shorter wavelengths (400-700~nm), the ocean is more transparent, and solar energy propagates to |
---|
807 | larger depths where it contributes to local heating. |
---|
808 | The way this second part of the solar energy penetrates into the ocean depends on which formulation is chosen. |
---|
809 | In the simple 2-waveband light penetration scheme (\np{ln\_qsr\_2bd}\forcode{ = .true.}) |
---|
810 | a chlorophyll-independent monochromatic formulation is chosen for the shorter wavelengths, |
---|
811 | leading to the following expression \citep{paulson.simpson_JPO77}: |
---|
812 | \[ |
---|
813 | % \label{eq:traqsr_iradiance} |
---|
814 | I(z) = Q_{sr} \lt[ Re^{- z / \xi_0} + (1 - R) e^{- z / \xi_1} \rt] |
---|
815 | \] |
---|
816 | where $\xi_1$ is the second extinction length scale associated with the shorter wavelengths. |
---|
817 | It is usually chosen to be 23~m by setting the \np{rn\_si0} namelist parameter. |
---|
818 | The set of default values ($\xi_0, \xi_1, R$) corresponds to a Type I water in Jerlov's (1968) classification |
---|
819 | (oligotrophic waters). |
---|
820 | |
---|
821 | Such assumptions have been shown to provide a very crude and simplistic representation of |
---|
822 | observed light penetration profiles (\cite{morel_JGR88}, see also \autoref{fig:traqsr_irradiance}). |
---|
823 | Light absorption in the ocean depends on particle concentration and is spectrally selective. |
---|
824 | \cite{morel_JGR88} has shown that an accurate representation of light penetration can be provided by |
---|
825 | a 61 waveband formulation. |
---|
826 | Unfortunately, such a model is very computationally expensive. |
---|
827 | Thus, \cite{lengaigne.menkes.ea_CD07} have constructed a simplified version of this formulation in which |
---|
828 | visible light is split into three wavebands: blue (400-500 nm), green (500-600 nm) and red (600-700nm). |
---|
829 | For each wave-band, the chlorophyll-dependent attenuation coefficient is fitted to the coefficients computed from |
---|
830 | the full spectral model of \cite{morel_JGR88} (as modified by \cite{morel.maritorena_JGR01}), |
---|
831 | assuming the same power-law relationship. |
---|
832 | As shown in \autoref{fig:traqsr_irradiance}, this formulation, called RGB (Red-Green-Blue), |
---|
833 | reproduces quite closely the light penetration profiles predicted by the full spectal model, |
---|
834 | but with much greater computational efficiency. |
---|
835 | The 2-bands formulation does not reproduce the full model very well. |
---|
836 | |
---|
837 | The RGB formulation is used when \np{ln\_qsr\_rgb}\forcode{ = .true.}. |
---|
838 | The RGB attenuation coefficients (\ie the inverses of the extinction length scales) are tabulated over |
---|
839 | 61 nonuniform chlorophyll classes ranging from 0.01 to 10 g.Chl/L |
---|
840 | (see the routine \rou{trc\_oce\_rgb} in \mdl{trc\_oce} module). |
---|
841 | Four types of chlorophyll can be chosen in the RGB formulation: |
---|
842 | |
---|
843 | \begin{description} |
---|
844 | \item[\np{nn\_chdta}\forcode{ = 0}] |
---|
845 | a constant 0.05 g.Chl/L value everywhere ; |
---|
846 | \item[\np{nn\_chdta}\forcode{ = 1}] |
---|
847 | an observed time varying chlorophyll deduced from satellite surface ocean color measurement spread uniformly in |
---|
848 | the vertical direction; |
---|
849 | \item[\np{nn\_chdta}\forcode{ = 2}] |
---|
850 | same as previous case except that a vertical profile of chlorophyl is used. |
---|
851 | Following \cite{morel.berthon_LO89}, the profile is computed from the local surface chlorophyll value; |
---|
852 | \item[\np{ln\_qsr\_bio}\forcode{ = .true.}] |
---|
853 | simulated time varying chlorophyll by TOP biogeochemical model. |
---|
854 | In this case, the RGB formulation is used to calculate both the phytoplankton light limitation in |
---|
855 | PISCES or LOBSTER and the oceanic heating rate. |
---|
856 | \end{description} |
---|
857 | |
---|
858 | The trend in \autoref{eq:tra_qsr} associated with the penetration of the solar radiation is added to |
---|
859 | the temperature trend, and the surface heat flux is modified in routine \mdl{traqsr}. |
---|
860 | |
---|
861 | When the $z$-coordinate is preferred to the $s$-coordinate, |
---|
862 | the depth of $w-$levels does not significantly vary with location. |
---|
863 | The level at which the light has been totally absorbed |
---|
864 | (\ie it is less than the computer precision) is computed once, |
---|
865 | and the trend associated with the penetration of the solar radiation is only added down to that level. |
---|
866 | Finally, note that when the ocean is shallow ($<$ 200~m), part of the solar radiation can reach the ocean floor. |
---|
867 | In this case, we have chosen that all remaining radiation is absorbed in the last ocean level |
---|
868 | (\ie $I$ is masked). |
---|
869 | |
---|
870 | %>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
871 | \begin{figure}[!t] |
---|
872 | \begin{center} |
---|
873 | \includegraphics[width=\textwidth]{Fig_TRA_Irradiance} |
---|
874 | \caption{ |
---|
875 | \protect\label{fig:traqsr_irradiance} |
---|
876 | Penetration profile of the downward solar irradiance calculated by four models. |
---|
877 | Two waveband chlorophyll-independent formulation (blue), |
---|
878 | a chlorophyll-dependent monochromatic formulation (green), |
---|
879 | 4 waveband RGB formulation (red), |
---|
880 | 61 waveband Morel (1988) formulation (black) for a chlorophyll concentration of |
---|
881 | (a) Chl=0.05 mg/m$^3$ and (b) Chl=0.5 mg/m$^3$. |
---|
882 | From \citet{lengaigne.menkes.ea_CD07}. |
---|
883 | } |
---|
884 | \end{center} |
---|
885 | \end{figure} |
---|
886 | %>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
887 | |
---|
888 | % ------------------------------------------------------------------------------------------------------------- |
---|
889 | % Bottom Boundary Condition |
---|
890 | % ------------------------------------------------------------------------------------------------------------- |
---|
891 | \subsection[Bottom boundary condition (\textit{trabbc.F90})] |
---|
892 | {Bottom boundary condition (\protect\mdl{trabbc})} |
---|
893 | \label{subsec:TRA_bbc} |
---|
894 | %--------------------------------------------nambbc-------------------------------------------------------- |
---|
895 | |
---|
896 | \nlst{nambbc} |
---|
897 | %-------------------------------------------------------------------------------------------------------------- |
---|
898 | %>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
899 | \begin{figure}[!t] |
---|
900 | \begin{center} |
---|
901 | \includegraphics[width=\textwidth]{Fig_TRA_geoth} |
---|
902 | \caption{ |
---|
903 | \protect\label{fig:geothermal} |
---|
904 | Geothermal Heat flux (in $mW.m^{-2}$) used by \cite{emile-geay.madec_OS09}. |
---|
905 | It is inferred from the age of the sea floor and the formulae of \citet{stein.stein_N92}. |
---|
906 | } |
---|
907 | \end{center} |
---|
908 | \end{figure} |
---|
909 | %>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
910 | |
---|
911 | Usually it is assumed that there is no exchange of heat or salt through the ocean bottom, |
---|
912 | \ie a no flux boundary condition is applied on active tracers at the bottom. |
---|
913 | This is the default option in \NEMO, and it is implemented using the masking technique. |
---|
914 | However, there is a non-zero heat flux across the seafloor that is associated with solid earth cooling. |
---|
915 | This flux is weak compared to surface fluxes (a mean global value of $\sim 0.1 \, W/m^2$ \citep{stein.stein_N92}), |
---|
916 | but it warms systematically the ocean and acts on the densest water masses. |
---|
917 | Taking this flux into account in a global ocean model increases the deepest overturning cell |
---|
918 | (\ie the one associated with the Antarctic Bottom Water) by a few Sverdrups \citep{emile-geay.madec_OS09}. |
---|
919 | |
---|
920 | Options are defined through the \ngn{namtra\_bbc} namelist variables. |
---|
921 | The presence of geothermal heating is controlled by setting the namelist parameter \np{ln\_trabbc} to true. |
---|
922 | Then, when \np{nn\_geoflx} is set to 1, a constant geothermal heating is introduced whose value is given by |
---|
923 | the \np{nn\_geoflx\_cst}, which is also a namelist parameter. |
---|
924 | When \np{nn\_geoflx} is set to 2, a spatially varying geothermal heat flux is introduced which is provided in |
---|
925 | the \ifile{geothermal\_heating} NetCDF file (\autoref{fig:geothermal}) \citep{emile-geay.madec_OS09}. |
---|
926 | |
---|
927 | % ================================================================ |
---|
928 | % Bottom Boundary Layer |
---|
929 | % ================================================================ |
---|
930 | \section[Bottom boundary layer (\textit{trabbl.F90} - \texttt{\textbf{key\_trabbl}})] |
---|
931 | {Bottom boundary layer (\protect\mdl{trabbl} - \protect\key{trabbl})} |
---|
932 | \label{sec:TRA_bbl} |
---|
933 | %--------------------------------------------nambbl--------------------------------------------------------- |
---|
934 | |
---|
935 | \nlst{nambbl} |
---|
936 | %-------------------------------------------------------------------------------------------------------------- |
---|
937 | |
---|
938 | Options are defined through the \ngn{nambbl} namelist variables. |
---|
939 | In a $z$-coordinate configuration, the bottom topography is represented by a series of discrete steps. |
---|
940 | This is not adequate to represent gravity driven downslope flows. |
---|
941 | Such flows arise either downstream of sills such as the Strait of Gibraltar or Denmark Strait, |
---|
942 | where dense water formed in marginal seas flows into a basin filled with less dense water, |
---|
943 | or along the continental slope when dense water masses are formed on a continental shelf. |
---|
944 | The amount of entrainment that occurs in these gravity plumes is critical in determining the density and |
---|
945 | volume flux of the densest waters of the ocean, such as Antarctic Bottom Water, or North Atlantic Deep Water. |
---|
946 | $z$-coordinate models tend to overestimate the entrainment, |
---|
947 | because the gravity flow is mixed vertically by convection as it goes ''downstairs'' following the step topography, |
---|
948 | sometimes over a thickness much larger than the thickness of the observed gravity plume. |
---|
949 | A similar problem occurs in the $s$-coordinate when the thickness of the bottom level varies rapidly downstream of |
---|
950 | a sill \citep{willebrand.barnier.ea_PO01}, and the thickness of the plume is not resolved. |
---|
951 | |
---|
952 | The idea of the bottom boundary layer (BBL) parameterisation, first introduced by \citet{beckmann.doscher_JPO97}, |
---|
953 | is to allow a direct communication between two adjacent bottom cells at different levels, |
---|
954 | whenever the densest water is located above the less dense water. |
---|
955 | The communication can be by a diffusive flux (diffusive BBL), an advective flux (advective BBL), or both. |
---|
956 | In the current implementation of the BBL, only the tracers are modified, not the velocities. |
---|
957 | Furthermore, it only connects ocean bottom cells, and therefore does not include all the improvements introduced by |
---|
958 | \citet{campin.goosse_T99}. |
---|
959 | |
---|
960 | % ------------------------------------------------------------------------------------------------------------- |
---|
961 | % Diffusive BBL |
---|
962 | % ------------------------------------------------------------------------------------------------------------- |
---|
963 | \subsection[Diffusive bottom boundary layer (\forcode{nn_bbl_ldf = 1})] |
---|
964 | {Diffusive bottom boundary layer (\protect\np{nn\_bbl\_ldf}\forcode{ = 1})} |
---|
965 | \label{subsec:TRA_bbl_diff} |
---|
966 | |
---|
967 | When applying sigma-diffusion (\key{trabbl} defined and \np{nn\_bbl\_ldf} set to 1), |
---|
968 | the diffusive flux between two adjacent cells at the ocean floor is given by |
---|
969 | \[ |
---|
970 | % \label{eq:tra_bbl_diff} |
---|
971 | \vect F_\sigma = A_l^\sigma \, \nabla_\sigma T |
---|
972 | \] |
---|
973 | with $\nabla_\sigma$ the lateral gradient operator taken between bottom cells, and |
---|
974 | $A_l^\sigma$ the lateral diffusivity in the BBL. |
---|
975 | Following \citet{beckmann.doscher_JPO97}, the latter is prescribed with a spatial dependence, |
---|
976 | \ie in the conditional form |
---|
977 | \begin{equation} |
---|
978 | \label{eq:tra_bbl_coef} |
---|
979 | A_l^\sigma (i,j,t) = |
---|
980 | \begin{cases} |
---|
981 | A_{bbl} & \text{if~} \nabla_\sigma \rho \cdot \nabla H < 0 \\ |
---|
982 | \\ |
---|
983 | 0 & \text{otherwise} \\ |
---|
984 | \end{cases} |
---|
985 | \end{equation} |
---|
986 | where $A_{bbl}$ is the BBL diffusivity coefficient, given by the namelist parameter \np{rn\_ahtbbl} and |
---|
987 | usually set to a value much larger than the one used for lateral mixing in the open ocean. |
---|
988 | The constraint in \autoref{eq:tra_bbl_coef} implies that sigma-like diffusion only occurs when |
---|
989 | the density above the sea floor, at the top of the slope, is larger than in the deeper ocean |
---|
990 | (see green arrow in \autoref{fig:bbl}). |
---|
991 | In practice, this constraint is applied separately in the two horizontal directions, |
---|
992 | and the density gradient in \autoref{eq:tra_bbl_coef} is evaluated with the log gradient formulation: |
---|
993 | \[ |
---|
994 | % \label{eq:tra_bbl_Drho} |
---|
995 | \nabla_\sigma \rho / \rho = \alpha \, \nabla_\sigma T + \beta \, \nabla_\sigma S |
---|
996 | \] |
---|
997 | where $\rho$, $\alpha$ and $\beta$ are functions of $\overline T^\sigma$, $\overline S^\sigma$ and |
---|
998 | $\overline H^\sigma$, the along bottom mean temperature, salinity and depth, respectively. |
---|
999 | |
---|
1000 | % ------------------------------------------------------------------------------------------------------------- |
---|
1001 | % Advective BBL |
---|
1002 | % ------------------------------------------------------------------------------------------------------------- |
---|
1003 | \subsection[Advective bottom boundary layer (\forcode{nn_bbl_adv = [12]})] |
---|
1004 | {Advective bottom boundary layer (\protect\np{nn\_bbl\_adv}\forcode{ = [12]})} |
---|
1005 | \label{subsec:TRA_bbl_adv} |
---|
1006 | |
---|
1007 | %\sgacomment{ |
---|
1008 | % "downsloping flow" has been replaced by "downslope flow" in the following |
---|
1009 | % if this is not what is meant then "downwards sloping flow" is also a possibility" |
---|
1010 | %} |
---|
1011 | |
---|
1012 | %>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
1013 | \begin{figure}[!t] |
---|
1014 | \begin{center} |
---|
1015 | \includegraphics[width=\textwidth]{Fig_BBL_adv} |
---|
1016 | \caption{ |
---|
1017 | \protect\label{fig:bbl} |
---|
1018 | Advective/diffusive Bottom Boundary Layer. |
---|
1019 | The BBL parameterisation is activated when $\rho^i_{kup}$ is larger than $\rho^{i + 1}_{kdnw}$. |
---|
1020 | Red arrows indicate the additional overturning circulation due to the advective BBL. |
---|
1021 | The transport of the downslope flow is defined either as the transport of the bottom ocean cell (black arrow), |
---|
1022 | or as a function of the along slope density gradient. |
---|
1023 | The green arrow indicates the diffusive BBL flux directly connecting $kup$ and $kdwn$ ocean bottom cells. |
---|
1024 | } |
---|
1025 | \end{center} |
---|
1026 | \end{figure} |
---|
1027 | %>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
1028 | |
---|
1029 | %!! nn_bbl_adv = 1 use of the ocean velocity as bbl velocity |
---|
1030 | %!! nn_bbl_adv = 2 follow Campin and Goosse (1999) implentation |
---|
1031 | %!! i.e. transport proportional to the along-slope density gradient |
---|
1032 | |
---|
1033 | %%%gmcomment : this section has to be really written |
---|
1034 | |
---|
1035 | When applying an advective BBL (\np{nn\_bbl\_adv}\forcode{ = 1..2}), an overturning circulation is added which |
---|
1036 | connects two adjacent bottom grid-points only if dense water overlies less dense water on the slope. |
---|
1037 | The density difference causes dense water to move down the slope. |
---|
1038 | |
---|
1039 | \np{nn\_bbl\_adv}\forcode{ = 1}: |
---|
1040 | the downslope velocity is chosen to be the Eulerian ocean velocity just above the topographic step |
---|
1041 | (see black arrow in \autoref{fig:bbl}) \citep{beckmann.doscher_JPO97}. |
---|
1042 | It is a \textit{conditional advection}, that is, advection is allowed only |
---|
1043 | if dense water overlies less dense water on the slope (\ie $\nabla_\sigma \rho \cdot \nabla H < 0$) and |
---|
1044 | if the velocity is directed towards greater depth (\ie $\vect U \cdot \nabla H > 0$). |
---|
1045 | |
---|
1046 | \np{nn\_bbl\_adv}\forcode{ = 2}: |
---|
1047 | the downslope velocity is chosen to be proportional to $\Delta \rho$, |
---|
1048 | the density difference between the higher cell and lower cell densities \citep{campin.goosse_T99}. |
---|
1049 | The advection is allowed only if dense water overlies less dense water on the slope |
---|
1050 | (\ie $\nabla_\sigma \rho \cdot \nabla H < 0$). |
---|
1051 | For example, the resulting transport of the downslope flow, here in the $i$-direction (\autoref{fig:bbl}), |
---|
1052 | is simply given by the following expression: |
---|
1053 | \[ |
---|
1054 | % \label{eq:bbl_Utr} |
---|
1055 | u^{tr}_{bbl} = \gamma g \frac{\Delta \rho}{\rho_o} e_{1u} \, min ({e_{3u}}_{kup},{e_{3u}}_{kdwn}) |
---|
1056 | \] |
---|
1057 | where $\gamma$, expressed in seconds, is the coefficient of proportionality provided as \np{rn\_gambbl}, |
---|
1058 | a namelist parameter, and \textit{kup} and \textit{kdwn} are the vertical index of the higher and lower cells, |
---|
1059 | respectively. |
---|
1060 | The parameter $\gamma$ should take a different value for each bathymetric step, but for simplicity, |
---|
1061 | and because no direct estimation of this parameter is available, a uniform value has been assumed. |
---|
1062 | The possible values for $\gamma$ range between 1 and $10~s$ \citep{campin.goosse_T99}. |
---|
1063 | |
---|
1064 | Scalar properties are advected by this additional transport $(u^{tr}_{bbl},v^{tr}_{bbl})$ using the upwind scheme. |
---|
1065 | Such a diffusive advective scheme has been chosen to mimic the entrainment between the downslope plume and |
---|
1066 | the surrounding water at intermediate depths. |
---|
1067 | The entrainment is replaced by the vertical mixing implicit in the advection scheme. |
---|
1068 | Let us consider as an example the case displayed in \autoref{fig:bbl} where |
---|
1069 | the density at level $(i,kup)$ is larger than the one at level $(i,kdwn)$. |
---|
1070 | The advective BBL scheme modifies the tracer time tendency of the ocean cells near the topographic step by |
---|
1071 | the downslope flow \autoref{eq:bbl_dw}, the horizontal \autoref{eq:bbl_hor} and |
---|
1072 | the upward \autoref{eq:bbl_up} return flows as follows: |
---|
1073 | \begin{alignat}{3} |
---|
1074 | \label{eq:bbl_dw} |
---|
1075 | \partial_t T^{do}_{kdw} &\equiv \partial_t T^{do}_{kdw} |
---|
1076 | &&+ \frac{u^{tr}_{bbl}}{{b_t}^{do}_{kdw}} &&\lt( T^{sh}_{kup} - T^{do}_{kdw} \rt) \\ |
---|
1077 | \label{eq:bbl_hor} |
---|
1078 | \partial_t T^{sh}_{kup} &\equiv \partial_t T^{sh}_{kup} |
---|
1079 | &&+ \frac{u^{tr}_{bbl}}{{b_t}^{sh}_{kup}} &&\lt( T^{do}_{kup} - T^{sh}_{kup} \rt) \\ |
---|
1080 | % |
---|
1081 | \intertext{and for $k =kdw-1,\;..., \; kup$ :} |
---|
1082 | % |
---|
1083 | \label{eq:bbl_up} |
---|
1084 | \partial_t T^{do}_{k} &\equiv \partial_t S^{do}_{k} |
---|
1085 | &&+ \frac{u^{tr}_{bbl}}{{b_t}^{do}_{k}} &&\lt( T^{do}_{k +1} - T^{sh}_{k} \rt) |
---|
1086 | \end{alignat} |
---|
1087 | where $b_t$ is the $T$-cell volume. |
---|
1088 | |
---|
1089 | Note that the BBL transport, $(u^{tr}_{bbl},v^{tr}_{bbl})$, is available in the model outputs. |
---|
1090 | It has to be used to compute the effective velocity as well as the effective overturning circulation. |
---|
1091 | |
---|
1092 | % ================================================================ |
---|
1093 | % Tracer damping |
---|
1094 | % ================================================================ |
---|
1095 | \section[Tracer damping (\textit{tradmp.F90})] |
---|
1096 | {Tracer damping (\protect\mdl{tradmp})} |
---|
1097 | \label{sec:TRA_dmp} |
---|
1098 | %--------------------------------------------namtra_dmp------------------------------------------------- |
---|
1099 | |
---|
1100 | \nlst{namtra_dmp} |
---|
1101 | %-------------------------------------------------------------------------------------------------------------- |
---|
1102 | |
---|
1103 | In some applications it can be useful to add a Newtonian damping term into the temperature and salinity equations: |
---|
1104 | \begin{equation} |
---|
1105 | \label{eq:tra_dmp} |
---|
1106 | \begin{gathered} |
---|
1107 | \pd[T]{t} = \cdots - \gamma (T - T_o) \\ |
---|
1108 | \pd[S]{t} = \cdots - \gamma (S - S_o) |
---|
1109 | \end{gathered} |
---|
1110 | \end{equation} |
---|
1111 | where $\gamma$ is the inverse of a time scale, and $T_o$ and $S_o$ are given temperature and salinity fields |
---|
1112 | (usually a climatology). |
---|
1113 | Options are defined through the \ngn{namtra\_dmp} namelist variables. |
---|
1114 | The restoring term is added when the namelist parameter \np{ln\_tradmp} is set to true. |
---|
1115 | It also requires that both \np{ln\_tsd\_init} and \np{ln\_tsd\_tradmp} are set to true in |
---|
1116 | \ngn{namtsd} namelist as well as \np{sn\_tem} and \np{sn\_sal} structures are correctly set |
---|
1117 | (\ie that $T_o$ and $S_o$ are provided in input files and read using \mdl{fldread}, |
---|
1118 | see \autoref{subsec:SBC_fldread}). |
---|
1119 | The restoring coefficient $\gamma$ is a three-dimensional array read in during the \rou{tra\_dmp\_init} routine. |
---|
1120 | The file name is specified by the namelist variable \np{cn\_resto}. |
---|
1121 | The DMP\_TOOLS tool is provided to allow users to generate the netcdf file. |
---|
1122 | |
---|
1123 | The two main cases in which \autoref{eq:tra_dmp} is used are |
---|
1124 | \textit{(a)} the specification of the boundary conditions along artificial walls of a limited domain basin and |
---|
1125 | \textit{(b)} the computation of the velocity field associated with a given $T$-$S$ field |
---|
1126 | (for example to build the initial state of a prognostic simulation, |
---|
1127 | or to use the resulting velocity field for a passive tracer study). |
---|
1128 | The first case applies to regional models that have artificial walls instead of open boundaries. |
---|
1129 | In the vicinity of these walls, $\gamma$ takes large values (equivalent to a time scale of a few days) whereas |
---|
1130 | it is zero in the interior of the model domain. |
---|
1131 | The second case corresponds to the use of the robust diagnostic method \citep{sarmiento.bryan_JGR82}. |
---|
1132 | It allows us to find the velocity field consistent with the model dynamics whilst |
---|
1133 | having a $T$, $S$ field close to a given climatological field ($T_o$, $S_o$). |
---|
1134 | |
---|
1135 | The robust diagnostic method is very efficient in preventing temperature drift in intermediate waters but |
---|
1136 | it produces artificial sources of heat and salt within the ocean. |
---|
1137 | It also has undesirable effects on the ocean convection. |
---|
1138 | It tends to prevent deep convection and subsequent deep-water formation, by stabilising the water column too much. |
---|
1139 | |
---|
1140 | The namelist parameter \np{nn\_zdmp} sets whether the damping should be applied in the whole water column or |
---|
1141 | only below the mixed layer (defined either on a density or $S_o$ criterion). |
---|
1142 | It is common to set the damping to zero in the mixed layer as the adjustment time scale is short here |
---|
1143 | \citep{madec.delecluse.ea_JPO96}. |
---|
1144 | |
---|
1145 | For generating \ifile{resto}, see the documentation for the DMP tool provided with the source code under |
---|
1146 | \path{./tools/DMP_TOOLS}. |
---|
1147 | |
---|
1148 | % ================================================================ |
---|
1149 | % Tracer time evolution |
---|
1150 | % ================================================================ |
---|
1151 | \section[Tracer time evolution (\textit{tranxt.F90})] |
---|
1152 | {Tracer time evolution (\protect\mdl{tranxt})} |
---|
1153 | \label{sec:TRA_nxt} |
---|
1154 | %--------------------------------------------namdom----------------------------------------------------- |
---|
1155 | |
---|
1156 | \nlst{namdom} |
---|
1157 | %-------------------------------------------------------------------------------------------------------------- |
---|
1158 | |
---|
1159 | Options are defined through the \ngn{namdom} namelist variables. |
---|
1160 | The general framework for tracer time stepping is a modified leap-frog scheme \citep{leclair.madec_OM09}, |
---|
1161 | \ie a three level centred time scheme associated with a Asselin time filter (cf. \autoref{sec:STP_mLF}): |
---|
1162 | \begin{equation} |
---|
1163 | \label{eq:tra_nxt} |
---|
1164 | \begin{alignedat}{3} |
---|
1165 | &(e_{3t}T)^{t + \rdt} &&= (e_{3t}T)_f^{t - \rdt} &&+ 2 \, \rdt \,e_{3t}^t \ \text{RHS}^t \\ |
---|
1166 | &(e_{3t}T)_f^t &&= (e_{3t}T)^t &&+ \, \gamma \, \lt[ (e_{3t}T)_f^{t - \rdt} - 2(e_{3t}T)^t + (e_{3t}T)^{t + \rdt} \rt] \\ |
---|
1167 | & && &&- \, \gamma \, \rdt \, \lt[ Q^{t + \rdt/2} - Q^{t - \rdt/2} \rt] |
---|
1168 | \end{alignedat} |
---|
1169 | \end{equation} |
---|
1170 | where RHS is the right hand side of the temperature equation, the subscript $f$ denotes filtered values, |
---|
1171 | $\gamma$ is the Asselin coefficient, and $S$ is the total forcing applied on $T$ |
---|
1172 | (\ie fluxes plus content in mass exchanges). |
---|
1173 | $\gamma$ is initialized as \np{rn\_atfp} (\textbf{namelist} parameter). |
---|
1174 | Its default value is \np{rn\_atfp}\forcode{ = 10.e-3}. |
---|
1175 | Note that the forcing correction term in the filter is not applied in linear free surface |
---|
1176 | (\jp{lk\_vvl}\forcode{ = .false.}) (see \autoref{subsec:TRA_sbc}). |
---|
1177 | Not also that in constant volume case, the time stepping is performed on $T$, not on its content, $e_{3t}T$. |
---|
1178 | |
---|
1179 | When the vertical mixing is solved implicitly, the update of the \textit{next} tracer fields is done in |
---|
1180 | \mdl{trazdf} module. |
---|
1181 | In this case only the swapping of arrays and the Asselin filtering is done in the \mdl{tranxt} module. |
---|
1182 | |
---|
1183 | In order to prepare for the computation of the \textit{next} time step, a swap of tracer arrays is performed: |
---|
1184 | $T^{t - \rdt} = T^t$ and $T^t = T_f$. |
---|
1185 | |
---|
1186 | % ================================================================ |
---|
1187 | % Equation of State (eosbn2) |
---|
1188 | % ================================================================ |
---|
1189 | \section[Equation of state (\textit{eosbn2.F90})] |
---|
1190 | {Equation of state (\protect\mdl{eosbn2})} |
---|
1191 | \label{sec:TRA_eosbn2} |
---|
1192 | %--------------------------------------------nameos----------------------------------------------------- |
---|
1193 | |
---|
1194 | \nlst{nameos} |
---|
1195 | %-------------------------------------------------------------------------------------------------------------- |
---|
1196 | |
---|
1197 | % ------------------------------------------------------------------------------------------------------------- |
---|
1198 | % Equation of State |
---|
1199 | % ------------------------------------------------------------------------------------------------------------- |
---|
1200 | \subsection[Equation of seawater (\forcode{nn_eos = {-1,1}})] |
---|
1201 | {Equation of seawater (\protect\np{nn\_eos}\forcode{ = {-1,1}})} |
---|
1202 | \label{subsec:TRA_eos} |
---|
1203 | |
---|
1204 | The Equation Of Seawater (EOS) is an empirical nonlinear thermodynamic relationship linking seawater density, |
---|
1205 | $\rho$, to a number of state variables, most typically temperature, salinity and pressure. |
---|
1206 | Because density gradients control the pressure gradient force through the hydrostatic balance, |
---|
1207 | the equation of state provides a fundamental bridge between the distribution of active tracers and |
---|
1208 | the fluid dynamics. |
---|
1209 | Nonlinearities of the EOS are of major importance, in particular influencing the circulation through |
---|
1210 | determination of the static stability below the mixed layer, |
---|
1211 | thus controlling rates of exchange between the atmosphere and the ocean interior \citep{roquet.madec.ea_JPO15}. |
---|
1212 | Therefore an accurate EOS based on either the 1980 equation of state (EOS-80, \cite{fofonoff.millard_bk83}) or |
---|
1213 | TEOS-10 \citep{ioc.iapso_bk10} standards should be used anytime a simulation of the real ocean circulation is attempted |
---|
1214 | \citep{roquet.madec.ea_JPO15}. |
---|
1215 | The use of TEOS-10 is highly recommended because |
---|
1216 | \textit{(i)} it is the new official EOS, |
---|
1217 | \textit{(ii)} it is more accurate, being based on an updated database of laboratory measurements, and |
---|
1218 | \textit{(iii)} it uses Conservative Temperature and Absolute Salinity (instead of potential temperature and |
---|
1219 | practical salinity for EOS-980, both variables being more suitable for use as model variables |
---|
1220 | \citep{ioc.iapso_bk10, graham.mcdougall_JPO13}. |
---|
1221 | EOS-80 is an obsolescent feature of the NEMO system, kept only for backward compatibility. |
---|
1222 | For process studies, it is often convenient to use an approximation of the EOS. |
---|
1223 | To that purposed, a simplified EOS (S-EOS) inspired by \citet{vallis_bk06} is also available. |
---|
1224 | |
---|
1225 | In the computer code, a density anomaly, $d_a = \rho / \rho_o - 1$, is computed, with $\rho_o$ a reference density. |
---|
1226 | Called \textit{rau0} in the code, $\rho_o$ is set in \mdl{phycst} to a value of $1,026~Kg/m^3$. |
---|
1227 | This is a sensible choice for the reference density used in a Boussinesq ocean climate model, as, |
---|
1228 | with the exception of only a small percentage of the ocean, |
---|
1229 | density in the World Ocean varies by no more than 2$\%$ from that value \citep{gill_bk82}. |
---|
1230 | |
---|
1231 | Options are defined through the \ngn{nameos} namelist variables, and in particular \np{nn\_eos} which |
---|
1232 | controls the EOS used (\forcode{= -1} for TEOS10 ; \forcode{= 0} for EOS-80 ; \forcode{= 1} for S-EOS). |
---|
1233 | |
---|
1234 | \begin{description} |
---|
1235 | \item[\np{nn\_eos}\forcode{ = -1}] |
---|
1236 | the polyTEOS10-bsq equation of seawater \citep{roquet.madec.ea_OM15} is used. |
---|
1237 | The accuracy of this approximation is comparable to the TEOS-10 rational function approximation, |
---|
1238 | but it is optimized for a boussinesq fluid and the polynomial expressions have simpler and |
---|
1239 | more computationally efficient expressions for their derived quantities which make them more adapted for |
---|
1240 | use in ocean models. |
---|
1241 | Note that a slightly higher precision polynomial form is now used replacement of |
---|
1242 | the TEOS-10 rational function approximation for hydrographic data analysis \citep{ioc.iapso_bk10}. |
---|
1243 | A key point is that conservative state variables are used: |
---|
1244 | Absolute Salinity (unit: g/kg, notation: $S_A$) and Conservative Temperature (unit: \deg{C}, notation: $\Theta$). |
---|
1245 | The pressure in decibars is approximated by the depth in meters. |
---|
1246 | With TEOS10, the specific heat capacity of sea water, $C_p$, is a constant. |
---|
1247 | It is set to $C_p = 3991.86795711963~J\,Kg^{-1}\,^{\circ}K^{-1}$, according to \citet{ioc.iapso_bk10}. |
---|
1248 | Choosing polyTEOS10-bsq implies that the state variables used by the model are $\Theta$ and $S_A$. |
---|
1249 | In particular, the initial state deined by the user have to be given as \textit{Conservative} Temperature and |
---|
1250 | \textit{Absolute} Salinity. |
---|
1251 | In addition, setting \np{ln\_useCT} to \forcode{.true.} convert the Conservative SST to potential SST prior to |
---|
1252 | either computing the air-sea and ice-sea fluxes (forced mode) or |
---|
1253 | sending the SST field to the atmosphere (coupled mode). |
---|
1254 | \item[\np{nn\_eos}\forcode{ = 0}] |
---|
1255 | the polyEOS80-bsq equation of seawater is used. |
---|
1256 | It takes the same polynomial form as the polyTEOS10, but the coefficients have been optimized to |
---|
1257 | accurately fit EOS80 (Roquet, personal comm.). |
---|
1258 | The state variables used in both the EOS80 and the ocean model are: |
---|
1259 | the Practical Salinity ((unit: psu, notation: $S_p$)) and |
---|
1260 | Potential Temperature (unit: $^{\circ}C$, notation: $\theta$). |
---|
1261 | The pressure in decibars is approximated by the depth in meters. |
---|
1262 | With thsi EOS, the specific heat capacity of sea water, $C_p$, is a function of temperature, salinity and |
---|
1263 | pressure \citep{fofonoff.millard_bk83}. |
---|
1264 | Nevertheless, a severe assumption is made in order to have a heat content ($C_p T_p$) which |
---|
1265 | is conserved by the model: $C_p$ is set to a constant value, the TEOS10 value. |
---|
1266 | \item[\np{nn\_eos}\forcode{ = 1}] |
---|
1267 | a simplified EOS (S-EOS) inspired by \citet{vallis_bk06} is chosen, |
---|
1268 | the coefficients of which has been optimized to fit the behavior of TEOS10 |
---|
1269 | (Roquet, personal comm.) (see also \citet{roquet.madec.ea_JPO15}). |
---|
1270 | It provides a simplistic linear representation of both cabbeling and thermobaricity effects which |
---|
1271 | is enough for a proper treatment of the EOS in theoretical studies \citep{roquet.madec.ea_JPO15}. |
---|
1272 | With such an equation of state there is no longer a distinction between |
---|
1273 | \textit{conservative} and \textit{potential} temperature, |
---|
1274 | as well as between \textit{absolute} and \textit{practical} salinity. |
---|
1275 | S-EOS takes the following expression: |
---|
1276 | \begin{gather*} |
---|
1277 | % \label{eq:tra_S-EOS} |
---|
1278 | \begin{alignedat}{2} |
---|
1279 | &d_a(T,S,z) = \frac{1}{\rho_o} \big[ &- a_0 \; ( 1 + 0.5 \; \lambda_1 \; T_a + \mu_1 \; z ) * &T_a \big. \\ |
---|
1280 | & &+ b_0 \; ( 1 - 0.5 \; \lambda_2 \; S_a - \mu_2 \; z ) * &S_a \\ |
---|
1281 | & \big. &- \nu \; T_a &S_a \big] \\ |
---|
1282 | \end{alignedat} |
---|
1283 | \\ |
---|
1284 | \text{with~} T_a = T - 10 \, ; \, S_a = S - 35 \, ; \, \rho_o = 1026~Kg/m^3 |
---|
1285 | \end{gather*} |
---|
1286 | where the computer name of the coefficients as well as their standard value are given in \autoref{tab:SEOS}. |
---|
1287 | In fact, when choosing S-EOS, various approximation of EOS can be specified simply by |
---|
1288 | changing the associated coefficients. |
---|
1289 | Setting to zero the two thermobaric coefficients $(\mu_1,\mu_2)$ remove thermobaric effect from S-EOS. |
---|
1290 | setting to zero the three cabbeling coefficients $(\lambda_1,\lambda_2,\nu)$ remove cabbeling effect from |
---|
1291 | S-EOS. |
---|
1292 | Keeping non-zero value to $a_0$ and $b_0$ provide a linear EOS function of T and S. |
---|
1293 | \end{description} |
---|
1294 | |
---|
1295 | %>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
1296 | \begin{table}[!tb] |
---|
1297 | \begin{center} |
---|
1298 | \begin{tabular}{|l|l|l|l|} |
---|
1299 | \hline |
---|
1300 | coeff. & computer name & S-EOS & description \\ |
---|
1301 | \hline |
---|
1302 | $a_0$ & \np{rn\_a0} & $1.6550~10^{-1}$ & linear thermal expansion coeff. \\ |
---|
1303 | \hline |
---|
1304 | $b_0$ & \np{rn\_b0} & $7.6554~10^{-1}$ & linear haline expansion coeff. \\ |
---|
1305 | \hline |
---|
1306 | $\lambda_1$ & \np{rn\_lambda1}& $5.9520~10^{-2}$ & cabbeling coeff. in $T^2$ \\ |
---|
1307 | \hline |
---|
1308 | $\lambda_2$ & \np{rn\_lambda2}& $5.4914~10^{-4}$ & cabbeling coeff. in $S^2$ \\ |
---|
1309 | \hline |
---|
1310 | $\nu$ & \np{rn\_nu} & $2.4341~10^{-3}$ & cabbeling coeff. in $T \, S$ \\ |
---|
1311 | \hline |
---|
1312 | $\mu_1$ & \np{rn\_mu1} & $1.4970~10^{-4}$ & thermobaric coeff. in T \\ |
---|
1313 | \hline |
---|
1314 | $\mu_2$ & \np{rn\_mu2} & $1.1090~10^{-5}$ & thermobaric coeff. in S \\ |
---|
1315 | \hline |
---|
1316 | \end{tabular} |
---|
1317 | \caption{ |
---|
1318 | \protect\label{tab:SEOS} |
---|
1319 | Standard value of S-EOS coefficients. |
---|
1320 | } |
---|
1321 | \end{center} |
---|
1322 | \end{table} |
---|
1323 | %>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
1324 | |
---|
1325 | % ------------------------------------------------------------------------------------------------------------- |
---|
1326 | % Brunt-V\"{a}is\"{a}l\"{a} Frequency |
---|
1327 | % ------------------------------------------------------------------------------------------------------------- |
---|
1328 | \subsection[Brunt-V\"{a}is\"{a}l\"{a} frequency (\forcode{nn_eos = [0-2]})] |
---|
1329 | {Brunt-V\"{a}is\"{a}l\"{a} frequency (\protect\np{nn\_eos}\forcode{ = [0-2]})} |
---|
1330 | \label{subsec:TRA_bn2} |
---|
1331 | |
---|
1332 | An accurate computation of the ocean stability (i.e. of $N$, the brunt-V\"{a}is\"{a}l\"{a} frequency) is of |
---|
1333 | paramount importance as determine the ocean stratification and is used in several ocean parameterisations |
---|
1334 | (namely TKE, GLS, Richardson number dependent vertical diffusion, enhanced vertical diffusion, |
---|
1335 | non-penetrative convection, tidal mixing parameterisation, iso-neutral diffusion). |
---|
1336 | In particular, $N^2$ has to be computed at the local pressure |
---|
1337 | (pressure in decibar being approximated by the depth in meters). |
---|
1338 | The expression for $N^2$ is given by: |
---|
1339 | \[ |
---|
1340 | % \label{eq:tra_bn2} |
---|
1341 | N^2 = \frac{g}{e_{3w}} \lt( \beta \; \delta_{k + 1/2}[S] - \alpha \; \delta_{k + 1/2}[T] \rt) |
---|
1342 | \] |
---|
1343 | where $(T,S) = (\Theta,S_A)$ for TEOS10, $(\theta,S_p)$ for TEOS-80, or $(T,S)$ for S-EOS, and, |
---|
1344 | $\alpha$ and $\beta$ are the thermal and haline expansion coefficients. |
---|
1345 | The coefficients are a polynomial function of temperature, salinity and depth which expression depends on |
---|
1346 | the chosen EOS. |
---|
1347 | They are computed through \textit{eos\_rab}, a \fortran function that can be found in \mdl{eosbn2}. |
---|
1348 | |
---|
1349 | % ------------------------------------------------------------------------------------------------------------- |
---|
1350 | % Freezing Point of Seawater |
---|
1351 | % ------------------------------------------------------------------------------------------------------------- |
---|
1352 | \subsection{Freezing point of seawater} |
---|
1353 | \label{subsec:TRA_fzp} |
---|
1354 | |
---|
1355 | The freezing point of seawater is a function of salinity and pressure \citep{fofonoff.millard_bk83}: |
---|
1356 | \begin{equation} |
---|
1357 | \label{eq:tra_eos_fzp} |
---|
1358 | \begin{split} |
---|
1359 | &T_f (S,p) = \lt( a + b \, \sqrt{S} + c \, S \rt) \, S + d \, p \\ |
---|
1360 | &\text{where~} a = -0.0575, \, b = 1.710523~10^{-3}, \, c = -2.154996~10^{-4} \\ |
---|
1361 | &\text{and~} d = -7.53~10^{-3} |
---|
1362 | \end{split} |
---|
1363 | \end{equation} |
---|
1364 | |
---|
1365 | \autoref{eq:tra_eos_fzp} is only used to compute the potential freezing point of sea water |
---|
1366 | (\ie referenced to the surface $p = 0$), |
---|
1367 | thus the pressure dependent terms in \autoref{eq:tra_eos_fzp} (last term) have been dropped. |
---|
1368 | The freezing point is computed through \textit{eos\_fzp}, |
---|
1369 | a \fortran function that can be found in \mdl{eosbn2}. |
---|
1370 | |
---|
1371 | % ------------------------------------------------------------------------------------------------------------- |
---|
1372 | % Potential Energy |
---|
1373 | % ------------------------------------------------------------------------------------------------------------- |
---|
1374 | %\subsection{Potential Energy anomalies} |
---|
1375 | %\label{subsec:TRA_bn2} |
---|
1376 | |
---|
1377 | % =====>>>>> TO BE written |
---|
1378 | % |
---|
1379 | |
---|
1380 | % ================================================================ |
---|
1381 | % Horizontal Derivative in zps-coordinate |
---|
1382 | % ================================================================ |
---|
1383 | \section[Horizontal derivative in \textit{zps}-coordinate (\textit{zpshde.F90})] |
---|
1384 | {Horizontal derivative in \textit{zps}-coordinate (\protect\mdl{zpshde})} |
---|
1385 | \label{sec:TRA_zpshde} |
---|
1386 | |
---|
1387 | \gmcomment{STEVEN: to be consistent with earlier discussion of differencing and averaging operators, |
---|
1388 | I've changed "derivative" to "difference" and "mean" to "average"} |
---|
1389 | |
---|
1390 | With partial cells (\np{ln\_zps}\forcode{ = .true.}) at bottom and top (\np{ln\_isfcav}\forcode{ = .true.}), |
---|
1391 | in general, tracers in horizontally adjacent cells live at different depths. |
---|
1392 | Horizontal gradients of tracers are needed for horizontal diffusion (\mdl{traldf} module) and |
---|
1393 | the hydrostatic pressure gradient calculations (\mdl{dynhpg} module). |
---|
1394 | The partial cell properties at the top (\np{ln\_isfcav}\forcode{ = .true.}) are computed in the same way as |
---|
1395 | for the bottom. |
---|
1396 | So, only the bottom interpolation is explained below. |
---|
1397 | |
---|
1398 | Before taking horizontal gradients between the tracers next to the bottom, |
---|
1399 | a linear interpolation in the vertical is used to approximate the deeper tracer as if |
---|
1400 | it actually lived at the depth of the shallower tracer point (\autoref{fig:Partial_step_scheme}). |
---|
1401 | For example, for temperature in the $i$-direction the needed interpolated temperature, $\widetilde T$, is: |
---|
1402 | |
---|
1403 | %>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
1404 | \begin{figure}[!p] |
---|
1405 | \begin{center} |
---|
1406 | \includegraphics[width=\textwidth]{Fig_partial_step_scheme} |
---|
1407 | \caption{ |
---|
1408 | \protect\label{fig:Partial_step_scheme} |
---|
1409 | Discretisation of the horizontal difference and average of tracers in the $z$-partial step coordinate |
---|
1410 | (\protect\np{ln\_zps}\forcode{ = .true.}) in the case $(e3w_k^{i + 1} - e3w_k^i) > 0$. |
---|
1411 | A linear interpolation is used to estimate $\widetilde T_k^{i + 1}$, |
---|
1412 | the tracer value at the depth of the shallower tracer point of the two adjacent bottom $T$-points. |
---|
1413 | The horizontal difference is then given by: $\delta_{i + 1/2} T_k = \widetilde T_k^{\, i + 1} -T_k^{\, i}$ and |
---|
1414 | the average by: $\overline T_k^{\, i + 1/2} = (\widetilde T_k^{\, i + 1/2} - T_k^{\, i}) / 2$. |
---|
1415 | } |
---|
1416 | \end{center} |
---|
1417 | \end{figure} |
---|
1418 | %>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
1419 | \[ |
---|
1420 | \widetilde T = \lt\{ |
---|
1421 | \begin{alignedat}{2} |
---|
1422 | &T^{\, i + 1} &-\frac{ \lt( e_{3w}^{i + 1} -e_{3w}^i \rt) }{ e_{3w}^{i + 1} } \; \delta_k T^{i + 1} |
---|
1423 | & \quad \text{if $e_{3w}^{i + 1} \geq e_{3w}^i$} \\ \\ |
---|
1424 | &T^{\, i} &+\frac{ \lt( e_{3w}^{i + 1} -e_{3w}^i \rt )}{e_{3w}^i } \; \delta_k T^{i + 1} |
---|
1425 | & \quad \text{if $e_{3w}^{i + 1} < e_{3w}^i$} |
---|
1426 | \end{alignedat} |
---|
1427 | \rt. |
---|
1428 | \] |
---|
1429 | and the resulting forms for the horizontal difference and the horizontal average value of $T$ at a $U$-point are: |
---|
1430 | \begin{equation} |
---|
1431 | \label{eq:zps_hde} |
---|
1432 | \begin{split} |
---|
1433 | \delta_{i + 1/2} T &= |
---|
1434 | \begin{cases} |
---|
1435 | \widetilde T - T^i & \text{if~} e_{3w}^{i + 1} \geq e_{3w}^i \\ |
---|
1436 | \\ |
---|
1437 | T^{\, i + 1} - \widetilde T & \text{if~} e_{3w}^{i + 1} < e_{3w}^i |
---|
1438 | \end{cases} |
---|
1439 | \\ |
---|
1440 | \overline T^{\, i + 1/2} &= |
---|
1441 | \begin{cases} |
---|
1442 | (\widetilde T - T^{\, i} ) / 2 & \text{if~} e_{3w}^{i + 1} \geq e_{3w}^i \\ |
---|
1443 | \\ |
---|
1444 | (T^{\, i + 1} - \widetilde T) / 2 & \text{if~} e_{3w}^{i + 1} < e_{3w}^i |
---|
1445 | \end{cases} |
---|
1446 | \end{split} |
---|
1447 | \end{equation} |
---|
1448 | |
---|
1449 | The computation of horizontal derivative of tracers as well as of density is performed once for all at |
---|
1450 | each time step in \mdl{zpshde} module and stored in shared arrays to be used when needed. |
---|
1451 | It has to be emphasized that the procedure used to compute the interpolated density, $\widetilde \rho$, |
---|
1452 | is not the same as that used for $T$ and $S$. |
---|
1453 | Instead of forming a linear approximation of density, we compute $\widetilde \rho$ from the interpolated values of |
---|
1454 | $T$ and $S$, and the pressure at a $u$-point |
---|
1455 | (in the equation of state pressure is approximated by depth, see \autoref{subsec:TRA_eos}): |
---|
1456 | \[ |
---|
1457 | % \label{eq:zps_hde_rho} |
---|
1458 | \widetilde \rho = \rho (\widetilde T,\widetilde S,z_u) \quad \text{where~} z_u = \min \lt( z_T^{i + 1},z_T^i \rt) |
---|
1459 | \] |
---|
1460 | |
---|
1461 | This is a much better approximation as the variation of $\rho$ with depth (and thus pressure) |
---|
1462 | is highly non-linear with a true equation of state and thus is badly approximated with a linear interpolation. |
---|
1463 | This approximation is used to compute both the horizontal pressure gradient (\autoref{sec:DYN_hpg}) and |
---|
1464 | the slopes of neutral surfaces (\autoref{sec:LDF_slp}). |
---|
1465 | |
---|
1466 | Note that in almost all the advection schemes presented in this Chapter, |
---|
1467 | both averaging and differencing operators appear. |
---|
1468 | Yet \autoref{eq:zps_hde} has not been used in these schemes: |
---|
1469 | in contrast to diffusion and pressure gradient computations, |
---|
1470 | no correction for partial steps is applied for advection. |
---|
1471 | The main motivation is to preserve the domain averaged mean variance of the advected field when |
---|
1472 | using the $2^{nd}$ order centred scheme. |
---|
1473 | Sensitivity of the advection schemes to the way horizontal averages are performed in the vicinity of |
---|
1474 | partial cells should be further investigated in the near future. |
---|
1475 | %%% |
---|
1476 | \gmcomment{gm : this last remark has to be done} |
---|
1477 | %%% |
---|
1478 | |
---|
1479 | \biblio |
---|
1480 | |
---|
1481 | \pindex |
---|
1482 | |
---|
1483 | \end{document} |
---|