Changeset 11577
- Timestamp:
- 2019-09-19T19:01:38+02:00 (5 years ago)
- Location:
- NEMO/trunk/doc/latex
- Files:
-
- 24 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/doc/latex/NEMO/subfiles/apdx_DOMAINcfg.tex
r11571 r11577 51 51 52 52 The user has three options available in defining a horizontal grid, which involve the 53 namelist variable \np{jphgr \_mesh} of the \nam{dom} (\texttt{DOMAINcfg} variant only)53 namelist variable \np{jphgr_mesh}{jphgr\_mesh} of the \nam{dom} (\texttt{DOMAINcfg} variant only) 54 54 namelist. 55 55 56 56 \begin{description} 57 \item[\np{jphgr \_mesh}=0] The most general curvilinear orthogonal grids.57 \item[\np{jphgr_mesh}{jphgr\_mesh}=0] The most general curvilinear orthogonal grids. 58 58 The coordinates and their first derivatives with respect to $i$ and $j$ are provided 59 59 in a input file (\ifile{coordinates}), read in \rou{hgr\_read} subroutine of the domhgr module. 60 60 This is now the only option available within \NEMO\ itself from v4.0 onwards. 61 \item[\np{jphgr \_mesh}=1 to 5] A few simple analytical grids are provided (see below).61 \item[\np{jphgr_mesh}{jphgr\_mesh}=1 to 5] A few simple analytical grids are provided (see below). 62 62 For other analytical grids, the \mdl{domhgr} module (\texttt{DOMAINcfg} variant) must be 63 63 modified by the user. In most cases, modifying the \mdl{usrdef\_hgr} module of \NEMO\ is … … 67 67 68 68 There are two simple cases of geographical grids on the sphere. With 69 \np{jphgr \_mesh}=1, the grid (expressed in degrees) is regular in space,70 with grid sizes specified by parameters \np{ppe1 \_deg} and \np{ppe2\_deg},69 \np{jphgr_mesh}{jphgr\_mesh}=1, the grid (expressed in degrees) is regular in space, 70 with grid sizes specified by parameters \np{ppe1_deg}{ppe1\_deg} and \np{ppe2_deg}{ppe2\_deg}, 71 71 respectively. Such a geographical grid can be very anisotropic at high latitudes 72 72 because of the convergence of meridians (the zonal scale factors $e_1$ 73 73 become much smaller than the meridional scale factors $e_2$). The Mercator 74 grid (\np{jphgr \_mesh}=4) avoids this anisotropy by refining the meridional scale74 grid (\np{jphgr_mesh}{jphgr\_mesh}=4) avoids this anisotropy by refining the meridional scale 75 75 factors in the same way as the zonal ones. In this case, meridional scale factors 76 76 and latitudes are calculated analytically using the formulae appropriate for 77 a Mercator projection, based on \np{ppe1 \_deg} which is a reference grid spacing77 a Mercator projection, based on \np{ppe1_deg}{ppe1\_deg} which is a reference grid spacing 78 78 at the equator (this applies even when the geographical equator is situated outside 79 79 the model domain). 80 80 81 In these two cases (\np{jphgr \_mesh}=1 or 4), the grid position is defined by the81 In these two cases (\np{jphgr_mesh}{jphgr\_mesh}=1 or 4), the grid position is defined by the 82 82 longitude and latitude of the south-westernmost point (\np{ppglamt0} 83 83 and \np{ppgphi0}). Note that for the Mercator grid the user need only provide … … 87 87 88 88 Rectangular grids ignoring the spherical geometry are defined with 89 \np{jphgr \_mesh} = 2, 3, 5. The domain is either an $f$-plane (\np{jphgr\_mesh} = 2,90 Coriolis factor is constant) or a beta-plane (\np{jphgr \_mesh} = 3, the Coriolis factor89 \np{jphgr_mesh}{jphgr\_mesh} = 2, 3, 5. The domain is either an $f$-plane (\np{jphgr\_mesh} = 2, 90 Coriolis factor is constant) or a beta-plane (\np{jphgr_mesh}{jphgr\_mesh} = 3, the Coriolis factor 91 91 is linear in the $j$-direction). The grid size is uniform in meter in each direction, 92 and given by the parameters \np{ppe1 \_m} and \np{ppe2\_m} respectively.92 and given by the parameters \np{ppe1_m}{ppe1\_m} and \np{ppe2_m}{ppe2\_m} respectively. 93 93 The zonal grid coordinate (\textit{glam} arrays) is in kilometers, starting at zero 94 94 with the first $t$-point. The meridional coordinate (gphi. arrays) is in kilometers, … … 97 97 latitude for computation of the Coriolis parameter. In the case of the beta plane, 98 98 \np{ppgphi0} corresponds to the center of the domain. Finally, the special case 99 \np{jphgr \_mesh}=5 corresponds to a beta plane in a rotated domain for the99 \np{jphgr_mesh}{jphgr\_mesh}=5 corresponds to a beta plane in a rotated domain for the 100 100 GYRE configuration, representing a classical mid-latitude double gyre system. 101 101 The rotation allows us to maximize the jet length relative to the gyre areas … … 170 170 \end{gather} 171 171 172 If the ice shelf cavities are opened (\np{ln \_isfcav}\forcode{ = .true.}), the definition172 If the ice shelf cavities are opened (\np{ln_isfcav}{ln\_isfcav}\forcode{ = .true.}), the definition 173 173 of $z_0$ is the same. However, definition of $e_3^0$ at $t$- and $w$-points is 174 174 respectively changed to: … … 312 312 313 313 Three options are possible for defining the bathymetry, according to the namelist variable 314 \np{nn \_bathy} (found in \nam{dom} namelist (\texttt{DOMAINCFG} variant) ):314 \np{nn_bathy}{nn\_bathy} (found in \nam{dom} namelist (\texttt{DOMAINCFG} variant) ): 315 315 \begin{description} 316 \item[\np{nn \_bathy}\forcode{ = 0}]:316 \item[\np{nn_bathy}{nn\_bathy}\forcode{ = 0}]: 317 317 a flat-bottom domain is defined. 318 318 The total depth $z_w (jpk)$ is given by the coordinate transformation. 319 319 The domain can either be a closed basin or a periodic channel depending on the parameter \np{jperio}. 320 \item[\np{nn \_bathy}\forcode{ = -1}]:320 \item[\np{nn_bathy}{nn\_bathy}\forcode{ = -1}]: 321 321 a domain with a bump of topography one third of the domain width at the central latitude. 322 322 This is meant for the "EEL-R5" configuration, a periodic or open boundary channel with a seamount. 323 \item[\np{nn \_bathy}\forcode{ = 1}]:323 \item[\np{nn_bathy}{nn\_bathy}\forcode{ = 1}]: 324 324 read a bathymetry and ice shelf draft (if needed). 325 325 The \ifile{bathy\_meter} file (Netcdf format) provides the ocean depth (positive, in meters) at … … 332 332 The \ifile{isfdraft\_meter} file (Netcdf format) provides the ice shelf draft (positive, in meters) at 333 333 each grid point of the model grid. 334 This file is only needed if \np{ln \_isfcav}\forcode{ = .true.}.334 This file is only needed if \np{ln_isfcav}{ln\_isfcav}\forcode{ = .true.}. 335 335 Defining the ice shelf draft will also define the ice shelf edge and the grounding line position. 336 336 \end{description} … … 359 359 % z-coordinate with constant thickness 360 360 % ------------------------------------------------------------------------------------------------------------- 361 \subsubsection[$Z$-coordinate with uniform thickness levels (\forcode{ln_zco})]{$Z$-coordinate with uniform thickness levels (\protect\np{ln \_zco})}361 \subsubsection[$Z$-coordinate with uniform thickness levels (\forcode{ln_zco})]{$Z$-coordinate with uniform thickness levels (\protect\np{ln_zco}{ln\_zco})} 362 362 \label{subsec:DOMCFG_zco} 363 363 … … 371 371 % z-coordinate with partial step 372 372 % ------------------------------------------------------------------------------------------------------------- 373 \subsubsection[$Z$-coordinate with partial step (\forcode{ln_zps})]{$Z$-coordinate with partial step (\protect\np{ln \_zps})}373 \subsubsection[$Z$-coordinate with partial step (\forcode{ln_zps})]{$Z$-coordinate with partial step (\protect\np{ln_zps}{ln\_zps})} 374 374 \label{subsec:DOMCFG_zps} 375 375 … … 394 394 $250~m$). Two variables in the namdom namelist are used to define the partial step 395 395 vertical grid. The mimimum water thickness (in meters) allowed for a cell partially 396 filled with bathymetry at level jk is the minimum of \np{rn \_e3zps\_min} (thickness in397 meters, usually $20~m$) or $e_{3t}(jk)*$\np{rn \_e3zps\_rat} (a fraction, usually 10\%, of396 filled with bathymetry at level jk is the minimum of \np{rn_e3zps_min}{rn\_e3zps\_min} (thickness in 397 meters, usually $20~m$) or $e_{3t}(jk)*$\np{rn_e3zps_rat}{rn\_e3zps\_rat} (a fraction, usually 10\%, of 398 398 the default thickness $e_{3t}(jk)$). 399 399 … … 401 401 % s-coordinate 402 402 % ------------------------------------------------------------------------------------------------------------- 403 \subsubsection[$S$-coordinate (\forcode{ln_sco})]{$S$-coordinate (\protect\np{ln \_sco})}403 \subsubsection[$S$-coordinate (\forcode{ln_sco})]{$S$-coordinate (\protect\np{ln_sco}{ln\_sco})} 404 404 \label{sec:DOMCFG_sco} 405 405 %------------------------------------------nam_zgr_sco--------------------------------------------------- … … 411 411 \end{listing} 412 412 %-------------------------------------------------------------------------------------------------------------- 413 Options are defined in \nam{zgr \_sco} (\texttt{DOMAINcfg} only).414 In $s$-coordinate (\np{ln \_sco}\forcode{ = .true.}), the depth and thickness of the model levels are defined from413 Options are defined in \nam{zgr_sco}{zgr\_sco} (\texttt{DOMAINcfg} only). 414 In $s$-coordinate (\np{ln_sco}{ln\_sco}\forcode{ = .true.}), the depth and thickness of the model levels are defined from 415 415 the product of a depth field and either a stretching function or its derivative, respectively: 416 416 … … 426 426 since a mixed step-like and bottom-following representation of the topography can be used 427 427 (\autoref{fig:DOM_z_zps_s_sps}) or an envelop bathymetry can be defined (\autoref{fig:DOM_z_zps_s_sps}). 428 The namelist parameter \np{rn \_rmax} determines the slope at which428 The namelist parameter \np{rn_rmax}{rn\_rmax} determines the slope at which 429 429 the terrain-following coordinate intersects the sea bed and becomes a pseudo z-coordinate. 430 The coordinate can also be hybridised by specifying \np{rn \_sbot\_min} and \np{rn\_sbot\_max} as430 The coordinate can also be hybridised by specifying \np{rn_sbot_min}{rn\_sbot\_min} and \np{rn_sbot_max}{rn\_sbot\_max} as 431 431 the minimum and maximum depths at which the terrain-following vertical coordinate is calculated. 432 432 … … 435 435 436 436 The original default \NEMO\ s-coordinate stretching is available if neither of the other options are specified as true 437 (\np{ln \_s\_SH94}\forcode{ = .false.} and \np{ln\_s\_SF12}\forcode{ = .false.}).437 (\np{ln_s_SH94}{ln\_s\_SH94}\forcode{ = .false.} and \np{ln_s_SF12}{ln\_s\_SF12}\forcode{ = .false.}). 438 438 This uses a depth independent $\tanh$ function for the stretching \citep{madec.delecluse.ea_JPO96}: 439 439 … … 455 455 456 456 A stretching function, 457 modified from the commonly used \citet{song.haidvogel_JCP94} stretching (\np{ln \_s\_SH94}\forcode{ = .true.}),457 modified from the commonly used \citet{song.haidvogel_JCP94} stretching (\np{ln_s_SH94}{ln\_s\_SH94}\forcode{ = .true.}), 458 458 is also available and is more commonly used for shelf seas modelling: 459 459 … … 476 476 %% %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 477 477 478 where $H_c$ is the critical depth (\np{rn \_hc}) at which the coordinate transitions from pure $\sigma$ to479 the stretched coordinate, and $\theta$ (\np{rn \_theta}) and $b$ (\np{rn\_bb}) are the surface and478 where $H_c$ is the critical depth (\np{rn_hc}{rn\_hc}) at which the coordinate transitions from pure $\sigma$ to 479 the stretched coordinate, and $\theta$ (\np{rn_theta}{rn\_theta}) and $b$ (\np{rn_bb}{rn\_bb}) are the surface and 480 480 bottom control parameters such that $0 \leqslant \theta \leqslant 20$, and $0 \leqslant b \leqslant 1$. 481 481 $b$ has been designed to allow surface and/or bottom increase of the vertical resolution 482 482 (\autoref{fig:DOMCFG_sco_function}). 483 483 484 Another example has been provided at version 3.5 (\np{ln \_s\_SF12}) that allows a fixed surface resolution in484 Another example has been provided at version 3.5 (\np{ln_s_SF12}{ln\_s\_SF12}) that allows a fixed surface resolution in 485 485 an analytical terrain-following stretching \citet{siddorn.furner_OM13}. 486 486 In this case the a stretching function $\gamma$ is defined such that: … … 504 504 505 505 This gives an analytical stretching of $\sigma$ that is solvable in $A$ and $B$ as a function of 506 the user prescribed stretching parameter $\alpha$ (\np{rn \_alpha}) that stretches towards506 the user prescribed stretching parameter $\alpha$ (\np{rn_alpha}{rn\_alpha}) that stretches towards 507 507 the surface ($\alpha > 1.0$) or the bottom ($\alpha < 1.0$) and 508 user prescribed surface (\np{rn \_zs}) and bottom depths.508 user prescribed surface (\np{rn_zs}{rn\_zs}) and bottom depths. 509 509 The bottom cell depth in this example is given as a function of water depth: 510 510 … … 514 514 \] 515 515 516 where the namelist parameters \np{rn \_zb\_a} and \np{rn\_zb\_b} are $a$ and $b$ respectively.516 where the namelist parameters \np{rn_zb_a}{rn\_zb\_a} and \np{rn_zb_b}{rn\_zb\_b} are $a$ and $b$ respectively. 517 517 518 518 %% %>>>>>>>>>>>>>>>>>>>>>>>>>>>> … … 542 542 the critical depth $h_c$. 543 543 In this example two options are available in depths shallower than $h_c$, 544 with pure sigma being applied if the \np{ln \_sigcrit} is true and pure z-coordinates if it is false544 with pure sigma being applied if the \np{ln_sigcrit}{ln\_sigcrit} is true and pure z-coordinates if it is false 545 545 (the z-coordinate being equal to the depths of the stretched coordinate at $h_c$). 546 546 … … 553 553 % z*- or s*-coordinate 554 554 % ------------------------------------------------------------------------------------------------------------- 555 \subsubsection[\zstar- or \sstar-coordinate (\forcode{ln_linssh})]{\zstar- or \sstar-coordinate (\protect\np{ln \_linssh})}555 \subsubsection[\zstar- or \sstar-coordinate (\forcode{ln_linssh})]{\zstar- or \sstar-coordinate (\protect\np{ln_linssh}{ln\_linssh})} 556 556 \label{subsec:DOMCFG_zgr_star} 557 557 -
NEMO/trunk/doc/latex/NEMO/subfiles/apdx_algos.tex
r11561 r11577 17 17 % UBS scheme 18 18 % ------------------------------------------------------------------------------------------------------------- 19 \section{Upstream Biased Scheme (UBS) (\protect\np{ln \_traadv\_ubs}\forcode{ = .true.})}19 \section{Upstream Biased Scheme (UBS) (\protect\np{ln_traadv_ubs}{ln\_traadv\_ubs}\forcode{ = .true.})} 20 20 \label{sec:ALGOS_tra_adv_ubs} 21 21 … … 59 59 the control of artificial diapycnal fluxes is of paramount importance. 60 60 It has therefore been preferred to evaluate the vertical flux using the TVD scheme when 61 \np{ln \_traadv\_ubs}\forcode{ = .true.}.61 \np{ln_traadv_ubs}{ln\_traadv\_ubs}\forcode{ = .true.}. 62 62 63 63 For stability reasons, in \autoref{eq:TRA_adv_ubs}, the first term which corresponds to -
NEMO/trunk/doc/latex/NEMO/subfiles/apdx_invariants.tex
r11558 r11577 366 366 % Vorticity Term with ENE scheme 367 367 % ------------------------------------------------------------------------------------------------------------- 368 \subsubsection{Vorticity term with ENE scheme (\protect\np{ln \_dynvor\_ene}\forcode{ = .true.})}368 \subsubsection{Vorticity term with ENE scheme (\protect\np{ln_dynvor_ene}{ln\_dynvor\_ene}\forcode{ = .true.})} 369 369 \label{subsec:INVARIANTS_vorENE} 370 370 … … 406 406 % Vorticity Term with EEN scheme 407 407 % ------------------------------------------------------------------------------------------------------------- 408 \subsubsection{Vorticity term with EEN scheme (\protect\np{ln \_dynvor\_een}\forcode{ = .true.})}408 \subsubsection{Vorticity term with EEN scheme (\protect\np{ln_dynvor_een}{ln\_dynvor\_een}\forcode{ = .true.})} 409 409 \label{subsec:INVARIANTS_vorEEN_vect} 410 410 … … 878 878 % Vorticity Term with ENS scheme 879 879 % ------------------------------------------------------------------------------------------------------------- 880 \subsubsection{Vorticity term with ENS scheme (\protect\np{ln \_dynvor\_ens}\forcode{ = .true.})}880 \subsubsection{Vorticity term with ENS scheme (\protect\np{ln_dynvor_ens}{ln\_dynvor\_ens}\forcode{ = .true.})} 881 881 \label{subsec:INVARIANTS_vorENS} 882 882 … … 947 947 % Vorticity Term with EEN scheme 948 948 % ------------------------------------------------------------------------------------------------------------- 949 \subsubsection{Vorticity Term with EEN scheme (\protect\np{ln \_dynvor\_een}\forcode{ = .true.})}949 \subsubsection{Vorticity Term with EEN scheme (\protect\np{ln_dynvor_een}{ln\_dynvor\_een}\forcode{ = .true.})} 950 950 \label{subsec:INVARIANTS_vorEEN} 951 951 -
NEMO/trunk/doc/latex/NEMO/subfiles/apdx_triads.tex
r11571 r11577 22 22 \newpage 23 23 24 \section[Choice of \forcode{namtra\_ldf} namelist parameters]{Choice of \protect\nam{tra \_ldf} namelist parameters}24 \section[Choice of \forcode{namtra\_ldf} namelist parameters]{Choice of \protect\nam{tra_ldf}{tra\_ldf} namelist parameters} 25 25 %-----------------------------------------nam_traldf------------------------------------------------------ 26 26 … … 28 28 29 29 Two scheme are available to perform the iso-neutral diffusion. 30 If the namelist logical \np{ln \_traldf\_triad} is set true,30 If the namelist logical \np{ln_traldf_triad}{ln\_traldf\_triad} is set true, 31 31 \NEMO\ updates both active and passive tracers using the Griffies triad representation of iso-neutral diffusion and 32 32 the eddy-induced advective skew (GM) fluxes. 33 If the namelist logical \np{ln \_traldf\_iso} is set true,33 If the namelist logical \np{ln_traldf_iso}{ln\_traldf\_iso} is set true, 34 34 the filtered version of Cox's original scheme (the Standard scheme) is employed (\autoref{sec:LDF_slp}). 35 35 In the present implementation of the Griffies scheme, 36 the advective skew fluxes are implemented even if \np{ln \_traldf\_eiv} is false.36 the advective skew fluxes are implemented even if \np{ln_traldf_eiv}{ln\_traldf\_eiv} is false. 37 37 38 38 Values of iso-neutral diffusivity and GM coefficient are set as described in \autoref{sec:LDF_coef}. … … 42 42 The options specific to the Griffies scheme include: 43 43 \begin{description} 44 \item[\np{ln \_triad\_iso}]44 \item[\np{ln_triad_iso}{ln\_triad\_iso}] 45 45 See \autoref{sec:TRIADS_taper}. 46 46 If this is set false (the default), … … 49 49 This is the same treatment as used in the default implementation 50 50 \autoref{subsec:LDF_slp_iso}; \autoref{fig:LDF_eiv_slp}. 51 Where \np{ln \_triad\_iso} is set true,51 Where \np{ln_triad_iso}{ln\_triad\_iso} is set true, 52 52 the vertical skew flux is further reduced to ensure no vertical buoyancy flux, 53 53 giving an almost pure horizontal diffusive tracer flux within the mixed layer. 54 54 This is similar to the tapering suggested by \citet{gerdes.koberle.ea_CD91}. See \autoref{subsec:TRIADS_Gerdes-taper} 55 \item[\np{ln \_botmix\_triad}]55 \item[\np{ln_botmix_triad}{ln\_botmix\_triad}] 56 56 See \autoref{sec:TRIADS_iso_bdry}. 57 57 If this is set false (the default) then the lateral diffusive fluxes … … 59 59 If it is set true, however, then these lateral diffusive fluxes are applied, 60 60 giving smoother bottom tracer fields at the cost of introducing diapycnal mixing. 61 \item[\np{rn \_sw\_triad}]61 \item[\np{rn_sw_triad}{rn\_sw\_triad}] 62 62 blah blah to be added.... 63 63 \end{description} 64 64 The options shared with the Standard scheme include: 65 65 \begin{description} 66 \item[\np{ln \_traldf\_msc}] blah blah to be added67 \item[\np{rn \_slpmax}] blah blah to be added66 \item[\np{ln_traldf_msc}{ln\_traldf\_msc}] blah blah to be added 67 \item[\np{rn_slpmax}{rn\_slpmax}] blah blah to be added 68 68 \end{description} 69 69 … … 646 646 Note that both near bottom triad slopes \triad{i}{k}{R}{1/2}{1/2} and \triad{i+1}{k}{R}{-1/2}{1/2} are masked when 647 647 either of the $i,k+1$ or $i+1,k+1$ tracer points is masked, \ie\ the $i,k+1$ $u$-point is masked. 648 The associated lateral fluxes (grey-black dashed line) are masked if \np{ln \_botmix\_triad}\forcode{ = .false.},649 but left unmasked, giving bottom mixing, if \np{ln \_botmix\_triad}\forcode{ = .true.}.650 651 The default option \np{ln \_botmix\_triad}\forcode{ = .false.} is suitable when the bbl mixing option is enabled652 (\np{ln \_trabbl}\forcode{ = .true.}, with \np{nn\_bbl\_ldf}\forcode{ = 1}), or for simple idealized problems.653 For setups with topography without bbl mixing, \np{ln \_botmix\_triad}\forcode{ = .true.} may be necessary.648 The associated lateral fluxes (grey-black dashed line) are masked if \np{ln_botmix_triad}{ln\_botmix\_triad}\forcode{ = .false.}, 649 but left unmasked, giving bottom mixing, if \np{ln_botmix_triad}{ln\_botmix\_triad}\forcode{ = .true.}. 650 651 The default option \np{ln_botmix_triad}{ln\_botmix\_triad}\forcode{ = .false.} is suitable when the bbl mixing option is enabled 652 (\np{ln_trabbl}{ln\_trabbl}\forcode{ = .true.}, with \np{nn_bbl_ldf}{nn\_bbl\_ldf}\forcode{ = 1}), or for simple idealized problems. 653 For setups with topography without bbl mixing, \np{ln_botmix_triad}{ln\_botmix\_triad}\forcode{ = .true.} may be necessary. 654 654 % >>>>>>>>>>>>>>>>>>>>>>>>>>>> 655 655 \begin{figure}[h] … … 672 672 \ie\ the $i,k+1$ $u$-point is masked. 673 673 The associated lateral fluxes (grey-black dashed line) are masked if 674 \protect\np{ln \_botmix\_triad}\forcode{ = .false.}, but left unmasked,675 giving bottom mixing, if \protect\np{ln \_botmix\_triad}\forcode{ = .true.}}674 \protect\np{ln_botmix_triad}{ln\_botmix\_triad}\forcode{ = .false.}, but left unmasked, 675 giving bottom mixing, if \protect\np{ln_botmix_triad}{ln\_botmix\_triad}\forcode{ = .true.}} 676 676 \label{fig:TRIADS_bdry_triads} 677 677 \end{figure} … … 715 715 \label{sec:TRIADS_lintaper} 716 716 717 This is the option activated by the default choice \np{ln \_triad\_iso}\forcode{ = .false.}.717 This is the option activated by the default choice \np{ln_triad_iso}{ln\_triad\_iso}\forcode{ = .false.}. 718 718 Slopes $\tilde{r}_i$ relative to geopotentials are tapered linearly from their value immediately below 719 719 the mixed layer to zero at the surface, as described in option (c) of \autoref{fig:LDF_eiv_slp}, to values … … 833 833 \label{subsec:TRIADS_Gerdes-taper} 834 834 835 The alternative option is activated by setting \np{ln \_triad\_iso} = true.835 The alternative option is activated by setting \np{ln_triad_iso}{ln\_triad\_iso} = true. 836 836 This retains the same tapered slope $\rML$ described above for the calculation of the $_{33}$ term of 837 837 the iso-neutral diffusion tensor (the vertical tracer flux driven by vertical tracer gradients), … … 915 915 computing the tracer advection. 916 916 This is implemented if \texttt{traldf\_eiv?} is set in the default implementation, 917 where \np{ln \_traldf\_triad} is set false.917 where \np{ln_traldf_triad}{ln\_traldf\_triad} is set false. 918 918 This allows us to take advantage of all the advection schemes offered for the tracers 919 919 (see \autoref{sec:TRA_adv}) and not just a $2^{nd}$ order advection scheme. … … 921 921 \emph{positivity} of the advection scheme is of paramount importance. 922 922 923 However, when \np{ln \_traldf\_triad} is set true,923 However, when \np{ln_traldf_triad}{ln\_traldf\_triad} is set true, 924 924 \NEMO\ instead implements eddy induced advection according to the so-called skew form \citep{griffies_JPO98}. 925 925 It is based on a transformation of the advective fluxes using the non-divergent nature of the eddy induced velocity. … … 1113 1113 and both near bottom triad slopes $\triadt{i}{k}{R}{1/2}{1/2}$ and $\triadt{i+1}{k}{R}{-1/2}{1/2}$ are masked when 1114 1114 either of the $i,k+1$ or $i+1,k+1$ tracer points is masked, \ie\ the $i,k+1$ $u$-point is masked. 1115 The namelist parameter \np{ln \_botmix\_triad} has no effect on the eddy-induced skew-fluxes.1115 The namelist parameter \np{ln_botmix_triad}{ln\_botmix\_triad} has no effect on the eddy-induced skew-fluxes. 1116 1116 1117 1117 \subsection{Limiting of the slopes within the interior} … … 1130 1130 This is option (c) of \autoref{fig:LDF_eiv_slp}. 1131 1131 This linear tapering for the slopes used to calculate the eddy-induced fluxes is unaffected by 1132 the value of \np{ln \_triad\_iso}.1132 the value of \np{ln_triad_iso}{ln\_triad\_iso}. 1133 1133 1134 1134 The justification for this linear slope tapering is that, for $A_e$ that is constant or varies only in … … 1145 1145 \label{sec:TRIADS_sfdiag} 1146 1146 1147 Where the namelist parameter \np{ln \_traldf\_gdia}\forcode{ = .true.},1147 Where the namelist parameter \np{ln_traldf_gdia}{ln\_traldf\_gdia}\forcode{ = .true.}, 1148 1148 diagnosed mean eddy-induced velocities are output. 1149 1149 Each time step, streamfunctions are calculated in the $i$-$k$ and $j$-$k$ planes at -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_ASM.tex
r11567 r11577 26 26 These are read into the model from a NetCDF file which may be produced by separate data assimilation code. 27 27 The code can also output model background fields which are used as an input to data assimilation code. 28 This is all controlled by the namelist \nam{ \_asminc}.28 This is all controlled by the namelist \nam{_asminc}{\_asminc}. 29 29 There is a brief description of all the namelist options provided. 30 30 To build the ASM code \key{asminc} must be set. … … 37 37 Direct initialization (DI) refers to the instantaneous correction of the model background state using 38 38 the analysis increment. 39 DI is used when \np{ln \_asmdin} is set to true.39 DI is used when \np{ln_asmdin}{ln\_asmdin} is set to true. 40 40 41 41 \section{Incremental analysis updates} … … 47 47 This technique is referred to as Incremental Analysis Updates (IAU) \citep{bloom.takacs.ea_MWR96}. 48 48 IAU is a common technique used with 3D assimilation methods such as 3D-Var or OI. 49 IAU is used when \np{ln \_asmiau} is set to true.49 IAU is used when \np{ln_asmiau}{ln\_asmiau} is set to true. 50 50 51 51 With IAU, the model state trajectory ${\mathbf x}$ in the assimilation window ($t_{0} \leq t_{i} \leq t_{N}$) … … 134 134 \citep{talagrand_JAS72, dobricic.pinardi.ea_OS07}. 135 135 Diffusion coefficients are defined as $A_D = \alpha e_{1t} e_{2t}$, where $\alpha = 0.2$. 136 The divergence damping is activated by assigning to \np{nn \_divdmp} in the \nam{\_asminc} namelist136 The divergence damping is activated by assigning to \np{nn_divdmp}{nn\_divdmp} in the \nam{_asminc}{\_asminc} namelist 137 137 a value greater than zero. 138 138 This specifies the number of iterations of the divergence damping. Setting a value of the order of 100 will result in a significant reduction in the vertical velocity induced by the increments. … … 144 144 \label{sec:ASM_details} 145 145 146 Here we show an example \nam{ \_asminc} namelist and the header of an example assimilation increments file on146 Here we show an example \nam{_asminc}{\_asminc} namelist and the header of an example assimilation increments file on 147 147 the ORCA2 grid. 148 148 -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_DIA.tex
r11571 r11577 125 125 126 126 XIOS may be used to read single file restart produced by \NEMO. Currently only the variables written to 127 file \forcode{numror} can be handled by XIOS. To activate restart reading using XIOS, set \np{ln \_xios\_read}\forcode{=.true. }127 file \forcode{numror} can be handled by XIOS. To activate restart reading using XIOS, set \np{ln_xios_read}{ln\_xios\_read}\forcode{=.true. } 128 128 in \textit{namelist\_cfg}. This setting will be ignored when multiple restart files are present, and default \NEMO 129 129 functionality will be used for reading. There is no need to change iodef.xml file to use XIOS to read … … 140 140 dimension \forcode{z} defined in restart file must be renamed to \forcode{nav_lev}.\\ 141 141 142 XIOS can also be used to write \NEMO\ restart. A namelist parameter \np{nn \_wxios} is used to determine the142 XIOS can also be used to write \NEMO\ restart. A namelist parameter \np{nn_wxios}{nn\_wxios} is used to determine the 143 143 type of restart \NEMO\ will write. If it is set to 0, default \NEMO\ functionality will be used - each 144 144 processor writes its own restart file; if it is set to 1 XIOS will write restart into a single file; 145 for \np{nn \_wxios}\forcode{=2} the restart will be written by XIOS into multiple files, one for each XIOS server.146 Note, however, that \textbf{\NEMO\ will not read restart generated by XIOS when \np{nn \_wxios}\forcode{=2}}. The restart will145 for \np{nn_wxios}{nn\_wxios}\forcode{=2} the restart will be written by XIOS into multiple files, one for each XIOS server. 146 Note, however, that \textbf{\NEMO\ will not read restart generated by XIOS when \np{nn_wxios}{nn\_wxios}\forcode{=2}}. The restart will 147 147 have to be rebuild before continuing the run. This option aims to reduce number of restart files generated by \NEMO\ only, 148 148 and may be useful when there is a need to change number of processors used to run simulation. … … 306 306 \end{xmllines} 307 307 308 Note, if your array is computed within the surface module each \np{nn \_fsbc} time\_step,308 Note, if your array is computed within the surface module each \np{nn_fsbc}{nn\_fsbc} time\_step, 309 309 add the field definition within the field\_group defined with the id "SBC": 310 310 \xmlcode{<field_group id="SBC" ...>} which has been defined with the correct frequency of operations … … 700 700 field\_definition & 701 701 freq\_op & 702 \np{rn \_rdt} \\702 \np{rn_rdt}{rn\_rdt} \\ 703 703 \hline 704 704 SBC & 705 705 freq\_op & 706 \np{rn \_rdt} $\times$ \np{nn\_fsbc} \\706 \np{rn_rdt}{rn\_rdt} $\times$ \np{nn_fsbc}{nn\_fsbc} \\ 707 707 \hline 708 708 ptrc\_T & 709 709 freq\_op & 710 \np{rn \_rdt} $\times$ \np{nn\_dttrc} \\710 \np{rn_rdt}{rn\_rdt} $\times$ \np{nn_dttrc}{nn\_dttrc} \\ 711 711 \hline 712 712 diad\_T & 713 713 freq\_op & 714 \np{rn \_rdt} $\times$ \np{nn\_dttrc} \\714 \np{rn_rdt}{rn\_rdt} $\times$ \np{nn_dttrc}{nn\_dttrc} \\ 715 715 \hline 716 716 EqT, EqU, EqW & … … 1323 1323 1324 1324 Some metadata that may significantly increase the file size (horizontal cell areas and vertices) are controlled by 1325 the namelist parameter \np{ln \_cfmeta} in the \nam{run} namelist.1325 the namelist parameter \np{ln_cfmeta}{ln\_cfmeta} in the \nam{run} namelist. 1326 1326 This must be set to true if these metadata are to be included in the output files. 1327 1327 … … 1345 1345 most analysis codes can be relinked simply with the new libraries and will then read both NetCDF3 and NetCDF4 files. 1346 1346 \NEMO\ executables linked with NetCDF4 libraries can be made to produce NetCDF3 files by 1347 setting the \np{ln \_nc4zip} logical to false in the \nam{nc4} namelist:1347 setting the \np{ln_nc4zip}{ln\_nc4zip} logical to false in the \nam{nc4} namelist: 1348 1348 1349 1349 %------------------------------------------namnc4---------------------------------------------------- … … 1357 1357 1358 1358 If \key{netcdf4} has not been defined, these namelist parameters are not read. 1359 In this case, \np{ln \_nc4zip} is set false and dummy routines for a few NetCDF4-specific functions are defined.1359 In this case, \np{ln_nc4zip}{ln\_nc4zip} is set false and dummy routines for a few NetCDF4-specific functions are defined. 1360 1360 These functions will not be used but need to be included so that compilation is possible with NetCDF3 libraries. 1361 1361 … … 1470 1470 1471 1471 \begin{description} 1472 \item[\np{ln \_glo\_trd}]:1473 at each \np{nn \_trd} time-step a check of the basin averaged properties of1472 \item[\np{ln_glo_trd}{ln\_glo\_trd}]: 1473 at each \np{nn_trd}{nn\_trd} time-step a check of the basin averaged properties of 1474 1474 the momentum and tracer equations is performed. 1475 1475 This also includes a check of $T^2$, $S^2$, $\tfrac{1}{2} (u^2+v2)$, 1476 1476 and potential energy time evolution equations properties; 1477 \item[\np{ln \_dyn\_trd}]:1477 \item[\np{ln_dyn_trd}{ln\_dyn\_trd}]: 1478 1478 each 3D trend of the evolution of the two momentum components is output; 1479 \item[\np{ln \_dyn\_mxl}]:1479 \item[\np{ln_dyn_mxl}{ln\_dyn\_mxl}]: 1480 1480 each 3D trend of the evolution of the two momentum components averaged over the mixed layer is output; 1481 \item[\np{ln \_vor\_trd}]:1481 \item[\np{ln_vor_trd}{ln\_vor\_trd}]: 1482 1482 a vertical summation of the moment tendencies is performed, 1483 1483 then the curl is computed to obtain the barotropic vorticity tendencies which are output; 1484 \item[\np{ln \_KE\_trd}] :1484 \item[\np{ln_KE_trd}{ln\_KE\_trd}] : 1485 1485 each 3D trend of the Kinetic Energy equation is output; 1486 \item[\np{ln \_tra\_trd}]:1486 \item[\np{ln_tra_trd}{ln\_tra\_trd}]: 1487 1487 each 3D trend of the evolution of temperature and salinity is output; 1488 \item[\np{ln \_tra\_mxl}]:1488 \item[\np{ln_tra_mxl}{ln\_tra\_mxl}]: 1489 1489 each 2D trend of the evolution of temperature and salinity averaged over the mixed layer is output; 1490 1490 \end{description} … … 1494 1494 1495 1495 \textbf{Note that} in the current version (v3.6), many changes has been introduced but not fully tested. 1496 In particular, options associated with \np{ln \_dyn\_mxl}, \np{ln\_vor\_trd}, and \np{ln\_tra\_mxl} are not working,1497 and none of the options have been tested with variable volume (\ie\ \np{ln \_linssh}\forcode{=.true.}).1496 In particular, options associated with \np{ln_dyn_mxl}{ln\_dyn\_mxl}, \np{ln_vor_trd}{ln\_vor\_trd}, and \np{ln_tra_mxl}{ln\_tra\_mxl} are not working, 1497 and none of the options have been tested with variable volume (\ie\ \np{ln_linssh}{ln\_linssh}\forcode{=.true.}). 1498 1498 1499 1499 % ------------------------------------------------------------------------------------------------------------- … … 1515 1515 Options are defined by \nam{flo} namelist variables. 1516 1516 The algorithm used is based either on the work of \cite{blanke.raynaud_JPO97} (default option), 1517 or on a $4^th$ Runge-Hutta algorithm (\np{ln \_flork4}\forcode{=.true.}).1517 or on a $4^th$ Runge-Hutta algorithm (\np{ln_flork4}{ln\_flork4}\forcode{=.true.}). 1518 1518 Note that the \cite{blanke.raynaud_JPO97} algorithm have the advantage of providing trajectories which 1519 1519 are consistent with the numeric of the code, so that the trajectories never intercept the bathymetry. … … 1522 1522 1523 1523 Initial coordinates can be given with Ariane Tools convention 1524 (IJK coordinates, (\np{ln \_ariane}\forcode{=.true.}) ) or with longitude and latitude.1524 (IJK coordinates, (\np{ln_ariane}{ln\_ariane}\forcode{=.true.}) ) or with longitude and latitude. 1525 1525 1526 1526 In case of Ariane convention, input filename is \textit{init\_float\_ariane}. … … 1573 1573 1574 1574 \np{jpnfl} is the total number of floats during the run. 1575 When initial positions are read in a restart file (\np{ln \_rstflo}\forcode{=.true.} ),1575 When initial positions are read in a restart file (\np{ln_rstflo}{ln\_rstflo}\forcode{=.true.} ), 1576 1576 \np{jpnflnewflo} can be added in the initialization file. 1577 1577 1578 1578 \subsubsection{Output data} 1579 1579 1580 \np{nn \_writefl} is the frequency of writing in float output file and \np{nn\_stockfl} is the frequency of1580 \np{nn_writefl}{nn\_writefl} is the frequency of writing in float output file and \np{nn_stockfl}{nn\_stockfl} is the frequency of 1581 1581 creation of the float restart file. 1582 1582 1583 Output data can be written in ascii files (\np{ln \_flo\_ascii}\forcode{=.true.}).1583 Output data can be written in ascii files (\np{ln_flo_ascii}{ln\_flo\_ascii}\forcode{=.true.}). 1584 1584 In that case, output filename is trajec\_float. 1585 1585 1586 Another possiblity of writing format is Netcdf (\np{ln \_flo\_ascii}\forcode{=.false.}) with1586 Another possiblity of writing format is Netcdf (\np{ln_flo_ascii}{ln\_flo\_ascii}\forcode{=.false.}) with 1587 1587 \key{iomput} and outputs selected in iodef.xml. 1588 1588 Here it is an example of specification to put in files description section: … … 1621 1621 This on-line Harmonic analysis is actived with \key{diaharm}. 1622 1622 1623 Some parameters are available in namelist \nam{ \_diaharm}:1624 1625 - \np{nit000 \_han} is the first time step used for harmonic analysis1626 1627 - \np{nitend \_han} is the last time step used for harmonic analysis1628 1629 - \np{nstep \_han} is the time step frequency for harmonic analysis1630 1631 % - \np{nb \_ana} is the number of harmonics to analyse1623 Some parameters are available in namelist \nam{_diaharm}{\_diaharm}: 1624 1625 - \np{nit000_han}{nit000\_han} is the first time step used for harmonic analysis 1626 1627 - \np{nitend_han}{nitend\_han} is the last time step used for harmonic analysis 1628 1629 - \np{nstep_han}{nstep\_han} is the time step frequency for harmonic analysis 1630 1631 % - \np{nb_ana}{nb\_ana} is the number of harmonics to analyse 1632 1632 1633 1633 - \np{tname} is an array with names of tidal constituents to analyse 1634 1634 1635 \np{nit000 \_han} and \np{nitend\_han} must be between \np{nit000} and \np{nitend} of the simulation.1635 \np{nit000_han}{nit000\_han} and \np{nitend_han}{nitend\_han} must be between \np{nit000} and \np{nitend} of the simulation. 1636 1636 The restart capability is not implemented. 1637 1637 … … 1685 1685 - \texttt{salt\_transport} for salt transports (unit: $10^{9}Kg s^{-1}$) \\ 1686 1686 1687 Namelist variables in \nam{ \_diadct} control how frequently the flows are summed and the time scales over which1687 Namelist variables in \nam{_diadct}{\_diadct} control how frequently the flows are summed and the time scales over which 1688 1688 they are averaged, as well as the level of output for debugging: 1689 \np{nn \_dct} : frequency of instantaneous transports computing1690 \np{nn \_dctwri}: frequency of writing ( mean of instantaneous transports )1691 \np{nn \_debug} : debugging of the section1689 \np{nn_dct}{nn\_dct} : frequency of instantaneous transports computing 1690 \np{nn_dctwri}{nn\_dctwri}: frequency of writing ( mean of instantaneous transports ) 1691 \np{nn_debug}{nn\_debug} : debugging of the section 1692 1692 1693 1693 \subsubsection{Creating a binary file containing the pathway of each section} … … 1939 1939 1940 1940 Third, the discretisation of \autoref{eq:DIA_steric_Bq} depends on the type of free surface which is considered. 1941 In the non linear free surface case, \ie\ \np{ln \_linssh}\forcode{=.true.}, it is given by1941 In the non linear free surface case, \ie\ \np{ln_linssh}{ln\_linssh}\forcode{=.true.}, it is given by 1942 1942 1943 1943 \[ … … 2034 2034 sea water pressure at sea floor (botpres), dynamic sea surface height (sshdyn). 2035 2035 2036 In \mdl{diaptr} when \np{ln \_diaptr}\forcode{=.true.}2036 In \mdl{diaptr} when \np{ln_diaptr}{ln\_diaptr}\forcode{=.true.} 2037 2037 (see the \nam{ptr} namelist below) can be computed on-line the poleward heat and salt transports, 2038 2038 their advective and diffusive component, and the meriodional stream function . 2039 When \np{ln \_subbas}\forcode{=.true.}, transports and stream function are computed for the Atlantic, Indian,2039 When \np{ln_subbas}{ln\_subbas}\forcode{=.true.}, transports and stream function are computed for the Atlantic, Indian, 2040 2040 Pacific and Indo-Pacific Oceans (defined north of 30\deg{S}) as well as for the World Ocean. 2041 2041 The sub-basin decomposition requires an input file (\ifile{subbasins}) which contains three 2D mask arrays, … … 2109 2109 Values greater than 1 indicate that information is propagated across more than one grid cell in a single time step. 2110 2110 2111 The variables can be activated by setting the \np{nn \_diacfl} namelist parameter to 1 in the \nam{ctl} namelist.2111 The variables can be activated by setting the \np{nn_diacfl}{nn\_diacfl} namelist parameter to 1 in the \nam{ctl} namelist. 2112 2112 The diagnostics will be written out to an ascii file named cfl\_diagnostics.ascii. 2113 2113 In this file the maximum value of $C_u$, $C_v$, and $C_w$ are printed at each timestep along with the coordinates of -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_DIU.tex
r11567 r11577 46 46 This namelist contains only two variables: 47 47 \begin{description} 48 \item[\np{ln \_diurnal}]48 \item[\np{ln_diurnal}{ln\_diurnal}] 49 49 A logical switch for turning on/off both the cool skin and warm layer. 50 \item[\np{ln \_diurnal\_only}]50 \item[\np{ln_diurnal_only}{ln\_diurnal\_only}] 51 51 A logical switch which if \forcode{.true.} will run the diurnal model without the other dynamical parts of \NEMO. 52 \np{ln \_diurnal\_only} must be \forcode{.false.} if \np{ln\_diurnal} is \forcode{.false.}.52 \np{ln_diurnal_only}{ln\_diurnal\_only} must be \forcode{.false.} if \np{ln_diurnal}{ln\_diurnal} is \forcode{.false.}. 53 53 \end{description} 54 54 -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_DOM.tex
r11571 r11577 335 335 336 336 Two typical methods are available to specify the spatial domain configuration; 337 they can be selected using parameter \np{ln \_read\_cfg} parameter in namelist \nam{cfg}.338 339 If \np{ln \_read\_cfg} is set to \forcode{.true.},337 they can be selected using parameter \np{ln_read_cfg}{ln\_read\_cfg} parameter in namelist \nam{cfg}. 338 339 If \np{ln_read_cfg}{ln\_read\_cfg} is set to \forcode{.true.}, 340 340 the domain-specific parameters and fields are read from a netCDF input file, 341 whose name (without its .nc suffix) can be specified as the value of the \np{cn \_domcfg} parameter in namelist \nam{cfg}.342 343 If \np{ln \_read\_cfg} is set to \forcode{.false.},341 whose name (without its .nc suffix) can be specified as the value of the \np{cn_domcfg}{cn\_domcfg} parameter in namelist \nam{cfg}. 342 343 If \np{ln_read_cfg}{ln\_read\_cfg} is set to \forcode{.false.}, 344 344 the domain-specific parameters and fields can be provided (\eg\ analytically computed) by 345 345 subroutines \mdl{usrdef\_hgr} and \mdl{usrdef\_zgr}. … … 359 359 360 360 The next subsections summarise the parameter and fields related to the configuration of the whole model domain. 361 These represent the minimum information that must be provided either via the \np{cn \_domcfg} file or set by code361 These represent the minimum information that must be provided either via the \np{cn_domcfg}{cn\_domcfg} file or set by code 362 362 inserted into user-supplied versions of the \texttt{usrdef\_*} subroutines. 363 363 The requirements are presented in three sections: … … 377 377 see \autoref{sec:LBC_mpp}). 378 378 379 The name of the configuration is set through parameter \np{cn \_cfg},380 and the nominal resolution through parameter \np{nn \_cfg}379 The name of the configuration is set through parameter \np{cn_cfg}{cn\_cfg}, 380 and the nominal resolution through parameter \np{nn_cfg}{nn\_cfg} 381 381 (unless in the input file both of variables \texttt{ORCA} and \texttt{ORCA\_index} are present, 382 in which case \np{cn \_cfg} and \np{nn\_cfg} are set from these values accordingly).382 in which case \np{cn_cfg}{cn\_cfg} and \np{nn_cfg}{nn\_cfg} are set from these values accordingly). 383 383 384 384 The global lateral boundary condition type is selected from 8 options using parameter \jp{jperio}. … … 436 436 the unaltered surface areas at $u$ and $v$ grid points (\texttt{e1e2u} and \texttt{e1e2v}, respectively) must be read or 437 437 pre-computed in \mdl{usrdef\_hgr}. 438 If these arrays are present in the \np{cn \_domcfg} file they are read and the internal computation is suppressed.438 If these arrays are present in the \np{cn_domcfg}{cn\_domcfg} file they are read and the internal computation is suppressed. 439 439 Versions of \mdl{usrdef\_hgr} which set their own values of \texttt{e1e2u} and \texttt{e1e2v} should set 440 440 the surface-area computation flag: … … 487 487 (d) hybrid $s-z$ coordinate, 488 488 (e) hybrid $s-z$ coordinate with partial step, and 489 (f) same as (e) but in the non-linear free surface (\protect\np{ln \_linssh}\forcode{=.false.}).489 (f) same as (e) but in the non-linear free surface (\protect\np{ln_linssh}{ln\_linssh}\forcode{=.false.}). 490 490 Note that the non-linear free surface can be used with any of the 5 coordinates (a) to (e).} 491 491 \label{fig:DOM_z_zps_s_sps} … … 502 502 a single configuration file can support both options. 503 503 504 By default a non-linear free surface is used (\np{ln \_linssh} set to \forcode{=.false.} in \nam{dom}):504 By default a non-linear free surface is used (\np{ln_linssh}{ln\_linssh} set to \forcode{=.false.} in \nam{dom}): 505 505 the coordinate follow the time-variation of the free surface so that the transformation is time dependent: 506 506 $z(i,j,k,t)$ (\eg\ \autoref{fig:DOM_z_zps_s_sps}f). 507 When a linear free surface is assumed (\np{ln \_linssh} set to \forcode{=.true.} in \nam{dom}),507 When a linear free surface is assumed (\np{ln_linssh}{ln\_linssh} set to \forcode{=.true.} in \nam{dom}), 508 508 the vertical coordinates are fixed in time, but the seawater can move up and down across the $z_0$ surface 509 509 (in other words, the top of the ocean in not a rigid lid). 510 510 511 511 Note that settings: 512 \np{ln \_zco}, \np{ln\_zps}, \np{ln\_sco} and \np{ln\_isfcav} mentioned in the following sections512 \np{ln_zco}{ln\_zco}, \np{ln_zps}{ln\_zps}, \np{ln_sco}{ln\_sco} and \np{ln_isfcav}{ln\_isfcav} mentioned in the following sections 513 513 appear to be namelist options but they are no longer truly namelist options for \NEMO. 514 514 Their value is written to and read from the domain configuration file and … … 517 517 serve both to provide a record of the choices made whilst building the configuration and 518 518 to trigger appropriate code blocks within \NEMO. 519 These values should not be altered in the \np{cn \_domcfg} file.519 These values should not be altered in the \np{cn_domcfg}{cn\_domcfg} file. 520 520 521 521 \medskip 522 The decision on these choices must be made when the \np{cn \_domcfg} file is constructed.522 The decision on these choices must be made when the \np{cn_domcfg}{cn\_domcfg} file is constructed. 523 523 Three main choices are offered (\autoref{fig:DOM_z_zps_s_sps}a-c): 524 524 525 525 \begin{itemize} 526 \item $z$-coordinate with full step bathymetry (\np{ln \_zco}\forcode{=.true.}),527 \item $z$-coordinate with partial step ($zps$) bathymetry (\np{ln \_zps}\forcode{=.true.}),528 \item Generalized, $s$-coordinate (\np{ln \_sco}\forcode{=.true.}).526 \item $z$-coordinate with full step bathymetry (\np{ln_zco}{ln\_zco}\forcode{=.true.}), 527 \item $z$-coordinate with partial step ($zps$) bathymetry (\np{ln_zps}{ln\_zps}\forcode{=.true.}), 528 \item Generalized, $s$-coordinate (\np{ln_sco}{ln\_sco}\forcode{=.true.}). 529 529 \end{itemize} 530 530 … … 534 534 A further choice related to vertical coordinate concerns 535 535 the presence (or not) of ocean cavities beneath ice shelves within the model domain. 536 A setting of \np{ln \_isfcav} as \forcode{.true.} indicates that the domain contains ocean cavities,536 A setting of \np{ln_isfcav}{ln\_isfcav} as \forcode{.true.} indicates that the domain contains ocean cavities, 537 537 otherwise the top, wet layer of the ocean will always be at the ocean surface. 538 538 This option is currently only available for $z$- or $zps$-coordinates. … … 544 544 They are updated at each model time step. 545 545 The initial fixed reference coordinate system is held in variable names with a $\_0$ suffix. 546 When the linear free surface option is used (\np{ln \_linssh}\forcode{=.true.}),546 When the linear free surface option is used (\np{ln_linssh}{ln\_linssh}\forcode{=.true.}), 547 547 \textit{before}, \textit{now} and \textit{after} arrays are initially set to 548 548 their reference counterpart and remain fixed. … … 652 652 (grid-point position, scale factors) 653 653 can be saved in a file if 654 namelist parameter \np{ln \_write\_cfg} (namelist \nam{cfg}) is set to \forcode{.true.};655 the output filename is set through parameter \np{cn \_domcfg\_out}.654 namelist parameter \np{ln_write_cfg}{ln\_write\_cfg} (namelist \nam{cfg}) is set to \forcode{.true.}; 655 the output filename is set through parameter \np{cn_domcfg_out}{cn\_domcfg\_out}. 656 656 This is only really useful if 657 657 the fields are computed in subroutines \mdl{usrdef\_hgr} or \mdl{usrdef\_zgr} and … … 661 661 (grid-point position, scale factors, depths and masks) 662 662 can be saved in a file called \texttt{mesh\_mask} if 663 namelist parameter \np{ln \_meshmask} (namelist \nam{dom}) is set to \forcode{.true.}.663 namelist parameter \np{ln_meshmask}{ln\_meshmask} (namelist \nam{dom}) is set to \forcode{.true.}. 664 664 This file contains additional fields that can be useful for post-processing applications. 665 665 … … 679 679 Basic initial state options are defined in \nam{tsd}. 680 680 By default, the ocean starts from rest (the velocity field is set to zero) and 681 the initialization of temperature and salinity fields is controlled through the \np{ln \_tsd\_init} namelist parameter.681 the initialization of temperature and salinity fields is controlled through the \np{ln_tsd_init}{ln\_tsd\_init} namelist parameter. 682 682 683 683 \begin{description} 684 \item[\np{ln \_tsd\_init}\forcode{= .true.}]684 \item[\np{ln_tsd_init}{ln\_tsd\_init}\forcode{= .true.}] 685 685 Use T and S input files that can be given on the model grid itself or on their native input data grids. 686 686 In the latter case, the data will be interpolated on-the-fly both in the horizontal and the vertical to the model grid 687 687 (see \autoref{subsec:SBC_iof}). 688 The information relating to the input files are specified in the \np{sn \_tem} and \np{sn\_sal} structures.688 The information relating to the input files are specified in the \np{sn_tem}{sn\_tem} and \np{sn_sal}{sn\_sal} structures. 689 689 The computation is done in the \mdl{dtatsd} module. 690 \item[\np{ln \_tsd\_init}\forcode{= .false.}]690 \item[\np{ln_tsd_init}{ln\_tsd\_init}\forcode{= .false.}] 691 691 Initial values for T and S are set via a user supplied \rou{usr\_def\_istate} routine contained in \mdl{userdef\_istate}. 692 692 The default version sets horizontally uniform T and profiles as used in the GYRE configuration -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_DYN.tex
r11571 r11577 176 176 applications of the \NEMO\ ocean model. 177 177 The flux form option (see next section) has been present since version $2$. 178 Options are defined through the \nam{dyn \_adv} namelist variables Coriolis and178 Options are defined through the \nam{dyn_adv}{dyn\_adv} namelist variables Coriolis and 179 179 momentum advection terms are evaluated using a leapfrog scheme, 180 180 \ie\ the velocity appearing in these expressions is centred in time (\textit{now} velocity). … … 196 196 %------------------------------------------------------------------------------------------------------------- 197 197 198 Options are defined through the \nam{dyn \_vor} namelist variables.198 Options are defined through the \nam{dyn_vor}{dyn\_vor} namelist variables. 199 199 Four discretisations of the vorticity term (\texttt{ln\_dynvor\_xxx}\forcode{=.true.}) are available: 200 200 conserving potential enstrophy of horizontally non-divergent flow (ENS scheme); … … 205 205 (EEN scheme) (see \autoref{subsec:INVARIANTS_vorEEN}). 206 206 In the case of ENS, ENE or MIX schemes the land sea mask may be slightly modified to ensure the consistency of 207 vorticity term with analytical equations (\np{ln \_dynvor\_con}\forcode{=.true.}).207 vorticity term with analytical equations (\np{ln_dynvor_con}{ln\_dynvor\_con}\forcode{=.true.}). 208 208 The vorticity terms are all computed in dedicated routines that can be found in the \mdl{dynvor} module. 209 209 … … 211 211 % enstrophy conserving scheme 212 212 %------------------------------------------------------------- 213 \subsubsection[Enstrophy conserving scheme (\forcode{ln_dynvor_ens})]{Enstrophy conserving scheme (\protect\np{ln \_dynvor\_ens})}213 \subsubsection[Enstrophy conserving scheme (\forcode{ln_dynvor_ens})]{Enstrophy conserving scheme (\protect\np{ln_dynvor_ens}{ln\_dynvor\_ens})} 214 214 \label{subsec:DYN_vor_ens} 215 215 … … 234 234 % energy conserving scheme 235 235 %------------------------------------------------------------- 236 \subsubsection[Energy conserving scheme (\forcode{ln_dynvor_ene})]{Energy conserving scheme (\protect\np{ln \_dynvor\_ene})}236 \subsubsection[Energy conserving scheme (\forcode{ln_dynvor_ene})]{Energy conserving scheme (\protect\np{ln_dynvor_ene}{ln\_dynvor\_ene})} 237 237 \label{subsec:DYN_vor_ene} 238 238 … … 254 254 % mix energy/enstrophy conserving scheme 255 255 %------------------------------------------------------------- 256 \subsubsection[Mixed energy/enstrophy conserving scheme (\forcode{ln_dynvor_mix})]{Mixed energy/enstrophy conserving scheme (\protect\np{ln \_dynvor\_mix})}256 \subsubsection[Mixed energy/enstrophy conserving scheme (\forcode{ln_dynvor_mix})]{Mixed energy/enstrophy conserving scheme (\protect\np{ln_dynvor_mix}{ln\_dynvor\_mix})} 257 257 \label{subsec:DYN_vor_mix} 258 258 … … 279 279 % energy and enstrophy conserving scheme 280 280 %------------------------------------------------------------- 281 \subsubsection[Energy and enstrophy conserving scheme (\forcode{ln_dynvor_een})]{Energy and enstrophy conserving scheme (\protect\np{ln \_dynvor\_een})}281 \subsubsection[Energy and enstrophy conserving scheme (\forcode{ln_dynvor_een})]{Energy and enstrophy conserving scheme (\protect\np{ln_dynvor_een}{ln\_dynvor\_een})} 282 282 \label{subsec:DYN_vor_een} 283 283 … … 327 327 A key point in \autoref{eq:DYN_een_e3f} is how the averaging in the \textbf{i}- and \textbf{j}- directions is made. 328 328 It uses the sum of masked t-point vertical scale factor divided either by the sum of the four t-point masks 329 (\np{nn \_een\_e3f}\forcode{=1}), or just by $4$ (\np{nn\_een\_e3f}\forcode{=.true.}).329 (\np{nn_een_e3f}{nn\_een\_e3f}\forcode{=1}), or just by $4$ (\np{nn\_een\_e3f}\forcode{=.true.}). 330 330 The latter case preserves the continuity of $e_{3f}$ when one or more of the neighbouring $e_{3t}$ tends to zero and 331 331 extends by continuity the value of $e_{3f}$ into the land areas. … … 407 407 \right. 408 408 \] 409 When \np{ln \_dynzad\_zts}\forcode{=.true.},409 When \np{ln_dynzad_zts}{ln\_dynzad\_zts}\forcode{=.true.}, 410 410 a split-explicit time stepping with 5 sub-timesteps is used on the vertical advection term. 411 411 This option can be useful when the value of the timestep is limited by vertical advection \citep{lemarie.debreu.ea_OM15}. 412 412 Note that in this case, 413 413 a similar split-explicit time stepping should be used on vertical advection of tracer to ensure a better stability, 414 an option which is only available with a TVD scheme (see \np{ln \_traadv\_tvd\_zts} in \autoref{subsec:TRA_adv_tvd}).414 an option which is only available with a TVD scheme (see \np{ln_traadv_tvd_zts}{ln\_traadv\_tvd\_zts} in \autoref{subsec:TRA_adv_tvd}). 415 415 416 416 … … 424 424 %------------------------------------------------------------------------------------------------------------- 425 425 426 Options are defined through the \nam{dyn \_adv} namelist variables.426 Options are defined through the \nam{dyn_adv}{dyn\_adv} namelist variables. 427 427 In the flux form (as in the vector invariant form), 428 428 the Coriolis and momentum advection terms are evaluated using a leapfrog scheme, … … 481 481 or a $3^{rd}$ order upstream biased scheme, UBS. 482 482 The latter is described in \citet{shchepetkin.mcwilliams_OM05}. 483 The schemes are selected using the namelist logicals \np{ln \_dynadv\_cen2} and \np{ln\_dynadv\_ubs}.483 The schemes are selected using the namelist logicals \np{ln_dynadv_cen2}{ln\_dynadv\_cen2} and \np{ln_dynadv_ubs}{ln\_dynadv\_ubs}. 484 484 In flux form, the schemes differ by the choice of a space and time interpolation to define the value of 485 485 $u$ and $v$ at the centre of each face of $u$- and $v$-cells, \ie\ at the $T$-, $f$-, … … 489 489 % 2nd order centred scheme 490 490 %------------------------------------------------------------- 491 \subsubsection[CEN2: $2^{nd}$ order centred scheme (\forcode{ln_dynadv_cen2})]{CEN2: $2^{nd}$ order centred scheme (\protect\np{ln \_dynadv\_cen2})}491 \subsubsection[CEN2: $2^{nd}$ order centred scheme (\forcode{ln_dynadv_cen2})]{CEN2: $2^{nd}$ order centred scheme (\protect\np{ln_dynadv_cen2}{ln\_dynadv\_cen2})} 492 492 \label{subsec:DYN_adv_cen2} 493 493 … … 512 512 % UBS scheme 513 513 %------------------------------------------------------------- 514 \subsubsection[UBS: Upstream Biased Scheme (\forcode{ln_dynadv_ubs})]{UBS: Upstream Biased Scheme (\protect\np{ln \_dynadv\_ubs})}514 \subsubsection[UBS: Upstream Biased Scheme (\forcode{ln_dynadv_ubs})]{UBS: Upstream Biased Scheme (\protect\np{ln_dynadv_ubs}{ln\_dynadv\_ubs})} 515 515 \label{subsec:DYN_adv_ubs} 516 516 … … 534 534 But the amplitudes of the false extrema are significantly reduced over those in the centred second order method. 535 535 As the scheme already includes a diffusion component, it can be used without explicit lateral diffusion on momentum 536 (\ie\ \np{ln \_dynldf\_lap}\forcode{=}\np{ln\_dynldf\_bilap}\forcode{=.false.}),536 (\ie\ \np{ln_dynldf_lap}{ln\_dynldf\_lap}\forcode{=}\np{ln_dynldf_bilap}{ln\_dynldf\_bilap}\forcode{=.false.}), 537 537 and it is recommended to do so. 538 538 … … 576 576 %------------------------------------------------------------------------------------------------------------- 577 577 578 Options are defined through the \nam{dyn \_hpg} namelist variables.578 Options are defined through the \nam{dyn_hpg}{dyn\_hpg} namelist variables. 579 579 The key distinction between the different algorithms used for 580 580 the hydrostatic pressure gradient is the vertical coordinate used, … … 591 591 % z-coordinate with full step 592 592 %-------------------------------------------------------------------------------------------------------------- 593 \subsection[Full step $Z$-coordinate (\forcode{ln_dynhpg_zco})]{Full step $Z$-coordinate (\protect\np{ln \_dynhpg\_zco})}593 \subsection[Full step $Z$-coordinate (\forcode{ln_dynhpg_zco})]{Full step $Z$-coordinate (\protect\np{ln_dynhpg_zco}{ln\_dynhpg\_zco})} 594 594 \label{subsec:DYN_hpg_zco} 595 595 … … 636 636 % z-coordinate with partial step 637 637 %-------------------------------------------------------------------------------------------------------------- 638 \subsection[Partial step $Z$-coordinate (\forcode{ln_dynhpg_zps})]{Partial step $Z$-coordinate (\protect\np{ln \_dynhpg\_zps})}638 \subsection[Partial step $Z$-coordinate (\forcode{ln_dynhpg_zps})]{Partial step $Z$-coordinate (\protect\np{ln_dynhpg_zps}{ln\_dynhpg\_zps})} 639 639 \label{subsec:DYN_hpg_zps} 640 640 … … 665 665 density Jacobian with cubic polynomial method is currently disabled whilst known bugs are under investigation. 666 666 667 $\bullet$ Traditional coding (see for example \citet{madec.delecluse.ea_JPO96}: (\np{ln \_dynhpg\_sco}\forcode{=.true.})667 $\bullet$ Traditional coding (see for example \citet{madec.delecluse.ea_JPO96}: (\np{ln_dynhpg_sco}{ln\_dynhpg\_sco}\forcode{=.true.}) 668 668 \begin{equation} 669 669 \label{eq:DYN_hpg_sco} … … 683 683 ($e_{3w}$). 684 684 685 $\bullet$ Traditional coding with adaptation for ice shelf cavities (\np{ln \_dynhpg\_isf}\forcode{=.true.}).686 This scheme need the activation of ice shelf cavities (\np{ln \_isfcav}\forcode{=.true.}).687 688 $\bullet$ Pressure Jacobian scheme (prj) (a research paper in preparation) (\np{ln \_dynhpg\_prj}\forcode{=.true.})685 $\bullet$ Traditional coding with adaptation for ice shelf cavities (\np{ln_dynhpg_isf}{ln\_dynhpg\_isf}\forcode{=.true.}). 686 This scheme need the activation of ice shelf cavities (\np{ln_isfcav}{ln\_isfcav}\forcode{=.true.}). 687 688 $\bullet$ Pressure Jacobian scheme (prj) (a research paper in preparation) (\np{ln_dynhpg_prj}{ln\_dynhpg\_prj}\forcode{=.true.}) 689 689 690 690 $\bullet$ Density Jacobian with cubic polynomial scheme (DJC) \citep{shchepetkin.mcwilliams_OM05} 691 (\np{ln \_dynhpg\_djc}\forcode{=.true.}) (currently disabled; under development)691 (\np{ln_dynhpg_djc}{ln\_dynhpg\_djc}\forcode{=.true.}) (currently disabled; under development) 692 692 693 693 Note that expression \autoref{eq:DYN_hpg_sco} is commonly used when the variable volume formulation is activated 694 694 (\texttt{vvl?}) because in that case, even with a flat bottom, 695 695 the coordinate surfaces are not horizontal but follow the free surface \citep{levier.treguier.ea_rpt07}. 696 The pressure jacobian scheme (\np{ln \_dynhpg\_prj}\forcode{=.true.}) is available as697 an improved option to \np{ln \_dynhpg\_sco}\forcode{=.true.} when \texttt{vvl?} is active.696 The pressure jacobian scheme (\np{ln_dynhpg_prj}{ln\_dynhpg\_prj}\forcode{=.true.}) is available as 697 an improved option to \np{ln_dynhpg_sco}{ln\_dynhpg\_sco}\forcode{=.true.} when \texttt{vvl?} is active. 698 698 The pressure Jacobian scheme uses a constrained cubic spline to 699 699 reconstruct the density profile across the water column. … … 707 707 708 708 Beneath an ice shelf, the total pressure gradient is the sum of the pressure gradient due to the ice shelf load and 709 the pressure gradient due to the ocean load (\np{ln \_dynhpg\_isf}\forcode{=.true.}).\\709 the pressure gradient due to the ocean load (\np{ln_dynhpg_isf}{ln\_dynhpg\_isf}\forcode{=.true.}).\\ 710 710 711 711 The main hypothesis to compute the ice shelf load is that the ice shelf is in an isostatic equilibrium. … … 722 722 % Time-scheme 723 723 %-------------------------------------------------------------------------------------------------------------- 724 \subsection[Time-scheme (\forcode{ln_dynhpg_imp})]{Time-scheme (\protect\np{ln \_dynhpg\_imp})}724 \subsection[Time-scheme (\forcode{ln_dynhpg_imp})]{Time-scheme (\protect\np{ln_dynhpg_imp}{ln\_dynhpg\_imp})} 725 725 \label{subsec:DYN_hpg_imp} 726 726 … … 738 738 rather than at the central time level $t$ only, as in the standard leapfrog scheme. 739 739 740 $\bullet$ leapfrog scheme (\np{ln \_dynhpg\_imp}\forcode{=.true.}):740 $\bullet$ leapfrog scheme (\np{ln_dynhpg_imp}{ln\_dynhpg\_imp}\forcode{=.true.}): 741 741 742 742 \begin{equation} … … 746 746 \end{equation} 747 747 748 $\bullet$ semi-implicit scheme (\np{ln \_dynhpg\_imp}\forcode{=.true.}):748 $\bullet$ semi-implicit scheme (\np{ln_dynhpg_imp}{ln\_dynhpg\_imp}\forcode{=.true.}): 749 749 \begin{equation} 750 750 \label{eq:DYN_hpg_imp} … … 764 764 such as the stability limits associated with advection or diffusion. 765 765 766 In practice, the semi-implicit scheme is used when \np{ln \_dynhpg\_imp}\forcode{=.true.}.766 In practice, the semi-implicit scheme is used when \np{ln_dynhpg_imp}{ln\_dynhpg\_imp}\forcode{=.true.}. 767 767 In this case, we choose to apply the time filter to temperature and salinity used in the equation of state, 768 768 instead of applying it to the hydrostatic pressure or to the density, … … 778 778 Note that in the semi-implicit case, it is necessary to save the filtered density, 779 779 an extra three-dimensional field, in the restart file to restart the model with exact reproducibility. 780 This option is controlled by \np{nn \_dynhpg\_rst}, a namelist parameter.780 This option is controlled by \np{nn_dynhpg_rst}{nn\_dynhpg\_rst}, a namelist parameter. 781 781 782 782 % ================================================================ … … 794 794 %------------------------------------------------------------------------------------------------------------ 795 795 796 Options are defined through the \nam{dyn \_spg} namelist variables.796 Options are defined through the \nam{dyn_spg}{dyn\_spg} namelist variables. 797 797 The surface pressure gradient term is related to the representation of the free surface (\autoref{sec:MB_hor_pg}). 798 798 The main distinction is between the fixed volume case (linear free surface) and … … 825 825 % Explicit free surface formulation 826 826 %-------------------------------------------------------------------------------------------------------------- 827 \subsection[Explicit free surface (\forcode{ln_dynspg_exp})]{Explicit free surface (\protect\np{ln \_dynspg\_exp})}827 \subsection[Explicit free surface (\forcode{ln_dynspg_exp})]{Explicit free surface (\protect\np{ln_dynspg_exp}{ln\_dynspg\_exp})} 828 828 \label{subsec:DYN_spg_exp} 829 829 830 In the explicit free surface formulation (\np{ln \_dynspg\_exp} set to true),830 In the explicit free surface formulation (\np{ln_dynspg_exp}{ln\_dynspg\_exp} set to true), 831 831 the model time step is chosen to be small enough to resolve the external gravity waves 832 832 (typically a few tens of seconds). … … 851 851 % Split-explict free surface formulation 852 852 %-------------------------------------------------------------------------------------------------------------- 853 \subsection[Split-explicit free surface (\forcode{ln_dynspg_ts})]{Split-explicit free surface (\protect\np{ln \_dynspg\_ts})}853 \subsection[Split-explicit free surface (\forcode{ln_dynspg_ts})]{Split-explicit free surface (\protect\np{ln_dynspg_ts}{ln\_dynspg\_ts})} 854 854 \label{subsec:DYN_spg_ts} 855 855 %------------------------------------------namsplit----------------------------------------------------------- … … 858 858 %------------------------------------------------------------------------------------------------------------- 859 859 860 The split-explicit free surface formulation used in \NEMO\ (\np{ln \_dynspg\_ts} set to true),860 The split-explicit free surface formulation used in \NEMO\ (\np{ln_dynspg_ts}{ln\_dynspg\_ts} set to true), 861 861 also called the time-splitting formulation, follows the one proposed by \citet{shchepetkin.mcwilliams_OM05}. 862 862 The general idea is to solve the free surface equation and the associated barotropic velocity equations with … … 864 864 (\autoref{fig:DYN_spg_ts}). 865 865 The size of the small time step, $\rdt_e$ (the external mode or barotropic time step) is provided through 866 the \np{nn \_baro} namelist parameter as: $\rdt_e = \rdt / nn\_baro$.867 This parameter can be optionally defined automatically (\np{ln \_bt\_nn\_auto}\forcode{=.true.}) considering that866 the \np{nn_baro}{nn\_baro} namelist parameter as: $\rdt_e = \rdt / nn\_baro$. 867 This parameter can be optionally defined automatically (\np{ln_bt_nn_auto}{ln\_bt\_nn\_auto}\forcode{=.true.}) considering that 868 868 the stability of the barotropic system is essentially controled by external waves propagation. 869 869 Maximum Courant number is in that case time independent, and easily computed online from the input bathymetry. 870 Therefore, $\rdt_e$ is adjusted so that the Maximum allowed Courant number is smaller than \np{rn \_bt\_cmax}.870 Therefore, $\rdt_e$ is adjusted so that the Maximum allowed Courant number is smaller than \np{rn_bt_cmax}{rn\_bt\_cmax}. 871 871 872 872 %%% … … 903 903 Time increases to the right. 904 904 In this particular exemple, 905 a boxcar averaging window over \np{nn \_baro} barotropic time steps is used906 (\np{nn\_bt\_flt}\forcode{=1}) and \np{nn \_baro}\forcode{=5}.905 a boxcar averaging window over \np{nn_baro}{nn\_baro} barotropic time steps is used 906 (\np{nn\_bt\_flt}\forcode{=1}) and \np{nn_baro}{nn\_baro}\forcode{=5}. 907 907 Internal mode time steps (which are also the model time steps) are denoted by 908 908 $t-\rdt$, $t$ and $t+\rdt$. … … 913 913 the latter are used to obtain time averaged transports to advect tracers. 914 914 a) Forward time integration: 915 \protect\np{ln \_bt\_fw}\forcode{=.true.}, \protect\np{ln\_bt\_av}\forcode{=.true.}.915 \protect\np{ln_bt_fw}{ln\_bt\_fw}\forcode{=.true.}, \protect\np{ln_bt_av}{ln\_bt\_av}\forcode{=.true.}. 916 916 b) Centred time integration: 917 \protect\np{ln \_bt\_fw}\forcode{=.false.}, \protect\np{ln\_bt\_av}\forcode{=.true.}.917 \protect\np{ln_bt_fw}{ln\_bt\_fw}\forcode{=.false.}, \protect\np{ln_bt_av}{ln\_bt\_av}\forcode{=.true.}. 918 918 c) Forward time integration with no time filtering (POM-like scheme): 919 \protect\np{ln \_bt\_fw}\forcode{=.true.}, \protect\np{ln\_bt\_av}\forcode{=.false.}.}919 \protect\np{ln_bt_fw}{ln\_bt\_fw}\forcode{=.true.}, \protect\np{ln_bt_av}{ln\_bt\_av}\forcode{=.false.}.} 920 920 \label{fig:DYN_spg_ts} 921 921 \end{figure} 922 922 %> > > > > > > > > > > > > > > > > > > > > > > > > > > > 923 923 924 In the default case (\np{ln \_bt\_fw}\forcode{=.true.}),924 In the default case (\np{ln_bt_fw}{ln\_bt\_fw}\forcode{=.true.}), 925 925 the external mode is integrated between \textit{now} and \textit{after} baroclinic time-steps 926 926 (\autoref{fig:DYN_spg_ts}a). 927 927 To avoid aliasing of fast barotropic motions into three dimensional equations, 928 time filtering is eventually applied on barotropic quantities (\np{ln \_bt\_av}\forcode{=.true.}).928 time filtering is eventually applied on barotropic quantities (\np{ln_bt_av}{ln\_bt\_av}\forcode{=.true.}). 929 929 In that case, the integration is extended slightly beyond \textit{after} time step to 930 930 provide time filtered quantities. … … 933 933 asselin filtering is not applied to barotropic quantities.\\ 934 934 Alternatively, one can choose to integrate barotropic equations starting from \textit{before} time step 935 (\np{ln \_bt\_fw}\forcode{=.false.}).936 Although more computationaly expensive ( \np{nn \_baro} additional iterations are indeed necessary),935 (\np{ln_bt_fw}{ln\_bt\_fw}\forcode{=.false.}). 936 Although more computationaly expensive ( \np{nn_baro}{nn\_baro} additional iterations are indeed necessary), 937 937 the baroclinic to barotropic forcing term given at \textit{now} time step become centred in 938 938 the middle of the integration window. … … 958 958 959 959 One can eventually choose to feedback instantaneous values by not using any time filter 960 (\np{ln \_bt\_av}\forcode{=.false.}).960 (\np{ln_bt_av}{ln\_bt\_av}\forcode{=.false.}). 961 961 In that case, external mode equations are continuous in time, 962 962 \ie\ they are not re-initialized when starting a new sub-stepping sequence. … … 1135 1135 %------------------------------------------------------------------------------------------------------------- 1136 1136 1137 Options are defined through the \nam{dyn \_ldf} namelist variables.1137 Options are defined through the \nam{dyn_ldf}{dyn\_ldf} namelist variables. 1138 1138 The options available for lateral diffusion are to use either laplacian (rotated or not) or biharmonic operators. 1139 1139 The coefficients may be constant or spatially variable; … … 1162 1162 1163 1163 % ================================================================ 1164 \subsection[Iso-level laplacian (\forcode{ln_dynldf_lap})]{Iso-level laplacian operator (\protect\np{ln \_dynldf\_lap})}1164 \subsection[Iso-level laplacian (\forcode{ln_dynldf_lap})]{Iso-level laplacian operator (\protect\np{ln_dynldf_lap}{ln\_dynldf\_lap})} 1165 1165 \label{subsec:DYN_ldf_lap} 1166 1166 … … 1187 1187 % Rotated laplacian operator 1188 1188 %-------------------------------------------------------------------------------------------------------------- 1189 \subsection[Rotated laplacian (\forcode{ln_dynldf_iso})]{Rotated laplacian operator (\protect\np{ln \_dynldf\_iso})}1189 \subsection[Rotated laplacian (\forcode{ln_dynldf_iso})]{Rotated laplacian operator (\protect\np{ln_dynldf_iso}{ln\_dynldf\_iso})} 1190 1190 \label{subsec:DYN_ldf_iso} 1191 1191 1192 1192 A rotation of the lateral momentum diffusion operator is needed in several cases: 1193 for iso-neutral diffusion in the $z$-coordinate (\np{ln \_dynldf\_iso}\forcode{=.true.}) and1194 for either iso-neutral (\np{ln \_dynldf\_iso}\forcode{=.true.}) or1195 geopotential (\np{ln \_dynldf\_hor}\forcode{=.true.}) diffusion in the $s$-coordinate.1193 for iso-neutral diffusion in the $z$-coordinate (\np{ln_dynldf_iso}{ln\_dynldf\_iso}\forcode{=.true.}) and 1194 for either iso-neutral (\np{ln_dynldf_iso}{ln\_dynldf\_iso}\forcode{=.true.}) or 1195 geopotential (\np{ln_dynldf_hor}{ln\_dynldf\_hor}\forcode{=.true.}) diffusion in the $s$-coordinate. 1196 1196 In the partial step case, coordinates are horizontal except at the deepest level and 1197 no rotation is performed when \np{ln \_dynldf\_hor}\forcode{=.true.}.1197 no rotation is performed when \np{ln_dynldf_hor}{ln\_dynldf\_hor}\forcode{=.true.}. 1198 1198 The diffusion operator is defined simply as the divergence of down gradient momentum fluxes on 1199 1199 each momentum component. … … 1245 1245 % Iso-level bilaplacian operator 1246 1246 %-------------------------------------------------------------------------------------------------------------- 1247 \subsection[Iso-level bilaplacian (\forcode{ln_dynldf_bilap})]{Iso-level bilaplacian operator (\protect\np{ln \_dynldf\_bilap})}1247 \subsection[Iso-level bilaplacian (\forcode{ln_dynldf_bilap})]{Iso-level bilaplacian operator (\protect\np{ln_dynldf_bilap}{ln\_dynldf\_bilap})} 1248 1248 \label{subsec:DYN_ldf_bilap} 1249 1249 … … 1269 1269 Two time stepping schemes can be used for the vertical diffusion term: 1270 1270 $(a)$ a forward time differencing scheme 1271 (\np{ln \_zdfexp}\forcode{=.true.}) using a time splitting technique (\np{nn\_zdfexp} $>$ 1) or1272 $(b)$ a backward (or implicit) time differencing scheme (\np{ln \_zdfexp}\forcode{=.false.})1271 (\np{ln_zdfexp}{ln\_zdfexp}\forcode{=.true.}) using a time splitting technique (\np{nn_zdfexp}{nn\_zdfexp} $>$ 1) or 1272 $(b)$ a backward (or implicit) time differencing scheme (\np{ln_zdfexp}{ln\_zdfexp}\forcode{=.false.}) 1273 1273 (see \autoref{chap:TD}). 1274 Note that namelist variables \np{ln \_zdfexp} and \np{nn\_zdfexp} apply to both tracers and dynamics.1274 Note that namelist variables \np{ln_zdfexp}{ln\_zdfexp} and \np{nn_zdfexp}{nn\_zdfexp} apply to both tracers and dynamics. 1275 1275 1276 1276 The formulation of the vertical subgrid scale physics is the same whatever the vertical coordinate is. … … 1320 1320 three other forcings may enter the dynamical equations by affecting the surface pressure gradient. 1321 1321 1322 (1) When \np{ln \_apr\_dyn}\forcode{=.true.} (see \autoref{sec:SBC_apr}),1322 (1) When \np{ln_apr_dyn}{ln\_apr\_dyn}\forcode{=.true.} (see \autoref{sec:SBC_apr}), 1323 1323 the atmospheric pressure is taken into account when computing the surface pressure gradient. 1324 1324 1325 (2) When \np{ln \_tide\_pot}\forcode{=.true.} and \np{ln\_tide}\forcode{=.true.} (see \autoref{sec:SBC_tide}),1325 (2) When \np{ln_tide_pot}{ln\_tide\_pot}\forcode{=.true.} and \np{ln_tide}{ln\_tide}\forcode{=.true.} (see \autoref{sec:SBC_tide}), 1326 1326 the tidal potential is taken into account when computing the surface pressure gradient. 1327 1327 1328 (3) When \np{nn \_ice\_embd}\forcode{=2} and LIM or CICE is used1328 (3) When \np{nn_ice_embd}{nn\_ice\_embd}\forcode{=2} and LIM or CICE is used 1329 1329 (\ie\ when the sea-ice is embedded in the ocean), 1330 1330 the snow-ice mass is taken into account when computing the surface pressure gradient. … … 1396 1396 1397 1397 The principal idea of the directional limiter is that 1398 water should not be allowed to flow out of a dry tracer cell (i.e. one whose water depth is less than \np{rn \_wdmin1}).1398 water should not be allowed to flow out of a dry tracer cell (i.e. one whose water depth is less than \np{rn_wdmin1}{rn\_wdmin1}). 1399 1399 1400 1400 All the changes associated with this option are made to the barotropic solver for the non-linear … … 1406 1406 1407 1407 The flux across each $u$-face of a tracer cell is multiplied by a factor zuwdmask (an array which depends on ji and jj). 1408 If the user sets \np{ln \_wd\_dl\_ramp}\forcode{=.false.} then zuwdmask is 1 when the1409 flux is from a cell with water depth greater than \np{rn \_wdmin1} and 0 otherwise. If the user sets1410 \np{ln \_wd\_dl\_ramp}\forcode{=.true.} the flux across the face is ramped down as the water depth decreases1411 from 2 * \np{rn \_wdmin1} to \np{rn\_wdmin1}. The use of this ramp reduced grid-scale noise in idealised test cases.1408 If the user sets \np{ln_wd_dl_ramp}{ln\_wd\_dl\_ramp}\forcode{=.false.} then zuwdmask is 1 when the 1409 flux is from a cell with water depth greater than \np{rn_wdmin1}{rn\_wdmin1} and 0 otherwise. If the user sets 1410 \np{ln_wd_dl_ramp}{ln\_wd\_dl\_ramp}\forcode{=.true.} the flux across the face is ramped down as the water depth decreases 1411 from 2 * \np{rn_wdmin1}{rn\_wdmin1} to \np{rn\_wdmin1}. The use of this ramp reduced grid-scale noise in idealised test cases. 1412 1412 1413 1413 At the point where the flux across a $u$-face is multiplied by zuwdmask , we have chosen … … 1425 1425 fields (tracers independent of $x$, $y$ and $z$). Our scheme conserves constant tracers because 1426 1426 the velocities used at the tracer cell faces on the baroclinic timesteps are carefully calculated by dynspg\_ts 1427 to equal their mean value during the barotropic steps. If the user sets \np{ln \_wd\_dl\_bc}\forcode{=.true.}, the1427 to equal their mean value during the barotropic steps. If the user sets \np{ln_wd_dl_bc}{ln\_wd\_dl\_bc}\forcode{=.true.}, the 1428 1428 baroclinic velocities are also multiplied by a suitably weighted average of zuwdmask. 1429 1429 … … 1658 1658 1659 1659 $\bullet$ vector invariant form or linear free surface 1660 (\np{ln \_dynhpg\_vec}\forcode{=.true.} ; \texttt{vvl?} not defined):1660 (\np{ln_dynhpg_vec}{ln\_dynhpg\_vec}\forcode{=.true.} ; \texttt{vvl?} not defined): 1661 1661 \[ 1662 1662 % \label{eq:DYN_nxt_vec} … … 1670 1670 1671 1671 $\bullet$ flux form and nonlinear free surface 1672 (\np{ln \_dynhpg\_vec}\forcode{=.false.} ; \texttt{vvl?} defined):1672 (\np{ln_dynhpg_vec}{ln\_dynhpg\_vec}\forcode{=.false.} ; \texttt{vvl?} defined): 1673 1673 \[ 1674 1674 % \label{eq:DYN_nxt_flux} … … 1683 1683 where RHS is the right hand side of the momentum equation, 1684 1684 the subscript $f$ denotes filtered values and $\gamma$ is the Asselin coefficient. 1685 $\gamma$ is initialized as \np{nn \_atfp} (namelist parameter).1686 Its default value is \np{nn \_atfp}\forcode{=10.e-3}.1685 $\gamma$ is initialized as \np{nn_atfp}{nn\_atfp} (namelist parameter). 1686 Its default value is \np{nn_atfp}{nn\_atfp}\forcode{=10.e-3}. 1687 1687 In both cases, the modified Asselin filter is not applied since perfect conservation is not an issue for 1688 1688 the momentum equations. -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_LBC.tex
r11571 r11577 17 17 % Boundary Condition at the Coast 18 18 % ================================================================ 19 \section[Boundary condition at the coast (\forcode{rn_shlat})]{Boundary condition at the coast (\protect\np{rn \_shlat})}19 \section[Boundary condition at the coast (\forcode{rn_shlat})]{Boundary condition at the coast (\protect\np{rn_shlat}{rn\_shlat})} 20 20 \label{sec:LBC_coast} 21 21 %--------------------------------------------namlbc------------------------------------------------------- … … 91 91 and is required in order to compute the vorticity at the coast. 92 92 Four different types of lateral boundary condition are available, 93 controlled by the value of the \np{rn \_shlat} namelist parameter93 controlled by the value of the \np{rn_shlat}{rn\_shlat} namelist parameter 94 94 (The value of the mask$_{f}$ array along the coastline is set equal to this parameter). 95 95 These are: … … 101 101 \caption[Lateral boundary conditions]{ 102 102 Lateral boundary conditions 103 (a) free-slip (\protect\np{rn \_shlat}\forcode{=0});104 (b) no-slip (\protect\np{rn \_shlat}\forcode{=2});105 (c) "partial" free-slip (\forcode{0<}\protect\np{rn \_shlat}\forcode{<2}) and106 (d) "strong" no-slip (\forcode{2<}\protect\np{rn \_shlat}).103 (a) free-slip (\protect\np{rn_shlat}{rn\_shlat}\forcode{=0}); 104 (b) no-slip (\protect\np{rn_shlat}{rn\_shlat}\forcode{=2}); 105 (c) "partial" free-slip (\forcode{0<}\protect\np{rn_shlat}{rn\_shlat}\forcode{<2}) and 106 (d) "strong" no-slip (\forcode{2<}\protect\np{rn_shlat}{rn\_shlat}). 107 107 Implied "ghost" velocity inside land area is display in grey.} 108 108 \label{fig:LBC_shlat} … … 112 112 \begin{description} 113 113 114 \item[free-slip boundary condition (\np{rn \_shlat}\forcode{=0}):] the tangential velocity at114 \item[free-slip boundary condition (\np{rn_shlat}{rn\_shlat}\forcode{=0}):] the tangential velocity at 115 115 the coastline is equal to the offshore velocity, 116 116 \ie\ the normal derivative of the tangential velocity is zero at the coast, … … 118 118 (\autoref{fig:LBC_shlat}-a). 119 119 120 \item[no-slip boundary condition (\np{rn \_shlat}\forcode{=2}):] the tangential velocity vanishes at the coastline.120 \item[no-slip boundary condition (\np{rn_shlat}{rn\_shlat}\forcode{=2}):] the tangential velocity vanishes at the coastline. 121 121 Assuming that the tangential velocity decreases linearly from 122 122 the closest ocean velocity grid point to the coastline, … … 139 139 \] 140 140 141 \item["partial" free-slip boundary condition (0$<$\np{rn \_shlat}$<$2):] the tangential velocity at141 \item["partial" free-slip boundary condition (0$<$\np{rn_shlat}{rn\_shlat}$<$2):] the tangential velocity at 142 142 the coastline is smaller than the offshore velocity, \ie\ there is a lateral friction but 143 143 not strong enough to make the tangential velocity at the coast vanish (\autoref{fig:LBC_shlat}-c). 144 144 This can be selected by providing a value of mask$_{f}$ strictly inbetween $0$ and $2$. 145 145 146 \item["strong" no-slip boundary condition (2$<$\np{rn \_shlat}):] the viscous boundary layer is assumed to146 \item["strong" no-slip boundary condition (2$<$\np{rn_shlat}{rn\_shlat}):] the viscous boundary layer is assumed to 147 147 be smaller than half the grid size (\autoref{fig:LBC_shlat}-d). 148 148 The friction is thus larger than in the no-slip case. … … 333 333 334 334 If the domain decomposition is automatically defined (when \np{jpni} and \np{jpnj} are < 1), the decomposition chosen by the model will minimise the sub-domain size (defined as $max_{all domains}(jpi \times jpj)$) and maximize the number of eliminated land subdomains. This means that no other domain decomposition (a set of \np{jpni} and \np{jpnj} values) will use less processes than $(jpni \times jpnj - N_{land})$ and get a smaller subdomain size. 335 In order to specify $N_{mpi}$ properly (minimize $N_{useless}$), you must run the model once with \np{ln \_list} activated. In this case, the model will start the initialisation phase, print the list of optimum decompositions ($N_{mpi}$, \np{jpni} and \np{jpnj}) in \texttt{ocean.output} and directly abort. The maximum value of $N_{mpi}$ tested in this list is given by $max(N_{MPI\_tasks}, jpni \times jpnj)$. For example, run the model on 40 nodes with ln\_list activated and $jpni = 10000$ and $jpnj = 1$, will print the list of optimum domains decomposition from 1 to about 10000.335 In order to specify $N_{mpi}$ properly (minimize $N_{useless}$), you must run the model once with \np{ln_list}{ln\_list} activated. In this case, the model will start the initialisation phase, print the list of optimum decompositions ($N_{mpi}$, \np{jpni} and \np{jpnj}) in \texttt{ocean.output} and directly abort. The maximum value of $N_{mpi}$ tested in this list is given by $max(N_{MPI\_tasks}, jpni \times jpnj)$. For example, run the model on 40 nodes with ln\_list activated and $jpni = 10000$ and $jpnj = 1$, will print the list of optimum domains decomposition from 1 to about 10000. 336 336 337 337 Processors are numbered from 0 to $N_{mpi} - 1$. Subdomains containning some ocean points are numbered first from 0 to $jpni * jpnj - N_{land} -1$. The remaining $N_{useless}$ land subdomains are numbered next, which means that, for a given (\np{jpni}, \np{jpnj}), the numbers attributed to he ocean subdomains do not vary with $N_{useless}$. 338 338 339 When land processors are eliminated, the value corresponding to these locations in the model output files is undefined. \np{ln \_mskland} must be activated in order avoid Not a Number values in output files. Note that it is better to not eliminate land processors when creating a meshmask file (\ie\ when setting a non-zero value to \np{nn\_msh}).339 When land processors are eliminated, the value corresponding to these locations in the model output files is undefined. \np{ln_mskland}{ln\_mskland} must be activated in order avoid Not a Number values in output files. Note that it is better to not eliminate land processors when creating a meshmask file (\ie\ when setting a non-zero value to \np{nn_msh}{nn\_msh}). 340 340 341 341 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> … … 378 378 %----------------------------------------------------------------------------------------------- 379 379 380 Options are defined through the \nam{bdy} and \nam{bdy \_dta} namelist variables.380 Options are defined through the \nam{bdy} and \nam{bdy_dta}{bdy\_dta} namelist variables. 381 381 The BDY module is the core implementation of open boundary conditions for regional configurations on 382 382 ocean temperature, salinity, barotropic-baroclinic velocities, ice-snow concentration, thicknesses, temperatures, salinity and melt ponds concentration and thickness. … … 393 393 \label{subsec:LBC_bdy_namelist} 394 394 395 The BDY module is activated by setting \np{ln \_bdy}\forcode{=.true.} .395 The BDY module is activated by setting \np{ln_bdy}{ln\_bdy}\forcode{=.true.} . 396 396 It is possible to define more than one boundary ``set'' and apply different boundary conditions to each set. 397 The number of boundary sets is defined by \np{nb \_bdy}.397 The number of boundary sets is defined by \np{nb_bdy}{nb\_bdy}. 398 398 Each boundary set can be either defined as a series of straight line segments directly in the namelist 399 (\np{ln \_coords\_file}\forcode{=.false.}, and a namelist block \nam{bdy\_index} must be included for each set) or read in from a file (\np{ln\_coords\_file}\forcode{=.true.}, and a ``\ifile{coordinates.bdy}'' file must be provided).399 (\np{ln_coords_file}{ln\_coords\_file}\forcode{=.false.}, and a namelist block \nam{bdy_index}{bdy\_index} must be included for each set) or read in from a file (\np{ln\_coords\_file}\forcode{=.true.}, and a ``\ifile{coordinates.bdy}'' file must be provided). 400 400 The coordinates.bdy file is analagous to the usual \NEMO\ ``\ifile{coordinates}'' file. 401 401 In the example above, there are two boundary sets, the first of which is defined via a file and … … 406 406 (``u2d'':sea-surface height and barotropic velocities), for the baroclinic velocities (``u3d''), 407 407 for the active tracers \footnote{The BDY module does not deal with passive tracers at this version} (``tra''), and for sea-ice (``ice''). 408 For each set of variables one has to choose an algorithm and the boundary data (set resp. by \np{cn \_tra} and \np{nn\_tra\_dta} for tracers).\\408 For each set of variables one has to choose an algorithm and the boundary data (set resp. by \np{cn_tra}{cn\_tra} and \np{nn_tra_dta}{nn\_tra\_dta} for tracers).\\ 409 409 410 410 The choice of algorithm is currently as follows: … … 422 422 423 423 The boundary data is either set to initial conditions 424 (\np{nn \_tra\_dta}\forcode{=0}) or forced with external data from a file (\np{nn\_tra\_dta}\forcode{=1}).424 (\np{nn_tra_dta}{nn\_tra\_dta}\forcode{=0}) or forced with external data from a file (\np{nn\_tra\_dta}\forcode{=1}). 425 425 In case the 3d velocity data contain the total velocity (ie, baroclinic and barotropic velocity), 426 the bdy code can derived baroclinic and barotropic velocities by setting \np{ln \_full\_vel}\forcode{=.true.}426 the bdy code can derived baroclinic and barotropic velocities by setting \np{ln_full_vel}{ln\_full\_vel}\forcode{=.true.} 427 427 For the barotropic solution there is also the option to use tidal harmonic forcing either by 428 itself (\np{nn \_dyn2d\_dta}\forcode{=2}) or in addition to other external data (\np{nn\_dyn2d\_dta}\forcode{=3}).\\429 If not set to initial conditions, sea-ice salinity, temperatures and melt ponds data at the boundary can either be read in a file or defined as constant (by \np{rn \_ice\_sal}, \np{rn\_ice\_tem}, \np{rn\_ice\_apnd}, \np{rn\_ice\_hpnd}). Ice age is constant and defined by \np{rn\_ice\_age}.430 431 If external boundary data is required then the \nam{bdy \_dta} namelist must be defined.432 One \nam{bdy \_dta} namelist is required for each boundary set, adopting the same order of indexes in which the boundary sets are defined in nambdy.433 In the example given, two boundary sets have been defined. The first one is reading data file in the \nam{bdy \_dta} namelist shown above428 itself (\np{nn_dyn2d_dta}{nn\_dyn2d\_dta}\forcode{=2}) or in addition to other external data (\np{nn\_dyn2d\_dta}\forcode{=3}).\\ 429 If not set to initial conditions, sea-ice salinity, temperatures and melt ponds data at the boundary can either be read in a file or defined as constant (by \np{rn_ice_sal}{rn\_ice\_sal}, \np{rn_ice_tem}{rn\_ice\_tem}, \np{rn_ice_apnd}{rn\_ice\_apnd}, \np{rn_ice_hpnd}{rn\_ice\_hpnd}). Ice age is constant and defined by \np{rn_ice_age}{rn\_ice\_age}. 430 431 If external boundary data is required then the \nam{bdy_dta}{bdy\_dta} namelist must be defined. 432 One \nam{bdy_dta}{bdy\_dta} namelist is required for each boundary set, adopting the same order of indexes in which the boundary sets are defined in nambdy. 433 In the example given, two boundary sets have been defined. The first one is reading data file in the \nam{bdy_dta}{bdy\_dta} namelist shown above 434 434 and the second one is using data from intial condition (no namelist block needed). 435 435 The boundary data is read in using the fldread module, 436 so the \nam{bdy \_dta} namelist is in the format required for fldread.436 so the \nam{bdy_dta}{bdy\_dta} namelist is in the format required for fldread. 437 437 For each required variable, the filename, the frequency of the files and 438 438 the frequency of the data in the files are given. … … 441 441 442 442 There is currently an option to vertically interpolate the open boundary data onto the native grid at run-time. 443 If \np{nn \_bdy\_jpk}$<-1$, it is assumed that the lateral boundary data are already on the native grid.444 However, if \np{nn \_bdy\_jpk} is set to the number of vertical levels present in the boundary data,443 If \np{nn_bdy_jpk}{nn\_bdy\_jpk}$<-1$, it is assumed that the lateral boundary data are already on the native grid. 444 However, if \np{nn_bdy_jpk}{nn\_bdy\_jpk} is set to the number of vertical levels present in the boundary data, 445 445 a bilinear interpolation onto the native grid will be triggered at runtime. 446 446 For this to be successful the additional variables: $gdept$, $gdepu$, $gdepv$, $e3t$, $e3u$ and $e3v$, are required to be present in the lateral boundary files. … … 492 492 \alpha(d) = 1 - \tanh\left(\frac{d-1}{2}\right), \quad d=1,N 493 493 \] 494 The width of the FRS zone is specified in the namelist as \np{nn \_rimwidth}.494 The width of the FRS zone is specified in the namelist as \np{nn_rimwidth}{nn\_rimwidth}. 495 495 This is typically set to a value between 8 and 10. 496 496 … … 557 557 \end{equation} 558 558 559 Generally the relaxation time scale at inward propagation points (\np{rn \_time\_dmp}) is set much shorter than the time scale at outward propagation560 points (\np{rn \_time\_dmp\_out}) so that the solution is constrained more strongly by the external data at inward propagation points.559 Generally the relaxation time scale at inward propagation points (\np{rn_time_dmp}{rn\_time\_dmp}) is set much shorter than the time scale at outward propagation 560 points (\np{rn_time_dmp_out}{rn\_time\_dmp\_out}) so that the solution is constrained more strongly by the external data at inward propagation points. 561 561 See \autoref{subsec:LBC_bdy_relaxation} for detailed on the spatial shape of the scaling.\\ 562 562 The ``normal propagation of oblique radiation'' or NPO approximation (called \forcode{'orlanski_npo'}) involves assuming … … 569 569 \label{subsec:LBC_bdy_relaxation} 570 570 571 In addition to a specific boundary condition specified as \np{cn \_tra} and \np{cn\_dyn3d}, relaxation on baroclinic velocities and tracers variables are available.572 It is control by the namelist parameter \np{ln \_tra\_dmp} and \np{ln\_dyn3d\_dmp} for each boundary set.573 574 The relaxation time scale value (\np{rn \_time\_dmp} and \np{rn\_time\_dmp\_out}, $\tau$) are defined at the boundaries itself.575 This time scale ($\alpha$) is weighted by the distance ($d$) from the boundary over \np{nn \_rimwidth} cells ($N$):571 In addition to a specific boundary condition specified as \np{cn_tra}{cn\_tra} and \np{cn_dyn3d}{cn\_dyn3d}, relaxation on baroclinic velocities and tracers variables are available. 572 It is control by the namelist parameter \np{ln_tra_dmp}{ln\_tra\_dmp} and \np{ln_dyn3d_dmp}{ln\_dyn3d\_dmp} for each boundary set. 573 574 The relaxation time scale value (\np{rn_time_dmp}{rn\_time\_dmp} and \np{rn_time_dmp_out}{rn\_time\_dmp\_out}, $\tau$) are defined at the boundaries itself. 575 This time scale ($\alpha$) is weighted by the distance ($d$) from the boundary over \np{nn_rimwidth}{nn\_rimwidth} cells ($N$): 576 576 577 577 \[ … … 602 602 \jp{jpinft} give the start and end $i$ indices for each segment with similar for the other boundaries. 603 603 These segments define a list of $T$ grid points along the outermost row of the boundary ($nbr\,=\, 1$). 604 The code deduces the $U$ and $V$ points and also the points for $nbr\,>\, 1$ if \np{nn \_rimwidth}\forcode{>1}.604 The code deduces the $U$ and $V$ points and also the points for $nbr\,>\, 1$ if \np{nn_rimwidth}{nn\_rimwidth}\forcode{>1}. 605 605 606 606 The boundary geometry may also be defined from a ``\ifile{coordinates.bdy}'' file. … … 617 617 For example, if an open boundary is defined along an isobath, say at the shelf break, 618 618 then the areas of ocean outside of this boundary will need to be masked out. 619 This can be done by reading a mask file defined as \np{cn \_mask\_file} in the nam\_bdy namelist.619 This can be done by reading a mask file defined as \np{cn_mask_file}{cn\_mask\_file} in the nam\_bdy namelist. 620 620 Only one mask file is used even if multiple boundary sets are defined. 621 621 … … 672 672 673 673 There is an option to force the total volume in the regional model to be constant. 674 This is controlled by the \np{ln \_vol} parameter in the namelist.675 A value of \np{ln \_vol}\forcode{=.false.} indicates that this option is not used.676 Two options to control the volume are available (\np{nn \_volctl}).677 If \np{nn \_volctl}\forcode{=0} then a correction is applied to the normal barotropic velocities around the boundary at674 This is controlled by the \np{ln_vol}{ln\_vol} parameter in the namelist. 675 A value of \np{ln_vol}{ln\_vol}\forcode{=.false.} indicates that this option is not used. 676 Two options to control the volume are available (\np{nn_volctl}{nn\_volctl}). 677 If \np{nn_volctl}{nn\_volctl}\forcode{=0} then a correction is applied to the normal barotropic velocities around the boundary at 678 678 each timestep to ensure that the integrated volume flow through the boundary is zero. 679 If \np{nn \_volctl}\forcode{=1} then the calculation of the volume change on679 If \np{nn_volctl}{nn\_volctl}\forcode{=1} then the calculation of the volume change on 680 680 the timestep includes the change due to the freshwater flux across the surface and 681 681 the correction velocity corrects for this as well. … … 698 698 699 699 Tidal forcing at open boundaries requires the activation of surface 700 tides (i.e., in \nam{ \_tide}, \np{ln\_tide} needs to be set to700 tides (i.e., in \nam{_tide}{\_tide}, \np{ln_tide}{ln\_tide} needs to be set to 701 701 \forcode{.true.} and the required constituents need to be activated by 702 702 including their names in the \np{clname} array; see … … 704 704 the complex harmonic amplitudes of elevation (SSH) and barotropic 705 705 velocity (u,v) at open boundaries are defined through the 706 \nam{bdy \_tide} namelist parameters.\\706 \nam{bdy_tide}{bdy\_tide} namelist parameters.\\ 707 707 708 708 The tidal harmonic data at open boundaries can be specified in two 709 709 different ways, either on a two-dimensional grid covering the entire 710 710 model domain or along open boundary segments; these two variants can 711 be selected by setting \np{ln \_bdytide\_2ddta } to \forcode{.true.} or711 be selected by setting \np{ln_bdytide_2ddta }{ln\_bdytide\_2ddta } to \forcode{.true.} or 712 712 \forcode{.false.}, respectively. In either case, the real and 713 713 imaginary parts of SSH and the two barotropic velocity components for … … 729 729 \textit{v1} and \textit{v2} (real and imaginary part of v) are 730 730 expected to be available from file \np{filtide} with suffix 731 \ifile{tcname\_grid\_V}. If \np{ln \_bdytide\_conj} is set to731 \ifile{tcname\_grid\_V}. If \np{ln_bdytide_conj}{ln\_bdytide\_conj} is set to 732 732 \forcode{.true.}, the data is expected to be in complex conjugate 733 733 form. -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_LDF.tex
r11567 r11577 22 22 (3) the space and time variations of the eddy coefficients. 23 23 These three aspects of the lateral diffusion are set through namelist parameters 24 (see the \nam{tra \_ldf} and \nam{dyn\_ldf} below).24 (see the \nam{tra_ldf}{tra\_ldf} and \nam{dyn_ldf}{dyn\_ldf} below). 25 25 Note that this chapter describes the standard implementation of iso-neutral tracer mixing. 26 Griffies's implementation, which is used if \np{ln \_traldf\_triad}\forcode{=.true.},26 Griffies's implementation, which is used if \np{ln_traldf_triad}{ln\_traldf\_triad}\forcode{=.true.}, 27 27 is described in \autoref{apdx:TRIADS} 28 28 … … 38 38 We remind here the different lateral mixing operators that can be used. Further details can be found in \autoref{subsec:TRA_ldf_op} and \autoref{sec:DYN_ldf}. 39 39 40 \subsection[No lateral mixing (\forcode{ln_traldf_OFF} \& \forcode{ln_dynldf_OFF})]{No lateral mixing (\protect\np{ln \_traldf\_OFF} \& \protect\np{ln\_dynldf\_OFF})}41 42 It is possible to run without explicit lateral diffusion on tracers (\protect\np{ln \_traldf\_OFF}\forcode{=.true.}) and/or43 momentum (\protect\np{ln \_dynldf\_OFF}\forcode{=.true.}). The latter option is even recommended if using the44 UBS advection scheme on momentum (\np{ln \_dynadv\_ubs}\forcode{=.true.},40 \subsection[No lateral mixing (\forcode{ln_traldf_OFF} \& \forcode{ln_dynldf_OFF})]{No lateral mixing (\protect\np{ln_traldf_OFF}{ln\_traldf\_OFF} \& \protect\np{ln_dynldf_OFF}{ln\_dynldf\_OFF})} 41 42 It is possible to run without explicit lateral diffusion on tracers (\protect\np{ln_traldf_OFF}{ln\_traldf\_OFF}\forcode{=.true.}) and/or 43 momentum (\protect\np{ln_dynldf_OFF}{ln\_dynldf\_OFF}\forcode{=.true.}). The latter option is even recommended if using the 44 UBS advection scheme on momentum (\np{ln_dynadv_ubs}{ln\_dynadv\_ubs}\forcode{=.true.}, 45 45 see \autoref{subsec:DYN_adv_ubs}) and can be useful for testing purposes. 46 46 47 \subsection[Laplacian mixing (\forcode{ln_traldf_lap} \& \forcode{ln_dynldf_lap})]{Laplacian mixing (\protect\np{ln \_traldf\_lap} \& \protect\np{ln\_dynldf\_lap})}48 Setting \protect\np{ln \_traldf\_lap}\forcode{=.true.} and/or \protect\np{ln\_dynldf\_lap}\forcode{=.true.} enables47 \subsection[Laplacian mixing (\forcode{ln_traldf_lap} \& \forcode{ln_dynldf_lap})]{Laplacian mixing (\protect\np{ln_traldf_lap}{ln\_traldf\_lap} \& \protect\np{ln_dynldf_lap}{ln\_dynldf\_lap})} 48 Setting \protect\np{ln_traldf_lap}{ln\_traldf\_lap}\forcode{=.true.} and/or \protect\np{ln_dynldf_lap}{ln\_dynldf\_lap}\forcode{=.true.} enables 49 49 a second order diffusion on tracers and momentum respectively. Note that in \NEMO\ 4, one can not combine 50 50 Laplacian and Bilaplacian operators for the same variable. 51 51 52 \subsection[Bilaplacian mixing (\forcode{ln_traldf_blp} \& \forcode{ln_dynldf_blp})]{Bilaplacian mixing (\protect\np{ln \_traldf\_blp} \& \protect\np{ln\_dynldf\_blp})}53 Setting \protect\np{ln \_traldf\_blp}\forcode{=.true.} and/or \protect\np{ln\_dynldf\_blp}\forcode{=.true.} enables52 \subsection[Bilaplacian mixing (\forcode{ln_traldf_blp} \& \forcode{ln_dynldf_blp})]{Bilaplacian mixing (\protect\np{ln_traldf_blp}{ln\_traldf\_blp} \& \protect\np{ln_dynldf_blp}{ln\_dynldf\_blp})} 53 Setting \protect\np{ln_traldf_blp}{ln\_traldf\_blp}\forcode{=.true.} and/or \protect\np{ln_dynldf_blp}{ln\_dynldf\_blp}\forcode{=.true.} enables 54 54 a fourth order diffusion on tracers and momentum respectively. It is implemented by calling the above Laplacian operator twice. 55 55 We stress again that from \NEMO\ 4, the simultaneous use Laplacian and Bilaplacian operators is not allowed. … … 69 69 A direction for lateral mixing has to be defined when the desired operator does not act along the model levels. 70 70 This occurs when $(a)$ horizontal mixing is required on tracer or momentum 71 (\np{ln \_traldf\_hor} or \np{ln\_dynldf\_hor}) in $s$- or mixed $s$-$z$- coordinates,71 (\np{ln_traldf_hor}{ln\_traldf\_hor} or \np{ln_dynldf_hor}{ln\_dynldf\_hor}) in $s$- or mixed $s$-$z$- coordinates, 72 72 and $(b)$ isoneutral mixing is required whatever the vertical coordinate is. 73 73 This direction of mixing is defined by its slopes in the \textbf{i}- and \textbf{j}-directions at the face of … … 107 107 %gm% caution I'm not sure the simplification was a good idea! 108 108 109 These slopes are computed once in \rou{ldf\_slp\_init} when \np{ln \_sco}\forcode{=.true.},110 and either \np{ln \_traldf\_hor}\forcode{=.true.} or \np{ln\_dynldf\_hor}\forcode{=.true.}.109 These slopes are computed once in \rou{ldf\_slp\_init} when \np{ln_sco}{ln\_sco}\forcode{=.true.}, 110 and either \np{ln_traldf_hor}{ln\_traldf\_hor}\forcode{=.true.} or \np{ln_dynldf_hor}{ln\_dynldf\_hor}\forcode{=.true.}. 111 111 112 112 \subsection{Slopes for tracer iso-neutral mixing} … … 164 164 \item[$s$- or hybrid $s$-$z$- coordinate: ] 165 165 in the current release of \NEMO, iso-neutral mixing is only employed for $s$-coordinates if 166 the Griffies scheme is used (\np{ln \_traldf\_triad}\forcode{=.true.};166 the Griffies scheme is used (\np{ln_traldf_triad}{ln\_traldf\_triad}\forcode{=.true.}; 167 167 see \autoref{apdx:TRIADS}). 168 168 In other words, iso-neutral mixing will only be accurately represented with a linear equation of state 169 (\np{ln \_seos}\forcode{=.true.}).169 (\np{ln_seos}{ln\_seos}\forcode{=.true.}). 170 170 In the case of a "true" equation of state, the evaluation of $i$ and $j$ derivatives in \autoref{eq:LDF_slp_iso} 171 171 will include a pressure dependent part, leading to the wrong evaluation of the neutral slopes. … … 222 222 To overcome this problem, several techniques have been proposed in which the numerical schemes of 223 223 the ocean model are modified \citep{weaver.eby_JPO97, griffies.gnanadesikan.ea_JPO98}. 224 Griffies's scheme is now available in \NEMO\ if \np{ln \_traldf\_triad}\forcode{ = .true.}; see \autoref{apdx:TRIADS}.224 Griffies's scheme is now available in \NEMO\ if \np{ln_traldf_triad}{ln\_traldf\_triad}\forcode{ = .true.}; see \autoref{apdx:TRIADS}. 225 225 Here, another strategy is presented \citep{lazar_phd97}: 226 226 a local filtering of the iso-neutral slopes (made on 9 grid-points) prevents the development of … … 258 258 259 259 For numerical stability reasons \citep{cox_OM87, griffies_bk04}, the slopes must also be bounded by 260 the namelist scalar \np{rn \_slpmax} (usually $1/100$) everywhere.260 the namelist scalar \np{rn_slpmax}{rn\_slpmax} (usually $1/100$) everywhere. 261 261 This constraint is applied in a piecewise linear fashion, increasing from zero at the surface to 262 262 $1/100$ at $70$ metres and thereafter decreasing to zero at the bottom of the ocean … … 320 320 % Lateral Mixing Coefficients 321 321 % ================================================================ 322 \section[Lateral mixing coefficient (\forcode{nn_aht_ijk_t} \& \forcode{nn_ahm_ijk_t})]{Lateral mixing coefficient (\protect\np{nn \_aht\_ijk\_t} \& \protect\np{nn\_ahm\_ijk\_t})}322 \section[Lateral mixing coefficient (\forcode{nn_aht_ijk_t} \& \forcode{nn_ahm_ijk_t})]{Lateral mixing coefficient (\protect\np{nn_aht_ijk_t}{nn\_aht\_ijk\_t} \& \protect\np{nn_ahm_ijk_t}{nn\_ahm\_ijk\_t})} 323 323 \label{sec:LDF_coef} 324 324 … … 326 326 The way the mixing coefficients are set in the reference version can be described as follows: 327 327 328 \subsection[Mixing coefficients read from file (\forcode{=-20, -30})]{ Mixing coefficients read from file (\protect\np{nn \_aht\_ijk\_t}\forcode{=-20, -30} \& \protect\np{nn\_ahm\_ijk\_t}\forcode{=-20, -30})}328 \subsection[Mixing coefficients read from file (\forcode{=-20, -30})]{ Mixing coefficients read from file (\protect\np{nn_aht_ijk_t}{nn\_aht\_ijk\_t}\forcode{=-20, -30} \& \protect\np{nn_ahm_ijk_t}{nn\_ahm\_ijk\_t}\forcode{=-20, -30})} 329 329 330 330 Mixing coefficients can be read from file if a particular geographical variation is needed. For example, in the ORCA2 global ocean model, … … 332 332 decreases linearly to $A^l$~= 2.10$^3$ m$^2$/s at the equator \citep{madec.delecluse.ea_JPO96, delecluse.madec_icol99}. 333 333 Similar modified horizontal variations can be found with the Antarctic or Arctic sub-domain options of ORCA2 and ORCA05. 334 The provided fields can either be 2d (\np{nn \_aht\_ijk\_t}\forcode{=-20}, \np{nn\_ahm\_ijk\_t}\forcode{=-20}) or 3d (\np{nn\_aht\_ijk\_t}\forcode{=-30}, \np{nn\_ahm\_ijk\_t}\forcode{=-30}). They must be given at U, V points for tracers and T, F points for momentum (see \autoref{tab:LDF_files}).334 The provided fields can either be 2d (\np{nn_aht_ijk_t}{nn\_aht\_ijk\_t}\forcode{=-20}, \np{nn_ahm_ijk_t}{nn\_ahm\_ijk\_t}\forcode{=-20}) or 3d (\np{nn\_aht\_ijk\_t}\forcode{=-30}, \np{nn\_ahm\_ijk\_t}\forcode{=-30}). They must be given at U, V points for tracers and T, F points for momentum (see \autoref{tab:LDF_files}). 335 335 336 336 %-------------------------------------------------TABLE--------------------------------------------------- … … 340 340 \hline 341 341 Namelist parameter & Input filename & dimensions & variable names \\ \hline 342 \np{nn \_ahm\_ijk\_t}\forcode{=-20} & \forcode{eddy_viscosity_2D.nc } & $(i,j)$ & \forcode{ahmt_2d, ahmf_2d} \\ \hline343 \np{nn \_aht\_ijk\_t}\forcode{=-20} & \forcode{eddy_diffusivity_2D.nc } & $(i,j)$ & \forcode{ahtu_2d, ahtv_2d} \\ \hline344 \np{nn \_ahm\_ijk\_t}\forcode{=-30} & \forcode{eddy_viscosity_3D.nc } & $(i,j,k)$ & \forcode{ahmt_3d, ahmf_3d} \\ \hline345 \np{nn \_aht\_ijk\_t}\forcode{=-30} & \forcode{eddy_diffusivity_3D.nc } & $(i,j,k)$ & \forcode{ahtu_3d, ahtv_3d} \\ \hline342 \np{nn_ahm_ijk_t}{nn\_ahm\_ijk\_t}\forcode{=-20} & \forcode{eddy_viscosity_2D.nc } & $(i,j)$ & \forcode{ahmt_2d, ahmf_2d} \\ \hline 343 \np{nn_aht_ijk_t}{nn\_aht\_ijk\_t}\forcode{=-20} & \forcode{eddy_diffusivity_2D.nc } & $(i,j)$ & \forcode{ahtu_2d, ahtv_2d} \\ \hline 344 \np{nn_ahm_ijk_t}{nn\_ahm\_ijk\_t}\forcode{=-30} & \forcode{eddy_viscosity_3D.nc } & $(i,j,k)$ & \forcode{ahmt_3d, ahmf_3d} \\ \hline 345 \np{nn_aht_ijk_t}{nn\_aht\_ijk\_t}\forcode{=-30} & \forcode{eddy_diffusivity_3D.nc } & $(i,j,k)$ & \forcode{ahtu_3d, ahtv_3d} \\ \hline 346 346 \end{tabular} 347 347 \caption{Description of expected input files if mixing coefficients are read from NetCDF files} … … 350 350 %-------------------------------------------------------------------------------------------------------------- 351 351 352 \subsection[Constant mixing coefficients (\forcode{=0})]{ Constant mixing coefficients (\protect\np{nn \_aht\_ijk\_t}\forcode{=0} \& \protect\np{nn\_ahm\_ijk\_t}\forcode{=0})}352 \subsection[Constant mixing coefficients (\forcode{=0})]{ Constant mixing coefficients (\protect\np{nn_aht_ijk_t}{nn\_aht\_ijk\_t}\forcode{=0} \& \protect\np{nn_ahm_ijk_t}{nn\_ahm\_ijk\_t}\forcode{=0})} 353 353 354 354 If constant, mixing coefficients are set thanks to a velocity and a length scales ($U_{scl}$, $L_{scl}$) such that: … … 364 364 \end{equation} 365 365 366 $U_{scl}$ and $L_{scl}$ are given by the namelist parameters \np{rn \_Ud}, \np{rn\_Uv}, \np{rn\_Ld} and \np{rn\_Lv}.367 368 \subsection[Vertically varying mixing coefficients (\forcode{=10})]{Vertically varying mixing coefficients (\protect\np{nn \_aht\_ijk\_t}\forcode{=10} \& \protect\np{nn\_ahm\_ijk\_t}\forcode{=10})}366 $U_{scl}$ and $L_{scl}$ are given by the namelist parameters \np{rn_Ud}{rn\_Ud}, \np{rn_Uv}{rn\_Uv}, \np{rn_Ld}{rn\_Ld} and \np{rn_Lv}{rn\_Lv}. 367 368 \subsection[Vertically varying mixing coefficients (\forcode{=10})]{Vertically varying mixing coefficients (\protect\np{nn_aht_ijk_t}{nn\_aht\_ijk\_t}\forcode{=10} \& \protect\np{nn_ahm_ijk_t}{nn\_ahm\_ijk\_t}\forcode{=10})} 369 369 370 370 In the vertically varying case, a hyperbolic variation of the lateral mixing coefficient is introduced in which … … 373 373 This profile is hard coded in module \mdl{ldfc1d\_c2d}, but can be easily modified by users. 374 374 375 \subsection[Mesh size dependent mixing coefficients (\forcode{=20})]{Mesh size dependent mixing coefficients (\protect\np{nn \_aht\_ijk\_t}\forcode{=20} \& \protect\np{nn\_ahm\_ijk\_t}\forcode{=20})}375 \subsection[Mesh size dependent mixing coefficients (\forcode{=20})]{Mesh size dependent mixing coefficients (\protect\np{nn_aht_ijk_t}{nn\_aht\_ijk\_t}\forcode{=20} \& \protect\np{nn_ahm_ijk_t}{nn\_ahm\_ijk\_t}\forcode{=20})} 376 376 377 377 In that case, the horizontal variation of the eddy coefficient depends on the local mesh size and … … 386 386 \right. 387 387 \end{equation} 388 where $U_{scl}$ is a user defined velocity scale (\np{rn \_Ud}, \np{rn\_Uv}).388 where $U_{scl}$ is a user defined velocity scale (\np{rn_Ud}{rn\_Ud}, \np{rn_Uv}{rn\_Uv}). 389 389 This variation is intended to reflect the lesser need for subgrid scale eddy mixing where 390 390 the grid size is smaller in the domain. … … 396 396 especially when using a bilaplacian operator. 397 397 398 \colorbox{yellow}{CASE \np{nn \_aht\_ijk\_t} = 21 to be added}399 400 \subsection[Mesh size and depth dependent mixing coefficients (\forcode{=30})]{Mesh size and depth dependent mixing coefficients (\protect\np{nn \_aht\_ijk\_t}\forcode{=30} \& \protect\np{nn\_ahm\_ijk\_t}\forcode{=30})}398 \colorbox{yellow}{CASE \np{nn_aht_ijk_t}{nn\_aht\_ijk\_t} = 21 to be added} 399 400 \subsection[Mesh size and depth dependent mixing coefficients (\forcode{=30})]{Mesh size and depth dependent mixing coefficients (\protect\np{nn_aht_ijk_t}{nn\_aht\_ijk\_t}\forcode{=30} \& \protect\np{nn_ahm_ijk_t}{nn\_ahm\_ijk\_t}\forcode{=30})} 401 401 402 402 The 3D space variation of the mixing coefficient is simply the combination of the 1D and 2D cases above, … … 404 404 the magnitude of the coefficient. 405 405 406 \subsection[Velocity dependent mixing coefficients (\forcode{=31})]{Flow dependent mixing coefficients (\protect\np{nn \_aht\_ijk\_t}\forcode{=31} \& \protect\np{nn\_ahm\_ijk\_t}\forcode{=31})}406 \subsection[Velocity dependent mixing coefficients (\forcode{=31})]{Flow dependent mixing coefficients (\protect\np{nn_aht_ijk_t}{nn\_aht\_ijk\_t}\forcode{=31} \& \protect\np{nn_ahm_ijk_t}{nn\_ahm\_ijk\_t}\forcode{=31})} 407 407 In that case, the eddy coefficient is proportional to the local velocity magnitude so that the Reynolds number $Re = \lvert U \rvert e / A_l$ is constant (and here hardcoded to $12$): 408 408 \colorbox{yellow}{JC comment: The Reynolds is effectively set to 12 in the code for both operators but shouldn't it be 2 for Laplacian ?} … … 418 418 \end{equation} 419 419 420 \subsection[Deformation rate dependent viscosities (\forcode{nn_ahm_ijk_t=32})]{Deformation rate dependent viscosities (\protect\np{nn \_ahm\_ijk\_t}\forcode{=32})}420 \subsection[Deformation rate dependent viscosities (\forcode{nn_ahm_ijk_t=32})]{Deformation rate dependent viscosities (\protect\np{nn_ahm_ijk_t}{nn\_ahm\_ijk\_t}\forcode{=32})} 421 421 422 422 This option refers to the \citep{smagorinsky_MW63} scheme which is here implemented for momentum only. Smagorinsky chose as a … … 431 431 \end{equation} 432 432 433 Introducing a user defined constant $C$ (given in the namelist as \np{rn \_csmc}), one can deduce the mixing coefficients as follows:433 Introducing a user defined constant $C$ (given in the namelist as \np{rn_csmc}{rn\_csmc}), one can deduce the mixing coefficients as follows: 434 434 435 435 \begin{equation} … … 452 452 \end{equation} 453 453 454 where $C_{min}$ and $C_{max}$ are adimensional namelist parameters given by \np{rn \_minfac} and \np{rn\_maxfac} respectively.454 where $C_{min}$ and $C_{max}$ are adimensional namelist parameters given by \np{rn_minfac}{rn\_minfac} and \np{rn_maxfac}{rn\_maxfac} respectively. 455 455 456 456 \subsection{About space and time varying mixing coefficients} … … 470 470 % Eddy Induced Mixing 471 471 % ================================================================ 472 \section[Eddy induced velocity (\forcode{ln_ldfeiv})]{Eddy induced velocity (\protect\np{ln \_ldfeiv})}472 \section[Eddy induced velocity (\forcode{ln_ldfeiv})]{Eddy induced velocity (\protect\np{ln_ldfeiv}{ln\_ldfeiv})} 473 473 474 474 \label{sec:LDF_eiv} … … 489 489 Values of iso-neutral diffusivity and GM coefficient are set as described in \autoref{sec:LDF_coef}. 490 490 If none of the keys \key{traldf\_cNd}, N=1,2,3 is set (the default), spatially constant iso-neutral $A_l$ and 491 GM diffusivity $A_e$ are directly set by \np{rn \_aeih\_0} and \np{rn\_aeiv\_0}.491 GM diffusivity $A_e$ are directly set by \np{rn_aeih_0}{rn\_aeih\_0} and \np{rn_aeiv_0}{rn\_aeiv\_0}. 492 492 If 2D-varying coefficients are set with \key{traldf\_c2d} then $A_l$ is reduced in proportion with horizontal 493 493 scale factor according to \autoref{eq:title} … … 502 502 In this case, $A_e$ at low latitudes $|\theta|<20^{\circ}$ is further reduced by a factor $|f/f_{20}|$, 503 503 where $f_{20}$ is the value of $f$ at $20^{\circ}$~N 504 } (\mdl{ldfeiv}) and \np{rn \_aeiv\_0} is ignored unless it is zero.504 } (\mdl{ldfeiv}) and \np{rn_aeiv_0}{rn\_aeiv\_0} is ignored unless it is zero. 505 505 } 506 506 507 When \citet{gent.mcwilliams_JPO90} diffusion is used (\np{ln \_ldfeiv}\forcode{=.true.}),507 When \citet{gent.mcwilliams_JPO90} diffusion is used (\np{ln_ldfeiv}{ln\_ldfeiv}\forcode{=.true.}), 508 508 an eddy induced tracer advection term is added, 509 509 the formulation of which depends on the slopes of iso-neutral surfaces. … … 512 512 and the sum \autoref{eq:LDF_slp_geo} + \autoref{eq:LDF_slp_iso} in $s$-coordinates. 513 513 514 If isopycnal mixing is used in the standard way, \ie\ \np{ln \_traldf\_triad}\forcode{=.false.}, the eddy induced velocity is given by:514 If isopycnal mixing is used in the standard way, \ie\ \np{ln_traldf_triad}{ln\_traldf\_triad}\forcode{=.false.}, the eddy induced velocity is given by: 515 515 \begin{equation} 516 516 \label{eq:LDF_eiv} … … 521 521 \end{split} 522 522 \end{equation} 523 where $A^{eiv}$ is the eddy induced velocity coefficient whose value is set through \np{nn \_aei\_ijk\_t} \nam{tra\_eiv} namelist parameter.523 where $A^{eiv}$ is the eddy induced velocity coefficient whose value is set through \np{nn_aei_ijk_t}{nn\_aei\_ijk\_t} \nam{tra_eiv}{tra\_eiv} namelist parameter. 524 524 The three components of the eddy induced velocity are computed in \rou{ldf\_eiv\_trp} and 525 525 added to the eulerian velocity in \rou{tra\_adv} where tracer advection is performed. … … 533 533 At the surface, lateral and bottom boundaries, the eddy induced velocity, 534 534 and thus the advective eddy fluxes of heat and salt, are set to zero. 535 The value of the eddy induced mixing coefficient and its space variation is controlled in a similar way as for lateral mixing coefficient described in the preceding subsection (\np{nn \_aei\_ijk\_t}, \np{rn\_Ue}, \np{rn\_Le} namelist parameters).536 \colorbox{yellow}{CASE \np{nn \_aei\_ijk\_t} = 21 to be added}537 538 In case of setting \np{ln \_traldf\_triad}\forcode{ = .true.}, a skew form of the eddy induced advective fluxes is used, which is described in \autoref{apdx:TRIADS}.535 The value of the eddy induced mixing coefficient and its space variation is controlled in a similar way as for lateral mixing coefficient described in the preceding subsection (\np{nn_aei_ijk_t}{nn\_aei\_ijk\_t}, \np{rn_Ue}{rn\_Ue}, \np{rn_Le}{rn\_Le} namelist parameters). 536 \colorbox{yellow}{CASE \np{nn_aei_ijk_t}{nn\_aei\_ijk\_t} = 21 to be added} 537 538 In case of setting \np{ln_traldf_triad}{ln\_traldf\_triad}\forcode{ = .true.}, a skew form of the eddy induced advective fluxes is used, which is described in \autoref{apdx:TRIADS}. 539 539 540 540 % ================================================================ 541 541 % Mixed layer eddies 542 542 % ================================================================ 543 \section[Mixed layer eddies (\forcode{ln_mle})]{Mixed layer eddies (\protect\np{ln \_mle})}543 \section[Mixed layer eddies (\forcode{ln_mle})]{Mixed layer eddies (\protect\np{ln_mle}{ln\_mle})} 544 544 \label{sec:LDF_mle} 545 545 … … 554 554 %-------------------------------------------------------------------------------------------------------------- 555 555 556 If \np{ln \_mle}\forcode{=.true.} in \nam{tra\_mle} namelist, a parameterization of the mixing due to unresolved mixed layer instabilities is activated (\citet{foxkemper.ferrari_JPO08}). Additional transport is computed in \rou{ldf\_mle\_trp} and added to the eulerian transport in \rou{tra\_adv} as done for eddy induced advection.556 If \np{ln_mle}{ln\_mle}\forcode{=.true.} in \nam{tra_mle}{tra\_mle} namelist, a parameterization of the mixing due to unresolved mixed layer instabilities is activated (\citet{foxkemper.ferrari_JPO08}). Additional transport is computed in \rou{ldf\_mle\_trp} and added to the eulerian transport in \rou{tra\_adv} as done for eddy induced advection. 557 557 558 558 \colorbox{yellow}{TBC} -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_OBS.tex
r11567 r11577 32 32 The OBS code is called from \mdl{nemogcm} for model initialisation and to calculate the model equivalent values for observations on the 0th time step. 33 33 The code is then called again after each time step from \mdl{step}. 34 The code is only activated if the \nam{obs} namelist logical \np{ln \_diaobs} is set to true.34 The code is only activated if the \nam{obs} namelist logical \np{ln_diaobs}{ln\_diaobs} is set to true. 35 35 36 36 For all data types a 2D horizontal interpolator or averager is needed to … … 42 42 Some profile observation types (\eg\ tropical moored buoys) are made available as daily averaged quantities. 43 43 The observation operator code can be set-up to calculate the equivalent daily average model temperature fields using 44 the \np{nn \_profdavtypes} namelist array.44 the \np{nn_profdavtypes}{nn\_profdavtypes} namelist array. 45 45 Some SST observations are equivalent to a night-time average value and 46 46 the observation operator code can calculate equivalent night-time average model SST fields by 47 setting the namelist value \np{ln \_sstnight} to true.47 setting the namelist value \np{ln_sstnight}{ln\_sstnight} to true. 48 48 Otherwise (by default) the model value from the nearest time step to the observation time is used. 49 49 … … 93 93 94 94 Options are defined through the \nam{obs} namelist variables. 95 The options \np{ln \_t3d} and \np{ln\_s3d} switch on the temperature and salinity profile observation operator code.96 The filename or array of filenames are specified using the \np{cn \_profbfiles} variable.95 The options \np{ln_t3d}{ln\_t3d} and \np{ln_s3d}{ln\_s3d} switch on the temperature and salinity profile observation operator code. 96 The filename or array of filenames are specified using the \np{cn_profbfiles}{cn\_profbfiles} variable. 97 97 The model grid points for a particular observation latitude and longitude are found using 98 98 the grid searching part of the code. 99 99 This can be expensive, particularly for large numbers of observations, 100 setting \np{ln \_grid\_search\_lookup} allows the use of a lookup table which101 is saved into an \np{cn \_gridsearch} file (or files).100 setting \np{ln_grid_search_lookup}{ln\_grid\_search\_lookup} allows the use of a lookup table which 101 is saved into an \np{cn_gridsearch}{cn\_gridsearch} file (or files). 102 102 This will need to be generated the first time if it does not exist in the run directory. 103 103 However, once produced it will significantly speed up future grid searches. 104 Setting \np{ln \_grid\_global} means that the code distributes the observations evenly between processors.104 Setting \np{ln_grid_global}{ln\_grid\_global} means that the code distributes the observations evenly between processors. 105 105 Alternatively each processor will work with observations located within the model subdomain 106 106 (see \autoref{subsec:OBS_parallel}). … … 565 565 (for surface observation types only). 566 566 567 The main namelist option associated with the interpolation/averaging is \np{nn \_2dint}.567 The main namelist option associated with the interpolation/averaging is \np{nn_2dint}{nn\_2dint}. 568 568 This default option can be set to values from 0 to 6. 569 569 Values between 0 to 4 are associated with interpolation while values 5 or 6 are associated with averaging. 570 570 \begin{itemize} 571 \item \np{nn \_2dint}\forcode{ = 0}: Distance-weighted interpolation572 \item \np{nn \_2dint}\forcode{ = 1}: Distance-weighted interpolation (small angle)573 \item \np{nn \_2dint}\forcode{ = 2}: Bilinear interpolation (geographical grid)574 \item \np{nn \_2dint}\forcode{ = 3}: Bilinear remapping interpolation (general grid)575 \item \np{nn \_2dint}\forcode{ = 4}: Polynomial interpolation576 \item \np{nn \_2dint}\forcode{ = 5}: Radial footprint averaging with diameter specified in the namelist as571 \item \np{nn_2dint}{nn\_2dint}\forcode{ = 0}: Distance-weighted interpolation 572 \item \np{nn_2dint}{nn\_2dint}\forcode{ = 1}: Distance-weighted interpolation (small angle) 573 \item \np{nn_2dint}{nn\_2dint}\forcode{ = 2}: Bilinear interpolation (geographical grid) 574 \item \np{nn_2dint}{nn\_2dint}\forcode{ = 3}: Bilinear remapping interpolation (general grid) 575 \item \np{nn_2dint}{nn\_2dint}\forcode{ = 4}: Polynomial interpolation 576 \item \np{nn_2dint}{nn\_2dint}\forcode{ = 5}: Radial footprint averaging with diameter specified in the namelist as 577 577 \texttt{rn\_[var]\_avglamscl} in degrees or metres (set using \texttt{ln\_[var]\_fp\_indegs}) 578 \item \np{nn \_2dint}\forcode{ = 6}: Rectangular footprint averaging with E/W and N/S size specified in578 \item \np{nn_2dint}{nn\_2dint}\forcode{ = 6}: Rectangular footprint averaging with E/W and N/S size specified in 579 579 the namelist as \texttt{rn\_[var]\_avglamscl} and \texttt{rn\_[var]\_avgphiscl} in degrees or metres 580 580 (set using \texttt{ln\_[var]\_fp\_indegs}) … … 582 582 Replace \texttt{[var]} in the last two options with the observation type (sla, sst, sss or sic) for 583 583 which the averaging is to be performed (see namelist example above). 584 The \np{nn \_2dint} default option can be overridden for surface observation types using584 The \np{nn_2dint}{nn\_2dint} default option can be overridden for surface observation types using 585 585 namelist values \texttt{nn\_2dint\_[var]} where \texttt{[var]} is the observation type. 586 586 -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_SBC.tex
r11571 r11577 41 41 \begin{itemize} 42 42 \item 43 a bulk formulation (\np{ln \_blk}\forcode{=.true.} with four possible bulk algorithms),44 \item 45 a flux formulation (\np{ln \_flx}\forcode{=.true.}),43 a bulk formulation (\np{ln_blk}{ln\_blk}\forcode{=.true.} with four possible bulk algorithms), 44 \item 45 a flux formulation (\np{ln_flx}{ln\_flx}\forcode{=.true.}), 46 46 \item 47 47 a coupled or mixed forced/coupled formulation (exchanges with a atmospheric model via the OASIS coupler), 48 (\np{ln \_cpl} or \np{ln\_mixcpl}\forcode{=.true.}),49 \item 50 a user defined formulation (\np{ln \_usr}\forcode{=.true.}).48 (\np{ln_cpl}{ln\_cpl} or \np{ln_mixcpl}{ln\_mixcpl}\forcode{=.true.}), 49 \item 50 a user defined formulation (\np{ln_usr}{ln\_usr}\forcode{=.true.}). 51 51 \end{itemize} 52 52 53 The frequency at which the forcing fields have to be updated is given by the \np{nn \_fsbc} namelist parameter.53 The frequency at which the forcing fields have to be updated is given by the \np{nn_fsbc}{nn\_fsbc} namelist parameter. 54 54 55 55 When the fields are supplied from data files (bulk, flux and mixed formulations), … … 69 69 the local grid directions in the model, 70 70 \item 71 the use of a land/sea mask for input fields (\np{nn \_lsm}\forcode{=.true.}),72 \item 73 the addition of a surface restoring term to observed SST and/or SSS (\np{ln \_ssr}\forcode{=.true.}),71 the use of a land/sea mask for input fields (\np{nn_lsm}{nn\_lsm}\forcode{=.true.}), 72 \item 73 the addition of a surface restoring term to observed SST and/or SSS (\np{ln_ssr}{ln\_ssr}\forcode{=.true.}), 74 74 \item 75 75 the modification of fluxes below ice-covered areas (using climatological ice-cover or a sea-ice model) 76 (\np{nn \_ice}\forcode{=0..3}),77 \item 78 the addition of river runoffs as surface freshwater fluxes or lateral inflow (\np{ln \_rnf}\forcode{=.true.}),76 (\np{nn_ice}{nn\_ice}\forcode{=0..3}), 77 \item 78 the addition of river runoffs as surface freshwater fluxes or lateral inflow (\np{ln_rnf}{ln\_rnf}\forcode{=.true.}), 79 79 \item 80 80 the addition of ice-shelf melting as lateral inflow (parameterisation) or 81 as fluxes applied at the land-ice ocean interface (\np{ln \_isf}\forcode{=.true.}),81 as fluxes applied at the land-ice ocean interface (\np{ln_isf}{ln\_isf}\forcode{=.true.}), 82 82 \item 83 83 the addition of a freshwater flux adjustment in order to avoid a mean sea-level drift 84 (\np{nn \_fwb}\forcode{=0..2}),84 (\np{nn_fwb}{nn\_fwb}\forcode{=0..2}), 85 85 \item 86 86 the transformation of the solar radiation (if provided as daily mean) into an analytical diurnal cycle 87 (\np{ln \_dm2dc}\forcode{=.true.}),88 \item 89 the activation of wave effects from an external wave model (\np{ln \_wave}\forcode{=.true.}),90 \item 91 a neutral drag coefficient is read from an external wave model (\np{ln \_cdgw}\forcode{=.true.}),92 \item 93 the Stokes drift from an external wave model is accounted for (\np{ln \_sdw}\forcode{=.true.}),94 \item 95 the choice of the Stokes drift profile parameterization (\np{nn \_sdrift}\forcode{=0..2}),96 \item 97 the surface stress given to the ocean is modified by surface waves (\np{ln \_tauwoc}\forcode{=.true.}),98 \item 99 the surface stress given to the ocean is read from an external wave model (\np{ln \_tauw}\forcode{=.true.}),100 \item 101 the Stokes-Coriolis term is included (\np{ln \_stcor}\forcode{=.true.}),102 \item 103 the light penetration in the ocean (\np{ln \_traqsr}\forcode{=.true.} with namelist \nam{tra\_qsr}),104 \item 105 the atmospheric surface pressure gradient effect on ocean and ice dynamics (\np{ln \_apr\_dyn}\forcode{=.true.} with namelist \nam{sbc\_apr}),106 \item 107 the effect of sea-ice pressure on the ocean (\np{ln \_ice\_embd}\forcode{=.true.}).87 (\np{ln_dm2dc}{ln\_dm2dc}\forcode{=.true.}), 88 \item 89 the activation of wave effects from an external wave model (\np{ln_wave}{ln\_wave}\forcode{=.true.}), 90 \item 91 a neutral drag coefficient is read from an external wave model (\np{ln_cdgw}{ln\_cdgw}\forcode{=.true.}), 92 \item 93 the Stokes drift from an external wave model is accounted for (\np{ln_sdw}{ln\_sdw}\forcode{=.true.}), 94 \item 95 the choice of the Stokes drift profile parameterization (\np{nn_sdrift}{nn\_sdrift}\forcode{=0..2}), 96 \item 97 the surface stress given to the ocean is modified by surface waves (\np{ln_tauwoc}{ln\_tauwoc}\forcode{=.true.}), 98 \item 99 the surface stress given to the ocean is read from an external wave model (\np{ln_tauw}{ln\_tauw}\forcode{=.true.}), 100 \item 101 the Stokes-Coriolis term is included (\np{ln_stcor}{ln\_stcor}\forcode{=.true.}), 102 \item 103 the light penetration in the ocean (\np{ln_traqsr}{ln\_traqsr}\forcode{=.true.} with namelist \nam{tra_qsr}{tra\_qsr}), 104 \item 105 the atmospheric surface pressure gradient effect on ocean and ice dynamics (\np{ln_apr_dyn}{ln\_apr\_dyn}\forcode{=.true.} with namelist \nam{sbc_apr}{sbc\_apr}), 106 \item 107 the effect of sea-ice pressure on the ocean (\np{ln_ice_embd}{ln\_ice\_embd}\forcode{=.true.}). 108 108 \end{itemize} 109 109 … … 142 142 The latter is the penetrative part of the heat flux. 143 143 It is applied as a 3D trend of the temperature equation (\mdl{traqsr} module) when 144 \np{ln \_traqsr}\forcode{=.true.}.144 \np{ln_traqsr}{ln\_traqsr}\forcode{=.true.}. 145 145 The way the light penetrates inside the water column is generally a sum of decreasing exponentials 146 146 (see \autoref{subsec:TRA_qsr}). … … 161 161 %created!) 162 162 % 163 %Especially the \np{nn \_fsbc}, the \mdl{sbc\_oce} module (fluxes + mean sst sss ssu163 %Especially the \np{nn_fsbc}{nn\_fsbc}, the \mdl{sbc\_oce} module (fluxes + mean sst sss ssu 164 164 %ssv) \ie\ information required by flux computation or sea-ice 165 165 % … … 181 181 The ocean model provides, at each time step, to the surface module (\mdl{sbcmod}) 182 182 the surface currents, temperature and salinity. 183 These variables are averaged over \np{nn \_fsbc} time-step (\autoref{tab:SBC_ssm}), and184 these averaged fields are used to compute the surface fluxes at the frequency of \np{nn \_fsbc} time-steps.183 These variables are averaged over \np{nn_fsbc}{nn\_fsbc} time-step (\autoref{tab:SBC_ssm}), and 184 these averaged fields are used to compute the surface fluxes at the frequency of \np{nn_fsbc}{nn\_fsbc} time-steps. 185 185 186 186 … … 201 201 \caption[Ocean variables provided to the surface module)]{ 202 202 Ocean variables provided to the surface module (\texttt{SBC}). 203 The variable are averaged over \protect\np{nn \_fsbc} time-step,203 The variable are averaged over \protect\np{nn_fsbc}{nn\_fsbc} time-step, 204 204 \ie\ the frequency of computation of surface fluxes.} 205 205 \label{tab:SBC_ssm} … … 247 247 248 248 Note that when an input data is archived on a disc which is accessible directly from the workspace where 249 the code is executed, then the user can set the \np{cn \_dir} to the pathway leading to the data.249 the code is executed, then the user can set the \np{cn_dir}{cn\_dir} to the pathway leading to the data. 250 250 By default, the data are assumed to be in the same directory as the executable, so that cn\_dir='./'. 251 251 … … 278 278 & daily or weekLL & monthly & yearly \\ 279 279 \hline 280 \np{clim} \forcode{=.false.} & fn\_yYYYYmMMdDD.nc & fn\_yYYYYmMM.nc & fn\_yYYYY.nc \\280 \np{clim}{clim}\forcode{=.false.} & fn\_yYYYYmMMdDD.nc & fn\_yYYYYmMM.nc & fn\_yYYYY.nc \\ 281 281 \hline 282 \np{clim} \forcode{=.true.} & not possible & fn\_m??.nc & fn \\282 \np{clim}{clim}\forcode{=.true.} & not possible & fn\_m??.nc & fn \\ 283 283 \hline 284 284 \end{tabular} … … 350 350 a time interpolation will be performed at the following time: 0h30'00", 1h30'00", 2h30'00", etc. 351 351 However, for forcing data related to the surface module, 352 values are not needed at every time-step but at every \np{nn \_fsbc} time-step.353 For example with \np{nn \_fsbc}\forcode{=3}, the surface module will be called at time-steps 1, 4, 7, etc.354 The date used for the time interpolation is thus redefined to the middle of \np{nn \_fsbc} time-step period.352 values are not needed at every time-step but at every \np{nn_fsbc}{nn\_fsbc} time-step. 353 For example with \np{nn_fsbc}{nn\_fsbc}\forcode{=3}, the surface module will be called at time-steps 1, 4, 7, etc. 354 The date used for the time interpolation is thus redefined to the middle of \np{nn_fsbc}{nn\_fsbc} time-step period. 355 355 In the previous example, this leads to: 1h30'00", 4h30'00", 7h30'00", etc. \\ 356 356 (2) For code readablility and maintenance issues, we don't take into account the NetCDF input file calendar. … … 550 550 Spinup of the iceberg floats 551 551 \item 552 Ocean/sea-ice simulation with both models running in parallel (\np{ln \_mixcpl}\forcode{=.true.})552 Ocean/sea-ice simulation with both models running in parallel (\np{ln_mixcpl}{ln\_mixcpl}\forcode{=.true.}) 553 553 \end{itemize} 554 554 555 555 The Standalone Surface scheme provides this capacity. 556 Its options are defined through the \nam{sbc \_sas} namelist variables.556 Its options are defined through the \nam{sbc_sas}{sbc\_sas} namelist variables. 557 557 A new copy of the model has to be compiled with a configuration based on ORCA2\_SAS\_LIM. 558 558 However, no namelist parameters need be changed from the settings of the previous run (except perhaps nn\_date0). … … 604 604 605 605 606 The user can also choose in the \nam{sbc \_sas} namelist to read the mean (nn\_fsbc time-step) fraction of solar net radiation absorbed in the 1st T level using607 (\np{ln \_flx}\forcode{=.true.}) and to provide 3D oceanic velocities instead of 2D ones (\np{ln\_flx}\forcode{=.true.}). In that last case, only the 1st level will be read in.606 The user can also choose in the \nam{sbc_sas}{sbc\_sas} namelist to read the mean (nn\_fsbc time-step) fraction of solar net radiation absorbed in the 1st T level using 607 (\np{ln_flx}{ln\_flx}\forcode{=.true.}) and to provide 3D oceanic velocities instead of 2D ones (\np{ln_flx}{ln\_flx}\forcode{=.true.}). In that last case, only the 1st level will be read in. 608 608 609 609 … … 623 623 %------------------------------------------------------------------------------------------------------------- 624 624 625 In the flux formulation (\np{ln \_flx}\forcode{=.true.}),625 In the flux formulation (\np{ln_flx}{ln\_flx}\forcode{=.true.}), 626 626 the surface boundary condition fields are directly read from input files. 627 The user has to define in the namelist \nam{sbc \_flx} the name of the file,627 The user has to define in the namelist \nam{sbc_flx}{sbc\_flx} the name of the file, 628 628 the name of the variable read in the file, the time frequency at which it is given (in hours), 629 629 and a logical setting whether a time interpolation to the model time step is required for this field. … … 650 650 651 651 In the bulk formulation, the surface boundary condition fields are computed with bulk formulae using atmospheric fields 652 and ocean (and sea-ice) variables averaged over \np{nn \_fsbc} time-step.652 and ocean (and sea-ice) variables averaged over \np{nn_fsbc}{nn\_fsbc} time-step. 653 653 654 654 The atmospheric fields used depend on the bulk formulae used. … … 659 659 the NCAR (formerly named CORE), COARE 3.0, COARE 3.5 and ECMWF bulk formulae. 660 660 The choice is made by setting to true one of the following namelist variable: 661 \np{ln \_NCAR}, \np{ln\_COARE\_3p0}, \np{ln\_COARE\_3p5} and \np{ln\_ECMWF}.661 \np{ln_NCAR}{ln\_NCAR}, \np{ln_COARE_3p0}{ln\_COARE\_3p0}, \np{ln_COARE_3p5}{ln\_COARE\_3p5} and \np{ln_ECMWF}{ln\_ECMWF}. 662 662 For sea-ice, three possibilities can be selected: 663 a constant transfer coefficient (1.4e-3; default value), \citet{lupkes.gryanik.ea_JGR12} (\np{ln \_Cd\_L12}), and \citet{lupkes.gryanik_JGR15} (\np{ln\_Cd\_L15}) parameterizations664 665 Common options are defined through the \nam{sbc \_blk} namelist variables.663 a constant transfer coefficient (1.4e-3; default value), \citet{lupkes.gryanik.ea_JGR12} (\np{ln_Cd_L12}{ln\_Cd\_L12}), and \citet{lupkes.gryanik_JGR15} (\np{ln_Cd_L15}{ln\_Cd\_L15}) parameterizations 664 665 Common options are defined through the \nam{sbc_blk}{sbc\_blk} namelist variables. 666 666 The required 9 input fields are: 667 667 … … 700 700 the ocean grid size is the same or larger than the one of the input atmospheric fields. 701 701 702 The \np{sn \_wndi}, \np{sn\_wndj}, \np{sn\_qsr}, \np{sn\_qlw}, \np{sn\_tair}, \np{sn\_humi}, \np{sn\_prec},703 \np{sn \_snow}, \np{sn\_tdif} parameters describe the fields and the way they have to be used702 The \np{sn_wndi}{sn\_wndi}, \np{sn_wndj}{sn\_wndj}, \np{sn_qsr}{sn\_qsr}, \np{sn_qlw}{sn\_qlw}, \np{sn_tair}{sn\_tair}, \np{sn_humi}{sn\_humi}, \np{sn_prec}{sn\_prec}, 703 \np{sn_snow}{sn\_snow}, \np{sn_tdif}{sn\_tdif} parameters describe the fields and the way they have to be used 704 704 (spatial and temporal interpolations). 705 705 706 \np{cn \_dir} is the directory of location of bulk files707 \np{ln \_taudif} is the flag to specify if we use Hight Frequency (HF) tau information (.true.) or not (.false.)708 \np{rn \_zqt}: is the height of humidity and temperature measurements (m)709 \np{rn \_zu}: is the height of wind measurements (m)706 \np{cn_dir}{cn\_dir} is the directory of location of bulk files 707 \np{ln_taudif}{ln\_taudif} is the flag to specify if we use Hight Frequency (HF) tau information (.true.) or not (.false.) 708 \np{rn_zqt}{rn\_zqt}: is the height of humidity and temperature measurements (m) 709 \np{rn_zu}{rn\_zu}: is the height of wind measurements (m) 710 710 711 711 Three multiplicative factors are available: 712 \np{rn \_pfac} and \np{rn\_efac} allow to adjust (if necessary) the global freshwater budget by712 \np{rn_pfac}{rn\_pfac} and \np{rn_efac}{rn\_efac} allow to adjust (if necessary) the global freshwater budget by 713 713 increasing/reducing the precipitations (total and snow) and or evaporation, respectively. 714 The third one,\np{rn \_vfac}, control to which extend the ice/ocean velocities are taken into account in714 The third one,\np{rn_vfac}{rn\_vfac}, control to which extend the ice/ocean velocities are taken into account in 715 715 the calculation of surface wind stress. 716 716 Its range must be between zero and one, and it is recommended to set it to 0 at low-resolution (ORCA2 configuration). … … 731 731 \begin{itemize} 732 732 \item 733 NCAR (\np{ln \_NCAR}\forcode{=.true.}):733 NCAR (\np{ln_NCAR}{ln\_NCAR}\forcode{=.true.}): 734 734 The NCAR bulk formulae have been developed by \citet{large.yeager_rpt04}. 735 735 They have been designed to handle the NCAR forcing, a mixture of NCEP reanalysis and satellite data. … … 741 741 This is the so-called DRAKKAR Forcing Set (DFS) \citep{brodeau.barnier.ea_OM10}. 742 742 \item 743 COARE 3.0 (\np{ln \_COARE\_3p0}\forcode{=.true.}):743 COARE 3.0 (\np{ln_COARE_3p0}{ln\_COARE\_3p0}\forcode{=.true.}): 744 744 See \citet{fairall.bradley.ea_JC03} for more details 745 745 \item 746 COARE 3.5 (\np{ln \_COARE\_3p5}\forcode{=.true.}):746 COARE 3.5 (\np{ln_COARE_3p5}{ln\_COARE\_3p5}\forcode{=.true.}): 747 747 See \citet{edson.jampana.ea_JPO13} for more details 748 748 \item 749 ECMWF (\np{ln \_ECMWF}\forcode{=.true.}):749 ECMWF (\np{ln_ECMWF}{ln\_ECMWF}\forcode{=.true.}): 750 750 Based on \href{https://www.ecmwf.int/node/9221}{IFS (Cy31)} implementation and documentation. 751 751 Surface roughness lengths needed for the Obukhov length are computed following \citet{beljaars_QJRMS95}. … … 762 762 \begin{itemize} 763 763 \item 764 Constant value (\np{constant \ value}\forcode{ Cd_ice = 1.4e-3 }):764 Constant value (\np{constant value}{constant\ value}\forcode{ Cd_ice = 1.4e-3 }): 765 765 default constant value used for momentum and heat neutral transfer coefficients 766 766 \item 767 \citet{lupkes.gryanik.ea_JGR12} (\np{ln \_Cd\_L12}\forcode{=.true.}):767 \citet{lupkes.gryanik.ea_JGR12} (\np{ln_Cd_L12}{ln\_Cd\_L12}\forcode{=.true.}): 768 768 This scheme adds a dependency on edges at leads, melt ponds and flows 769 769 of the constant neutral air-ice drag. After some approximations, … … 773 773 It is theoretically applicable to all ice conditions (not only MIZ). 774 774 \item 775 \citet{lupkes.gryanik_JGR15} (\np{ln \_Cd\_L15}\forcode{=.true.}):775 \citet{lupkes.gryanik_JGR15} (\np{ln_Cd_L15}{ln\_Cd\_L15}\forcode{=.true.}): 776 776 Alternative turbulent transfer coefficients formulation between sea-ice 777 777 and atmosphere with distinct momentum and heat coefficients depending … … 814 814 the whole carbon cycle is computed. 815 815 In this case, CO$_2$ fluxes will be exchanged between the atmosphere and the ice-ocean system 816 (and need to be activated in \nam{sbc \_cpl} ).816 (and need to be activated in \nam{sbc_cpl}{sbc\_cpl} ). 817 817 818 818 The namelist above allows control of various aspects of the coupling fields (particularly for vectors) and 819 819 now allows for any coupling fields to have multiple sea ice categories (as required by LIM3 and CICE). 820 When indicating a multi-category coupling field in \nam{sbc \_cpl}, the number of categories will be determined by820 When indicating a multi-category coupling field in \nam{sbc_cpl}{sbc\_cpl}, the number of categories will be determined by 821 821 the number used in the sea ice model. 822 822 In some limited cases, it may be possible to specify single category coupling fields even when … … 842 842 843 843 The optional atmospheric pressure can be used to force ocean and ice dynamics 844 (\np{ln \_apr\_dyn}\forcode{=.true.}, \nam{sbc} namelist).845 The input atmospheric forcing defined via \np{sn \_apr} structure (\nam{sbc\_apr} namelist)844 (\np{ln_apr_dyn}{ln\_apr\_dyn}\forcode{=.true.}, \nam{sbc} namelist). 845 The input atmospheric forcing defined via \np{sn_apr}{sn\_apr} structure (\nam{sbc_apr}{sbc\_apr} namelist) 846 846 can be interpolated in time to the model time step, and even in space when the interpolation on-the-fly is used. 847 847 When used to force the dynamics, the atmospheric pressure is further transformed into … … 852 852 \] 853 853 where $P_{atm}$ is the atmospheric pressure and $P_o$ a reference atmospheric pressure. 854 A value of $101,000~N/m^2$ is used unless \np{ln \_ref\_apr} is set to true.854 A value of $101,000~N/m^2$ is used unless \np{ln_ref_apr}{ln\_ref\_apr} is set to true. 855 855 In this case, $P_o$ is set to the value of $P_{atm}$ averaged over the ocean domain, 856 856 \ie\ the mean value of $\eta_{ib}$ is kept to zero at all time steps. … … 865 865 When using time-splitting and BDY package for open boundaries conditions, 866 866 the equivalent inverse barometer sea surface height $\eta_{ib}$ can be added to BDY ssh data: 867 \np{ln \_apr\_obc} might be set to true.867 \np{ln_apr_obc}{ln\_apr\_obc} might be set to true. 868 868 869 869 … … 885 885 886 886 The tidal forcing, generated by the gravity forces of the Earth-Moon and Earth-Sun sytems, 887 is activated if \np{ln \_tide} and \np{ln\_tide\_pot} are both set to \forcode{.true.} in \nam{\_tide}.887 is activated if \np{ln_tide}{ln\_tide} and \np{ln_tide_pot}{ln\_tide\_pot} are both set to \forcode{.true.} in \nam{_tide}{\_tide}. 888 888 This translates as an additional barotropic force in the momentum \autoref{eq:MB_PE_dyn} such that: 889 889 \[ … … 901 901 Msqm, Mtm, S1, MU2, NU2, L2}, and \textit{T2}). Individual 902 902 constituents are selected by including their names in the array 903 \np{clname} in \nam{\_tide} (e.g., \np{clname}\forcode{(1)='M2', }904 \np{clname} \forcode{(2)='S2'} to select solely the tidal consituents \textit{M2}905 and \textit{S2}). Optionally, when \np{ln \_tide\_ramp} is set to903 \np{clname}{clname} in \nam{_tide}{\_tide} (e.g., \np{clname}{clname}\forcode{(1)='M2', } 904 \np{clname}{clname}\forcode{(2)='S2'} to select solely the tidal consituents \textit{M2} 905 and \textit{S2}). Optionally, when \np{ln_tide_ramp}{ln\_tide\_ramp} is set to 906 906 \forcode{.true.}, the equilibrium tidal forcing can be ramped up 907 linearly from zero during the initial \np{rdttideramp} days of the907 linearly from zero during the initial \np{rdttideramp}{rdttideramp} days of the 908 908 model run. 909 909 … … 914 914 computationally too expensive. Here, two options are available: 915 915 $\Pi_{sal}$ generated by an external model can be read in 916 (\np{ln \_read\_load}\forcode{ =.true.}), or a ``scalar approximation'' can be917 used (\np{ln \_scal\_load}\forcode{ =.true.}). In the latter case916 (\np{ln_read_load}{ln\_read\_load}\forcode{ =.true.}), or a ``scalar approximation'' can be 917 used (\np{ln_scal_load}{ln\_scal\_load}\forcode{ =.true.}). In the latter case 918 918 \[ 919 919 \Pi_{sal} = \beta \eta, 920 920 \] 921 where $\beta$ (\np{rn \_scal\_load} with a default value of 0.094) is a921 where $\beta$ (\np{rn_scal_load}{rn\_scal\_load} with a default value of 0.094) is a 922 922 spatially constant scalar, often chosen to minimize tidal prediction 923 errors. Setting both \np{ln \_read\_load} and \np{ln\_scal\_load} to923 errors. Setting both \np{ln_read_load}{ln\_read\_load} and \np{ln_scal_load}{ln\_scal\_load} to 924 924 \forcode{.false.} removes the SAL contribution. 925 925 … … 976 976 along with the depth (in metres) which the river should be added to. 977 977 978 Namelist variables in \nam{sbc \_rnf}, \np{ln\_rnf\_depth}, \np{ln\_rnf\_sal} and979 \np{ln \_rnf\_temp} control whether the river attributes (depth, salinity and temperature) are read in and used.978 Namelist variables in \nam{sbc_rnf}{sbc\_rnf}, \np{ln_rnf_depth}{ln\_rnf\_depth}, \np{ln_rnf_sal}{ln\_rnf\_sal} and 979 \np{ln_rnf_temp}{ln\_rnf\_temp} control whether the river attributes (depth, salinity and temperature) are read in and used. 980 980 If these are set as false the river is added to the surface box only, assumed to be fresh (0~psu), 981 981 and/or taken as surface temperature respectively. … … 989 989 (converted into m/s) to give the heat and salt content of the river runoff. 990 990 After the user specified depth is read ini, 991 the number of grid boxes this corresponds to is calculated and stored in the variable \np{nz \_rnf}.991 the number of grid boxes this corresponds to is calculated and stored in the variable \np{nz_rnf}{nz\_rnf}. 992 992 The variable \textit{h\_dep} is then calculated to be the depth (in metres) of 993 993 the bottom of the lowest box the river water is being added to … … 1070 1070 %-------------------------------------------------------------------------------------------------------- 1071 1071 1072 The namelist variable in \nam{sbc}, \np{nn \_isf}, controls the ice shelf representation.1073 Description and result of sensitivity test to \np{nn \_isf} are presented in \citet{mathiot.jenkins.ea_GMD17}.1072 The namelist variable in \nam{sbc}, \np{nn_isf}{nn\_isf}, controls the ice shelf representation. 1073 Description and result of sensitivity test to \np{nn_isf}{nn\_isf} are presented in \citet{mathiot.jenkins.ea_GMD17}. 1074 1074 The different options are illustrated in \autoref{fig:SBC_isf}. 1075 1075 1076 1076 \begin{description} 1077 1077 1078 \item[\np{nn \_isf}\forcode{=1}]:1079 The ice shelf cavity is represented (\np{ln \_isfcav}\forcode{=.true.} needed).1078 \item[\np{nn_isf}{nn\_isf}\forcode{=1}]: 1079 The ice shelf cavity is represented (\np{ln_isfcav}{ln\_isfcav}\forcode{=.true.} needed). 1080 1080 The fwf and heat flux are depending of the local water properties. 1081 1081 … … 1083 1083 1084 1084 \begin{description} 1085 \item[\np{nn \_isfblk}\forcode{=1}]:1085 \item[\np{nn_isfblk}{nn\_isfblk}\forcode{=1}]: 1086 1086 The melt rate is based on a balance between the upward ocean heat flux and 1087 1087 the latent heat flux at the ice shelf base. A complete description is available in \citet{hunter_rpt06}. 1088 \item[\np{nn \_isfblk}\forcode{=2}]:1088 \item[\np{nn_isfblk}{nn\_isfblk}\forcode{=2}]: 1089 1089 The melt rate and the heat flux are based on a 3 equations formulation 1090 1090 (a heat flux budget at the ice base, a salt flux budget at the ice base and a linearised freezing point temperature equation). … … 1093 1093 1094 1094 Temperature and salinity used to compute the melt are the average temperature in the top boundary layer \citet{losch_JGR08}. 1095 Its thickness is defined by \np{rn \_hisf\_tbl}.1096 The fluxes and friction velocity are computed using the mean temperature, salinity and velocity in the the first \np{rn \_hisf\_tbl} m.1095 Its thickness is defined by \np{rn_hisf_tbl}{rn\_hisf\_tbl}. 1096 The fluxes and friction velocity are computed using the mean temperature, salinity and velocity in the the first \np{rn_hisf_tbl}{rn\_hisf\_tbl} m. 1097 1097 Then, the fluxes are spread over the same thickness (ie over one or several cells). 1098 If \np{rn \_hisf\_tbl} larger than top $e_{3}t$, there is no more feedback between the freezing point at the interface and the the top cell temperature.1098 If \np{rn_hisf_tbl}{rn\_hisf\_tbl} larger than top $e_{3}t$, there is no more feedback between the freezing point at the interface and the the top cell temperature. 1099 1099 This can lead to super-cool temperature in the top cell under melting condition. 1100 If \np{rn \_hisf\_tbl} smaller than top $e_{3}t$, the top boundary layer thickness is set to the top cell thickness.\\1100 If \np{rn_hisf_tbl}{rn\_hisf\_tbl} smaller than top $e_{3}t$, the top boundary layer thickness is set to the top cell thickness.\\ 1101 1101 1102 1102 Each melt bulk formula depends on a exchange coeficient ($\Gamma^{T,S}$) between the ocean and the ice. 1103 1103 There are 3 different ways to compute the exchange coeficient: 1104 1104 \begin{description} 1105 \item[\np{nn \_gammablk}\forcode{=0}]:1106 The salt and heat exchange coefficients are constant and defined by \np{rn \_gammas0} and \np{rn\_gammat0}.1105 \item[\np{nn_gammablk}{nn\_gammablk}\forcode{=0}]: 1106 The salt and heat exchange coefficients are constant and defined by \np{rn_gammas0}{rn\_gammas0} and \np{rn_gammat0}{rn\_gammat0}. 1107 1107 \begin{gather*} 1108 1108 % \label{eq:SBC_isf_gamma_iso} … … 1111 1111 \end{gather*} 1112 1112 This is the recommended formulation for ISOMIP. 1113 \item[\np{nn \_gammablk}\forcode{=1}]:1113 \item[\np{nn_gammablk}{nn\_gammablk}\forcode{=1}]: 1114 1114 The salt and heat exchange coefficients are velocity dependent and defined as 1115 1115 \begin{gather*} … … 1117 1117 \gamma^{S} = rn\_gammas0 \times u_{*} 1118 1118 \end{gather*} 1119 where $u_{*}$ is the friction velocity in the top boundary layer (ie first \np{rn \_hisf\_tbl} meters).1119 where $u_{*}$ is the friction velocity in the top boundary layer (ie first \np{rn_hisf_tbl}{rn\_hisf\_tbl} meters). 1120 1120 See \citet{jenkins.nicholls.ea_JPO10} for all the details on this formulation. It is the recommended formulation for realistic application. 1121 \item[\np{nn \_gammablk}\forcode{=2}]:1121 \item[\np{nn_gammablk}{nn\_gammablk}\forcode{=2}]: 1122 1122 The salt and heat exchange coefficients are velocity and stability dependent and defined as: 1123 1123 \[ 1124 1124 \gamma^{T,S} = \frac{u_{*}}{\Gamma_{Turb} + \Gamma^{T,S}_{Mole}} 1125 1125 \] 1126 where $u_{*}$ is the friction velocity in the top boundary layer (ie first \np{rn \_hisf\_tbl} meters),1126 where $u_{*}$ is the friction velocity in the top boundary layer (ie first \np{rn_hisf_tbl}{rn\_hisf\_tbl} meters), 1127 1127 $\Gamma_{Turb}$ the contribution of the ocean stability and 1128 1128 $\Gamma^{T,S}_{Mole}$ the contribution of the molecular diffusion. … … 1130 1130 This formulation has not been extensively tested in \NEMO\ (not recommended). 1131 1131 \end{description} 1132 \item[\np{nn \_isf}\forcode{=2}]:1132 \item[\np{nn_isf}{nn\_isf}\forcode{=2}]: 1133 1133 The ice shelf cavity is not represented. 1134 1134 The fwf and heat flux are computed using the \citet{beckmann.goosse_OM03} parameterisation of isf melting. 1135 1135 The fluxes are distributed along the ice shelf edge between the depth of the average grounding line (GL) 1136 (\np{sn \_depmax\_isf}) and the base of the ice shelf along the calving front1137 (\np{sn \_depmin\_isf}) as in (\np{nn\_isf}\forcode{=3}).1138 The effective melting length (\np{sn \_Leff\_isf}) is read from a file.1139 \item[\np{nn \_isf}\forcode{=3}]:1136 (\np{sn_depmax_isf}{sn\_depmax\_isf}) and the base of the ice shelf along the calving front 1137 (\np{sn_depmin_isf}{sn\_depmin\_isf}) as in (\np{nn_isf}{nn\_isf}\forcode{=3}). 1138 The effective melting length (\np{sn_Leff_isf}{sn\_Leff\_isf}) is read from a file. 1139 \item[\np{nn_isf}{nn\_isf}\forcode{=3}]: 1140 1140 The ice shelf cavity is not represented. 1141 The fwf (\np{sn \_rnfisf}) is prescribed and distributed along the ice shelf edge between1142 the depth of the average grounding line (GL) (\np{sn \_depmax\_isf}) and1143 the base of the ice shelf along the calving front (\np{sn \_depmin\_isf}).1141 The fwf (\np{sn_rnfisf}{sn\_rnfisf}) is prescribed and distributed along the ice shelf edge between 1142 the depth of the average grounding line (GL) (\np{sn_depmax_isf}{sn\_depmax\_isf}) and 1143 the base of the ice shelf along the calving front (\np{sn_depmin_isf}{sn\_depmin\_isf}). 1144 1144 The heat flux ($Q_h$) is computed as $Q_h = fwf \times L_f$. 1145 \item[\np{nn \_isf}\forcode{=4}]:1146 The ice shelf cavity is opened (\np{ln \_isfcav}\forcode{=.true.} needed).1147 However, the fwf is not computed but specified from file \np{sn \_fwfisf}).1145 \item[\np{nn_isf}{nn\_isf}\forcode{=4}]: 1146 The ice shelf cavity is opened (\np{ln_isfcav}{ln\_isfcav}\forcode{=.true.} needed). 1147 However, the fwf is not computed but specified from file \np{sn_fwfisf}{sn\_fwfisf}). 1148 1148 The heat flux ($Q_h$) is computed as $Q_h = fwf \times L_f$. 1149 As in \np{nn \_isf}\forcode{=1}, the fluxes are spread over the top boundary layer thickness (\np{rn\_hisf\_tbl})\\1149 As in \np{nn_isf}{nn\_isf}\forcode{=1}, the fluxes are spread over the top boundary layer thickness (\np{rn_hisf_tbl}{rn\_hisf\_tbl})\\ 1150 1150 \end{description} 1151 1151 1152 $\bullet$ \np{nn \_isf}\forcode{=1} and \np{nn\_isf}\forcode{=2} compute a melt rate based on1152 $\bullet$ \np{nn_isf}{nn\_isf}\forcode{=1} and \np{nn_isf}{nn\_isf}\forcode{=2} compute a melt rate based on 1153 1153 the water mass properties, ocean velocities and depth. 1154 1154 This flux is thus highly dependent of the model resolution (horizontal and vertical), 1155 1155 realism of the water masses onto the shelf ...\\ 1156 1156 1157 $\bullet$ \np{nn \_isf}\forcode{=3} and \np{nn\_isf}\forcode{=4} read the melt rate from a file.1157 $\bullet$ \np{nn_isf}{nn\_isf}\forcode{=3} and \np{nn_isf}{nn\_isf}\forcode{=4} read the melt rate from a file. 1158 1158 You have total control of the fwf forcing. 1159 1159 This can be useful if the water masses on the shelf are not realistic or … … 1172 1172 \caption[Ice shelf location and fresh water flux definition]{ 1173 1173 Illustration of the location where the fwf is injected and 1174 whether or not the fwf is interactif or not depending of \protect\np{nn \_isf}.}1174 whether or not the fwf is interactif or not depending of \protect\np{nn_isf}{nn\_isf}.} 1175 1175 \label{fig:SBC_isf} 1176 1176 \end{figure} … … 1204 1204 \end{description} 1205 1205 1206 If \np{ln \_iscpl}\forcode{=.true.}, the isf draft is assume to be different at each restart step with1206 If \np{ln_iscpl}{ln\_iscpl}\forcode{=.true.}, the isf draft is assume to be different at each restart step with 1207 1207 potentially some new wet/dry cells due to the ice sheet dynamics/thermodynamics. 1208 1208 The wetting and drying scheme applied on the restart is very simple and described below for the 6 different possible cases: … … 1231 1231 the restart time step is prescribed to be an euler time step instead of a leap frog and $fields_b = fields_n$.\\ 1232 1232 1233 The horizontal extrapolation to fill new cell with realistic value is called \np{nn \_drown} times.1234 It means that if the grounding line retreat by more than \np{nn \_drown} cells between 2 coupling steps,1233 The horizontal extrapolation to fill new cell with realistic value is called \np{nn_drown}{nn\_drown} times. 1234 It means that if the grounding line retreat by more than \np{nn_drown}{nn\_drown} cells between 2 coupling steps, 1235 1235 the code will be unable to fill all the new wet cells properly. 1236 1236 The default number is set up for the MISOMIP idealised experiments. … … 1240 1240 1241 1241 In order to remove the trend and keep the conservation level as close to 0 as possible, 1242 a simple conservation scheme is available with \np{ln \_hsb}\forcode{=.true.}.1242 a simple conservation scheme is available with \np{ln_hsb}{ln\_hsb}\forcode{=.true.}. 1243 1243 The heat/salt/vol. gain/loss is diagnosed, as well as the location. 1244 A correction increment is computed and apply each time step during the next \np{rn \_fiscpl} time steps.1245 For safety, it is advised to set \np{rn \_fiscpl} equal to the coupling period (smallest increment possible).1244 A correction increment is computed and apply each time step during the next \np{rn_fiscpl}{rn\_fiscpl} time steps. 1245 For safety, it is advised to set \np{rn_fiscpl}{rn\_fiscpl} equal to the coupling period (smallest increment possible). 1246 1246 The corrective increment is apply into the cell itself (if it is a wet cell), the neigbouring cells or the closest wet cell (if the cell is now dry). 1247 1247 … … 1266 1266 (Note that the authors kindly provided a copy of their code to act as a basis for implementation in \NEMO). 1267 1267 Icebergs are initially spawned into one of ten classes which have specific mass and thickness as 1268 described in the \nam{berg} namelist: \np{rn \_initial\_mass} and \np{rn\_initial\_thickness}.1269 Each class has an associated scaling (\np{rn \_mass\_scaling}),1268 described in the \nam{berg} namelist: \np{rn_initial_mass}{rn\_initial\_mass} and \np{rn_initial_thickness}{rn\_initial\_thickness}. 1269 Each class has an associated scaling (\np{rn_mass_scaling}{rn\_mass\_scaling}), 1270 1270 which is an integer representing how many icebergs of this class are being described as one lagrangian point 1271 1271 (this reduces the numerical problem of tracking every single iceberg). 1272 They are enabled by setting \np{ln \_icebergs}\forcode{=.true.}.1272 They are enabled by setting \np{ln_icebergs}{ln\_icebergs}\forcode{=.true.}. 1273 1273 1274 1274 Two initialisation schemes are possible. 1275 1275 \begin{description} 1276 \item[\np{nn \_test\_icebergs}~$>$~0]1277 In this scheme, the value of \np{nn \_test\_icebergs} represents the class of iceberg to generate1278 (so between 1 and 10), and \np{nn \_test\_icebergs} provides a lon/lat box in the domain at each grid point of1276 \item[\np{nn_test_icebergs}{nn\_test\_icebergs}~$>$~0] 1277 In this scheme, the value of \np{nn_test_icebergs}{nn\_test\_icebergs} represents the class of iceberg to generate 1278 (so between 1 and 10), and \np{nn_test_icebergs}{nn\_test\_icebergs} provides a lon/lat box in the domain at each grid point of 1279 1279 which an iceberg is generated at the beginning of the run. 1280 (Note that this happens each time the timestep equals \np{nn \_nit000}.)1281 \np{nn \_test\_icebergs} is defined by four numbers in \np{nn\_test\_box} representing the corners of1280 (Note that this happens each time the timestep equals \np{nn_nit000}{nn\_nit000}.) 1281 \np{nn_test_icebergs}{nn\_test\_icebergs} is defined by four numbers in \np{nn_test_box}{nn\_test\_box} representing the corners of 1282 1282 the geographical box: lonmin,lonmax,latmin,latmax 1283 \item[\np{nn \_test\_icebergs}\forcode{=-1}]1284 In this scheme, the model reads a calving file supplied in the \np{sn \_icb} parameter.1283 \item[\np{nn_test_icebergs}{nn\_test\_icebergs}\forcode{=-1}] 1284 In this scheme, the model reads a calving file supplied in the \np{sn_icb}{sn\_icb} parameter. 1285 1285 This should be a file with a field on the configuration grid (typically ORCA) 1286 1286 representing ice accumulation rate at each model point. … … 1297 1297 The latter act to disintegrate the iceberg. 1298 1298 This is either all melted freshwater, 1299 or (if \np{rn \_bits\_erosion\_fraction}~$>$~0) into melt and additionally small ice bits1299 or (if \np{rn_bits_erosion_fraction}{rn\_bits\_erosion\_fraction}~$>$~0) into melt and additionally small ice bits 1300 1300 which are assumed to propagate with their larger parent and thus delay fluxing into the ocean. 1301 1301 Melt water (and other variables on the configuration grid) are written into the main \NEMO\ model output files. … … 1303 1303 Extensive diagnostics can be produced. 1304 1304 Separate output files are maintained for human-readable iceberg information. 1305 A separate file is produced for each processor (independent of \np{ln \_ctl}).1305 A separate file is produced for each processor (independent of \np{ln_ctl}{ln\_ctl}). 1306 1306 The amount of information is controlled by two integer parameters: 1307 1307 \begin{description} 1308 \item[\np{nn \_verbose\_level}] takes a value between one and four and1308 \item[\np{nn_verbose_level}{nn\_verbose\_level}] takes a value between one and four and 1309 1309 represents an increasing number of points in the code at which variables are written, 1310 1310 and an increasing level of obscurity. 1311 \item[\np{nn \_verbose\_write}] is the number of timesteps between writes1311 \item[\np{nn_verbose_write}{nn\_verbose\_write}] is the number of timesteps between writes 1312 1312 \end{description} 1313 1313 1314 Iceberg trajectories can also be written out and this is enabled by setting \np{nn \_sample\_rate}~$>$~0.1314 Iceberg trajectories can also be written out and this is enabled by setting \np{nn_sample_rate}{nn\_sample\_rate}~$>$~0. 1315 1315 A non-zero value represents how many timesteps between writes of information into the output file. 1316 1316 These output files are in NETCDF format. … … 1325 1325 % Interactions with waves (sbcwave.F90, ln_wave) 1326 1326 % ============================================================================================================= 1327 \section[Interactions with waves (\textit{sbcwave.F90}, \forcode{ln_wave})]{Interactions with waves (\protect\mdl{sbcwave}, \protect\np{ln \_wave})}1327 \section[Interactions with waves (\textit{sbcwave.F90}, \forcode{ln_wave})]{Interactions with waves (\protect\mdl{sbcwave}, \protect\np{ln_wave}{ln\_wave})} 1328 1328 \label{sec:SBC_wave} 1329 1329 %------------------------------------------namsbc_wave-------------------------------------------------------- … … 1343 1343 1344 1344 Physical processes related to ocean surface waves can be accounted by setting the logical variable 1345 \np{ln \_wave}\forcode{=.true.} in \nam{sbc} namelist. In addition, specific flags accounting for1345 \np{ln_wave}{ln\_wave}\forcode{=.true.} in \nam{sbc} namelist. In addition, specific flags accounting for 1346 1346 different processes should be activated as explained in the following sections. 1347 1347 1348 1348 Wave fields can be provided either in forced or coupled mode: 1349 1349 \begin{description} 1350 \item[forced mode]: wave fields should be defined through the \nam{sbc \_wave} namelist1350 \item[forced mode]: wave fields should be defined through the \nam{sbc_wave}{sbc\_wave} namelist 1351 1351 for external data names, locations, frequency, interpolation and all the miscellanous options allowed by 1352 1352 Input Data generic Interface (see \autoref{sec:SBC_input}). 1353 \item[coupled mode]: \NEMO\ and an external wave model can be coupled by setting \np{ln \_cpl} \forcode{= .true.}1354 in \nam{sbc} namelist and filling the \nam{sbc \_cpl} namelist.1353 \item[coupled mode]: \NEMO\ and an external wave model can be coupled by setting \np{ln_cpl}{ln\_cpl} \forcode{= .true.} 1354 in \nam{sbc} namelist and filling the \nam{sbc_cpl}{sbc\_cpl} namelist. 1355 1355 \end{description} 1356 1356 … … 1360 1360 1361 1361 % ---------------------------------------------------------------- 1362 \subsection[Neutral drag coefficient from wave model (\forcode{ln_cdgw})]{Neutral drag coefficient from wave model (\protect\np{ln \_cdgw})}1362 \subsection[Neutral drag coefficient from wave model (\forcode{ln_cdgw})]{Neutral drag coefficient from wave model (\protect\np{ln_cdgw}{ln\_cdgw})} 1363 1363 \label{subsec:SBC_wave_cdgw} 1364 1364 1365 1365 The neutral surface drag coefficient provided from an external data source (\ie\ a wave model), 1366 can be used by setting the logical variable \np{ln \_cdgw} \forcode{= .true.} in \nam{sbc} namelist.1366 can be used by setting the logical variable \np{ln_cdgw}{ln\_cdgw} \forcode{= .true.} in \nam{sbc} namelist. 1367 1367 Then using the routine \rou{sbcblk\_algo\_ncar} and starting from the neutral drag coefficent provided, 1368 1368 the drag coefficient is computed according to the stable/unstable conditions of the … … 1373 1373 % 3D Stokes Drift (ln_sdw, nn_sdrift) 1374 1374 % ---------------------------------------------------------------- 1375 \subsection[3D Stokes Drift (\forcode{ln_sdw} , \forcode{nn_sdrift})]{3D Stokes Drift (\protect\np{ln\_sdw,nn\_sdrift})}1375 \subsection[3D Stokes Drift (\forcode{ln_sdw} \& \forcode{nn_sdrift})]{3D Stokes Drift (\protect\np{ln_sdw}{ln\_sdw} \& \np{nn_sdrift}{nn\_sdrift})} 1376 1376 \label{subsec:SBC_wave_sdw} 1377 1377 … … 1402 1402 To simplify, it is customary to use approximations to the full Stokes profile. 1403 1403 Three possible parameterizations for the calculation for the approximate Stokes drift velocity profile 1404 are included in the code through the \np{nn \_sdrift} parameter once provided the surface Stokes drift1404 are included in the code through the \np{nn_sdrift}{nn\_sdrift} parameter once provided the surface Stokes drift 1405 1405 $\mathbf{U}_{st |_{z=0}}$ which is evaluated by an external wave model that accurately reproduces the wave spectra 1406 1406 and makes possible the estimation of the surface Stokes drift for random directional waves in … … 1408 1408 1409 1409 \begin{description} 1410 \item[\np{nn \_sdrift} = 0]: exponential integral profile parameterization proposed by1410 \item[\np{nn_sdrift}{nn\_sdrift} = 0]: exponential integral profile parameterization proposed by 1411 1411 \citet{breivik.janssen.ea_JPO14}: 1412 1412 … … 1427 1427 where $H_s$ is the significant wave height and $\omega$ is the wave frequency. 1428 1428 1429 \item[\np{nn \_sdrift} = 1]: velocity profile based on the Phillips spectrum which is considered to be a1429 \item[\np{nn_sdrift}{nn\_sdrift} = 1]: velocity profile based on the Phillips spectrum which is considered to be a 1430 1430 reasonable estimate of the part of the spectrum mostly contributing to the Stokes drift velocity near the surface 1431 1431 \citep{breivik.bidlot.ea_OM16}: … … 1439 1439 where $erf$ is the complementary error function and $k_p$ is the peak wavenumber. 1440 1440 1441 \item[\np{nn \_sdrift} = 2]: velocity profile based on the Phillips spectrum as for \np{nn\_sdrift} = 11441 \item[\np{nn_sdrift}{nn\_sdrift} = 2]: velocity profile based on the Phillips spectrum as for \np{nn_sdrift}{nn\_sdrift} = 1 1442 1442 but using the wave frequency from a wave model. 1443 1443 … … 1469 1469 % Stokes-Coriolis term (ln_stcor) 1470 1470 % ---------------------------------------------------------------- 1471 \subsection[Stokes-Coriolis term (\forcode{ln_stcor})]{Stokes-Coriolis term (\protect\np{ln \_stcor})}1471 \subsection[Stokes-Coriolis term (\forcode{ln_stcor})]{Stokes-Coriolis term (\protect\np{ln_stcor}{ln\_stcor})} 1472 1472 \label{subsec:SBC_wave_stcor} 1473 1473 … … 1477 1477 In order to include this term, once evaluated the Stokes drift (using one of the 3 possible 1478 1478 approximations described in \autoref{subsec:SBC_wave_sdw}), 1479 \np{ln \_stcor}\forcode{=.true.} has to be set.1479 \np{ln_stcor}{ln\_stcor}\forcode{=.true.} has to be set. 1480 1480 1481 1481 … … 1483 1483 % Waves modified stress (ln_tauwoc, ln_tauw) 1484 1484 % ---------------------------------------------------------------- 1485 \subsection[Wave modified stress (\forcode{ln_tauwoc} \& \forcode{ln_tauw})]{Wave modified sress (\protect\np{ln \_tauwoc,ln\_tauw})}1485 \subsection[Wave modified stress (\forcode{ln_tauwoc} \& \forcode{ln_tauw})]{Wave modified sress (\protect\np{ln_tauwoc}{ln\_tauwoc} \& \np{ln_tauw}{ln\_tauw})} 1486 1486 \label{subsec:SBC_wave_tauw} 1487 1487 … … 1517 1517 1518 1518 The wave stress derived from an external wave model can be provided either through the normalized 1519 wave stress into the ocean by setting \np{ln \_tauwoc}\forcode{=.true.}, or through the zonal and1520 meridional stress components by setting \np{ln \_tauw}\forcode{=.true.}.1519 wave stress into the ocean by setting \np{ln_tauwoc}{ln\_tauwoc}\forcode{=.true.}, or through the zonal and 1520 meridional stress components by setting \np{ln_tauw}{ln\_tauw}\forcode{=.true.}. 1521 1521 1522 1522 … … 1561 1561 assuming that the diurnal cycle of SWF is a scaling of the top of the atmosphere diurnal cycle of incident SWF. 1562 1562 The \cite{bernie.guilyardi.ea_CD07} reconstruction algorithm is available in \NEMO\ by 1563 setting \np{ln \_dm2dc}\forcode{=.true.} (a \textit{\nam{sbc}} namelist variable) when1564 using a bulk formulation (\np{ln \_blk}\forcode{=.true.}) or1565 the flux formulation (\np{ln \_flx}\forcode{=.true.}).1563 setting \np{ln_dm2dc}{ln\_dm2dc}\forcode{=.true.} (a \textit{\nam{sbc}} namelist variable) when 1564 using a bulk formulation (\np{ln_blk}{ln\_blk}\forcode{=.true.}) or 1565 the flux formulation (\np{ln_flx}{ln\_flx}\forcode{=.true.}). 1566 1566 The reconstruction is performed in the \mdl{sbcdcy} module. 1567 1567 The detail of the algoritm used can be found in the appendix~A of \cite{bernie.guilyardi.ea_CD07}. … … 1569 1569 a given time step is the mean value of the analytical cycle over this time step (\autoref{fig:SBC_diurnal}). 1570 1570 The use of diurnal cycle reconstruction requires the input SWF to be daily 1571 (\ie\ a frequency of 24 hours and a time interpolation set to true in \np{sn \_qsr} namelist parameter).1571 (\ie\ a frequency of 24 hours and a time interpolation set to true in \np{sn_qsr}{sn\_qsr} namelist parameter). 1572 1572 Furthermore, it is recommended to have a least 8 surface module time steps per day, 1573 1573 that is $\rdt \ nn\_fsbc < 10,800~s = 3~h$. … … 1598 1598 \label{subsec:SBC_rotation} 1599 1599 1600 When using a flux (\np{ln \_flx}\forcode{=.true.}) or bulk (\np{ln\_blk}\forcode{=.true.}) formulation,1600 When using a flux (\np{ln_flx}{ln\_flx}\forcode{=.true.}) or bulk (\np{ln_blk}{ln\_blk}\forcode{=.true.}) formulation, 1601 1601 pairs of vector components can be rotated from east-north directions onto the local grid directions. 1602 1602 This is particularly useful when interpolation on the fly is used since here any vectors are likely to … … 1626 1626 %------------------------------------------------------------------------------------------------------------- 1627 1627 1628 Options are defined through the \nam{sbc \_ssr} namelist variables.1629 On forced mode using a flux formulation (\np{ln \_flx}\forcode{=.true.}),1628 Options are defined through the \nam{sbc_ssr}{sbc\_ssr} namelist variables. 1629 On forced mode using a flux formulation (\np{ln_flx}{ln\_flx}\forcode{=.true.}), 1630 1630 a feedback term \emph{must} be added to the surface heat flux $Q_{ns}^o$: 1631 1631 \[ … … 1668 1668 The presence at the sea surface of an ice covered area modifies all the fluxes transmitted to the ocean. 1669 1669 There are several way to handle sea-ice in the system depending on 1670 the value of the \np{nn \_ice} namelist parameter found in \nam{sbc} namelist.1670 the value of the \np{nn_ice}{nn\_ice} namelist parameter found in \nam{sbc} namelist. 1671 1671 \begin{description} 1672 1672 \item[nn\_ice = 0] … … 1718 1718 or alternatively when \NEMO\ is coupled to the HadGAM3 atmosphere model 1719 1719 (with \textit{calc\_strair}\forcode{=.false.} and \textit{calc\_Tsfc}\forcode{=false}). 1720 The code is intended to be used with \np{nn \_fsbc} set to 11720 The code is intended to be used with \np{nn_fsbc}{nn\_fsbc} set to 1 1721 1721 (although coupling ocean and ice less frequently should work, 1722 1722 it is possible the calculation of some of the ocean-ice fluxes needs to be modified slightly - … … 1746 1746 1747 1747 \begin{description} 1748 \item[\np{nn \_fwb}\forcode{=0}]1748 \item[\np{nn_fwb}{nn\_fwb}\forcode{=0}] 1749 1749 no control at all. 1750 1750 The mean sea level is free to drift, and will certainly do so. 1751 \item[\np{nn \_fwb}\forcode{=1}]1751 \item[\np{nn_fwb}{nn\_fwb}\forcode{=1}] 1752 1752 global mean \textit{emp} set to zero at each model time step. 1753 1753 %GS: comment below still relevant ? 1754 1754 %Note that with a sea-ice model, this technique only controls the mean sea level with linear free surface and no mass flux between ocean and ice (as it is implemented in the current ice-ocean coupling). 1755 \item[\np{nn \_fwb}\forcode{=2}]1755 \item[\np{nn_fwb}{nn\_fwb}\forcode{=2}] 1756 1756 freshwater budget is adjusted from the previous year annual mean budget which 1757 1757 is read in the \textit{EMPave\_old.dat} file. -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_STO.tex
r11567 r11577 154 154 155 155 (\rou{sto\_rst\_write}) writes a restart file 156 (which suffix name is given by \np{cn \_storst\_out} namelist parameter) containing the current value of156 (which suffix name is given by \np{cn_storst_out}{cn\_storst\_out} namelist parameter) containing the current value of 157 157 all autoregressive processes to allow creating the file needed for a restart. 158 158 This restart file also contains the current state of the random number generator. 159 When \np{ln \_rststo} is set to \forcode{.true.}),160 the restart file (which suffix name is given by \np{cn \_storst\_in} namelist parameter) is read by159 When \np{ln_rststo}{ln\_rststo} is set to \forcode{.true.}), 160 the restart file (which suffix name is given by \np{cn_storst_in}{cn\_storst\_in} namelist parameter) is read by 161 161 the initialization routine (\rou{sto\_par\_init}). 162 162 The simulation will continue exactly as if it was not interrupted only 163 when \np{ln \_rstseed} is set to \forcode{.true.},163 when \np{ln_rstseed}{ln\_rstseed} is set to \forcode{.true.}, 164 164 \ie\ when the state of the random number generator is read in the restart file.\\ 165 165 … … 170 170 Options and parameters \\ 171 171 172 The \np{ln \_sto\_eos} namelist variable activates stochastic parametrisation of equation of state.172 The \np{ln_sto_eos}{ln\_sto\_eos} namelist variable activates stochastic parametrisation of equation of state. 173 173 By default it set to \forcode{.false.}) and not active. 174 174 The set of parameters is available in \nam{sto} namelist … … 186 186 187 187 \begin{description} 188 \item[\np{nn \_sto\_eos}:] number of independent random walks189 \item[\np{rn \_eos\_stdxy}:] random walk horizontal standard deviation (in grid points)190 \item[\np{rn \_eos\_stdz}:] random walk vertical standard deviation (in grid points)191 \item[\np{rn \_eos\_tcor}:] random walk time correlation (in timesteps)192 \item[\np{nn \_eos\_ord}:] order of autoregressive processes193 \item[\np{nn \_eos\_flt}:] passes of Laplacian filter194 \item[\np{rn \_eos\_lim}:] limitation factor (default = 3.0)188 \item[\np{nn_sto_eos}{nn\_sto\_eos}:] number of independent random walks 189 \item[\np{rn_eos_stdxy}{rn\_eos\_stdxy}:] random walk horizontal standard deviation (in grid points) 190 \item[\np{rn_eos_stdz}{rn\_eos\_stdz}:] random walk vertical standard deviation (in grid points) 191 \item[\np{rn_eos_tcor}{rn\_eos\_tcor}:] random walk time correlation (in timesteps) 192 \item[\np{nn_eos_ord}{nn\_eos\_ord}:] order of autoregressive processes 193 \item[\np{nn_eos_flt}{nn\_eos\_flt}:] passes of Laplacian filter 194 \item[\np{rn_eos_lim}{rn\_eos\_lim}:] limitation factor (default = 3.0) 195 195 \end{description} 196 196 -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_TRA.tex
r11571 r11577 55 55 56 56 The user has the option of extracting each tendency term on the RHS of the tracer equation for output 57 (\np{ln \_tra\_trd} or \np{ln\_tra\_mxl}\forcode{=.true.}), as described in \autoref{chap:DIA}.57 (\np{ln_tra_trd}{ln\_tra\_trd} or \np{ln_tra_mxl}{ln\_tra\_mxl}\forcode{=.true.}), as described in \autoref{chap:DIA}. 58 58 59 59 % ================================================================ … … 71 71 %------------------------------------------------------------------------------------------------------------- 72 72 73 When considered (\ie\ when \np{ln \_traadv\_OFF} is not set to \forcode{.true.}),73 When considered (\ie\ when \np{ln_traadv_OFF}{ln\_traadv\_OFF} is not set to \forcode{.true.}), 74 74 the advection tendency of a tracer is expressed in flux form, 75 75 \ie\ as the divergence of the advective fluxes. … … 85 85 Indeed, it is obtained by using the following equality: $\nabla \cdot (\vect U \, T) = \vect U \cdot \nabla T$ which 86 86 results from the use of the continuity equation, $\partial_t e_3 + e_3 \; \nabla \cdot \vect U = 0$ 87 (which reduces to $\nabla \cdot \vect U = 0$ in linear free surface, \ie\ \np{ln \_linssh}\forcode{=.true.}).87 (which reduces to $\nabla \cdot \vect U = 0$ in linear free surface, \ie\ \np{ln_linssh}{ln\_linssh}\forcode{=.true.}). 88 88 Therefore it is of paramount importance to design the discrete analogue of the advection tendency so that 89 89 it is consistent with the continuity equation in order to enforce the conservation properties of … … 121 121 \begin{description} 122 122 \item[linear free surface:] 123 (\np{ln \_linssh}\forcode{=.true.})123 (\np{ln_linssh}{ln\_linssh}\forcode{=.true.}) 124 124 the first level thickness is constant in time: 125 125 the vertical boundary condition is applied at the fixed surface $z = 0$ rather than on … … 129 129 the first level tracer value. 130 130 \item[non-linear free surface:] 131 (\np{ln \_linssh}\forcode{=.false.})131 (\np{ln_linssh}{ln\_linssh}\forcode{=.false.}) 132 132 convergence/divergence in the first ocean level moves the free surface up/down. 133 133 There is no tracer advection through it so that the advective fluxes through the surface are also zero. … … 150 150 Conservative Laws scheme (MUSCL), a $3^{rd}$ Upstream Biased Scheme (UBS, also often called UP3), 151 151 and a Quadratic Upstream Interpolation for Convective Kinematics with Estimated Streaming Terms scheme (QUICKEST). 152 The choice is made in the \nam{tra \_adv} namelist, by setting to \forcode{.true.} one of152 The choice is made in the \nam{tra_adv}{tra\_adv} namelist, by setting to \forcode{.true.} one of 153 153 the logicals \textit{ln\_traadv\_xxx}. 154 154 The corresponding code can be found in the \textit{traadv\_xxx.F90} module, where … … 185 185 % 2nd and 4th order centred schemes 186 186 % ------------------------------------------------------------------------------------------------------------- 187 \subsection[CEN: Centred scheme (\forcode{ln_traadv_cen})]{CEN: Centred scheme (\protect\np{ln \_traadv\_cen})}187 \subsection[CEN: Centred scheme (\forcode{ln_traadv_cen})]{CEN: Centred scheme (\protect\np{ln_traadv_cen}{ln\_traadv\_cen})} 188 188 \label{subsec:TRA_adv_cen} 189 189 190 190 % 2nd order centred scheme 191 191 192 The centred advection scheme (CEN) is used when \np{ln \_traadv\_cen}\forcode{=.true.}.192 The centred advection scheme (CEN) is used when \np{ln_traadv_cen}{ln\_traadv\_cen}\forcode{=.true.}. 193 193 Its order ($2^{nd}$ or $4^{th}$) can be chosen independently on horizontal (iso-level) and vertical direction by 194 setting \np{nn \_cen\_h} and \np{nn\_cen\_v} to $2$ or $4$.194 setting \np{nn_cen_h}{nn\_cen\_h} and \np{nn_cen_v}{nn\_cen\_v} to $2$ or $4$. 195 195 CEN implementation can be found in the \mdl{traadv\_cen} module. 196 196 … … 222 222 \tau_u^{cen4} = \overline{T - \frac{1}{6} \, \delta_i \Big[ \delta_{i + 1/2}[T] \, \Big]}^{\,i + 1/2} 223 223 \end{equation} 224 In the vertical direction (\np{nn \_cen\_v}\forcode{=4}),224 In the vertical direction (\np{nn_cen_v}{nn\_cen\_v}\forcode{=4}), 225 225 a $4^{th}$ COMPACT interpolation has been prefered \citep{demange_phd14}. 226 226 In the COMPACT scheme, both the field and its derivative are interpolated, which leads, after a matrix inversion, … … 252 252 % FCT scheme 253 253 % ------------------------------------------------------------------------------------------------------------- 254 \subsection[FCT: Flux Corrected Transport scheme (\forcode{ln_traadv_fct})]{FCT: Flux Corrected Transport scheme (\protect\np{ln \_traadv\_fct})}254 \subsection[FCT: Flux Corrected Transport scheme (\forcode{ln_traadv_fct})]{FCT: Flux Corrected Transport scheme (\protect\np{ln_traadv_fct}{ln\_traadv\_fct})} 255 255 \label{subsec:TRA_adv_tvd} 256 256 257 The Flux Corrected Transport schemes (FCT) is used when \np{ln \_traadv\_fct}\forcode{=.true.}.257 The Flux Corrected Transport schemes (FCT) is used when \np{ln_traadv_fct}{ln\_traadv\_fct}\forcode{=.true.}. 258 258 Its order ($2^{nd}$ or $4^{th}$) can be chosen independently on horizontal (iso-level) and vertical direction by 259 setting \np{nn \_fct\_h} and \np{nn\_fct\_v} to $2$ or $4$.259 setting \np{nn_fct_h}{nn\_fct\_h} and \np{nn_fct_v}{nn\_fct\_v} to $2$ or $4$. 260 260 FCT implementation can be found in the \mdl{traadv\_fct} module. 261 261 … … 277 277 where $c_u$ is a flux limiter function taking values between 0 and 1. 278 278 The FCT order is the one of the centred scheme used 279 (\ie\ it depends on the setting of \np{nn \_fct\_h} and \np{nn\_fct\_v}).279 (\ie\ it depends on the setting of \np{nn_fct_h}{nn\_fct\_h} and \np{nn_fct_v}{nn\_fct\_v}). 280 280 There exist many ways to define $c_u$, each corresponding to a different FCT scheme. 281 281 The one chosen in \NEMO\ is described in \citet{zalesak_JCP79}. … … 295 295 % MUSCL scheme 296 296 % ------------------------------------------------------------------------------------------------------------- 297 \subsection[MUSCL: Monotone Upstream Scheme for Conservative Laws (\forcode{ln_traadv_mus})]{MUSCL: Monotone Upstream Scheme for Conservative Laws (\protect\np{ln \_traadv\_mus})}297 \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})} 298 298 \label{subsec:TRA_adv_mus} 299 299 300 The Monotone Upstream Scheme for Conservative Laws (MUSCL) is used when \np{ln \_traadv\_mus}\forcode{=.true.}.300 The Monotone Upstream Scheme for Conservative Laws (MUSCL) is used when \np{ln_traadv_mus}{ln\_traadv\_mus}\forcode{=.true.}. 301 301 MUSCL implementation can be found in the \mdl{traadv\_mus} module. 302 302 … … 326 326 This choice ensure the \textit{positive} character of the scheme. 327 327 In addition, fluxes round a grid-point where a runoff is applied can optionally be computed using upstream fluxes 328 (\np{ln \_mus\_ups}\forcode{=.true.}).328 (\np{ln_mus_ups}{ln\_mus\_ups}\forcode{=.true.}). 329 329 330 330 % ------------------------------------------------------------------------------------------------------------- 331 331 % UBS scheme 332 332 % ------------------------------------------------------------------------------------------------------------- 333 \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})}333 \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})} 334 334 \label{subsec:TRA_adv_ubs} 335 335 336 The Upstream-Biased Scheme (UBS) is used when \np{ln \_traadv\_ubs}\forcode{=.true.}.336 The Upstream-Biased Scheme (UBS) is used when \np{ln_traadv_ubs}{ln\_traadv\_ubs}\forcode{=.true.}. 337 337 UBS implementation can be found in the \mdl{traadv\_mus} module. 338 338 … … 364 364 \citep{shchepetkin.mcwilliams_OM05, demange_phd14}. 365 365 Therefore the vertical flux is evaluated using either a $2^nd$ order FCT scheme or a $4^th$ order COMPACT scheme 366 (\np{nn \_ubs\_v}\forcode{=2 or 4}).366 (\np{nn_ubs_v}{nn\_ubs\_v}\forcode{=2 or 4}). 367 367 368 368 For stability reasons (see \autoref{chap:TD}), the first term in \autoref{eq:TRA_adv_ubs} … … 403 403 % QCK scheme 404 404 % ------------------------------------------------------------------------------------------------------------- 405 \subsection[QCK: QuiCKest scheme (\forcode{ln_traadv_qck})]{QCK: QuiCKest scheme (\protect\np{ln \_traadv\_qck})}405 \subsection[QCK: QuiCKest scheme (\forcode{ln_traadv_qck})]{QCK: QuiCKest scheme (\protect\np{ln_traadv_qck}{ln\_traadv\_qck})} 406 406 \label{subsec:TRA_adv_qck} 407 407 408 408 The Quadratic Upstream Interpolation for Convective Kinematics with Estimated Streaming Terms (QUICKEST) scheme 409 proposed by \citet{leonard_CMAME79} is used when \np{ln \_traadv\_qck}\forcode{=.true.}.409 proposed by \citet{leonard_CMAME79} is used when \np{ln_traadv_qck}{ln\_traadv\_qck}\forcode{=.true.}. 410 410 QUICKEST implementation can be found in the \mdl{traadv\_qck} module. 411 411 … … 437 437 %------------------------------------------------------------------------------------------------------------- 438 438 439 Options are defined through the \nam{tra \_ldf} namelist variables.439 Options are defined through the \nam{tra_ldf}{tra\_ldf} namelist variables. 440 440 They are regrouped in four items, allowing to specify 441 441 $(i)$ the type of operator used (none, laplacian, bilaplacian), … … 452 452 except for the pure vertical component that appears when a rotation tensor is used. 453 453 This latter component is solved implicitly together with the vertical diffusion term (see \autoref{chap:TD}). 454 When \np{ln \_traldf\_msc}\forcode{=.true.}, a Method of Stabilizing Correction is used in which454 When \np{ln_traldf_msc}{ln\_traldf\_msc}\forcode{=.true.}, a Method of Stabilizing Correction is used in which 455 455 the pure vertical component is split into an explicit and an implicit part \citep{lemarie.debreu.ea_OM12}. 456 456 … … 458 458 % Type of operator 459 459 % ------------------------------------------------------------------------------------------------------------- 460 \subsection[Type of operator (\forcode{ln_traldf_}\{\forcode{OFF,lap,blp}\})]{Type of operator (\protect\np{ln \_traldf\_OFF}, \protect\np{ln\_traldf\_lap}, or \protect\np{ln\_traldf\_blp})}460 \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})} 461 461 \label{subsec:TRA_ldf_op} 462 462 … … 464 464 465 465 \begin{description} 466 \item[\np{ln \_traldf\_OFF}\forcode{=.true.}:]466 \item[\np{ln_traldf_OFF}{ln\_traldf\_OFF}\forcode{=.true.}:] 467 467 no operator selected, the lateral diffusive tendency will not be applied to the tracer equation. 468 468 This option can be used when the selected advection scheme is diffusive enough (MUSCL scheme for example). 469 \item[\np{ln \_traldf\_lap}\forcode{=.true.}:]469 \item[\np{ln_traldf_lap}{ln\_traldf\_lap}\forcode{=.true.}:] 470 470 a laplacian operator is selected. 471 471 This harmonic operator takes the following expression: $\mathcal{L}(T) = \nabla \cdot A_{ht} \; \nabla T $, 472 472 where the gradient operates along the selected direction (see \autoref{subsec:TRA_ldf_dir}), 473 473 and $A_{ht}$ is the eddy diffusivity coefficient expressed in $m^2/s$ (see \autoref{chap:LDF}). 474 \item[\np{ln \_traldf\_blp}\forcode{=.true.}]:474 \item[\np{ln_traldf_blp}{ln\_traldf\_blp}\forcode{=.true.}]: 475 475 a bilaplacian operator is selected. 476 476 This biharmonic operator takes the following expression: … … 492 492 % Direction of action 493 493 % ------------------------------------------------------------------------------------------------------------- 494 \subsection[Action direction (\forcode{ln_traldf_}\{\forcode{lev,hor,iso,triad}\})]{Direction of action (\protect\np{ln \_traldf\_lev}, \protect\np{ln\_traldf\_hor}, \protect\np{ln\_traldf\_iso}, or \protect\np{ln\_traldf\_triad})}494 \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})} 495 495 \label{subsec:TRA_ldf_dir} 496 496 497 497 The choice of a direction of action determines the form of operator used. 498 498 The operator is a simple (re-entrant) laplacian acting in the (\textbf{i},\textbf{j}) plane when 499 iso-level option is used (\np{ln \_traldf\_lev}\forcode{=.true.}) or499 iso-level option is used (\np{ln_traldf_lev}{ln\_traldf\_lev}\forcode{=.true.}) or 500 500 when a horizontal (\ie\ geopotential) operator is demanded in \textit{z}-coordinate 501 (\np{ln \_traldf\_hor} and \np{ln\_zco}\forcode{=.true.}).501 (\np{ln_traldf_hor}{ln\_traldf\_hor} and \np{ln_zco}{ln\_zco}\forcode{=.true.}). 502 502 The associated code can be found in the \mdl{traldf\_lap\_blp} module. 503 503 The operator is a rotated (re-entrant) laplacian when 504 504 the direction along which it acts does not coincide with the iso-level surfaces, 505 505 that is when standard or triad iso-neutral option is used 506 (\np{ln \_traldf\_iso} or \np{ln\_traldf\_triad} = \forcode{.true.},506 (\np{ln_traldf_iso}{ln\_traldf\_iso} or \np{ln_traldf_triad}{ln\_traldf\_triad} = \forcode{.true.}, 507 507 see \mdl{traldf\_iso} or \mdl{traldf\_triad} module, resp.), or 508 508 when a horizontal (\ie\ geopotential) operator is demanded in \textit{s}-coordinate 509 (\np{ln \_traldf\_hor} and \np{ln\_sco} = \forcode{.true.})509 (\np{ln_traldf_hor}{ln\_traldf\_hor} and \np{ln_sco}{ln\_sco} = \forcode{.true.}) 510 510 \footnote{In this case, the standard iso-neutral operator will be automatically selected}. 511 511 In that case, a rotation is applied to the gradient(s) that appears in the operator so that … … 518 518 % iso-level operator 519 519 % ------------------------------------------------------------------------------------------------------------- 520 \subsection[Iso-level (bi-)laplacian operator (\forcode{ln_traldf_iso})]{Iso-level (bi-)laplacian operator ( \protect\np{ln \_traldf\_iso})}520 \subsection[Iso-level (bi-)laplacian operator (\forcode{ln_traldf_iso})]{Iso-level (bi-)laplacian operator ( \protect\np{ln_traldf_iso}{ln\_traldf\_iso})} 521 521 \label{subsec:TRA_ldf_lev} 522 522 … … 536 536 It is a \textit{horizontal} operator (\ie acting along geopotential surfaces) in 537 537 the $z$-coordinate with or without partial steps, but is simply an iso-level operator in the $s$-coordinate. 538 It is thus used when, in addition to \np{ln \_traldf\_lap} or \np{ln\_traldf\_blp}\forcode{=.true.},539 we have \np{ln \_traldf\_lev}\forcode{=.true.} or \np{ln\_traldf\_hor}~=~\np{ln\_zco}\forcode{=.true.}.538 It is thus used when, in addition to \np{ln_traldf_lap}{ln\_traldf\_lap} or \np{ln_traldf_blp}{ln\_traldf\_blp}\forcode{=.true.}, 539 we have \np{ln_traldf_lev}{ln\_traldf\_lev}\forcode{=.true.} or \np{ln_traldf_hor}{ln\_traldf\_hor}~=~\np{ln_zco}{ln\_zco}\forcode{=.true.}. 540 540 In both cases, it significantly contributes to diapycnal mixing. 541 541 It is therefore never recommended, even when using it in the bilaplacian case. 542 542 543 Note that in the partial step $z$-coordinate (\np{ln \_zps}\forcode{=.true.}),543 Note that in the partial step $z$-coordinate (\np{ln_zps}{ln\_zps}\forcode{=.true.}), 544 544 tracers in horizontally adjacent cells are located at different depths in the vicinity of the bottom. 545 545 In this case, horizontal derivatives in (\autoref{eq:TRA_ldf_lap}) at the bottom level require a specific treatment. … … 573 573 $r_1$ and $r_2$ are the slopes between the surface of computation ($z$- or $s$-surfaces) and 574 574 the surface along which the diffusion operator acts (\ie\ horizontal or iso-neutral surfaces). 575 It is thus used when, in addition to \np{ln \_traldf\_lap}\forcode{=.true.},576 we have \np{ln \_traldf\_iso}\forcode{=.true.},577 or both \np{ln \_traldf\_hor}\forcode{=.true.} and \np{ln\_zco}\forcode{=.true.}.575 It is thus used when, in addition to \np{ln_traldf_lap}{ln\_traldf\_lap}\forcode{=.true.}, 576 we have \np{ln_traldf_iso}{ln\_traldf\_iso}\forcode{=.true.}, 577 or both \np{ln_traldf_hor}{ln\_traldf\_hor}\forcode{=.true.} and \np{ln_zco}{ln\_zco}\forcode{=.true.}. 578 578 The way these slopes are evaluated is given in \autoref{sec:LDF_slp}. 579 579 At the surface, bottom and lateral boundaries, the turbulent fluxes of heat and salt are set to zero using … … 591 591 any additional background horizontal diffusion \citep{guilyardi.madec.ea_CD01}. 592 592 593 Note that in the partial step $z$-coordinate (\np{ln \_zps}\forcode{=.true.}),593 Note that in the partial step $z$-coordinate (\np{ln_zps}{ln\_zps}\forcode{=.true.}), 594 594 the horizontal derivatives at the bottom level in \autoref{eq:TRA_ldf_iso} require a specific treatment. 595 595 They are calculated in module zpshde, described in \autoref{sec:TRA_zpshde}. … … 597 597 %&& Triad rotated (bi-)laplacian operator 598 598 %&& ------------------------------------------- 599 \subsubsection[Triad rotated (bi-)laplacian operator (\forcode{ln_traldf_triad})]{Triad rotated (bi-)laplacian operator (\protect\np{ln \_traldf\_triad})}599 \subsubsection[Triad rotated (bi-)laplacian operator (\forcode{ln_traldf_triad})]{Triad rotated (bi-)laplacian operator (\protect\np{ln_traldf_triad}{ln\_traldf\_triad})} 600 600 \label{subsec:TRA_ldf_triad} 601 601 602 602 An alternative scheme developed by \cite{griffies.gnanadesikan.ea_JPO98} which ensures tracer variance decreases 603 is also available in \NEMO\ (\np{ln \_traldf\_triad}\forcode{=.true.}).603 is also available in \NEMO\ (\np{ln_traldf_triad}{ln\_traldf\_triad}\forcode{=.true.}). 604 604 A complete description of the algorithm is given in \autoref{apdx:TRIADS}. 605 605 … … 619 619 620 620 \begin{itemize} 621 \item \np{ln \_traldf\_msc} = Method of Stabilizing Correction (both operators)622 \item \np{rn \_slpmax} = slope limit (both operators)623 \item \np{ln \_triad\_iso} = pure horizontal mixing in ML (triad only)624 \item \np{rn \_sw\_triad} $= 1$ switching triad; $= 0$ all 4 triads used (triad only)625 \item \np{ln \_botmix\_triad} = lateral mixing on bottom (triad only)621 \item \np{ln_traldf_msc}{ln\_traldf\_msc} = Method of Stabilizing Correction (both operators) 622 \item \np{rn_slpmax}{rn\_slpmax} = slope limit (both operators) 623 \item \np{ln_triad_iso}{ln\_triad\_iso} = pure horizontal mixing in ML (triad only) 624 \item \np{rn_sw_triad}{rn\_sw\_triad} $= 1$ switching triad; $= 0$ all 4 triads used (triad only) 625 \item \np{ln_botmix_triad}{ln\_botmix\_triad} = lateral mixing on bottom (triad only) 626 626 \end{itemize} 627 627 … … 647 647 respectively. 648 648 Generally, $A_w^{vT} = A_w^{vS}$ except when double diffusive mixing is parameterised 649 (\ie\ \np{ln \_zdfddm}\forcode{=.true.},).649 (\ie\ \np{ln_zdfddm}{ln\_zdfddm}\forcode{=.true.},). 650 650 The way these coefficients are evaluated is given in \autoref{chap:ZDF} (ZDF). 651 651 Furthermore, when iso-neutral mixing is used, both mixing coefficients are increased by … … 722 722 Such time averaging prevents the divergence of odd and even time step (see \autoref{chap:TD}). 723 723 724 In the linear free surface case (\np{ln \_linssh}\forcode{=.true.}), an additional term has to be added on724 In the linear free surface case (\np{ln_linssh}{ln\_linssh}\forcode{=.true.}), an additional term has to be added on 725 725 both temperature and salinity. 726 726 On temperature, this term remove the heat content associated with mass exchange that has been added to $Q_{ns}$. … … 756 756 %-------------------------------------------------------------------------------------------------------------- 757 757 758 Options are defined through the \nam{tra \_qsr} namelist variables.759 When the penetrative solar radiation option is used (\np{ln \_traqsr}\forcode{=.true.}),758 Options are defined through the \nam{tra_qsr}{tra\_qsr} namelist variables. 759 When the penetrative solar radiation option is used (\np{ln_traqsr}{ln\_traqsr}\forcode{=.true.}), 760 760 the solar radiation penetrates the top few tens of meters of the ocean. 761 If it is not used (\np{ln \_traqsr}\forcode{=.false.}) all the heat flux is absorbed in the first ocean level.761 If it is not used (\np{ln_traqsr}{ln\_traqsr}\forcode{=.false.}) all the heat flux is absorbed in the first ocean level. 762 762 Thus, in the former case a term is added to the time evolution equation of temperature \autoref{eq:MB_PE_tra_T} and 763 763 the surface boundary condition is modified to take into account only the non-penetrative part of the surface … … 782 782 heating the upper few tens of centimetres. 783 783 The fraction of $Q_{sr}$ that resides in these almost non-penetrative wavebands, $R$, is $\sim 58\%$ 784 (specified through namelist parameter \np{rn \_abs}).784 (specified through namelist parameter \np{rn_abs}{rn\_abs}). 785 785 It is assumed to penetrate the ocean with a decreasing exponential profile, with an e-folding depth scale, $\xi_0$, 786 of a few tens of centimetres (typically $\xi_0 = 0.35~m$ set as \np{rn \_si0} in the \nam{tra\_qsr} namelist).786 of a few tens of centimetres (typically $\xi_0 = 0.35~m$ set as \np{rn_si0}{rn\_si0} in the \nam{tra_qsr}{tra\_qsr} namelist). 787 787 For shorter wavelengths (400-700~nm), the ocean is more transparent, and solar energy propagates to 788 788 larger depths where it contributes to local heating. 789 789 The way this second part of the solar energy penetrates into the ocean depends on which formulation is chosen. 790 In the simple 2-waveband light penetration scheme (\np{ln \_qsr\_2bd}\forcode{=.true.})790 In the simple 2-waveband light penetration scheme (\np{ln_qsr_2bd}{ln\_qsr\_2bd}\forcode{=.true.}) 791 791 a chlorophyll-independent monochromatic formulation is chosen for the shorter wavelengths, 792 792 leading to the following expression \citep{paulson.simpson_JPO77}: … … 796 796 \] 797 797 where $\xi_1$ is the second extinction length scale associated with the shorter wavelengths. 798 It is usually chosen to be 23~m by setting the \np{rn \_si0} namelist parameter.798 It is usually chosen to be 23~m by setting the \np{rn_si0}{rn\_si0} namelist parameter. 799 799 The set of default values ($\xi_0, \xi_1, R$) corresponds to a Type I water in Jerlov's (1968) classification 800 800 (oligotrophic waters). … … 816 816 The 2-bands formulation does not reproduce the full model very well. 817 817 818 The RGB formulation is used when \np{ln \_qsr\_rgb}\forcode{=.true.}.818 The RGB formulation is used when \np{ln_qsr_rgb}{ln\_qsr\_rgb}\forcode{=.true.}. 819 819 The RGB attenuation coefficients (\ie\ the inverses of the extinction length scales) are tabulated over 820 820 61 nonuniform chlorophyll classes ranging from 0.01 to 10 g.Chl/L … … 823 823 824 824 \begin{description} 825 \item[\np{nn \_chldta}\forcode{=0}]825 \item[\np{nn_chldta}{nn\_chldta}\forcode{=0}] 826 826 a constant 0.05 g.Chl/L value everywhere ; 827 \item[\np{nn \_chldta}\forcode{=1}]827 \item[\np{nn_chldta}{nn\_chldta}\forcode{=1}] 828 828 an observed time varying chlorophyll deduced from satellite surface ocean color measurement spread uniformly in 829 829 the vertical direction; 830 \item[\np{nn \_chldta}\forcode{=2}]830 \item[\np{nn_chldta}{nn\_chldta}\forcode{=2}] 831 831 same as previous case except that a vertical profile of chlorophyl is used. 832 832 Following \cite{morel.berthon_LO89}, the profile is computed from the local surface chlorophyll value; 833 \item[\np{ln \_qsr\_bio}\forcode{=.true.}]833 \item[\np{ln_qsr_bio}{ln\_qsr\_bio}\forcode{=.true.}] 834 834 simulated time varying chlorophyll by TOP biogeochemical model. 835 835 In this case, the RGB formulation is used to calculate both the phytoplankton light limitation in … … 868 868 % Bottom Boundary Condition 869 869 % ------------------------------------------------------------------------------------------------------------- 870 \subsection[Bottom boundary condition (\textit{trabbc.F90}) - \forcode{ln_trabbc})]{Bottom boundary condition (\protect\mdl{trabbc} - \protect\np{ln \_trabbc})}870 \subsection[Bottom boundary condition (\textit{trabbc.F90}) - \forcode{ln_trabbc})]{Bottom boundary condition (\protect\mdl{trabbc} - \protect\np{ln_trabbc}{ln\_trabbc})} 871 871 \label{subsec:TRA_bbc} 872 872 %--------------------------------------------nambbc-------------------------------------------------------- … … 899 899 900 900 Options are defined through the \nam{bbc} namelist variables. 901 The presence of geothermal heating is controlled by setting the namelist parameter \np{ln \_trabbc} to true.902 Then, when \np{nn \_geoflx} is set to 1, a constant geothermal heating is introduced whose value is given by903 the \np{rn \_geoflx\_cst}, which is also a namelist parameter.904 When \np{nn \_geoflx} is set to 2, a spatially varying geothermal heat flux is introduced which is provided in901 The presence of geothermal heating is controlled by setting the namelist parameter \np{ln_trabbc}{ln\_trabbc} to true. 902 Then, when \np{nn_geoflx}{nn\_geoflx} is set to 1, a constant geothermal heating is introduced whose value is given by 903 the \np{rn_geoflx_cst}{rn\_geoflx\_cst}, which is also a namelist parameter. 904 When \np{nn_geoflx}{nn\_geoflx} is set to 2, a spatially varying geothermal heat flux is introduced which is provided in 905 905 the \ifile{geothermal\_heating} NetCDF file (\autoref{fig:TRA_geothermal}) \citep{emile-geay.madec_OS09}. 906 906 … … 908 908 % Bottom Boundary Layer 909 909 % ================================================================ 910 \section[Bottom boundary layer (\textit{trabbl.F90} - \forcode{ln_trabbl})]{Bottom boundary layer (\protect\mdl{trabbl} - \protect\np{ln \_trabbl})}910 \section[Bottom boundary layer (\textit{trabbl.F90} - \forcode{ln_trabbl})]{Bottom boundary layer (\protect\mdl{trabbl} - \protect\np{ln_trabbl}{ln\_trabbl})} 911 911 \label{sec:TRA_bbl} 912 912 %--------------------------------------------nambbl--------------------------------------------------------- … … 944 944 % Diffusive BBL 945 945 % ------------------------------------------------------------------------------------------------------------- 946 \subsection[Diffusive bottom boundary layer (\forcode{nn_bbl_ldf=1})]{Diffusive bottom boundary layer (\protect\np{nn \_bbl\_ldf}\forcode{=1})}946 \subsection[Diffusive bottom boundary layer (\forcode{nn_bbl_ldf=1})]{Diffusive bottom boundary layer (\protect\np{nn_bbl_ldf}{nn\_bbl\_ldf}\forcode{=1})} 947 947 \label{subsec:TRA_bbl_diff} 948 948 949 When applying sigma-diffusion (\np{ln \_trabbl}\forcode{=.true.} and \np{nn\_bbl\_ldf} set to 1),949 When applying sigma-diffusion (\np{ln_trabbl}{ln\_trabbl}\forcode{=.true.} and \np{nn_bbl_ldf}{nn\_bbl\_ldf} set to 1), 950 950 the diffusive flux between two adjacent cells at the ocean floor is given by 951 951 \[ … … 966 966 \end{cases} 967 967 \end{equation} 968 where $A_{bbl}$ is the BBL diffusivity coefficient, given by the namelist parameter \np{rn \_ahtbbl} and968 where $A_{bbl}$ is the BBL diffusivity coefficient, given by the namelist parameter \np{rn_ahtbbl}{rn\_ahtbbl} and 969 969 usually set to a value much larger than the one used for lateral mixing in the open ocean. 970 970 The constraint in \autoref{eq:TRA_bbl_coef} implies that sigma-like diffusion only occurs when … … 983 983 % Advective BBL 984 984 % ------------------------------------------------------------------------------------------------------------- 985 \subsection[Advective bottom boundary layer (\forcode{nn_bbl_adv=1,2})]{Advective bottom boundary layer (\protect\np{nn \_bbl\_adv}\forcode{=1,2})}985 \subsection[Advective bottom boundary layer (\forcode{nn_bbl_adv=1,2})]{Advective bottom boundary layer (\protect\np{nn_bbl_adv}{nn\_bbl\_adv}\forcode{=1,2})} 986 986 \label{subsec:TRA_bbl_adv} 987 987 … … 1014 1014 %%%gmcomment : this section has to be really written 1015 1015 1016 When applying an advective BBL (\np{nn \_bbl\_adv}\forcode{=1..2}), an overturning circulation is added which1016 When applying an advective BBL (\np{nn_bbl_adv}{nn\_bbl\_adv}\forcode{=1..2}), an overturning circulation is added which 1017 1017 connects two adjacent bottom grid-points only if dense water overlies less dense water on the slope. 1018 1018 The density difference causes dense water to move down the slope. 1019 1019 1020 \np{nn \_bbl\_adv}\forcode{=1}:1020 \np{nn_bbl_adv}{nn\_bbl\_adv}\forcode{=1}: 1021 1021 the downslope velocity is chosen to be the Eulerian ocean velocity just above the topographic step 1022 1022 (see black arrow in \autoref{fig:TRA_bbl}) \citep{beckmann.doscher_JPO97}. … … 1025 1025 if the velocity is directed towards greater depth (\ie\ $\vect U \cdot \nabla H > 0$). 1026 1026 1027 \np{nn \_bbl\_adv}\forcode{=2}:1027 \np{nn_bbl_adv}{nn\_bbl\_adv}\forcode{=2}: 1028 1028 the downslope velocity is chosen to be proportional to $\Delta \rho$, 1029 1029 the density difference between the higher cell and lower cell densities \citep{campin.goosse_T99}. … … 1036 1036 u^{tr}_{bbl} = \gamma g \frac{\Delta \rho}{\rho_o} e_{1u} \, min ({e_{3u}}_{kup},{e_{3u}}_{kdwn}) 1037 1037 \] 1038 where $\gamma$, expressed in seconds, is the coefficient of proportionality provided as \np{rn \_gambbl},1038 where $\gamma$, expressed in seconds, is the coefficient of proportionality provided as \np{rn_gambbl}{rn\_gambbl}, 1039 1039 a namelist parameter, and \textit{kup} and \textit{kdwn} are the vertical index of the higher and lower cells, 1040 1040 respectively. … … 1095 1095 where $\gamma$ is the inverse of a time scale, and $T_o$ and $S_o$ are given temperature and salinity fields 1096 1096 (usually a climatology). 1097 Options are defined through the \nam{tra \_dmp} namelist variables.1098 The restoring term is added when the namelist parameter \np{ln \_tradmp} is set to true.1099 It also requires that both \np{ln \_tsd\_init} and \np{ln\_tsd\_dmp} are set to true in1100 \nam{tsd} namelist as well as \np{sn \_tem} and \np{sn\_sal} structures are correctly set1097 Options are defined through the \nam{tra_dmp}{tra\_dmp} namelist variables. 1098 The restoring term is added when the namelist parameter \np{ln_tradmp}{ln\_tradmp} is set to true. 1099 It also requires that both \np{ln_tsd_init}{ln\_tsd\_init} and \np{ln_tsd_dmp}{ln\_tsd\_dmp} are set to true in 1100 \nam{tsd} namelist as well as \np{sn_tem}{sn\_tem} and \np{sn_sal}{sn\_sal} structures are correctly set 1101 1101 (\ie\ that $T_o$ and $S_o$ are provided in input files and read using \mdl{fldread}, 1102 1102 see \autoref{subsec:SBC_fldread}). 1103 1103 The restoring coefficient $\gamma$ is a three-dimensional array read in during the \rou{tra\_dmp\_init} routine. 1104 The file name is specified by the namelist variable \np{cn \_resto}.1104 The file name is specified by the namelist variable \np{cn_resto}{cn\_resto}. 1105 1105 The DMP\_TOOLS tool is provided to allow users to generate the netcdf file. 1106 1106 … … 1122 1122 It tends to prevent deep convection and subsequent deep-water formation, by stabilising the water column too much. 1123 1123 1124 The namelist parameter \np{nn \_zdmp} sets whether the damping should be applied in the whole water column or1124 The namelist parameter \np{nn_zdmp}{nn\_zdmp} sets whether the damping should be applied in the whole water column or 1125 1125 only below the mixed layer (defined either on a density or $S_o$ criterion). 1126 1126 It is common to set the damping to zero in the mixed layer as the adjustment time scale is short here … … 1152 1152 $\gamma$ is the Asselin coefficient, and $S$ is the total forcing applied on $T$ 1153 1153 (\ie\ fluxes plus content in mass exchanges). 1154 $\gamma$ is initialized as \np{rn \_atfp} (\textbf{namelist} parameter).1155 Its default value is \np{rn \_atfp}\forcode{=10.e-3}.1154 $\gamma$ is initialized as \np{rn_atfp}{rn\_atfp} (\textbf{namelist} parameter). 1155 Its default value is \np{rn_atfp}{rn\_atfp}\forcode{=10.e-3}. 1156 1156 Note that the forcing correction term in the filter is not applied in linear free surface 1157 1157 (\jp{ln\_linssh}\forcode{=.true.}) (see \autoref{subsec:TRA_sbc}). … … 1182 1182 % Equation of State 1183 1183 % ------------------------------------------------------------------------------------------------------------- 1184 \subsection[Equation of seawater (\forcode{ln_}\{\forcode{teos10,eos80,seos}\})]{Equation of seawater (\protect\np{ln \_teos10}, \protect\np{ln\_teos80}, or \protect\np{ln\_seos})}1184 \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})} 1185 1185 \label{subsec:TRA_eos} 1186 1186 … … 1216 1216 1217 1217 \begin{description} 1218 \item[\np{ln \_teos10}\forcode{=.true.}]1218 \item[\np{ln_teos10}{ln\_teos10}\forcode{=.true.}] 1219 1219 the polyTEOS10-bsq equation of seawater \citep{roquet.madec.ea_OM15} is used. 1220 1220 The accuracy of this approximation is comparable to the TEOS-10 rational function approximation, … … 1235 1235 either computing the air-sea and ice-sea fluxes (forced mode) or 1236 1236 sending the SST field to the atmosphere (coupled mode). 1237 \item[\np{ln \_eos80}\forcode{=.true.}]1237 \item[\np{ln_eos80}{ln\_eos80}\forcode{=.true.}] 1238 1238 the polyEOS80-bsq equation of seawater is used. 1239 1239 It takes the same polynomial form as the polyTEOS10, but the coefficients have been optimized to … … 1247 1247 Nevertheless, a severe assumption is made in order to have a heat content ($C_p T_p$) which 1248 1248 is conserved by the model: $C_p$ is set to a constant value, the TEOS10 value. 1249 \item[\np{ln \_seos}\forcode{=.true.}]1249 \item[\np{ln_seos}{ln\_seos}\forcode{=.true.}] 1250 1250 a simplified EOS (S-EOS) inspired by \citet{vallis_bk06} is chosen, 1251 1251 the coefficients of which has been optimized to fit the behavior of TEOS10 … … 1284 1284 coeff. & computer name & S-EOS & description \\ 1285 1285 \hline 1286 $a_0$ & \np{rn \_a0} & $1.6550~10^{-1}$ & linear thermal expansion coeff. \\1286 $a_0$ & \np{rn_a0}{rn\_a0} & $1.6550~10^{-1}$ & linear thermal expansion coeff. \\ 1287 1287 \hline 1288 $b_0$ & \np{rn \_b0} & $7.6554~10^{-1}$ & linear haline expansion coeff. \\1288 $b_0$ & \np{rn_b0}{rn\_b0} & $7.6554~10^{-1}$ & linear haline expansion coeff. \\ 1289 1289 \hline 1290 $\lambda_1$ & \np{rn \_lambda1}& $5.9520~10^{-2}$ & cabbeling coeff. in $T^2$ \\1290 $\lambda_1$ & \np{rn_lambda1}{rn\_lambda1}& $5.9520~10^{-2}$ & cabbeling coeff. in $T^2$ \\ 1291 1291 \hline 1292 $\lambda_2$ & \np{rn \_lambda2}& $5.4914~10^{-4}$ & cabbeling coeff. in $S^2$ \\1292 $\lambda_2$ & \np{rn_lambda2}{rn\_lambda2}& $5.4914~10^{-4}$ & cabbeling coeff. in $S^2$ \\ 1293 1293 \hline 1294 $\nu$ & \np{rn \_nu} & $2.4341~10^{-3}$ & cabbeling coeff. in $T \, S$ \\1294 $\nu$ & \np{rn_nu}{rn\_nu} & $2.4341~10^{-3}$ & cabbeling coeff. in $T \, S$ \\ 1295 1295 \hline 1296 $\mu_1$ & \np{rn \_mu1} & $1.4970~10^{-4}$ & thermobaric coeff. in T \\1296 $\mu_1$ & \np{rn_mu1}{rn\_mu1} & $1.4970~10^{-4}$ & thermobaric coeff. in T \\ 1297 1297 \hline 1298 $\mu_2$ & \np{rn \_mu2} & $1.1090~10^{-5}$ & thermobaric coeff. in S \\1298 $\mu_2$ & \np{rn_mu2}{rn\_mu2} & $1.1090~10^{-5}$ & thermobaric coeff. in S \\ 1299 1299 \hline 1300 1300 \end{tabular} … … 1367 1367 I've changed "derivative" to "difference" and "mean" to "average"} 1368 1368 1369 With partial cells (\np{ln \_zps}\forcode{=.true.}) at bottom and top (\np{ln\_isfcav}\forcode{=.true.}),1369 With partial cells (\np{ln_zps}{ln\_zps}\forcode{=.true.}) at bottom and top (\np{ln_isfcav}{ln\_isfcav}\forcode{=.true.}), 1370 1370 in general, tracers in horizontally adjacent cells live at different depths. 1371 1371 Horizontal gradients of tracers are needed for horizontal diffusion (\mdl{traldf} module) and 1372 1372 the hydrostatic pressure gradient calculations (\mdl{dynhpg} module). 1373 The partial cell properties at the top (\np{ln \_isfcav}\forcode{=.true.}) are computed in the same way as1373 The partial cell properties at the top (\np{ln_isfcav}{ln\_isfcav}\forcode{=.true.}) are computed in the same way as 1374 1374 for the bottom. 1375 1375 So, only the bottom interpolation is explained below. … … 1387 1387 the $z$-partial step coordinate]{ 1388 1388 Discretisation of the horizontal difference and average of tracers in 1389 the $z$-partial step coordinate (\protect\np{ln \_zps}\forcode{=.true.}) in1389 the $z$-partial step coordinate (\protect\np{ln_zps}{ln\_zps}\forcode{=.true.}) in 1390 1390 the case $(e3w_k^{i + 1} - e3w_k^i) > 0$. 1391 1391 A linear interpolation is used to estimate $\widetilde T_k^{i + 1}$, -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_ZDF.tex
r11571 r11577 28 28 At the surface they are prescribed from the surface forcing (see \autoref{chap:SBC}), 29 29 while at the bottom they are set to zero for heat and salt, 30 unless a geothermal flux forcing is prescribed as a bottom boundary condition (\ie\ \np{ln \_trabbc} defined,30 unless a geothermal flux forcing is prescribed as a bottom boundary condition (\ie\ \np{ln_trabbc}{ln\_trabbc} defined, 31 31 see \autoref{subsec:TRA_bbc}), and specified through a bottom friction parameterisation for momentum 32 32 (see \autoref{sec:ZDF_drg}). … … 42 42 are computed and added to the general trend in the \mdl{dynzdf} and \mdl{trazdf} modules, respectively. 43 43 %These trends can be computed using either a forward time stepping scheme 44 %(namelist parameter \np{ln \_zdfexp}\forcode{=.true.}) or a backward time stepping scheme45 %(\np{ln \_zdfexp}\forcode{=.false.}) depending on the magnitude of the mixing coefficients,44 %(namelist parameter \np{ln_zdfexp}{ln\_zdfexp}\forcode{=.true.}) or a backward time stepping scheme 45 %(\np{ln_zdfexp}{ln\_zdfexp}\forcode{=.false.}) depending on the magnitude of the mixing coefficients, 46 46 %and thus of the formulation used (see \autoref{chap:TD}). 47 47 … … 58 58 % Constant 59 59 % ------------------------------------------------------------------------------------------------------------- 60 \subsection[Constant (\forcode{ln_zdfcst})]{Constant (\protect\np{ln \_zdfcst})}60 \subsection[Constant (\forcode{ln_zdfcst})]{Constant (\protect\np{ln_zdfcst}{ln\_zdfcst})} 61 61 \label{subsec:ZDF_cst} 62 62 63 63 Options are defined through the \nam{zdf} namelist variables. 64 When \np{ln \_zdfcst} is defined, the momentum and tracer vertical eddy coefficients are set to64 When \np{ln_zdfcst}{ln\_zdfcst} is defined, the momentum and tracer vertical eddy coefficients are set to 65 65 constant values over the whole ocean. 66 66 This is the crudest way to define the vertical ocean physics. … … 72 72 \end{align*} 73 73 74 These values are set through the \np{rn \_avm0} and \np{rn\_avt0} namelist parameters.74 These values are set through the \np{rn_avm0}{rn\_avm0} and \np{rn_avt0}{rn\_avt0} namelist parameters. 75 75 In all cases, do not use values smaller that those associated with the molecular viscosity and diffusivity, 76 76 that is $\sim10^{-6}~m^2.s^{-1}$ for momentum, $\sim10^{-7}~m^2.s^{-1}$ for temperature and … … 80 80 % Richardson Number Dependent 81 81 % ------------------------------------------------------------------------------------------------------------- 82 \subsection[Richardson number dependent (\forcode{ln_zdfric})]{Richardson number dependent (\protect\np{ln \_zdfric})}82 \subsection[Richardson number dependent (\forcode{ln_zdfric})]{Richardson number dependent (\protect\np{ln_zdfric}{ln\_zdfric})} 83 83 \label{subsec:ZDF_ric} 84 84 … … 92 92 %-------------------------------------------------------------------------------------------------------------- 93 93 94 When \np{ln \_zdfric}\forcode{=.true.}, a local Richardson number dependent formulation for the vertical momentum and95 tracer eddy coefficients is set through the \nam{zdf \_ric} namelist variables.94 When \np{ln_zdfric}{ln\_zdfric}\forcode{=.true.}, a local Richardson number dependent formulation for the vertical momentum and 95 tracer eddy coefficients is set through the \nam{zdf_ric}{zdf\_ric} namelist variables. 96 96 The vertical mixing coefficients are diagnosed from the large scale variables computed by the model. 97 97 \textit{In situ} measurements have been used to link vertical turbulent activity to large scale ocean structures. … … 114 114 (see \autoref{subsec:ZDF_cst}), and $A_{ric}^{vT} = 10^{-4}~m^2.s^{-1}$ is the maximum value that 115 115 can be reached by the coefficient when $Ri\leq 0$, $a=5$ and $n=2$. 116 The last three values can be modified by setting the \np{rn \_avmri}, \np{rn\_alp} and117 \np{nn \_ric} namelist parameters, respectively.116 The last three values can be modified by setting the \np{rn_avmri}{rn\_avmri}, \np{rn_alp}{rn\_alp} and 117 \np{nn_ric}{nn\_ric} namelist parameters, respectively. 118 118 119 119 A simple mixing-layer model to transfer and dissipate the atmospheric forcings 120 (wind-stress and buoyancy fluxes) can be activated setting the \np{ln \_mldw}\forcode{=.true.} in the namelist.120 (wind-stress and buoyancy fluxes) can be activated setting the \np{ln_mldw}{ln\_mldw}\forcode{=.true.} in the namelist. 121 121 122 122 In this case, the local depth of turbulent wind-mixing or "Ekman depth" $h_{e}(x,y,t)$ is evaluated and … … 134 134 \] 135 135 is computed from the wind stress vector $|\tau|$ and the reference density $ \rho_o$. 136 The final $h_{e}$ is further constrained by the adjustable bounds \np{rn \_mldmin} and \np{rn\_mldmax}.136 The final $h_{e}$ is further constrained by the adjustable bounds \np{rn_mldmin}{rn\_mldmin} and \np{rn_mldmax}{rn\_mldmax}. 137 137 Once $h_{e}$ is computed, the vertical eddy coefficients within $h_{e}$ are set to 138 the empirical values \np{rn \_wtmix} and \np{rn\_wvmix} \citep{lermusiaux_JMS01}.138 the empirical values \np{rn_wtmix}{rn\_wtmix} and \np{rn_wvmix}{rn\_wvmix} \citep{lermusiaux_JMS01}. 139 139 140 140 % ------------------------------------------------------------------------------------------------------------- 141 141 % TKE Turbulent Closure Scheme 142 142 % ------------------------------------------------------------------------------------------------------------- 143 \subsection[TKE turbulent closure scheme (\forcode{ln_zdftke})]{TKE turbulent closure scheme (\protect\np{ln \_zdftke})}143 \subsection[TKE turbulent closure scheme (\forcode{ln_zdftke})]{TKE turbulent closure scheme (\protect\np{ln_zdftke}{ln\_zdftke})} 144 144 \label{subsec:ZDF_tke} 145 145 %--------------------------------------------namzdf_tke-------------------------------------------------- … … 184 184 The constants $C_k = 0.1$ and $C_\epsilon = \sqrt {2} /2$ $\approx 0.7$ are designed to deal with 185 185 vertical mixing at any depth \citep{gaspar.gregoris.ea_JGR90}. 186 They are set through namelist parameters \np{nn \_ediff} and \np{nn\_ediss}.186 They are set through namelist parameters \np{nn_ediff}{nn\_ediff} and \np{nn_ediss}{nn\_ediss}. 187 187 $P_{rt}$ can be set to unity or, following \citet{blanke.delecluse_JPO93}, be a function of the local Richardson number, $R_i$: 188 188 \begin{align*} … … 195 195 \end{cases} 196 196 \end{align*} 197 The choice of $P_{rt}$ is controlled by the \np{nn \_pdl} namelist variable.197 The choice of $P_{rt}$ is controlled by the \np{nn_pdl}{nn\_pdl} namelist variable. 198 198 199 199 At the sea surface, the value of $\bar{e}$ is prescribed from the wind stress field as 200 $\bar{e}_o = e_{bb} |\tau| / \rho_o$, with $e_{bb}$ the \np{rn \_ebb} namelist parameter.200 $\bar{e}_o = e_{bb} |\tau| / \rho_o$, with $e_{bb}$ the \np{rn_ebb}{rn\_ebb} namelist parameter. 201 201 The default value of $e_{bb}$ is 3.75. \citep{gaspar.gregoris.ea_JGR90}), however a much larger value can be used when 202 202 taking into account the surface wave breaking (see below Eq. \autoref{eq:ZDF_Esbc}). … … 204 204 The time integration of the $\bar{e}$ equation may formally lead to negative values because 205 205 the numerical scheme does not ensure its positivity. 206 To overcome this problem, a cut-off in the minimum value of $\bar{e}$ is used (\np{rn \_emin} namelist parameter).206 To overcome this problem, a cut-off in the minimum value of $\bar{e}$ is used (\np{rn_emin}{rn\_emin} namelist parameter). 207 207 Following \citet{gaspar.gregoris.ea_JGR90}, the cut-off value is set to $\sqrt{2}/2~10^{-6}~m^2.s^{-2}$. 208 208 This allows the subsequent formulations to match that of \citet{gargett_JMR84} for the diffusion in … … 210 210 In addition, a cut-off is applied on $K_m$ and $K_\rho$ to avoid numerical instabilities associated with 211 211 too weak vertical diffusion. 212 They must be specified at least larger than the molecular values, and are set through \np{rn \_avm0} and213 \np{rn \_avt0} (\nam{zdf} namelist, see \autoref{subsec:ZDF_cst}).212 They must be specified at least larger than the molecular values, and are set through \np{rn_avm0}{rn\_avm0} and 213 \np{rn_avt0}{rn\_avt0} (\nam{zdf} namelist, see \autoref{subsec:ZDF_cst}). 214 214 215 215 \subsubsection{Turbulent length scale} … … 217 217 For computational efficiency, the original formulation of the turbulent length scales proposed by 218 218 \citet{gaspar.gregoris.ea_JGR90} has been simplified. 219 Four formulations are proposed, the choice of which is controlled by the \np{nn \_mxl} namelist parameter.219 Four formulations are proposed, the choice of which is controlled by the \np{nn_mxl}{nn\_mxl} namelist parameter. 220 220 The first two are based on the following first order approximation \citep{blanke.delecluse_JPO93}: 221 221 \begin{equation} … … 225 225 which is valid in a stable stratified region with constant values of the Brunt-Vais\"{a}l\"{a} frequency. 226 226 The resulting length scale is bounded by the distance to the surface or to the bottom 227 (\np{nn \_mxl}\forcode{=0}) or by the local vertical scale factor (\np{nn\_mxl}\forcode{=1}).227 (\np{nn_mxl}{nn\_mxl}\forcode{=0}) or by the local vertical scale factor (\np{nn\_mxl}\forcode{=1}). 228 228 \citet{blanke.delecluse_JPO93} notice that this simplification has two major drawbacks: 229 229 it makes no sense for locally unstable stratification and the computation no longer uses all 230 230 the information contained in the vertical density profile. 231 To overcome these drawbacks, \citet{madec.delecluse.ea_NPM98} introduces the \np{nn \_mxl}\forcode{=2, 3} cases,231 To overcome these drawbacks, \citet{madec.delecluse.ea_NPM98} introduces the \np{nn_mxl}{nn\_mxl}\forcode{=2, 3} cases, 232 232 which add an extra assumption concerning the vertical gradient of the computed length scale. 233 233 So, the length scales are first evaluated as in \autoref{eq:ZDF_tke_mxl0_1} and then bounded such that: … … 267 267 where $l^{(k)}$ is computed using \autoref{eq:ZDF_tke_mxl0_1}, \ie\ $l^{(k)} = \sqrt {2 {\bar e}^{(k)} / {N^2}^{(k)} }$. 268 268 269 In the \np{nn \_mxl}\forcode{=2} case, the dissipation and mixing length scales take the same value:270 $ l_k= l_\epsilon = \min \left(\ l_{up} \;,\; l_{dwn}\ \right)$, while in the \np{nn \_mxl}\forcode{=3} case,269 In the \np{nn_mxl}{nn\_mxl}\forcode{=2} case, the dissipation and mixing length scales take the same value: 270 $ l_k= l_\epsilon = \min \left(\ l_{up} \;,\; l_{dwn}\ \right)$, while in the \np{nn_mxl}{nn\_mxl}\forcode{=3} case, 271 271 the dissipation and mixing turbulent length scales are give as in \citet{gaspar.gregoris.ea_JGR90}: 272 272 \[ … … 278 278 \] 279 279 280 At the ocean surface, a non zero length scale is set through the \np{rn \_mxl0} namelist parameter.280 At the ocean surface, a non zero length scale is set through the \np{rn_mxl0}{rn\_mxl0} namelist parameter. 281 281 Usually the surface scale is given by $l_o = \kappa \,z_o$ where $\kappa = 0.4$ is von Karman's constant and 282 282 $z_o$ the roughness parameter of the surface. 283 Assuming $z_o=0.1$~m \citep{craig.banner_JPO94} leads to a 0.04~m, the default value of \np{rn \_mxl0}.283 Assuming $z_o=0.1$~m \citep{craig.banner_JPO94} leads to a 0.04~m, the default value of \np{rn_mxl0}{rn\_mxl0}. 284 284 In the ocean interior a minimum length scale is set to recover the molecular viscosity when 285 285 $\bar{e}$ reach its minimum value ($1.10^{-6}= C_k\, l_{min} \,\sqrt{\bar{e}_{min}}$ ). … … 312 312 $\alpha_{CB} = 100$ the Craig and Banner's value. 313 313 As the surface boundary condition on TKE is prescribed through $\bar{e}_o = e_{bb} |\tau| / \rho_o$, 314 with $e_{bb}$ the \np{rn \_ebb} namelist parameter, setting \np{rn\_ebb}\forcode{ = 67.83} corresponds314 with $e_{bb}$ the \np{rn_ebb}{rn\_ebb} namelist parameter, setting \np{rn\_ebb}\forcode{ = 67.83} corresponds 315 315 to $\alpha_{CB} = 100$. 316 Further setting \np{ln \_mxl0}\forcode{ =.true.}, applies \autoref{eq:ZDF_Lsbc} as the surface boundary condition on the length scale,316 Further setting \np{ln_mxl0}{ln\_mxl0}\forcode{ =.true.}, applies \autoref{eq:ZDF_Lsbc} as the surface boundary condition on the length scale, 317 317 with $\beta$ hard coded to the Stacey's value. 318 Note that a minimal threshold of \np{rn \_emin0}$=10^{-4}~m^2.s^{-2}$ (namelist parameters) is applied on the318 Note that a minimal threshold of \np{rn_emin0}{rn\_emin0}$=10^{-4}~m^2.s^{-2}$ (namelist parameters) is applied on the 319 319 surface $\bar{e}$ value. 320 320 … … 334 334 The parameterization, tuned against large-eddy simulation, includes the whole effect of LC in 335 335 an extra source term of TKE, $P_{LC}$. 336 The presence of $P_{LC}$ in \autoref{eq:ZDF_tke_e}, the TKE equation, is controlled by setting \np{ln \_lc} to337 \forcode{.true.} in the \nam{zdf \_tke} namelist.336 The presence of $P_{LC}$ in \autoref{eq:ZDF_tke_e}, the TKE equation, is controlled by setting \np{ln_lc}{ln\_lc} to 337 \forcode{.true.} in the \nam{zdf_tke}{zdf\_tke} namelist. 338 338 339 339 By making an analogy with the characteristic convective velocity scale (\eg, \citet{dalessio.abdella.ea_JPO98}), … … 363 363 where $c_{LC} = 0.15$ has been chosen by \citep{axell_JGR02} as a good compromise to fit LES data. 364 364 The chosen value yields maximum vertical velocities $w_{LC}$ of the order of a few centimeters per second. 365 The value of $c_{LC}$ is set through the \np{rn \_lc} namelist parameter,365 The value of $c_{LC}$ is set through the \np{rn_lc}{rn\_lc} namelist parameter, 366 366 having in mind that it should stay between 0.15 and 0.54 \citep{axell_JGR02}. 367 367 … … 385 385 (\ie\ near-inertial oscillations and ocean swells and waves). 386 386 387 When using this parameterization (\ie\ when \np{nn \_etau}\forcode{=1}),387 When using this parameterization (\ie\ when \np{nn_etau}{nn\_etau}\forcode{=1}), 388 388 the TKE input to the ocean ($S$) imposed by the winds in the form of near-inertial oscillations, 389 389 swell and waves is parameterized by \autoref{eq:ZDF_Esbc} the standard TKE surface boundary condition, … … 397 397 the penetration, and $f_i$ is the ice concentration 398 398 (no penetration if $f_i=1$, \ie\ if the ocean is entirely covered by sea-ice). 399 The value of $f_r$, usually a few percents, is specified through \np{rn \_efr} namelist parameter.400 The vertical mixing length scale, $h_\tau$, can be set as a 10~m uniform value (\np{nn \_etau}\forcode{=0}) or399 The value of $f_r$, usually a few percents, is specified through \np{rn_efr}{rn\_efr} namelist parameter. 400 The vertical mixing length scale, $h_\tau$, can be set as a 10~m uniform value (\np{nn_etau}{nn\_etau}\forcode{=0}) or 401 401 a latitude dependent value (varying from 0.5~m at the Equator to a maximum value of 30~m at high latitudes 402 (\np{nn \_etau}\forcode{=1}).403 404 Note that two other option exist, \np{nn \_etau}\forcode{=2, 3}.402 (\np{nn_etau}{nn\_etau}\forcode{=1}). 403 404 Note that two other option exist, \np{nn_etau}{nn\_etau}\forcode{=2, 3}. 405 405 They correspond to applying \autoref{eq:ZDF_Ehtau} only at the base of the mixed layer, 406 406 or to using the high frequency part of the stress to evaluate the fraction of TKE that penetrates the ocean. … … 409 409 410 410 % This should be explain better below what this rn_eice parameter is meant for: 411 In presence of Sea Ice, the value of this mixing can be modulated by the \np{rn \_eice} namelist parameter.411 In presence of Sea Ice, the value of this mixing can be modulated by the \np{rn_eice}{rn\_eice} namelist parameter. 412 412 This parameter varies from \forcode{0} for no effect to \forcode{4} to suppress the TKE input into the ocean when Sea Ice concentration 413 413 is greater than 25\%. … … 424 424 % GLS Generic Length Scale Scheme 425 425 % ------------------------------------------------------------------------------------------------------------- 426 \subsection[GLS: Generic Length Scale (\forcode{ln_zdfgls})]{GLS: Generic Length Scale (\protect\np{ln \_zdfgls})}426 \subsection[GLS: Generic Length Scale (\forcode{ln_zdfgls})]{GLS: Generic Length Scale (\protect\np{ln_zdfgls}{ln\_zdfgls})} 427 427 \label{subsec:ZDF_gls} 428 428 … … 483 483 the choice of the turbulence model. 484 484 Four different turbulent models are pre-defined (\autoref{tab:ZDF_GLS}). 485 They are made available through the \np{nn \_clo} namelist parameter.485 They are made available through the \np{nn_clo}{nn\_clo} namelist parameter. 486 486 487 487 %--------------------------------------------------TABLE-------------------------------------------------- … … 494 494 \hline 495 495 \hline 496 \np{nn \_clo} & \textbf{0} & \textbf{1} & \textbf{2} & \textbf{3} \\496 \np{nn_clo}{nn\_clo} & \textbf{0} & \textbf{1} & \textbf{2} & \textbf{3} \\ 497 497 \hline 498 498 $( p , n , m )$ & ( 0 , 1 , 1 ) & ( 3 , 1.5 , -1 ) & ( -1 , 0.5 , -1 ) & ( 2 , 1 , -0.67 ) \\ … … 508 508 \caption[Set of predefined GLS parameters or equivalently predefined turbulence models available]{ 509 509 Set of predefined GLS parameters, or equivalently predefined turbulence models available with 510 \protect\np{ln \_zdfgls}\forcode{=.true.} and controlled by511 the \protect\np{nn \_clos} namelist variable in \protect\nam{zdf\_gls}.}510 \protect\np{ln_zdfgls}{ln\_zdfgls}\forcode{=.true.} and controlled by 511 the \protect\np{nn_clos}{nn\_clos} namelist variable in \protect\nam{zdf_gls}{zdf\_gls}.} 512 512 \label{tab:ZDF_GLS} 513 513 \end{table} … … 519 519 $C_{\mu}$ and $C_{\mu'}$ are calculated from stability function proposed by \citet{galperin.kantha.ea_JAS88}, 520 520 or by \citet{kantha.clayson_JGR94} or one of the two functions suggested by \citet{canuto.howard.ea_JPO01} 521 (\np{nn \_stab\_func}\forcode{=0, 3}, resp.).521 (\np{nn_stab_func}{nn\_stab\_func}\forcode{=0, 3}, resp.). 522 522 The value of $C_{0\mu}$ depends on the choice of the stability function. 523 523 524 524 The surface and bottom boundary condition on both $\bar{e}$ and $\psi$ can be calculated thanks to Dirichlet or 525 Neumann condition through \np{nn \_bc\_surf} and \np{nn\_bc\_bot}, resp.525 Neumann condition through \np{nn_bc_surf}{nn\_bc\_surf} and \np{nn_bc_bot}{nn\_bc\_bot}, resp. 526 526 As for TKE closure, the wave effect on the mixing is considered when 527 \np{rn \_crban}\forcode{ > 0.} \citep{craig.banner_JPO94, mellor.blumberg_JPO04}.528 The \np{rn \_crban} namelist parameter is $\alpha_{CB}$ in \autoref{eq:ZDF_Esbc} and529 \np{rn \_charn} provides the value of $\beta$ in \autoref{eq:ZDF_Lsbc}.527 \np{rn_crban}{rn\_crban}\forcode{ > 0.} \citep{craig.banner_JPO94, mellor.blumberg_JPO04}. 528 The \np{rn_crban}{rn\_crban} namelist parameter is $\alpha_{CB}$ in \autoref{eq:ZDF_Esbc} and 529 \np{rn_charn}{rn\_charn} provides the value of $\beta$ in \autoref{eq:ZDF_Lsbc}. 530 530 531 531 The $\psi$ equation is known to fail in stably stratified flows, and for this reason … … 536 536 the entrainment depth predicted in stably stratified situations, 537 537 and that its value has to be chosen in accordance with the algebraic model for the turbulent fluxes. 538 The clipping is only activated if \np{ln \_length\_lim}\forcode{=.true.},539 and the $c_{lim}$ is set to the \np{rn \_clim\_galp} value.538 The clipping is only activated if \np{ln_length_lim}{ln\_length\_lim}\forcode{=.true.}, 539 and the $c_{lim}$ is set to the \np{rn_clim_galp}{rn\_clim\_galp} value. 540 540 541 541 The time and space discretization of the GLS equations follows the same energetic consideration as for … … 548 548 % OSM OSMOSIS BL Scheme 549 549 % ------------------------------------------------------------------------------------------------------------- 550 \subsection[OSM: OSMosis boundary layer scheme (\forcode{ln_zdfosm})]{OSM: OSMosis boundary layer scheme (\protect\np{ln \_zdfosm})}550 \subsection[OSM: OSMosis boundary layer scheme (\forcode{ln_zdfosm})]{OSM: OSMosis boundary layer scheme (\protect\np{ln_zdfosm}{ln\_zdfosm})} 551 551 \label{subsec:ZDF_osm} 552 552 %--------------------------------------------namzdf_osm--------------------------------------------------------- … … 682 682 % Non-Penetrative Convective Adjustment 683 683 % ------------------------------------------------------------------------------------------------------------- 684 \subsection[Non-penetrative convective adjustment (\forcode{ln_tranpc})]{Non-penetrative convective adjustment (\protect\np{ln \_tranpc})}684 \subsection[Non-penetrative convective adjustment (\forcode{ln_tranpc})]{Non-penetrative convective adjustment (\protect\np{ln_tranpc}{ln\_tranpc})} 685 685 \label{subsec:ZDF_npc} 686 686 … … 707 707 708 708 Options are defined through the \nam{zdf} namelist variables. 709 The non-penetrative convective adjustment is used when \np{ln \_zdfnpc}\forcode{=.true.}.710 It is applied at each \np{nn \_npc} time step and mixes downwards instantaneously the statically unstable portion of709 The non-penetrative convective adjustment is used when \np{ln_zdfnpc}{ln\_zdfnpc}\forcode{=.true.}. 710 It is applied at each \np{nn_npc}{nn\_npc} time step and mixes downwards instantaneously the statically unstable portion of 711 711 the water column, but only until the density structure becomes neutrally stable 712 712 (\ie\ until the mixed portion of the water column has \textit{exactly} the density of the water just below) … … 747 747 % Enhanced Vertical Diffusion 748 748 % ------------------------------------------------------------------------------------------------------------- 749 \subsection[Enhanced vertical diffusion (\forcode{ln_zdfevd})]{Enhanced vertical diffusion (\protect\np{ln \_zdfevd})}749 \subsection[Enhanced vertical diffusion (\forcode{ln_zdfevd})]{Enhanced vertical diffusion (\protect\np{ln_zdfevd}{ln\_zdfevd})} 750 750 \label{subsec:ZDF_evd} 751 751 752 752 Options are defined through the \nam{zdf} namelist variables. 753 The enhanced vertical diffusion parameterisation is used when \np{ln \_zdfevd}\forcode{=.true.}.753 The enhanced vertical diffusion parameterisation is used when \np{ln_zdfevd}{ln\_zdfevd}\forcode{=.true.}. 754 754 In this case, the vertical eddy mixing coefficients are assigned very large values 755 755 in regions where the stratification is unstable 756 756 (\ie\ when $N^2$ the Brunt-Vais\"{a}l\"{a} frequency is negative) \citep{lazar_phd97, lazar.madec.ea_JPO99}. 757 This is done either on tracers only (\np{nn \_evdm}\forcode{=0}) or758 on both momentum and tracers (\np{nn \_evdm}\forcode{=1}).759 760 In practice, where $N^2\leq 10^{-12}$, $A_T^{vT}$ and $A_T^{vS}$, and if \np{nn \_evdm}\forcode{=1},757 This is done either on tracers only (\np{nn_evdm}{nn\_evdm}\forcode{=0}) or 758 on both momentum and tracers (\np{nn_evdm}{nn\_evdm}\forcode{=1}). 759 760 In practice, where $N^2\leq 10^{-12}$, $A_T^{vT}$ and $A_T^{vS}$, and if \np{nn_evdm}{nn\_evdm}\forcode{=1}, 761 761 the four neighbouring $A_u^{vm} \;\mbox{and}\;A_v^{vm}$ values also, are set equal to 762 the namelist parameter \np{rn \_avevd}.762 the namelist parameter \np{rn_avevd}{rn\_avevd}. 763 763 A typical value for $rn\_avevd$ is between 1 and $100~m^2.s^{-1}$. 764 764 This parameterisation of convective processes is less time consuming than … … 778 778 779 779 The turbulent closure schemes presented in \autoref{subsec:ZDF_tke}, \autoref{subsec:ZDF_gls} and 780 \autoref{subsec:ZDF_osm} (\ie\ \np{ln \_zdftke} or \np{ln\_zdfgls} or \np{ln\_zdfosm} defined) deal, in theory,780 \autoref{subsec:ZDF_osm} (\ie\ \np{ln_zdftke}{ln\_zdftke} or \np{ln_zdfgls}{ln\_zdfgls} or \np{ln_zdfosm}{ln\_zdfosm} defined) deal, in theory, 781 781 with statically unstable density profiles. 782 782 In such a case, the term corresponding to the destruction of turbulent kinetic energy through stratification in … … 790 790 because the mixing length scale is bounded by the distance to the sea surface. 791 791 It can thus be useful to combine the enhanced vertical diffusion with the turbulent closure scheme, 792 \ie\ setting the \np{ln \_zdfnpc} namelist parameter to true and793 defining the turbulent closure (\np{ln \_zdftke} or \np{ln\_zdfgls} = \forcode{.true.}) all together.792 \ie\ setting the \np{ln_zdfnpc}{ln\_zdfnpc} namelist parameter to true and 793 defining the turbulent closure (\np{ln_zdftke}{ln\_zdftke} or \np{ln_zdfgls}{ln\_zdfgls} = \forcode{.true.}) all together. 794 794 795 795 The OSMOSIS turbulent closure scheme already includes enhanced vertical diffusion in the case of convection, 796 796 %as governed by the variables $bvsqcon$ and $difcon$ found in \mdl{zdfkpp}, 797 therefore \np{ln \_zdfevd}\forcode{=.false.} should be used with the OSMOSIS scheme.797 therefore \np{ln_zdfevd}{ln\_zdfevd}\forcode{=.false.} should be used with the OSMOSIS scheme. 798 798 % gm% + one word on non local flux with KPP scheme trakpp.F90 module... 799 799 … … 801 801 % Double Diffusion Mixing 802 802 % ================================================================ 803 \section[Double diffusion mixing (\forcode{ln_zdfddm})]{Double diffusion mixing (\protect\np{ln \_zdfddm})}803 \section[Double diffusion mixing (\forcode{ln_zdfddm})]{Double diffusion mixing (\protect\np{ln_zdfddm}{ln\_zdfddm})} 804 804 \label{subsec:ZDF_ddm} 805 805 … … 811 811 812 812 This parameterisation has been introduced in \mdl{zdfddm} module and is controlled by the namelist parameter 813 \np{ln \_zdfddm} in \nam{zdf}.813 \np{ln_zdfddm}{ln\_zdfddm} in \nam{zdf}. 814 814 Double diffusion occurs when relatively warm, salty water overlies cooler, fresher water, or vice versa. 815 815 The former condition leads to salt fingering and the latter to diffusive convection. … … 976 976 % Linear Bottom Friction 977 977 % ------------------------------------------------------------------------------------------------------------- 978 \subsection[Linear top/bottom friction (\forcode{ln_lin})]{Linear top/bottom friction (\protect\np{ln \_lin})}978 \subsection[Linear top/bottom friction (\forcode{ln_lin})]{Linear top/bottom friction (\protect\np{ln_lin}{ln\_lin})} 979 979 \label{subsec:ZDF_drg_linear} 980 980 … … 995 995 and assuming an ocean depth $H = 4000$~m, the resulting friction coefficient is $r = 4\;10^{-4}$~m\;s$^{-1}$. 996 996 This is the default value used in \NEMO. It corresponds to a decay time scale of 115~days. 997 It can be changed by specifying \np{rn \_Uc0} (namelist parameter).997 It can be changed by specifying \np{rn_Uc0}{rn\_Uc0} (namelist parameter). 998 998 999 999 For the linear friction case the drag coefficient used in the general expression \autoref{eq:ZDF_bfr_bdef} is: … … 1002 1002 c_b^T = - r 1003 1003 \] 1004 When \np{ln \_lin} \forcode{= .true.}, the value of $r$ used is \np{rn\_Uc0}*\np{rn\_Cd0}.1005 Setting \np{ln \_OFF} \forcode{= .true.} (and \forcode{ln_lin=.true.}) is equivalent to setting $r=0$ and leads to a free-slip boundary condition.1004 When \np{ln_lin}{ln\_lin} \forcode{= .true.}, the value of $r$ used is \np{rn_Uc0}{rn\_Uc0}*\np{rn_Cd0}{rn\_Cd0}. 1005 Setting \np{ln_OFF}{ln\_OFF} \forcode{= .true.} (and \forcode{ln_lin=.true.}) is equivalent to setting $r=0$ and leads to a free-slip boundary condition. 1006 1006 1007 1007 These values are assigned in \mdl{zdfdrg}. 1008 1008 Note that there is support for local enhancement of these values via an externally defined 2D mask array 1009 (\np{ln \_boost}\forcode{=.true.}) given in the \ifile{bfr\_coef} input NetCDF file.1009 (\np{ln_boost}{ln\_boost}\forcode{=.true.}) given in the \ifile{bfr\_coef} input NetCDF file. 1010 1010 The mask values should vary from 0 to 1. 1011 1011 Locations with a non-zero mask value will have the friction coefficient increased by 1012 $mask\_value$ * \np{rn \_boost} * \np{rn\_Cd0}.1012 $mask\_value$ * \np{rn_boost}{rn\_boost} * \np{rn_Cd0}{rn\_Cd0}. 1013 1013 1014 1014 % ------------------------------------------------------------------------------------------------------------- 1015 1015 % Non-Linear Bottom Friction 1016 1016 % ------------------------------------------------------------------------------------------------------------- 1017 \subsection[Non-linear top/bottom friction (\forcode{ln_non_lin})]{Non-linear top/bottom friction (\protect\np{ln \_non\_lin})}1017 \subsection[Non-linear top/bottom friction (\forcode{ln_non_lin})]{Non-linear top/bottom friction (\protect\np{ln_non_lin}{ln\_non\_lin})} 1018 1018 \label{subsec:ZDF_drg_nonlinear} 1019 1019 … … 1030 1030 $e_b = 2.5\;10^{-3}$m$^2$\;s$^{-2}$, while the FRAM experiment \citep{killworth_JPO92} uses $C_D = 1.4\;10^{-3}$ and 1031 1031 $e_b =2.5\;\;10^{-3}$m$^2$\;s$^{-2}$. 1032 The CME choices have been set as default values (\np{rn \_Cd0} and \np{rn\_ke0} namelist parameters).1032 The CME choices have been set as default values (\np{rn_Cd0}{rn\_Cd0} and \np{rn_ke0}{rn\_ke0} namelist parameters). 1033 1033 1034 1034 As for the linear case, the friction is imposed in the code by adding the trend due to … … 1041 1041 1042 1042 The coefficients that control the strength of the non-linear friction are initialised as namelist parameters: 1043 $C_D$= \np{rn \_Cd0}, and $e_b$ =\np{rn\_bfeb2}.1044 Note that for applications which consider tides explicitly, a low or even zero value of \np{rn \_bfeb2} is recommended. A local enhancement of $C_D$ is again possible via an externally defined 2D mask array1045 (\np{ln \_boost}\forcode{=.true.}).1043 $C_D$= \np{rn_Cd0}{rn\_Cd0}, and $e_b$ =\np{rn_bfeb2}{rn\_bfeb2}. 1044 Note that for applications which consider tides explicitly, a low or even zero value of \np{rn_bfeb2}{rn\_bfeb2} is recommended. A local enhancement of $C_D$ is again possible via an externally defined 2D mask array 1045 (\np{ln_boost}{ln\_boost}\forcode{=.true.}). 1046 1046 This works in the same way as for the linear friction case with non-zero masked locations increased by 1047 $mask\_value$ * \np{rn \_boost} * \np{rn\_Cd0}.1047 $mask\_value$ * \np{rn_boost}{rn\_boost} * \np{rn_Cd0}{rn\_Cd0}. 1048 1048 1049 1049 % ------------------------------------------------------------------------------------------------------------- 1050 1050 % Bottom Friction Log-layer 1051 1051 % ------------------------------------------------------------------------------------------------------------- 1052 \subsection[Log-layer top/bottom friction (\forcode{ln_loglayer})]{Log-layer top/bottom friction (\protect\np{ln \_loglayer})}1052 \subsection[Log-layer top/bottom friction (\forcode{ln_loglayer})]{Log-layer top/bottom friction (\protect\np{ln_loglayer}{ln\_loglayer})} 1053 1053 \label{subsec:ZDF_drg_loglayer} 1054 1054 1055 1055 In the non-linear friction case, the drag coefficient, $C_D$, can be optionally enhanced using 1056 1056 a "law of the wall" scaling. This assumes that the model vertical resolution can capture the logarithmic layer which typically occur for layers thinner than 1 m or so. 1057 If \np{ln \_loglayer} \forcode{= .true.}, $C_D$ is no longer constant but is related to the distance to the wall (or equivalently to the half of the top/bottom layer thickness):1057 If \np{ln_loglayer}{ln\_loglayer} \forcode{= .true.}, $C_D$ is no longer constant but is related to the distance to the wall (or equivalently to the half of the top/bottom layer thickness): 1058 1058 \[ 1059 1059 C_D = \left ( {\kappa \over {\mathrm log}\left ( 0.5 \; e_{3b} / rn\_{z0} \right ) } \right )^2 1060 1060 \] 1061 1061 1062 \noindent where $\kappa$ is the von-Karman constant and \np{rn \_z0} is a roughness length provided via the namelist.1062 \noindent where $\kappa$ is the von-Karman constant and \np{rn_z0}{rn\_z0} is a roughness length provided via the namelist. 1063 1063 1064 1064 The drag coefficient is bounded such that it is kept greater or equal to 1065 the base \np{rn \_Cd0} value which occurs where layer thicknesses become large and presumably logarithmic layers are not resolved at all. For stability reason, it is also not allowed to exceed the value of an additional namelist parameter:1066 \np{rn \_Cdmax}, \ie1065 the base \np{rn_Cd0}{rn\_Cd0} value which occurs where layer thicknesses become large and presumably logarithmic layers are not resolved at all. For stability reason, it is also not allowed to exceed the value of an additional namelist parameter: 1066 \np{rn_Cdmax}{rn\_Cdmax}, \ie 1067 1067 \[ 1068 1068 rn\_Cd0 \leq C_D \leq rn\_Cdmax … … 1070 1070 1071 1071 \noindent The log-layer enhancement can also be applied to the top boundary friction if 1072 under ice-shelf cavities are activated (\np{ln \_isfcav}\forcode{=.true.}).1073 %In this case, the relevant namelist parameters are \np{rn \_tfrz0}, \np{rn\_tfri2} and \np{rn\_tfri2\_max}.1072 under ice-shelf cavities are activated (\np{ln_isfcav}{ln\_isfcav}\forcode{=.true.}). 1073 %In this case, the relevant namelist parameters are \np{rn_tfrz0}{rn\_tfrz0}, \np{rn_tfri2}{rn\_tfri2} and \np{rn_tfri2_max}{rn\_tfri2\_max}. 1074 1074 1075 1075 % ------------------------------------------------------------------------------------------------------------- 1076 1076 % Explicit bottom Friction 1077 1077 % ------------------------------------------------------------------------------------------------------------- 1078 \subsection[Explicit top/bottom friction (\forcode{ln_drgimp=.false.})]{Explicit top/bottom friction (\protect\np{ln \_drgimp}\forcode{=.false.})}1078 \subsection[Explicit top/bottom friction (\forcode{ln_drgimp=.false.})]{Explicit top/bottom friction (\protect\np{ln_drgimp}{ln\_drgimp}\forcode{=.false.})} 1079 1079 \label{subsec:ZDF_drg_stability} 1080 1080 1081 Setting \np{ln \_drgimp} \forcode{= .false.} means that bottom friction is treated explicitly in time, which has the advantage of simplifying the interaction with the split-explicit free surface (see \autoref{subsec:ZDF_drg_ts}). The latter does indeed require the knowledge of bottom stresses in the course of the barotropic sub-iteration, which becomes less straightforward in the implicit case. In the explicit case, top/bottom stresses can be computed using \textit{before} velocities and inserted in the overall momentum tendency budget. This reads:1081 Setting \np{ln_drgimp}{ln\_drgimp} \forcode{= .false.} means that bottom friction is treated explicitly in time, which has the advantage of simplifying the interaction with the split-explicit free surface (see \autoref{subsec:ZDF_drg_ts}). The latter does indeed require the knowledge of bottom stresses in the course of the barotropic sub-iteration, which becomes less straightforward in the implicit case. In the explicit case, top/bottom stresses can be computed using \textit{before} velocities and inserted in the overall momentum tendency budget. This reads: 1082 1082 1083 1083 At the top (below an ice shelf cavity): … … 1137 1137 % Implicit Bottom Friction 1138 1138 % ------------------------------------------------------------------------------------------------------------- 1139 \subsection[Implicit top/bottom friction (\forcode{ln_drgimp=.true.})]{Implicit top/bottom friction (\protect\np{ln \_drgimp}\forcode{=.true.})}1139 \subsection[Implicit top/bottom friction (\forcode{ln_drgimp=.true.})]{Implicit top/bottom friction (\protect\np{ln_drgimp}{ln\_drgimp}\forcode{=.true.})} 1140 1140 \label{subsec:ZDF_drg_imp} 1141 1141 1142 1142 An optional implicit form of bottom friction has been implemented to improve model stability. 1143 1143 We recommend this option for shelf sea and coastal ocean applications. %, especially for split-explicit time splitting. 1144 This option can be invoked by setting \np{ln \_drgimp} to \forcode{.true.} in the \nam{drg} namelist.1145 %This option requires \np{ln \_zdfexp} to be \forcode{.false.} in the \nam{zdf} namelist.1144 This option can be invoked by setting \np{ln_drgimp}{ln\_drgimp} to \forcode{.true.} in the \nam{drg} namelist. 1145 %This option requires \np{ln_zdfexp}{ln\_zdfexp} to be \forcode{.false.} in the \nam{zdf} namelist. 1146 1146 1147 1147 This implementation is performed in \mdl{dynzdf} where the following boundary conditions are set while solving the fully implicit diffusion step: … … 1170 1170 \label{subsec:ZDF_drg_ts} 1171 1171 1172 With split-explicit free surface, the sub-stepping of barotropic equations needs the knowledge of top/bottom stresses. An obvious way to satisfy this is to take them as constant over the course of the barotropic integration and equal to the value used to update the baroclinic momentum trend. Provided \np{ln \_drgimp}\forcode{= .false.} and a centred or \textit{leap-frog} like integration of barotropic equations is used (\ie\ \forcode{ln_bt_fw=.false.}, cf \autoref{subsec:DYN_spg_ts}), this does ensure that barotropic and baroclinic dynamics feel the same stresses during one leapfrog time step. However, if \np{ln\_drgimp}\forcode{= .true.}, stresses depend on the \textit{after} value of the velocities which themselves depend on the barotropic iteration result. This cyclic dependency makes difficult obtaining consistent stresses in 2d and 3d dynamics. Part of this mismatch is then removed when setting the final barotropic component of 3d velocities to the time splitting estimate. This last step can be seen as a necessary evil but should be minimized since it interferes with the adjustment to the boundary conditions.1172 With split-explicit free surface, the sub-stepping of barotropic equations needs the knowledge of top/bottom stresses. An obvious way to satisfy this is to take them as constant over the course of the barotropic integration and equal to the value used to update the baroclinic momentum trend. Provided \np{ln_drgimp}{ln\_drgimp}\forcode{= .false.} and a centred or \textit{leap-frog} like integration of barotropic equations is used (\ie\ \forcode{ln_bt_fw=.false.}, cf \autoref{subsec:DYN_spg_ts}), this does ensure that barotropic and baroclinic dynamics feel the same stresses during one leapfrog time step. However, if \np{ln\_drgimp}\forcode{= .true.}, stresses depend on the \textit{after} value of the velocities which themselves depend on the barotropic iteration result. This cyclic dependency makes difficult obtaining consistent stresses in 2d and 3d dynamics. Part of this mismatch is then removed when setting the final barotropic component of 3d velocities to the time splitting estimate. This last step can be seen as a necessary evil but should be minimized since it interferes with the adjustment to the boundary conditions. 1173 1173 1174 1174 The strategy to handle top/bottom stresses with split-explicit free surface in \NEMO\ is as follows: … … 1184 1184 % Internal wave-driven mixing 1185 1185 % ================================================================ 1186 \section[Internal wave-driven mixing (\forcode{ln_zdfiwm})]{Internal wave-driven mixing (\protect\np{ln \_zdfiwm})}1186 \section[Internal wave-driven mixing (\forcode{ln_zdfiwm})]{Internal wave-driven mixing (\protect\np{ln_zdfiwm}{ln\_zdfiwm})} 1187 1187 \label{subsec:ZDF_tmx_new} 1188 1188 … … 1206 1206 where $R_f$ is the mixing efficiency and $\epsilon$ is a specified three dimensional distribution of 1207 1207 the energy available for mixing. 1208 If the \np{ln \_mevar} namelist parameter is set to \forcode{.false.}, the mixing efficiency is taken as constant and1208 If the \np{ln_mevar}{ln\_mevar} namelist parameter is set to \forcode{.false.}, the mixing efficiency is taken as constant and 1209 1209 equal to 1/6 \citep{osborn_JPO80}. 1210 1210 In the opposite (recommended) case, $R_f$ is instead a function of … … 1216 1216 1217 1217 In addition to the mixing efficiency, the ratio of salt to heat diffusivities can chosen to vary 1218 as a function of $Re_b$ by setting the \np{ln \_tsdiff} parameter to \forcode{.true.}, a recommended choice.1218 as a function of $Re_b$ by setting the \np{ln_tsdiff}{ln\_tsdiff} parameter to \forcode{.true.}, a recommended choice. 1219 1219 This parameterization of differential mixing, due to \cite{jackson.rehmann_JPO14}, 1220 1220 is implemented as in \cite{de-lavergne.madec.ea_JPO16}. … … 1234 1234 h_{wkb} = H \, \frac{ \int_{-H}^{z} N \, dz' } { \int_{-H}^{\eta} N \, dz' } \; , 1235 1235 \] 1236 The $n_p$ parameter (given by \np{nn \_zpyc} in \nam{zdf\_iwm} namelist)1236 The $n_p$ parameter (given by \np{nn_zpyc}{nn\_zpyc} in \nam{zdf_iwm}{zdf\_iwm} namelist) 1237 1237 controls the stratification-dependence of the pycnocline-intensified dissipation. 1238 1238 It can take values of $1$ (recommended) or $2$. … … 1248 1248 % surface wave-induced mixing 1249 1249 % ================================================================ 1250 \section[Surface wave-induced mixing (\forcode{ln_zdfswm})]{Surface wave-induced mixing (\protect\np{ln \_zdfswm})}1250 \section[Surface wave-induced mixing (\forcode{ln_zdfswm})]{Surface wave-induced mixing (\protect\np{ln_zdfswm}{ln\_zdfswm})} 1251 1251 \label{subsec:ZDF_swm} 1252 1252 … … 1281 1281 % Adaptive-implicit vertical advection 1282 1282 % ================================================================ 1283 \section[Adaptive-implicit vertical advection (\forcode{ln_zad_Aimp})]{Adaptive-implicit vertical advection(\protect\np{ln \_zad\_Aimp})}1283 \section[Adaptive-implicit vertical advection (\forcode{ln_zad_Aimp})]{Adaptive-implicit vertical advection(\protect\np{ln_zad_Aimp}{ln\_zad\_Aimp})} 1284 1284 \label{subsec:ZDF_aimp} 1285 1285 -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_cfgs.tex
r11571 r11577 253 253 254 254 The GYRE configuration is set like an analytical configuration. 255 Through \np{ln \_read\_cfg}\forcode{ = .false.} in \nam{cfg} namelist defined in255 Through \np{ln_read_cfg}{ln\_read\_cfg}\forcode{ = .false.} in \nam{cfg} namelist defined in 256 256 the reference configuration \path{./cfgs/GYRE_PISCES/EXPREF/namelist_cfg} 257 257 analytical definition of grid in GYRE is done in usrdef\_hrg, usrdef\_zgr routines. 258 258 Its horizontal resolution (and thus the size of the domain) is determined by 259 setting \np{nn \_GYRE} in \nam{usr\_def}: \\260 261 \jp{jpiglo} $= 30 \times$ \np{nn \_GYRE} + 2 \\262 263 \jp{jpjglo} $= 20 \times$ \np{nn \_GYRE} + 2 \\259 setting \np{nn_GYRE}{nn\_GYRE} in \nam{usr_def}{usr\_def}: \\ 260 261 \jp{jpiglo} $= 30 \times$ \np{nn_GYRE}{nn\_GYRE} + 2 \\ 262 263 \jp{jpjglo} $= 20 \times$ \np{nn_GYRE}{nn\_GYRE} + 2 \\ 264 264 265 265 Obviously, the namelist parameters have to be adjusted to the chosen resolution, … … 271 271 For example, keeping a same model size on each processor while increasing the number of processor used is very easy, 272 272 even though the physical integrity of the solution can be compromised. 273 Benchmark is activate via \np{ln \_bench}\forcode{ = .true.} in \nam{usr\_def} in273 Benchmark is activate via \np{ln_bench}{ln\_bench}\forcode{ = .true.} in \nam{usr_def}{usr\_def} in 274 274 namelist \path{./cfgs/GYRE_PISCES/EXPREF/namelist_cfg}. 275 275 … … 299 299 In particular, the AMM uses $s$-coordinates in the vertical rather than $z$-coordinates and 300 300 is forced with tidal lateral boundary conditions using a Flather boundary condition from the BDY module. 301 Also specific to the AMM configuration is the use of the GLS turbulence scheme (\np{ln \_zdfgls} \forcode{= .true.}).301 Also specific to the AMM configuration is the use of the GLS turbulence scheme (\np{ln_zdfgls}{ln\_zdfgls} \forcode{= .true.}). 302 302 303 303 In addition to the tidal boundary condition the model may also take open boundary conditions from 304 304 a North Atlantic model. 305 Boundaries may be completely omitted by setting \np{ln \_bdy} to false.305 Boundaries may be completely omitted by setting \np{ln_bdy}{ln\_bdy} to false. 306 306 Sample surface fluxes, river forcing and a sample initial restart file are included to test a realistic model run. 307 307 The Baltic boundary is included within the river input file and is specified as a river source. -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_misc.tex
r11571 r11577 53 53 \begin{itemize} 54 54 55 \item Add \texttt{e1e2u} and \texttt{e1e2v} arrays to the \np{cn \_domcfg} file. These 2D55 \item Add \texttt{e1e2u} and \texttt{e1e2v} arrays to the \np{cn_domcfg}{cn\_domcfg} file. These 2D 56 56 arrays should contain the products of the unaltered values of: $\texttt{e1u}*\texttt{e2u}$ 57 57 and $\texttt{e1u}*\texttt{e2v}$ respectively. That is the original surface areas of $u$- 58 58 and $v$- cells respectively. These areas are usually defined by the corresponding product 59 59 within the \NEMO\ code but the presence of \texttt{e1e2u} and \texttt{e1e2v} in the 60 \np{cn \_domcfg} file will suppress this calculation and use the supplied fields instead.60 \np{cn_domcfg}{cn\_domcfg} file will suppress this calculation and use the supplied fields instead. 61 61 If the model domain is provided by user-supplied code in \mdl{usrdef\_hgr}, then this 62 62 routine should also return \texttt{e1e2u} and \texttt{e1e2v} and set the integer return … … 64 64 will suppress the calculation of the areas. 65 65 66 \item Change values of \texttt{e2u} or \texttt{e1v} (either in the \np{cn \_domcfg} file or66 \item Change values of \texttt{e2u} or \texttt{e1v} (either in the \np{cn_domcfg}{cn\_domcfg} file or 67 67 via code in \mdl{usrdef\_hgr}), whereever a Strait reduction is required. The choice of 68 68 whether to alter \texttt{e2u} or \texttt{e1v} depends. respectively, on whether the … … 198 198 maintain different sets of input fields for use with or without active ice cavities. This 199 199 subsetting operates for the j-direction only and works by optionally looking for and using 200 a global file attribute (named: \np{open \_ocean\_jstart}) to determine the starting j-row200 a global file attribute (named: \np{open_ocean_jstart}{open\_ocean\_jstart}) to determine the starting j-row 201 201 for input. The use of this option is best explained with an example: 202 202 \medskip … … 206 206 This file define a horizontal domain of 362x332. The first row with 207 207 open ocean wet points in the non-isf bathymetry for this set is row 42 (\fortran\ indexing) 208 then the formally correct setting for \np{open \_ocean\_jstart} is 41. Using this value as208 then the formally correct setting for \np{open_ocean_jstart}{open\_ocean\_jstart} is 41. Using this value as 209 209 the first row to be read will result in a 362x292 domain which is the same size as the 210 210 original ORCA1 domain. Thus the extended domain configuration file can be used with all … … 218 218 \end{cmds} 219 219 220 \item Add the logical switch \np{ln \_use\_jattr} to \nam{cfg} in the configuration221 namelist (if it is not already there) and set \ np{.true.}220 \item Add the logical switch \np{ln_use_jattr}{ln\_use\_jattr} to \nam{cfg} in the configuration 221 namelist (if it is not already there) and set \forcode{.true.} 222 222 \end{itemize} 223 223 224 224 \noindent Note that with this option, the j-size of the global domain is (extended 225 j-size minus \np{open \_ocean\_jstart} + 1 ) and this must match the \texttt{jpjglo} value225 j-size minus \np{open_ocean_jstart}{open\_ocean\_jstart} + 1 ) and this must match the \texttt{jpjglo} value 226 226 for the configuration. This means an alternative version of \ifile{eORCA1\_domcfg.nc} must 227 be created for when \np{ln \_use\_jattr} is active. The \texttt{ncap2} tool provides a227 be created for when \np{ln_use_jattr}{ln\_use\_jattr} is active. The \texttt{ncap2} tool provides a 228 228 convenient way of achieving this: 229 229 … … 237 237 \texttt{open\_ocean\_jstart} attribute to the file's global attributes. 238 238 In particular this is true for any field that is read by \NEMO\ using the following optional argument to 239 the appropriate call to \np{iom \_get}.239 the appropriate call to \np{iom_get}{iom\_get}. 240 240 241 241 \begin{forlines} … … 332 332 This alternative method should give identical results to the default \textsc{ALLGATHER} method and 333 333 is recommended for large values of \np{jpni}. 334 The new method is activated by setting \np{ln \_nnogather} to be true (\nam{mpp}).334 The new method is activated by setting \np{ln_nnogather}{ln\_nnogather} to be true (\nam{mpp}). 335 335 The reproducibility of results using the two methods should be confirmed for each new, 336 336 non-reference configuration. … … 364 364 \subsection{Control print} 365 365 366 The \np{ln \_ctl} switch was originally used as a debugging option in two modes:366 The \np{ln_ctl}{ln\_ctl} switch was originally used as a debugging option in two modes: 367 367 368 368 \begin{enumerate} 369 \item{\np{ln \_ctl}: compute and print the trends averaged over the interior domain in all TRA, DYN, LDF and369 \item{\np{ln_ctl}{ln\_ctl}: compute and print the trends averaged over the interior domain in all TRA, DYN, LDF and 370 370 ZDF modules. 371 371 This option is very helpful when diagnosing the origin of an undesired change in model results. } 372 372 373 \item{also \np{ln \_ctl} but using the nictl and njctl namelist parameters to check the source of differences between373 \item{also \np{ln_ctl}{ln\_ctl} but using the nictl and njctl namelist parameters to check the source of differences between 374 374 mono and multi processor runs.} 375 375 \end{enumerate} 376 376 377 377 However, in recent versions it has also been used to force all processors to assume the 378 reporting role. Thus when \np{ln \_ctl} is true all processors produce their own versions378 reporting role. Thus when \np{ln_ctl}{ln\_ctl} is true all processors produce their own versions 379 379 of files such as: ocean.output, layout.dat, etc. All such files, beyond the the normal 380 380 reporting processor (narea == 1), are named with a \_XXXX extension to their name, where … … 382 382 such as run.stat (and its netCDF counterpart: run.stat.nc) and tracer.stat contain global 383 383 information and are only ever produced by the reporting master (narea == 1). For version 384 4.0 a start has been made to return \np{ln \_ctl} to its original function by introducing384 4.0 a start has been made to return \np{ln_ctl}{ln\_ctl} to its original function by introducing 385 385 a new control structure which allows finer control over which files are produced. This 386 386 feature is still evolving but it does already allow the user to: select individually the -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_model_basics_zstar.tex
r11571 r11577 79 79 %\nlst{nam_dynspg} 80 80 %------------------------------------------------------------------------------------------------------------ 81 Options are defined through the \nam{ \_dynspg} namelist variables.81 Options are defined through the \nam{_dynspg}{\_dynspg} namelist variables. 82 82 The surface pressure gradient term is related to the representation of the free surface (\autoref{sec:MB_hor_pg}). 83 83 The main distinction is between the fixed volume case (linear free surface or rigid lid) and -
NEMO/trunk/doc/latex/NEMO/subfiles/chap_time_domain.tex
r11567 r11577 85 85 \end{equation} 86 86 where the subscript $F$ denotes filtered values and $\gamma$ is the Asselin coefficient. 87 $\gamma$ is initialized as \np{rn \_atfp} (namelist parameter).88 Its default value is \np{rn \_atfp}\forcode{ = 10.e-3} (see \autoref{sec:TD_mLF}),87 $\gamma$ is initialized as \np{rn_atfp}{rn\_atfp} (namelist parameter). 88 Its default value is \np{rn_atfp}{rn\_atfp}\forcode{ = 10.e-3} (see \autoref{sec:TD_mLF}), 89 89 causing only a weak dissipation of high frequency motions (\citep{farge-coulombier_phd87}). 90 90 The addition of a time filter degrades the accuracy of the calculation from second to first order. … … 172 172 173 173 The leapfrog environment supports a centred in time computation of the surface pressure, \ie\ evaluated 174 at \textit{now} time step. This refers to as the explicit free surface case in the code (\np{ln \_dynspg\_exp}\forcode{=.true.}).174 at \textit{now} time step. This refers to as the explicit free surface case in the code (\np{ln_dynspg_exp}{ln\_dynspg\_exp}\forcode{=.true.}). 175 175 This choice however imposes a strong constraint on the time step which should be small enough to resolve the propagation 176 176 of external gravity waves. As a matter of fact, one rather use in a realistic setup, a split-explicit free surface 177 (\np{ln \_dynspg\_ts}\forcode{=.true.}) in which barotropic and baroclinic dynamical equations are solved separately with ad-hoc177 (\np{ln_dynspg_ts}{ln\_dynspg\_ts}\forcode{=.true.}) in which barotropic and baroclinic dynamical equations are solved separately with ad-hoc 178 178 time steps. The use of the time-splitting (in combination with non-linear free surface) imposes some constraints on the design of 179 179 the overall flowchart, in particular to ensure exact tracer conservation (see \autoref{fig:TD_TimeStep_flowchart}). … … 297 297 When restarting, if the time step has been changed, or one of the prognostic variables at \textit{before} time step 298 298 is missing, an Euler time stepping scheme is imposed. A forward initial step can still be enforced by the user by setting 299 the namelist variable \np{nn \_euler}\forcode{=0}. Other options to control the time integration of the model299 the namelist variable \np{nn_euler}{nn\_euler}\forcode{=0}. Other options to control the time integration of the model 300 300 are defined through the \nam{run} namelist variables. 301 301 %%% -
NEMO/trunk/doc/latex/global/document.tex
r11572 r11577 11 11 12 12 %% Document layout 13 \documentclass[fontsize = 10pt, twoside, abstract , draft]{scrreprt}13 \documentclass[fontsize = 10pt, twoside, abstract]{scrreprt} 14 14 15 15 %% Load configurations -
NEMO/trunk/doc/latex/global/index.ist
r11572 r11577 1 1 headings_flag 1 2 heading_prefix " {\\medskip\\hfill\\large{"3 heading_suffix "} }\\hfill}\\smallskip\n"2 heading_prefix "\\medskip\\hfill\\textnormal{" 3 heading_suffix "}\\hfill\\smallskip\n" 4 4 5 5 delim_0 "\\dotfill~" -
NEMO/trunk/doc/latex/global/indexes.tex
r11572 r11577 1 1 2 2 \usepackage{imakeidx} 3 4 %% Naming customization 5 \renewcommand{\listingname}{namelist} 6 \renewcommand{\listlistingname}{List of Namelists} 3 7 4 8 %% Index entries (italic font for files, preformat for code) … … 8 12 \newcommand{\key}[1]{ \index[keys]{#1@\texttt{\textbf{key\_#1}}} \texttt{\textbf{key\_#1}}} 9 13 \newcommand{\mdl}[1]{ \index[modules]{#1@\textit{#1.F90}} \textit{#1.F90} } 10 \newcommand{\nam}[1]{ \index[blocks]{#1@\texttt{\&nam#1}} \forcode{&nam#1} } 11 \newcommand{\np}[1]{ \index[parameters]{#1@\texttt{#1}} \texttt{#1} } 12 \newcommand{\npnew}[2][]{\index[parameters]{#2@\texttt{#2}} \forcode{#2#1} } 14 \newcommand{\nam}[2]{ \index[blocks]{\texttt{\&nam#2}} \forcode{&nam#1} (\autoref{lst:nam#1}) } 15 \newcommand{\np}[3][]{\index[parameters]{\texttt{#3}} \forcode{#2#1} } 16 %\newcommand{\nam}[1]{ \index[blocks]{\texttt{\&nam#1}} \forcode{&nam#1} } 17 %\newcommand{\np}[1]{ \index[parameters]{\texttt{#1}} \forcode{#1} } 13 18 \newcommand{\rou}[1]{ \index[subroutines]{#1@\texttt{#1}} \texttt{#1} } 19 14 20 15 21 \indexsetup{toclevel=section, othercode=\small} -
NEMO/trunk/doc/latex/global/preamble.tex
r11572 r11577 23 23 \renewcommand{\equationautorefname}{equation} 24 24 \renewcommand{\figureautorefname}{figure} 25 %\renewcommand{\listingautorefname}{namelist}26 25 \renewcommand{\tableautorefname}{table}
Note: See TracChangeset
for help on using the changeset viewer.