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