Changeset 6040


Ignore:
Timestamp:
2015-12-14T09:23:38+01:00 (5 years ago)
Author:
gm
Message:

#1613: vvl by default : start to update the DOC for change in vvl, LDF and solvers

Location:
branches/2015/dev_r5836_NOC3_vvl_by_default/DOC
Files:
53 edited

Legend:

Unmodified
Added
Removed
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/NEMO_book.tex

    r5405 r6040  
    215215%\date{\today} 
    216216\date{ 
    217 November 2014  \\ 
    218 {\small  -- version 3.6 --} \\ 
     217November 2015  \\ 
     218{\small  -- draft of version 4.0 --} \\ 
    219219~  \\ 
    220220\textit{\small Note du P\^ole de mod\'{e}lisation de l'Institut Pierre-Simon Laplace No 27 }\\ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Biblio/Biblio.bib

    r5120 r6040  
    276276  author = {A. Beckmann and H. Goosse}, 
    277277  title = {A parameterization of ice shelf-ocean interaction for climate models}, 
    278   journal = OM 
    279   year = {2003} 
    280   volume = {5} 
     278  journal = OM, 
     279  year = {2003}, 
     280  volume = {5}, 
    281281  pages = {157--170} 
    282282} 
     
    11241124} 
    11251125 
     1126@ARTICLE{Graham_McDougall_JPO13, 
     1127  author = {F.S. Graham and T.J. McDougall}, 
     1128  title = {Quantifying the nonconservative production of conservative temperature, potential temperature, and entropy}, 
     1129  journal = JPO, 
     1130  year = {2013}, 
     1131  volume = {43}, 
     1132  pages = {838--862}, 
     1133  url ={http://dx.doi.org/10.1175/JPO-D-11-0188.1} 
     1134} 
     1135 
    11261136@ARTICLE{Greatbatch_JGR94, 
    11271137  author = {R. J. Greatbatch}, 
     
    14281438  publisher = {LA-CC-06-012, Los Alamos National Laboratory, N.M.}, 
    14291439  year = {2008} 
     1440} 
     1441 
     1442@TECHREPORT{TEOS10, 
     1443  author = {IOC and SCOR and IAPSO}, 
     1444  title = {The international thermodynamic equation of seawater - 2010: Calculation and use of thermodynamic properties}, 
     1445  institution = {Intergovernmental Oceanographic Commission}, 
     1446  publisher = {Manuals and Guides No. 56, UNESCO (English)}, 
     1447  year = {2010}, 
     1448  pages = {196pp}, 
     1449  url = {http://www.teos-10.org/pubs/TEOS-10_Manual.pdf} 
    14301450} 
    14311451 
     
    24882508} 
    24892509 
     2510@article{Roquet_OM2015, 
     2511author = "F. Roquet and G. Madec and T.J. McDougall and P.M. Barker", 
     2512title = "Accurate polynomial expressions for the density and specific volume of seawater using the TEOS-10 standard ", 
     2513journal = OM, 
     2514volume = "90", 
     2515pages = "29--43", 
     2516year = "2015", 
     2517issn = "1463-5003", 
     2518doi = "10.1016/j.ocemod.2015.04.002", 
     2519url = "http://dx.doi.org/10.1016/j.ocemod.2015.04.002" 
     2520} 
     2521 
     2522@article{Roquet_JPO2015, 
     2523author = "F. Roquet and G. Madec and L. Brodeau and J. Nycander", 
     2524title = "Defining a Simplified Yet Realistic Equation of State for Seawater", 
     2525journal = JPO, 
     2526volume = "45", 
     2527pages = "2564--2579", 
     2528year = "2015", 
     2529doi = "10.1175/JPO-D-15-0080.1", 
     2530url = "http://dx.doi.org/10.1175/JPO-D-15-0080.1" 
     2531} 
     2532 
    24902533@ARTICLE{Roullet_Madec_JGR00, 
    24912534  author = {G. Roullet and G. Madec}, 
     
    28422885  volume = {27}, 
    28432886  pages = {54--69} 
     2887} 
     2888 
     2889@book{Vallis06, 
     2890author = {Vallis, G. K.}, 
     2891title = {Atmospheric and Oceanic Fluid Dynamics}, 
     2892publisher = {Cambridge University Press}, 
     2893address = {Cambridge, U.K.}, 
     2894year = {2006}, 
     2895pages = {745}, 
    28442896} 
    28452897 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Chapters/Abstracts_Foreword.tex

    r3294 r6040  
    1313be a flexible tool for studying the ocean and its interactions with the others components of  
    1414the earth climate system over a wide range of space and time scales.  
    15 Prognostic variables are the three-dimensional velocity field, a linear  
    16 or non-linear sea surface height, the temperature and the salinity. In the horizontal direction,  
    17 the model uses a curvilinear orthogonal grid and in the vertical direction, a full or partial step  
    18 $z$-coordinate, or $s$-coordinate, or a mixture of the two. The distribution of variables is a  
    19 three-dimensional Arakawa C-type grid. Various physical choices are available to describe  
    20 ocean physics, including TKE, GLS and KPP vertical physics. Within NEMO, the ocean is  
    21 interfaced with a sea-ice model (LIM v2 and v3), passive tracer and biogeochemical models (TOP)  
    22 and, via the OASIS coupler, with several atmospheric general circulation models. It also  
    23 support two-way grid embedding via the AGRIF software. 
     15Prognostic variables are the three-dimensional velocity field, a non-linear sea surface height,  
     16the \textit{Conservative} Temperature and the \textit{Absolut} Salinity.  
     17In the horizontal direction, the model uses a curvilinear orthogonal grid and in the vertical direction,  
     18a full or partial step $z$-coordinate, or $s$-coordinate, or a mixture of the two.  
     19The distribution of variables is a three-dimensional Arakawa C-type grid.  
     20Various physical choices are available to describe ocean physics, including TKE, and GLS vertical physics.  
     21Within NEMO, the ocean is interfaced with a sea-ice model (LIM or CICE), passive tracer and  
     22biogeochemical models (TOP) and, via the OASIS coupler, with several atmospheric general circulation models.  
     23It also support two-way grid embedding via the AGRIF software. 
    2424 
    2525% ================================================================ 
     
    3131interactions avec les autres composantes du syst\`{e}me climatique terrestre.  
    3232Les variables pronostiques sont le champ tridimensionnel de vitesse, une hauteur de la mer  
    33 lin\'{e}aire ou non, la temperature et la salinit\'{e}.  
     33lin\'{e}aire, la Ttemperature Conservative et la Salinit\'{e} Absolue.  
    3434La distribution des variables se fait sur une grille C d'Arakawa tridimensionnelle utilisant une  
    3535coordonn\'{e}e verticale $z$ \`{a} niveaux entiers ou partiels, ou une coordonn\'{e}e s, ou encore  
    3636une combinaison des deux. Diff\'{e}rents choix sont propos\'{e}s pour d\'{e}crire la physique  
    37 oc\'{e}anique, incluant notamment des physiques verticales TKE, GLS et KPP. A travers l'infrastructure  
    38 NEMO, l'oc\'{e}an est interfac\'{e} avec des mod\`{e}les de glace de mer, de biog\'{e}ochimie  
    39 et de traceurs passifs, et, via le coupleur OASIS, \`{a} plusieurs mod\`{e}les de circulation  
    40 g\'{e}n\'{e}rale atmosph\'{e}rique. Il supporte \'{e}galement l'embo\^{i}tement interactif de  
    41 maillages via le logiciel AGRIF. 
     37oc\'{e}anique, incluant notamment des physiques verticales TKE et GLS. A travers l'infrastructure  
     38NEMO, l'oc\'{e}an est interfac\'{e} avec des mod\`{e}les de glace de mer (LIM ou CICE),  
     39de biog\'{e}ochimie marine et de traceurs passifs, et, via le coupleur OASIS, \`{a} plusieurs  
     40mod\`{e}les de circulation g\'{e}n\'{e}rale atmosph\'{e}rique.  
     41Il supporte \'{e}galement l'embo\^{i}tement interactif de maillages via le logiciel AGRIF. 
    4242}  
    4343 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Chapters/Annex_C.tex

    r3294 r6040  
    410410\end{aligned}   } \right. 
    411411\end{equation}  
    412 where the indices $i_p$ and $k_p$ take the following value:  
     412where the indices $i_p$ and $j_p$ take the following value:  
    413413$i_p = -1/2$ or $1/2$ and $j_p = -1/2$ or $1/2$, 
    414414and the vorticity triads, ${^i_j}\mathbb{Q}^{i_p}_{j_p}$, defined at $T$-point, are given by:  
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Chapters/Chap_DOM.tex

    r5120 r6040  
    11% ================================================================ 
    2 % Chapter 2 Space and Time Domain (DOM) 
     2% Chapter 2 ——— Space and Time Domain (DOM) 
    33% ================================================================ 
    44\chapter{Space Domain (DOM) } 
     
    364364For both grids here,  the same $w$-point depth has been chosen but in (a) the  
    365365$t$-points are set half way between $w$-points while in (b) they are defined from  
    366 an analytical function: $z(k)=5\,(i-1/2)^3 - 45\,(i-1/2)^2 + 140\,(i-1/2) - 150$.  
     366an analytical function: $z(k)=5\,(k-1/2)^3 - 45\,(k-1/2)^2 + 140\,(k-1/2) - 150$.  
    367367Note the resulting difference between the value of the grid-size $\Delta_k$ and  
    368368those of the scale factor $e_k$. } 
     
    475475(d) hybrid $s-z$ coordinate,  
    476476(e) hybrid $s-z$ coordinate with partial step, and  
    477 (f) same as (e) but with variable volume associated with the non-linear free surface.  
    478 Note that the variable volume option (\key{vvl}) can be used with any of the  
     477(f) same as (e) but in the non-linear free surface (\np{ln\_linssh}=false).  
     478Note that the non-linear free surface can be used with any of the  
    4794795 coordinates (a) to (e).} 
    480480\end{center}   \end{figure} 
    481481%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    482482 
    483 The choice of a vertical coordinate, even if it is made through a namelist parameter,  
     483The choice of a vertical coordinate, even if it is made through \ngn{namzgr} namelist parameters,  
    484484must be done once of all at the beginning of an experiment. It is not intended as an  
    485485option which can be enabled or disabled in the middle of an experiment. Three main  
     
    488488(\np{ln\_zps}~=~true), or generalized, $s$-coordinate (\np{ln\_sco}~=~true).  
    489489Hybridation of the three main coordinates are available: $s-z$ or $s-zps$ coordinate  
    490 (Fig.~\ref{Fig_z_zps_s_sps}d and \ref{Fig_z_zps_s_sps}e). When using the variable  
    491 volume option \key{vvl} ($i.e.$ non-linear free surface), the coordinate follow the  
    492 time-variation of the free surface so that the transformation is time dependent:  
    493 $z(i,j,k,t)$ (Fig.~\ref{Fig_z_zps_s_sps}f). This option can be used with full step  
    494 bathymetry or $s$-coordinate (hybrid and partial step coordinates have not  
    495 yet been tested in NEMO v2.3). If using $z$-coordinate with partial step bathymetry 
    496 (\np{ln\_zps}~=~true), ocean cavity beneath ice shelves can be open (\np{ln\_isfcav}~=~true). 
     490(Fig.~\ref{Fig_z_zps_s_sps}d and \ref{Fig_z_zps_s_sps}e). By default a non-linear free surface is used: 
     491the coordinate follow the time-variation of the free surface so that the transformation is time dependent:  
     492$z(i,j,k,t)$ (Fig.~\ref{Fig_z_zps_s_sps}f). When a linear free surface is assumed (\np{ln\_linssh}=true),  
     493the vertical coordinate are fixed in time, but the seawater can move up and down across the z=0 surface  
     494(in other words, the top of the ocean in not a rigid-lid).  
     495The last choice in terms of vertical coordinate concerns the presence (or not) in the model domain  
     496of ocean cavities beneath ice shelves. Setting \np{ln\_isfcav} to true allows to manage ocean cavities,  
     497otherwise they are filled in. 
    497498 
    498499Contrary to the horizontal grid, the vertical grid is computed in the code and no  
     
    519520%%% 
    520521 
    521 The arrays describing the grid point depths and vertical scale factors  
    522 are three dimensional arrays $(i,j,k)$ even in the case of $z$-coordinate with  
    523 full step bottom topography. In non-linear free surface (\key{vvl}), their knowledge 
    524 is required at \textit{before}, \textit{now} and \textit{after} time step, while they  
    525 do not vary in time in linear free surface case.  
    526 To improve the code readability while providing this flexibility, the vertical coordinate  
    527 and scale factors are defined as functions of  
    528 $(i,j,k)$ with "fs" as prefix (examples: \textit{fse3t\_b, fse3t\_n, fse3t\_a,}  
    529 for the  \textit{before}, \textit{now} and \textit{after} scale factors at $t$-point)  
    530 that can be either three different arrays when \key{vvl} is defined, or a single fixed arrays.  
    531 These functions are defined in the file \hf{domzgr\_substitute} of the DOM directory.  
    532 They are used throughout the code, and replaced by the corresponding arrays at  
    533 the time of pre-processing (CPP capability). 
     522Unless a linear free surface is used (\np{ln\_linssh}=false), the arrays describing  
     523the grid point depths and vertical scale factors are three set of three dimensional arrays $(i,j,k)$  
     524defined at \textit{before}, \textit{now} and \textit{after} time step. The time at which they are 
     525defined is indicated by a suffix:$\_b$, $\_n$, or $\_a$, respectively. They are updated at each model time step 
     526using a fixed reference coordinate system which computer names have a $\_0$ suffix.  
     527When the linear free surface option is used (\np{ln\_linssh}=true), \textit{before}, \textit{now}  
     528and \textit{after} arrays are simply set one for all to their reference counterpart.  
     529 
    534530 
    535531% ------------------------------------------------------------------------------------------------------------- 
     
    840836%        z*- or s*-coordinate 
    841837% ------------------------------------------------------------------------------------------------------------- 
    842 \subsection{$z^*$- or $s^*$-coordinate (add \key{vvl}) } 
    843 \label{DOM_zgr_vvl} 
     838\subsection{$z^*$- or $s^*$-coordinate (\np{ln\_linssh}=false) } 
     839\label{DOM_zgr_star} 
    844840 
    845841This option is described in the Report by Levier \textit{et al.} (2007), available on  
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Chapters/Chap_DYN.tex

    r5120 r6040  
    11% ================================================================ 
    2 % Chapter Ocean Dynamics (DYN) 
     2% Chapter ——— Ocean Dynamics (DYN) 
    33% ================================================================ 
    44\chapter{Ocean Dynamics (DYN)} 
    55\label{DYN} 
    66\minitoc 
    7  
    8 % add a figure for  dynvor ens, ene latices 
    97 
    108%\vspace{2.cm} 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Chapters/Chap_LDF.tex

    r4147 r6040  
    11 
    22% ================================================================ 
    3 % Chapter Lateral Ocean Physics (LDF) 
     3% Chapter ——— Lateral Ocean Physics (LDF) 
    44% ================================================================ 
    55\chapter{Lateral Ocean Physics (LDF)} 
     
    1515described in \S\ref{PE_zdf} and their discrete formulation in \S\ref{TRA_ldf}  
    1616and \S\ref{DYN_ldf}). In this section we further discuss each lateral physics option.  
    17 Choosing one lateral physics scheme means for the user defining, (1) the space  
    18 and time variations of the eddy coefficients ; (2) the direction along which the  
    19 lateral diffusive fluxes are evaluated (model level, geopotential or isopycnal  
    20 surfaces); and (3) the type of operator used (harmonic, or biharmonic operators,  
    21 and for tracers only, eddy induced advection on tracers). These three aspects  
    22 of the lateral diffusion are set through namelist parameters and CPP keys  
    23 (see the \textit{\ngn{nam\_traldf}} and \textit{\ngn{nam\_dynldf}} below). Note 
    24 that this chapter describes the default implementation of iso-neutral 
     17Choosing one lateral physics scheme means for the user defining,  
     18(1) the type of operator used (laplacian or bilaplacian operators, or no lateral mixing term) ;  
     19(2) the direction along which the lateral diffusive fluxes are evaluated (model level, geopotential or isopycnal surfaces) ; and  
     20(3) the space and time variations of the eddy coefficients.  
     21These three aspects of the lateral diffusion are set through namelist parameters  
     22(see the \textit{\ngn{nam\_traldf}} and \textit{\ngn{nam\_dynldf}} below).  
     23Note that this chapter describes the standard implementation of iso-neutral 
    2524tracer mixing, and Griffies's implementation, which is used if 
    2625\np{traldf\_grif}=true, is described in Appdx\ref{sec:triad} 
     
    3332 
    3433% ================================================================ 
     34% Direction of lateral Mixing 
     35% ================================================================ 
     36\section  [Direction of Lateral Mixing (\textit{ldfslp})] 
     37      {Direction of Lateral Mixing (\mdl{ldfslp})} 
     38\label{LDF_slp} 
     39 
     40%%% 
     41\gmcomment{  we should emphasize here that the implementation is a rather old one.  
     42Better work can be achieved by using \citet{Griffies_al_JPO98, Griffies_Bk04} iso-neutral scheme. } 
     43 
     44A direction for lateral mixing has to be defined when the desired operator does  
     45not act along the model levels. This occurs when $(a)$ horizontal mixing is  
     46required on tracer or momentum (\np{ln\_traldf\_hor} or \np{ln\_dynldf\_hor})  
     47in $s$- or mixed $s$-$z$- coordinates, and $(b)$ isoneutral mixing is required  
     48whatever the vertical coordinate is. This direction of mixing is defined by its  
     49slopes in the \textbf{i}- and \textbf{j}-directions at the face of the cell of the  
     50quantity to be diffused. For a tracer, this leads to the following four slopes :  
     51$r_{1u}$, $r_{1w}$, $r_{2v}$, $r_{2w}$ (see \eqref{Eq_tra_ldf_iso}), while  
     52for momentum the slopes are  $r_{1t}$, $r_{1uw}$, $r_{2f}$, $r_{2uw}$ for  
     53$u$ and  $r_{1f}$, $r_{1vw}$, $r_{2t}$, $r_{2vw}$ for $v$.  
     54 
     55%gm% add here afigure of the slope in i-direction 
     56 
     57\subsection{slopes for tracer geopotential mixing in the $s$-coordinate} 
     58 
     59In $s$-coordinates, geopotential mixing ($i.e.$ horizontal mixing) $r_1$ and  
     60$r_2$ are the slopes between the geopotential and computational surfaces.  
     61Their discrete formulation is found by locally solving \eqref{Eq_tra_ldf_iso}  
     62when the diffusive fluxes in the three directions are set to zero and $T$ is  
     63assumed to be horizontally uniform, $i.e.$ a linear function of $z_T$, the  
     64depth of a $T$-point.  
     65%gm { Steven : My version is obviously wrong since I'm left with an arbitrary constant which is the local vertical temperature gradient} 
     66 
     67\begin{equation} \label{Eq_ldfslp_geo} 
     68\begin{aligned} 
     69 r_{1u} &= \frac{e_{3u}}{ \left( e_{1u}\;\overline{\overline{e_{3w}}}^{\,i+1/2,\,k} \right)} 
     70           \;\delta_{i+1/2}[z_t]  
     71      &\approx \frac{1}{e_{1u}}\; \delta_{i+1/2}[z_t]  
     72\\ 
     73 r_{2v} &= \frac{e_{3v}}{\left( e_{2v}\;\overline{\overline{e_{3w}}}^{\,j+1/2,\,k} \right)}  
     74           \;\delta_{j+1/2} [z_t]  
     75      &\approx \frac{1}{e_{2v}}\; \delta_{j+1/2}[z_t]  
     76\\ 
     77 r_{1w} &= \frac{1}{e_{1w}}\;\overline{\overline{\delta_{i+1/2}[z_t]}}^{\,i,\,k+1/2} 
     78      &\approx \frac{1}{e_{1w}}\; \delta_{i+1/2}[z_{uw}]  
     79 \\ 
     80 r_{2w} &= \frac{1}{e_{2w}}\;\overline{\overline{\delta_{j+1/2}[z_t]}}^{\,j,\,k+1/2} 
     81      &\approx \frac{1}{e_{2w}}\; \delta_{j+1/2}[z_{vw}]  
     82 \\ 
     83\end{aligned} 
     84\end{equation} 
     85 
     86%gm%  caution I'm not sure the simplification was a good idea!  
     87 
     88These slopes are computed once in \rou{ldfslp\_init} when \np{ln\_sco}=True,  
     89and either \np{ln\_traldf\_hor}=True or \np{ln\_dynldf\_hor}=True.  
     90 
     91\subsection{Slopes for tracer iso-neutral mixing}\label{LDF_slp_iso} 
     92In iso-neutral mixing  $r_1$ and $r_2$ are the slopes between the iso-neutral  
     93and computational surfaces. Their formulation does not depend on the vertical  
     94coordinate used. Their discrete formulation is found using the fact that the  
     95diffusive fluxes of locally referenced potential density ($i.e.$ $in situ$ density)  
     96vanish. So, substituting $T$ by $\rho$ in \eqref{Eq_tra_ldf_iso} and setting the  
     97diffusive fluxes in the three directions to zero leads to the following definition for  
     98the neutral slopes: 
     99 
     100\begin{equation} \label{Eq_ldfslp_iso} 
     101\begin{split} 
     102 r_{1u} &= \frac{e_{3u}}{e_{1u}}\; \frac{\delta_{i+1/2}[\rho]} 
     103                        {\overline{\overline{\delta_{k+1/2}[\rho]}}^{\,i+1/2,\,k}} 
     104\\ 
     105 r_{2v} &= \frac{e_{3v}}{e_{2v}}\; \frac{\delta_{j+1/2}\left[\rho \right]} 
     106                        {\overline{\overline{\delta_{k+1/2}[\rho]}}^{\,j+1/2,\,k}} 
     107\\ 
     108 r_{1w} &= \frac{e_{3w}}{e_{1w}}\;  
     109         \frac{\overline{\overline{\delta_{i+1/2}[\rho]}}^{\,i,\,k+1/2}} 
     110             {\delta_{k+1/2}[\rho]} 
     111\\ 
     112 r_{2w} &= \frac{e_{3w}}{e_{2w}}\;  
     113         \frac{\overline{\overline{\delta_{j+1/2}[\rho]}}^{\,j,\,k+1/2}} 
     114             {\delta_{k+1/2}[\rho]} 
     115\\ 
     116\end{split} 
     117\end{equation} 
     118 
     119%gm% rewrite this as the explanation is not very clear !!! 
     120%In practice, \eqref{Eq_ldfslp_iso} is of little help in evaluating the neutral surface slopes. Indeed, for an unsimplified equation of state, the density has a strong dependancy on pressure (here approximated as the depth), therefore applying \eqref{Eq_ldfslp_iso} using the $in situ$ density, $\rho$, computed at T-points leads to a flattening of slopes as the depth increases. This is due to the strong increase of the $in situ$ density with depth.  
     121 
     122%By definition, neutral surfaces are tangent to the local $in situ$ density \citep{McDougall1987}, therefore in \eqref{Eq_ldfslp_iso}, all the derivatives have to be evaluated at the same local pressure (which in decibars is approximated by the depth in meters). 
     123 
     124%In the $z$-coordinate, the derivative of the  \eqref{Eq_ldfslp_iso} numerator is evaluated at the same depth \nocite{as what?} ($T$-level, which is the same as the $u$- and $v$-levels), so  the $in situ$ density can be used for its evaluation.  
     125 
     126As the mixing is performed along neutral surfaces, the gradient of $\rho$ in  
     127\eqref{Eq_ldfslp_iso} has to be evaluated at the same local pressure (which,  
     128in decibars, is approximated by the depth in meters in the model). Therefore  
     129\eqref{Eq_ldfslp_iso} cannot be used as such, but further transformation is  
     130needed depending on the vertical coordinate used: 
     131 
     132\begin{description} 
     133 
     134\item[$z$-coordinate with full step : ] in \eqref{Eq_ldfslp_iso} the densities  
     135appearing in the $i$ and $j$ derivatives  are taken at the same depth, thus  
     136the $in situ$ density can be used. This is not the case for the vertical  
     137derivatives: $\delta_{k+1/2}[\rho]$ is replaced by $-\rho N^2/g$, where $N^2$  
     138is the local Brunt-Vais\"{a}l\"{a} frequency evaluated following  
     139\citet{McDougall1987} (see \S\ref{TRA_bn2}).  
     140 
     141\item[$z$-coordinate with partial step : ] this case is identical to the full step  
     142case except that at partial step level, the \emph{horizontal} density gradient  
     143is evaluated as described in \S\ref{TRA_zpshde}. 
     144 
     145\item[$s$- or hybrid $s$-$z$- coordinate : ] in the current release of \NEMO,  
     146iso-neutral mixing is only employed for $s$-coordinates if the 
     147Griffies scheme is used (\np{traldf\_grif}=true; see Appdx \ref{sec:triad}).  
     148In other words, iso-neutral mixing will only be accurately represented with a  
     149linear equation of state (\np{nn\_eos}=1 or 2). In the case of a "true" equation  
     150of state, the evaluation of $i$ and $j$ derivatives in \eqref{Eq_ldfslp_iso}  
     151will include a pressure dependent part, leading to the wrong evaluation of  
     152the neutral slopes. 
     153 
     154%gm%  
     155Note: The solution for $s$-coordinate passes trough the use of different  
     156(and better) expression for the constraint on iso-neutral fluxes. Following  
     157\citet{Griffies_Bk04}, instead of specifying directly that there is a zero neutral  
     158diffusive flux of locally referenced potential density, we stay in the $T$-$S$  
     159plane and consider the balance between the neutral direction diffusive fluxes  
     160of potential temperature and salinity: 
     161\begin{equation} 
     162\alpha \ \textbf{F}(T) = \beta \ \textbf{F}(S) 
     163\end{equation} 
     164%gm{  where vector F is ....} 
     165 
     166This constraint leads to the following definition for the slopes: 
     167 
     168\begin{equation} \label{Eq_ldfslp_iso2} 
     169\begin{split} 
     170 r_{1u} &= \frac{e_{3u}}{e_{1u}}\; \frac 
     171      {\alpha_u \;\delta_{i+1/2}[T] - \beta_u \;\delta_{i+1/2}[S]} 
     172      {\alpha_u \;\overline{\overline{\delta_{k+1/2}[T]}}^{\,i+1/2,\,k} 
     173       -\beta_u  \;\overline{\overline{\delta_{k+1/2}[S]}}^{\,i+1/2,\,k} } 
     174\\ 
     175 r_{2v} &= \frac{e_{3v}}{e_{2v}}\; \frac 
     176      {\alpha_v \;\delta_{j+1/2}[T] - \beta_v \;\delta_{j+1/2}[S]} 
     177      {\alpha_v \;\overline{\overline{\delta_{k+1/2}[T]}}^{\,j+1/2,\,k} 
     178       -\beta_v  \;\overline{\overline{\delta_{k+1/2}[S]}}^{\,j+1/2,\,k} } 
     179\\ 
     180 r_{1w} &= \frac{e_{3w}}{e_{1w}}\; \frac 
     181      {\alpha_w \;\overline{\overline{\delta_{i+1/2}[T]}}^{\,i,\,k+1/2} 
     182       -\beta_w  \;\overline{\overline{\delta_{i+1/2}[S]}}^{\,i,\,k+1/2} } 
     183      {\alpha_w \;\delta_{k+1/2}[T] - \beta_w \;\delta_{k+1/2}[S]} 
     184\\ 
     185 r_{2w} &= \frac{e_{3w}}{e_{2w}}\; \frac 
     186      {\alpha_w \;\overline{\overline{\delta_{j+1/2}[T]}}^{\,j,\,k+1/2} 
     187       -\beta_w  \;\overline{\overline{\delta_{j+1/2}[S]}}^{\,j,\,k+1/2} } 
     188      {\alpha_w \;\delta_{k+1/2}[T] - \beta_w \;\delta_{k+1/2}[S]} 
     189\\ 
     190\end{split} 
     191\end{equation} 
     192where $\alpha$ and $\beta$, the thermal expansion and saline contraction  
     193coefficients introduced in \S\ref{TRA_bn2}, have to be evaluated at the three  
     194velocity points. In order to save computation time, they should be approximated  
     195by the mean of their values at $T$-points (for example in the case of $\alpha$:   
     196$\alpha_u=\overline{\alpha_T}^{i+1/2}$,  $\alpha_v=\overline{\alpha_T}^{j+1/2}$  
     197and $\alpha_w=\overline{\alpha_T}^{k+1/2}$). 
     198 
     199Note that such a formulation could be also used in the $z$-coordinate and  
     200$z$-coordinate with partial steps cases. 
     201 
     202\end{description} 
     203 
     204This implementation is a rather old one. It is similar to the one 
     205proposed by Cox [1987], except for the background horizontal 
     206diffusion. Indeed, the Cox implementation of isopycnal diffusion in 
     207GFDL-type models requires a minimum background horizontal diffusion 
     208for numerical stability reasons.  To overcome this problem, several 
     209techniques have been proposed in which the numerical schemes of the 
     210ocean model are modified \citep{Weaver_Eby_JPO97, 
     211  Griffies_al_JPO98}. Griffies's scheme is now available in \NEMO if 
     212\np{traldf\_grif\_iso} is set true; see Appdx \ref{sec:triad}. Here, 
     213another strategy is presented \citep{Lazar_PhD97}: a local 
     214filtering of the iso-neutral slopes (made on 9 grid-points) prevents 
     215the development of grid point noise generated by the iso-neutral 
     216diffusion operator (Fig.~\ref{Fig_LDF_ZDF1}). This allows an 
     217iso-neutral diffusion scheme without additional background horizontal 
     218mixing. This technique can be viewed as a diffusion operator that acts 
     219along large-scale (2~$\Delta$x) \gmcomment{2deltax doesnt seem very 
     220  large scale} iso-neutral surfaces. The diapycnal diffusion required 
     221for numerical stability is thus minimized and its net effect on the 
     222flow is quite small when compared to the effect of an horizontal 
     223background mixing. 
     224 
     225Nevertheless, this iso-neutral operator does not ensure that variance cannot increase,  
     226contrary to the \citet{Griffies_al_JPO98} operator which has that property.  
     227 
     228%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     229\begin{figure}[!ht]      \begin{center} 
     230\includegraphics[width=0.70\textwidth]{./TexFiles/Figures/Fig_LDF_ZDF1.pdf} 
     231\caption {    \label{Fig_LDF_ZDF1} 
     232averaging procedure for isopycnal slope computation.} 
     233\end{center}    \end{figure} 
     234%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     235 
     236%There are three additional questions about the slope calculation.  
     237%First the expression for the rotation tensor has been obtain assuming the "small slope" approximation, so a bound has to be imposed on slopes.  
     238%Second, numerical stability issues also require a bound on slopes.  
     239%Third, the question of boundary condition specified on slopes... 
     240 
     241%from griffies: chapter 13.1.... 
     242 
     243 
     244 
     245% In addition and also for numerical stability reasons \citep{Cox1987, Griffies_Bk04},  
     246% the slopes are bounded by $1/100$ everywhere. This limit is decreasing linearly  
     247% to zero fom $70$ meters depth and the surface (the fact that the eddies "feel" the  
     248% surface motivates this flattening of isopycnals near the surface). 
     249 
     250For numerical stability reasons \citep{Cox1987, Griffies_Bk04}, the slopes must also  
     251be bounded by $1/100$ everywhere. This constraint is applied in a piecewise linear  
     252fashion, increasing from zero at the surface to $1/100$ at $70$ metres and thereafter  
     253decreasing to zero at the bottom of the ocean. (the fact that the eddies "feel" the  
     254surface motivates this flattening of isopycnals near the surface). 
     255 
     256%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     257\begin{figure}[!ht]     \begin{center} 
     258\includegraphics[width=0.70\textwidth]{./TexFiles/Figures/Fig_eiv_slp.pdf} 
     259\caption {     \label{Fig_eiv_slp} 
     260Vertical profile of the slope used for lateral mixing in the mixed layer :  
     261\textit{(a)} in the real ocean the slope is the iso-neutral slope in the ocean interior,  
     262which has to be adjusted at the surface boundary (i.e. it must tend to zero at the  
     263surface since there is no mixing across the air-sea interface: wall boundary  
     264condition). Nevertheless, the profile between the surface zero value and the interior  
     265iso-neutral one is unknown, and especially the value at the base of the mixed layer ;  
     266\textit{(b)} profile of slope using a linear tapering of the slope near the surface and  
     267imposing a maximum slope of 1/100 ; \textit{(c)} profile of slope actually used in  
     268\NEMO: a linear decrease of the slope from zero at the surface to its ocean interior  
     269value computed just below the mixed layer. Note the huge change in the slope at the  
     270base of the mixed layer between  \textit{(b)}  and \textit{(c)}.} 
     271\end{center}   \end{figure} 
     272%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     273 
     274\colorbox{yellow}{add here a discussion about the flattening of the slopes, vs  tapering the coefficient.} 
     275 
     276\subsection{slopes for momentum iso-neutral mixing} 
     277 
     278The iso-neutral diffusion operator on momentum is the same as the one used on  
     279tracers but applied to each component of the velocity separately (see  
     280\eqref{Eq_dyn_ldf_iso} in section~\ref{DYN_ldf_iso}). The slopes between the  
     281surface along which the diffusion operator acts and the surface of computation  
     282($z$- or $s$-surfaces) are defined at $T$-, $f$-, and \textit{uw}- points for the  
     283$u$-component, and $T$-, $f$- and \textit{vw}- points for the $v$-component.  
     284They are computed from the slopes used for tracer diffusion, $i.e.$  
     285\eqref{Eq_ldfslp_geo} and \eqref{Eq_ldfslp_iso} : 
     286 
     287\begin{equation} \label{Eq_ldfslp_dyn} 
     288\begin{aligned} 
     289&r_{1t}\ \ = \overline{r_{1u}}^{\,i}       &&&    r_{1f}\ \ &= \overline{r_{1u}}^{\,i+1/2} \\ 
     290&r_{2f} \ \ = \overline{r_{2v}}^{\,j+1/2} &&&   r_{2t}\ &= \overline{r_{2v}}^{\,j} \\ 
     291&r_{1uw}  = \overline{r_{1w}}^{\,i+1/2} &&\ \ \text{and} \ \ &   r_{1vw}&= \overline{r_{1w}}^{\,j+1/2} \\ 
     292&r_{2uw}= \overline{r_{2w}}^{\,j+1/2} &&&         r_{2vw}&= \overline{r_{2w}}^{\,j+1/2}\\ 
     293\end{aligned} 
     294\end{equation} 
     295 
     296The major issue remaining is in the specification of the boundary conditions.  
     297The same boundary conditions are chosen as those used for lateral  
     298diffusion along model level surfaces, i.e. using the shear computed along  
     299the model levels and with no additional friction at the ocean bottom (see  
     300{\S\ref{LBC_coast}). 
     301 
     302 
     303% ================================================================ 
     304% Lateral Mixing Operator 
     305% ================================================================ 
     306\section [Lateral Mixing Operators (\textit{ldftra}, \textit{ldfdyn})]  
     307        {Lateral Mixing Operators (\mdl{traldf}, \mdl{traldf}) } 
     308\label{LDF_op} 
     309 
     310 
     311    
     312% ================================================================ 
    35313% Lateral Mixing Coefficients 
    36314% ================================================================ 
     
    38316        {Lateral Mixing Coefficient (\mdl{ldftra}, \mdl{ldfdyn}) } 
    39317\label{LDF_coef} 
    40  
    41318 
    42319Introducing a space variation in the lateral eddy mixing coefficients changes  
     
    165442 
    166443% ================================================================ 
    167 % Direction of lateral Mixing 
    168 % ================================================================ 
    169 \section  [Direction of Lateral Mixing (\textit{ldfslp})] 
    170       {Direction of Lateral Mixing (\mdl{ldfslp})} 
    171 \label{LDF_slp} 
    172  
    173 %%% 
    174 \gmcomment{  we should emphasize here that the implementation is a rather old one.  
    175 Better work can be achieved by using \citet{Griffies_al_JPO98, Griffies_Bk04} iso-neutral scheme. } 
    176  
    177 A direction for lateral mixing has to be defined when the desired operator does  
    178 not act along the model levels. This occurs when $(a)$ horizontal mixing is  
    179 required on tracer or momentum (\np{ln\_traldf\_hor} or \np{ln\_dynldf\_hor})  
    180 in $s$- or mixed $s$-$z$- coordinates, and $(b)$ isoneutral mixing is required  
    181 whatever the vertical coordinate is. This direction of mixing is defined by its  
    182 slopes in the \textbf{i}- and \textbf{j}-directions at the face of the cell of the  
    183 quantity to be diffused. For a tracer, this leads to the following four slopes :  
    184 $r_{1u}$, $r_{1w}$, $r_{2v}$, $r_{2w}$ (see \eqref{Eq_tra_ldf_iso}), while  
    185 for momentum the slopes are  $r_{1t}$, $r_{1uw}$, $r_{2f}$, $r_{2uw}$ for  
    186 $u$ and  $r_{1f}$, $r_{1vw}$, $r_{2t}$, $r_{2vw}$ for $v$.  
    187  
    188 %gm% add here afigure of the slope in i-direction 
    189  
    190 \subsection{slopes for tracer geopotential mixing in the $s$-coordinate} 
    191  
    192 In $s$-coordinates, geopotential mixing ($i.e.$ horizontal mixing) $r_1$ and  
    193 $r_2$ are the slopes between the geopotential and computational surfaces.  
    194 Their discrete formulation is found by locally solving \eqref{Eq_tra_ldf_iso}  
    195 when the diffusive fluxes in the three directions are set to zero and $T$ is  
    196 assumed to be horizontally uniform, $i.e.$ a linear function of $z_T$, the  
    197 depth of a $T$-point.  
    198 %gm { Steven : My version is obviously wrong since I'm left with an arbitrary constant which is the local vertical temperature gradient} 
    199  
    200 \begin{equation} \label{Eq_ldfslp_geo} 
    201 \begin{aligned} 
    202  r_{1u} &= \frac{e_{3u}}{ \left( e_{1u}\;\overline{\overline{e_{3w}}}^{\,i+1/2,\,k} \right)} 
    203            \;\delta_{i+1/2}[z_t]  
    204       &\approx \frac{1}{e_{1u}}\; \delta_{i+1/2}[z_t]  
    205 \\ 
    206  r_{2v} &= \frac{e_{3v}}{\left( e_{2v}\;\overline{\overline{e_{3w}}}^{\,j+1/2,\,k} \right)}  
    207            \;\delta_{j+1/2} [z_t]  
    208       &\approx \frac{1}{e_{2v}}\; \delta_{j+1/2}[z_t]  
    209 \\ 
    210  r_{1w} &= \frac{1}{e_{1w}}\;\overline{\overline{\delta_{i+1/2}[z_t]}}^{\,i,\,k+1/2} 
    211       &\approx \frac{1}{e_{1w}}\; \delta_{i+1/2}[z_{uw}]  
    212  \\ 
    213  r_{2w} &= \frac{1}{e_{2w}}\;\overline{\overline{\delta_{j+1/2}[z_t]}}^{\,j,\,k+1/2} 
    214       &\approx \frac{1}{e_{2w}}\; \delta_{j+1/2}[z_{vw}]  
    215  \\ 
    216 \end{aligned} 
    217 \end{equation} 
    218  
    219 %gm%  caution I'm not sure the simplification was a good idea!  
    220  
    221 These slopes are computed once in \rou{ldfslp\_init} when \np{ln\_sco}=True,  
    222 and either \np{ln\_traldf\_hor}=True or \np{ln\_dynldf\_hor}=True.  
    223  
    224 \subsection{Slopes for tracer iso-neutral mixing}\label{LDF_slp_iso} 
    225 In iso-neutral mixing  $r_1$ and $r_2$ are the slopes between the iso-neutral  
    226 and computational surfaces. Their formulation does not depend on the vertical  
    227 coordinate used. Their discrete formulation is found using the fact that the  
    228 diffusive fluxes of locally referenced potential density ($i.e.$ $in situ$ density)  
    229 vanish. So, substituting $T$ by $\rho$ in \eqref{Eq_tra_ldf_iso} and setting the  
    230 diffusive fluxes in the three directions to zero leads to the following definition for  
    231 the neutral slopes: 
    232  
    233 \begin{equation} \label{Eq_ldfslp_iso} 
    234 \begin{split} 
    235  r_{1u} &= \frac{e_{3u}}{e_{1u}}\; \frac{\delta_{i+1/2}[\rho]} 
    236                         {\overline{\overline{\delta_{k+1/2}[\rho]}}^{\,i+1/2,\,k}} 
    237 \\ 
    238  r_{2v} &= \frac{e_{3v}}{e_{2v}}\; \frac{\delta_{j+1/2}\left[\rho \right]} 
    239                         {\overline{\overline{\delta_{k+1/2}[\rho]}}^{\,j+1/2,\,k}} 
    240 \\ 
    241  r_{1w} &= \frac{e_{3w}}{e_{1w}}\;  
    242          \frac{\overline{\overline{\delta_{i+1/2}[\rho]}}^{\,i,\,k+1/2}} 
    243              {\delta_{k+1/2}[\rho]} 
    244 \\ 
    245  r_{2w} &= \frac{e_{3w}}{e_{2w}}\;  
    246          \frac{\overline{\overline{\delta_{j+1/2}[\rho]}}^{\,j,\,k+1/2}} 
    247              {\delta_{k+1/2}[\rho]} 
    248 \\ 
    249 \end{split} 
    250 \end{equation} 
    251  
    252 %gm% rewrite this as the explanation is not very clear !!! 
    253 %In practice, \eqref{Eq_ldfslp_iso} is of little help in evaluating the neutral surface slopes. Indeed, for an unsimplified equation of state, the density has a strong dependancy on pressure (here approximated as the depth), therefore applying \eqref{Eq_ldfslp_iso} using the $in situ$ density, $\rho$, computed at T-points leads to a flattening of slopes as the depth increases. This is due to the strong increase of the $in situ$ density with depth.  
    254  
    255 %By definition, neutral surfaces are tangent to the local $in situ$ density \citep{McDougall1987}, therefore in \eqref{Eq_ldfslp_iso}, all the derivatives have to be evaluated at the same local pressure (which in decibars is approximated by the depth in meters). 
    256  
    257 %In the $z$-coordinate, the derivative of the  \eqref{Eq_ldfslp_iso} numerator is evaluated at the same depth \nocite{as what?} ($T$-level, which is the same as the $u$- and $v$-levels), so  the $in situ$ density can be used for its evaluation.  
    258  
    259 As the mixing is performed along neutral surfaces, the gradient of $\rho$ in  
    260 \eqref{Eq_ldfslp_iso} has to be evaluated at the same local pressure (which,  
    261 in decibars, is approximated by the depth in meters in the model). Therefore  
    262 \eqref{Eq_ldfslp_iso} cannot be used as such, but further transformation is  
    263 needed depending on the vertical coordinate used: 
    264  
    265 \begin{description} 
    266  
    267 \item[$z$-coordinate with full step : ] in \eqref{Eq_ldfslp_iso} the densities  
    268 appearing in the $i$ and $j$ derivatives  are taken at the same depth, thus  
    269 the $in situ$ density can be used. This is not the case for the vertical  
    270 derivatives: $\delta_{k+1/2}[\rho]$ is replaced by $-\rho N^2/g$, where $N^2$  
    271 is the local Brunt-Vais\"{a}l\"{a} frequency evaluated following  
    272 \citet{McDougall1987} (see \S\ref{TRA_bn2}).  
    273  
    274 \item[$z$-coordinate with partial step : ] this case is identical to the full step  
    275 case except that at partial step level, the \emph{horizontal} density gradient  
    276 is evaluated as described in \S\ref{TRA_zpshde}. 
    277  
    278 \item[$s$- or hybrid $s$-$z$- coordinate : ] in the current release of \NEMO,  
    279 iso-neutral mixing is only employed for $s$-coordinates if the 
    280 Griffies scheme is used (\np{traldf\_grif}=true; see Appdx \ref{sec:triad}).  
    281 In other words, iso-neutral mixing will only be accurately represented with a  
    282 linear equation of state (\np{nn\_eos}=1 or 2). In the case of a "true" equation  
    283 of state, the evaluation of $i$ and $j$ derivatives in \eqref{Eq_ldfslp_iso}  
    284 will include a pressure dependent part, leading to the wrong evaluation of  
    285 the neutral slopes. 
    286  
    287 %gm%  
    288 Note: The solution for $s$-coordinate passes trough the use of different  
    289 (and better) expression for the constraint on iso-neutral fluxes. Following  
    290 \citet{Griffies_Bk04}, instead of specifying directly that there is a zero neutral  
    291 diffusive flux of locally referenced potential density, we stay in the $T$-$S$  
    292 plane and consider the balance between the neutral direction diffusive fluxes  
    293 of potential temperature and salinity: 
    294 \begin{equation} 
    295 \alpha \ \textbf{F}(T) = \beta \ \textbf{F}(S) 
    296 \end{equation} 
    297 %gm{  where vector F is ....} 
    298  
    299 This constraint leads to the following definition for the slopes: 
    300  
    301 \begin{equation} \label{Eq_ldfslp_iso2} 
    302 \begin{split} 
    303  r_{1u} &= \frac{e_{3u}}{e_{1u}}\; \frac 
    304       {\alpha_u \;\delta_{i+1/2}[T] - \beta_u \;\delta_{i+1/2}[S]} 
    305       {\alpha_u \;\overline{\overline{\delta_{k+1/2}[T]}}^{\,i+1/2,\,k} 
    306        -\beta_u  \;\overline{\overline{\delta_{k+1/2}[S]}}^{\,i+1/2,\,k} } 
    307 \\ 
    308  r_{2v} &= \frac{e_{3v}}{e_{2v}}\; \frac 
    309       {\alpha_v \;\delta_{j+1/2}[T] - \beta_v \;\delta_{j+1/2}[S]} 
    310       {\alpha_v \;\overline{\overline{\delta_{k+1/2}[T]}}^{\,j+1/2,\,k} 
    311        -\beta_v  \;\overline{\overline{\delta_{k+1/2}[S]}}^{\,j+1/2,\,k} } 
    312 \\ 
    313  r_{1w} &= \frac{e_{3w}}{e_{1w}}\; \frac 
    314       {\alpha_w \;\overline{\overline{\delta_{i+1/2}[T]}}^{\,i,\,k+1/2} 
    315        -\beta_w  \;\overline{\overline{\delta_{i+1/2}[S]}}^{\,i,\,k+1/2} } 
    316       {\alpha_w \;\delta_{k+1/2}[T] - \beta_w \;\delta_{k+1/2}[S]} 
    317 \\ 
    318  r_{2w} &= \frac{e_{3w}}{e_{2w}}\; \frac 
    319       {\alpha_w \;\overline{\overline{\delta_{j+1/2}[T]}}^{\,j,\,k+1/2} 
    320        -\beta_w  \;\overline{\overline{\delta_{j+1/2}[S]}}^{\,j,\,k+1/2} } 
    321       {\alpha_w \;\delta_{k+1/2}[T] - \beta_w \;\delta_{k+1/2}[S]} 
    322 \\ 
    323 \end{split} 
    324 \end{equation} 
    325 where $\alpha$ and $\beta$, the thermal expansion and saline contraction  
    326 coefficients introduced in \S\ref{TRA_bn2}, have to be evaluated at the three  
    327 velocity points. In order to save computation time, they should be approximated  
    328 by the mean of their values at $T$-points (for example in the case of $\alpha$:   
    329 $\alpha_u=\overline{\alpha_T}^{i+1/2}$,  $\alpha_v=\overline{\alpha_T}^{j+1/2}$  
    330 and $\alpha_w=\overline{\alpha_T}^{k+1/2}$). 
    331  
    332 Note that such a formulation could be also used in the $z$-coordinate and  
    333 $z$-coordinate with partial steps cases. 
    334  
    335 \end{description} 
    336  
    337 This implementation is a rather old one. It is similar to the one 
    338 proposed by Cox [1987], except for the background horizontal 
    339 diffusion. Indeed, the Cox implementation of isopycnal diffusion in 
    340 GFDL-type models requires a minimum background horizontal diffusion 
    341 for numerical stability reasons.  To overcome this problem, several 
    342 techniques have been proposed in which the numerical schemes of the 
    343 ocean model are modified \citep{Weaver_Eby_JPO97, 
    344   Griffies_al_JPO98}. Griffies's scheme is now available in \NEMO if 
    345 \np{traldf\_grif\_iso} is set true; see Appdx \ref{sec:triad}. Here, 
    346 another strategy is presented \citep{Lazar_PhD97}: a local 
    347 filtering of the iso-neutral slopes (made on 9 grid-points) prevents 
    348 the development of grid point noise generated by the iso-neutral 
    349 diffusion operator (Fig.~\ref{Fig_LDF_ZDF1}). This allows an 
    350 iso-neutral diffusion scheme without additional background horizontal 
    351 mixing. This technique can be viewed as a diffusion operator that acts 
    352 along large-scale (2~$\Delta$x) \gmcomment{2deltax doesnt seem very 
    353   large scale} iso-neutral surfaces. The diapycnal diffusion required 
    354 for numerical stability is thus minimized and its net effect on the 
    355 flow is quite small when compared to the effect of an horizontal 
    356 background mixing. 
    357  
    358 Nevertheless, this iso-neutral operator does not ensure that variance cannot increase,  
    359 contrary to the \citet{Griffies_al_JPO98} operator which has that property.  
    360  
    361 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    362 \begin{figure}[!ht]      \begin{center} 
    363 \includegraphics[width=0.70\textwidth]{./TexFiles/Figures/Fig_LDF_ZDF1.pdf} 
    364 \caption {    \label{Fig_LDF_ZDF1} 
    365 averaging procedure for isopycnal slope computation.} 
    366 \end{center}    \end{figure} 
    367 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    368  
    369 %There are three additional questions about the slope calculation.  
    370 %First the expression for the rotation tensor has been obtain assuming the "small slope" approximation, so a bound has to be imposed on slopes.  
    371 %Second, numerical stability issues also require a bound on slopes.  
    372 %Third, the question of boundary condition specified on slopes... 
    373  
    374 %from griffies: chapter 13.1.... 
    375  
    376  
    377  
    378 % In addition and also for numerical stability reasons \citep{Cox1987, Griffies_Bk04},  
    379 % the slopes are bounded by $1/100$ everywhere. This limit is decreasing linearly  
    380 % to zero fom $70$ meters depth and the surface (the fact that the eddies "feel" the  
    381 % surface motivates this flattening of isopycnals near the surface). 
    382  
    383 For numerical stability reasons \citep{Cox1987, Griffies_Bk04}, the slopes must also  
    384 be bounded by $1/100$ everywhere. This constraint is applied in a piecewise linear  
    385 fashion, increasing from zero at the surface to $1/100$ at $70$ metres and thereafter  
    386 decreasing to zero at the bottom of the ocean. (the fact that the eddies "feel" the  
    387 surface motivates this flattening of isopycnals near the surface). 
    388  
    389 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    390 \begin{figure}[!ht]     \begin{center} 
    391 \includegraphics[width=0.70\textwidth]{./TexFiles/Figures/Fig_eiv_slp.pdf} 
    392 \caption {     \label{Fig_eiv_slp} 
    393 Vertical profile of the slope used for lateral mixing in the mixed layer :  
    394 \textit{(a)} in the real ocean the slope is the iso-neutral slope in the ocean interior,  
    395 which has to be adjusted at the surface boundary (i.e. it must tend to zero at the  
    396 surface since there is no mixing across the air-sea interface: wall boundary  
    397 condition). Nevertheless, the profile between the surface zero value and the interior  
    398 iso-neutral one is unknown, and especially the value at the base of the mixed layer ;  
    399 \textit{(b)} profile of slope using a linear tapering of the slope near the surface and  
    400 imposing a maximum slope of 1/100 ; \textit{(c)} profile of slope actually used in  
    401 \NEMO: a linear decrease of the slope from zero at the surface to its ocean interior  
    402 value computed just below the mixed layer. Note the huge change in the slope at the  
    403 base of the mixed layer between  \textit{(b)}  and \textit{(c)}.} 
    404 \end{center}   \end{figure} 
    405 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    406  
    407 \colorbox{yellow}{add here a discussion about the flattening of the slopes, vs  tapering the coefficient.} 
    408  
    409 \subsection{slopes for momentum iso-neutral mixing} 
    410  
    411 The iso-neutral diffusion operator on momentum is the same as the one used on  
    412 tracers but applied to each component of the velocity separately (see  
    413 \eqref{Eq_dyn_ldf_iso} in section~\ref{DYN_ldf_iso}). The slopes between the  
    414 surface along which the diffusion operator acts and the surface of computation  
    415 ($z$- or $s$-surfaces) are defined at $T$-, $f$-, and \textit{uw}- points for the  
    416 $u$-component, and $T$-, $f$- and \textit{vw}- points for the $v$-component.  
    417 They are computed from the slopes used for tracer diffusion, $i.e.$  
    418 \eqref{Eq_ldfslp_geo} and \eqref{Eq_ldfslp_iso} : 
    419  
    420 \begin{equation} \label{Eq_ldfslp_dyn} 
    421 \begin{aligned} 
    422 &r_{1t}\ \ = \overline{r_{1u}}^{\,i}       &&&    r_{1f}\ \ &= \overline{r_{1u}}^{\,i+1/2} \\ 
    423 &r_{2f} \ \ = \overline{r_{2v}}^{\,j+1/2} &&&   r_{2t}\ &= \overline{r_{2v}}^{\,j} \\ 
    424 &r_{1uw}  = \overline{r_{1w}}^{\,i+1/2} &&\ \ \text{and} \ \ &   r_{1vw}&= \overline{r_{1w}}^{\,j+1/2} \\ 
    425 &r_{2uw}= \overline{r_{2w}}^{\,j+1/2} &&&         r_{2vw}&= \overline{r_{2w}}^{\,j+1/2}\\ 
    426 \end{aligned} 
    427 \end{equation} 
    428  
    429 The major issue remaining is in the specification of the boundary conditions.  
    430 The same boundary conditions are chosen as those used for lateral  
    431 diffusion along model level surfaces, i.e. using the shear computed along  
    432 the model levels and with no additional friction at the ocean bottom (see  
    433 {\S\ref{LBC_coast}). 
    434  
    435  
    436 % ================================================================ 
    437444% Eddy Induced Mixing 
    438445% ================================================================ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Chapters/Chap_Model_Basics.tex

    r3294 r6040  
    247247sufficient to solve a linearized version of (\ref{Eq_PE_ssh}), which still allows  
    248248to take into account freshwater fluxes applied at the ocean surface \citep{Roullet_Madec_JGR00}. 
     249Nevertheless, with the linearization, an exact conservation of heat and salt contents is lost. 
    249250 
    250251The filtering of EGWs in models with a free surface is usually a matter of discretisation  
    251 of the temporal derivatives, using the time splitting method \citep{Killworth_al_JPO91, Zhang_Endoh_JGR92}  
    252 or the implicit scheme \citep{Dukowicz1994}. In \NEMO, we use a slightly different approach  
    253 developed by \citet{Roullet_Madec_JGR00}: the damping of EGWs is ensured by introducing an  
    254 additional force in the momentum equation. \eqref{Eq_PE_dyn} becomes:  
    255 \begin{equation} \label{Eq_PE_flt} 
    256 \frac{\partial {\rm {\bf U}}_h }{\partial t}= {\rm {\bf M}} 
    257 - g \nabla \left( \tilde{\rho} \ \eta \right)  
    258 - g \ T_c \nabla \left( \widetilde{\rho} \ \partial_t \eta \right)  
    259 \end{equation} 
    260 where $T_c$, is a parameter with dimensions of time which characterizes the force,  
    261 $\widetilde{\rho} = \rho / \rho_o$ is the dimensionless density, and $\rm {\bf M}$  
    262 represents the collected contributions of the Coriolis, hydrostatic pressure gradient,  
    263 non-linear and viscous terms in \eqref{Eq_PE_dyn}. 
    264  
    265 The new force can be interpreted as a diffusion of vertically integrated volume flux divergence.  
    266 The time evolution of $D$ is thus governed by a balance of two terms, $-g$ \textbf{A} $\eta$  
    267 and $g \, T_c \,$ \textbf{A} $D$, associated with a propagative regime and a diffusive regime  
    268 in the temporal spectrum, respectively. In the diffusive regime, the EGWs no longer propagate,  
    269 $i.e.$ they are stationary and damped. The diffusion regime applies to the modes shorter than  
    270 $T_c$. For longer ones, the diffusion term vanishes. Hence, the temporally unresolved EGWs  
    271 can be damped by choosing $T_c > \rdt$. \citet{Roullet_Madec_JGR00} demonstrate that  
    272 (\ref{Eq_PE_flt}) can be integrated with a leap frog scheme except the additional term which  
    273 has to be computed implicitly. This is not surprising since the use of a large time step has a  
    274 necessarily numerical cost. Two gains arise in comparison with the previous formulations.  
    275 Firstly, the damping of EGWs can be quantified through the magnitude of the additional term.  
    276 Secondly, the numerical scheme does not need any tuning. Numerical stability is ensured as  
    277 soon as $T_c > \rdt$. 
    278  
    279 When the variations of free surface elevation are small compared to the thickness of the first  
    280 model layer, the free surface equation (\ref{Eq_PE_ssh}) can be linearized. As emphasized  
    281 by \citet{Roullet_Madec_JGR00} the linearization of (\ref{Eq_PE_ssh}) has consequences on the  
    282 conservation of salt in the model. With the nonlinear free surface equation, the time evolution  
    283 of the total salt content is  
    284 \begin{equation} \label{Eq_PE_salt_content} 
    285     \frac{\partial }{\partial t}\int\limits_{D\eta } {S\;dv}  
    286                         =\int\limits_S {S\;(-\frac{\partial \eta }{\partial t}-D+P-E)\;ds} 
    287 \end{equation} 
    288 where $S$ is the salinity, and the total salt is integrated over the whole ocean volume  
    289 $D_\eta$ bounded by the time-dependent free surface. The right hand side (which is an  
    290 integral over the free surface) vanishes when the nonlinear equation (\ref{Eq_PE_ssh})  
    291 is satisfied, so that the salt is perfectly conserved. When the free surface equation is  
    292 linearized, \citet{Roullet_Madec_JGR00} show that the total salt content integrated in the fixed  
    293 volume $D$ (bounded by the surface $z=0$) is no longer conserved: 
    294 \begin{equation} \label{Eq_PE_salt_content_linear} 
    295          \frac{\partial }{\partial t}\int\limits_D {S\;dv}  
    296                = - \int\limits_S {S\;\frac{\partial \eta }{\partial t}ds}  
    297 \end{equation} 
    298  
    299 The right hand side of (\ref{Eq_PE_salt_content_linear}) is small in equilibrium solutions  
    300 \citep{Roullet_Madec_JGR00}. It can be significant when the freshwater forcing is not balanced and  
    301 the globally averaged free surface is drifting. An increase in sea surface height \textit{$\eta $}  
    302 results in a decrease of the salinity in the fixed volume $D$. Even in that case though,  
    303 the total salt integrated in the variable volume $D_{\eta}$ varies much less, since  
    304 (\ref{Eq_PE_salt_content_linear}) can be rewritten as  
    305 \begin{equation} \label{Eq_PE_salt_content_corrected} 
    306 \frac{\partial }{\partial t}\int\limits_{D\eta } {S\;dv}  
    307 =\frac{\partial}{\partial t} \left[ \;{\int\limits_D {S\;dv} +\int\limits_S {S\eta \;ds} } \right] 
    308 =\int\limits_S {\eta \;\frac{\partial S}{\partial t}ds} 
    309 \end{equation} 
    310  
    311 Although the total salt content is not exactly conserved with the linearized free surface,  
    312 its variations are driven by correlations of the time variation of surface salinity with the  
    313 sea surface height, which is a negligible term. This situation contrasts with the case of  
    314 the rigid lid approximation in which case freshwater forcing is represented by a virtual  
    315 salt flux, leading to a spurious source of salt at the ocean surface  
    316 \citep{Huang_JPO93, Roullet_Madec_JGR00}. 
    317  
    318 \newpage 
    319 $\ $\newline    % force a new ligne 
     252of the temporal derivatives, using a split-explicit method \citep{Killworth_al_JPO91, Zhang_Endoh_JGR92}  
     253or the implicit scheme \citep{Dukowicz1994} or the addition of a filtering force in the momentum equation  
     254\citep{Roullet_Madec_JGR00}. With the present release, \NEMO offers the choice between  
     255an explicit free surface (see \S\ref{DYN_spg_exp}) or a split-explicit scheme strongly  
     256inspired the one proposed by \citet{Shchepetkin_McWilliams_OM05} (see \S\ref{DYN_spg_ts}). 
     257 
     258%\newpage 
     259%$\ $\newline    % force a new ligne 
    320260 
    321261% ================================================================ 
     
    655595the surface pressure, is given by: 
    656596\begin{equation} \label{Eq_PE_spg} 
    657 p_s = \left\{ \begin{split}  
    658 \rho \,g \,\eta &                                 \qquad  \qquad  \;   \qquad \text{ standard free surface} \\  
    659 \rho \,g \,\eta &+ \rho_o \,\mu \,\frac{\partial \eta }{\partial t}      \qquad \text{ filtered     free surface}     
    660 \end{split}  
    661 \right. 
     597p_s =  \rho \,g \,\eta  
    662598\end{equation} 
    663599with $\eta$ is solution of \eqref{Eq_PE_ssh} 
     
    773709\end{equation} 
    774710 
    775 The equations solved by the ocean model \eqref{Eq_PE} in $s-$coordinate can be written as follows: 
     711The equations solved by the ocean model \eqref{Eq_PE} in $s-$coordinate can be written as follows (see Appendix~\ref{Apdx_A_momentum}): 
    776712 
    777713 \vspace{0.5cm} 
    778 * momentum equation: 
     714$\bullet$ Vector invariant form of the momentum equation : 
    779715\begin{multline} \label{Eq_PE_sco_u} 
    780 \frac{1}{e_3} \frac{\partial \left(  e_3\,u  \right) }{\partial t}= 
     716\frac{\partial  u  }{\partial t}= 
    781717   +   \left( {\zeta +f} \right)\,v                                     
    782718   -   \frac{1}{2\,e_1} \frac{\partial}{\partial i} \left(  u^2+v^2   \right)  
     
    787723\end{multline} 
    788724\begin{multline} \label{Eq_PE_sco_v} 
    789 \frac{1}{e_3} \frac{\partial \left(  e_3\,v  \right) }{\partial t}= 
     725\frac{\partial v }{\partial t}= 
    790726   -   \left( {\zeta +f} \right)\,u    
    791727   -   \frac{1}{2\,e_2 }\frac{\partial }{\partial j}\left(  u^2+v^2  \right)         
     
    795731   +  D_v^{\vect{U}}  +   F_v^{\vect{U}} \quad 
    796732\end{multline} 
     733 
     734 \vspace{0.5cm} 
     735$\bullet$ Vector invariant form of the momentum equation : 
     736\begin{multline} \label{Eq_PE_sco_u} 
     737\frac{1}{e_3} \frac{\partial \left(  e_3\,u  \right) }{\partial t}= 
     738   +   \left( { f + \frac{1}{e_1 \; e_2 } 
     739               \left(    v \frac{\partial e_2}{\partial i} 
     740                  -u \frac{\partial e_1}{\partial j}  \right)}    \right) \, v    \\ 
     741   - \frac{1}{e_1 \; e_2 \; e_3 }   \left(  
     742               \frac{\partial \left( {e_2 \, e_3 \, u\,u} \right)}{\partial i} 
     743      +        \frac{\partial \left( {e_1 \, e_3 \, v\,u} \right)}{\partial j}   \right) 
     744   - \frac{1}{e_3 }\frac{\partial \left( { \omega\,u} \right)}{\partial k}    \\ 
     745   - \frac{1}{e_1} \frac{\partial}{\partial i} \left( \frac{p_s + p_h}{\rho _o}    \right)     
     746   +  g\frac{\rho }{\rho _o}\sigma _1  
     747   +   D_u^{\vect{U}}  +   F_u^{\vect{U}} \quad 
     748\end{multline} 
     749\begin{multline} \label{Eq_PE_sco_v} 
     750\frac{1}{e_3} \frac{\partial \left(  e_3\,v  \right) }{\partial t}= 
     751   -   \left( { f + \frac{1}{e_1 \; e_2} 
     752               \left(    v \frac{\partial e_2}{\partial i} 
     753                  -u \frac{\partial e_1}{\partial j}  \right)}    \right) \, u   \\ 
     754   - \frac{1}{e_1 \; e_2 \; e_3 }   \left(  
     755               \frac{\partial \left( {e_2 \; e_3  \,u\,v} \right)}{\partial i} 
     756      +        \frac{\partial \left( {e_1 \; e_3  \,v\,v} \right)}{\partial j}   \right) 
     757                 - \frac{1}{e_3 } \frac{\partial \left( { \omega\,v} \right)}{\partial k}    \\ 
     758   -   \frac{1}{e_2 }\frac{\partial }{\partial j}\left( \frac{p_s+p_h }{\rho _o}  \right)  
     759    +  g\frac{\rho }{\rho _o }\sigma _2    
     760   +  D_v^{\vect{U}}  +   F_v^{\vect{U}} \quad 
     761\end{multline} 
     762 
    797763where the relative vorticity, \textit{$\zeta $}, the surface pressure gradient, and the hydrostatic  
    798764pressure have the same expressions as in $z$-coordinates although they do not represent  
    799765exactly the same quantities. $\omega$ is provided by the continuity equation  
    800766(see Appendix~\ref{Apdx_A}): 
    801  
    802767\begin{equation} \label{Eq_PE_sco_continuity} 
    803768\frac{\partial e_3}{\partial t} + e_3 \; \chi + \frac{\partial \omega }{\partial s} = 0    
     
    809774 
    810775 \vspace{0.5cm} 
    811 * tracer equations: 
     776$\bullet$ tracer equations: 
    812777\begin{multline} \label{Eq_PE_sco_t} 
    813778\frac{1}{e_3} \frac{\partial \left(  e_3\,T  \right) }{\partial t}= 
     
    1024989 
    1025990The $\tilde{z}$-coordinate has been developed by \citet{Leclair_Madec_OM10s}. 
    1026 It is not available in the current version of \NEMO. 
     991It is available in \NEMO since the version 3.4. Nevertheless, it is currently not robust enough  
     992to be used in all possible configurations. Its use is therefore not recommended. 
     993We  
    1027994 
    1028995\newpage  
     
    11801147ocean (see Appendix~\ref{Apdx_B}). 
    11811148 
     1149For \textit{iso-level} diffusion, $r_1$ and $r_2 $ are zero. $\Re $ reduces to the identity  
     1150in the horizontal direction, no rotation is applied.  
     1151 
    11821152For \textit{geopotential} diffusion, $r_1$ and $r_2 $ are the slopes between the  
    1183 geopotential and computational surfaces: in $z$-coordinates they are zero  
    1184 ($r_1 = r_2 = 0$) while in $s$-coordinate (including $\textit{z*}$ case) they are  
    1185 equal to $\sigma _1$ and $\sigma _2$, respectively (see \eqref{Eq_PE_sco_slope} ). 
     1153geopotential and computational surfaces: they are equal to $\sigma _1$ and $\sigma _2$,  
     1154respectively (see \eqref{Eq_PE_sco_slope} ). 
    11861155 
    11871156For \textit{isoneutral} diffusion $r_1$ and $r_2$ are the slopes between the isoneutral  
     
    12351204The lateral fourth order tracer diffusive operator is defined by: 
    12361205\begin{equation} \label{Eq_PE_bilapT} 
    1237 D^{lT}=\Delta \left( {A^{lT}\;\Delta T} \right)  
    1238 \qquad \text{where} \  D^{lT}=\Delta \left( {A^{lT}\;\Delta T} \right) 
     1206D^{lT}=\Delta \left( \;\Delta T \right)  
     1207\qquad \text{where} \;\; \Delta \bullet = \nabla \left( {\sqrt{B^{lT}\,}\;\Re \;\nabla \bullet} \right) 
    12391208 \end{equation} 
    1240  
    12411209It is the second order operator given by \eqref{Eq_PE_iso_tensor} applied twice with  
    1242 the eddy diffusion coefficient correctly placed.  
     1210the harmonic eddy diffusion coefficient set to the square root of the biharmonic one.  
    12431211 
    12441212 
     
    12621230 
    12631231Such a formulation ensures a complete separation between the vorticity and  
    1264 horizontal divergence fields (see Appendix~\ref{Apdx_C}). Unfortunately, it is not  
    1265 available for geopotential diffusion in $s-$coordinates and for isoneutral  
    1266 diffusion in both $z$- and $s$-coordinates ($i.e.$ when a rotation is required).  
    1267 In these two cases, the $u$ and $v-$fields are considered as independent scalar  
    1268 fields, so that the diffusive operator is given by: 
     1232horizontal divergence fields (see Appendix~\ref{Apdx_C}).  
     1233Unfortunately, it is only available in \textit{iso-level} direction.  
     1234When a rotation is required ($i.e.$ geopotential diffusion in $s-$coordinates  
     1235or isoneutral diffusion in both $z$- and $s$-coordinates), the $u$ and $v-$fields  
     1236are considered as independent scalar fields, so that the diffusive operator is given by: 
    12691237\begin{equation} \label{Eq_PE_lapU_iso} 
    12701238\begin{split} 
    1271  D_u^{l{\rm {\bf U}}} &= \nabla .\left( {\Re \;\nabla u} \right) \\  
    1272  D_v^{l{\rm {\bf U}}} &= \nabla .\left( {\Re \;\nabla v} \right) 
     1239 D_u^{l{\rm {\bf U}}} &= \nabla .\left( {A^{lm} \;\Re \;\nabla u} \right) \\  
     1240 D_v^{l{\rm {\bf U}}} &= \nabla .\left( {A^{lm} \;\Re \;\nabla v} \right) 
    12731241 \end{split} 
    12741242 \end{equation} 
     
    12821250 
    12831251As for tracers, the fourth order momentum diffusive operator along $z$ or $s$-surfaces  
    1284 is a re-entering second order operator \eqref{Eq_PE_lapU} or \eqref{Eq_PE_lapU}  
    1285 with the eddy viscosity coefficient correctly placed: 
    1286  
    1287 geopotential diffusion in $z$-coordinate: 
    1288 \begin{equation} \label{Eq_PE_bilapU} 
    1289 \begin{split} 
    1290 {\rm {\bf D}}^{l{\rm {\bf U}}} &=\nabla _h \left\{ {\;\nabla _h {\rm {\bf  
    1291 .}}\left[ {A^{lm}\,\nabla _h \left( \chi \right)} \right]\;}  
    1292 \right\}\;   \\ 
    1293 &+\nabla _h \times \left\{ {\;{\rm {\bf k}}\cdot \nabla \times  
    1294 \left[ {A^{lm}\,\nabla _h \times \left( {\zeta \;{\rm {\bf k}}} \right)}  
    1295 \right]\;} \right\} 
    1296 \end{split} 
    1297 \end{equation} 
    1298  
    1299 \gmcomment{  change the position of the coefficient, both here and in the code} 
    1300  
    1301 geopotential diffusion in $s$-coordinate: 
    1302 \begin{equation} \label{Eq_bilapU_iso} 
    1303    \left\{   \begin{aligned} 
    1304          D_u^{l{\rm {\bf U}}} =\Delta \left( {A^{lm}\;\Delta u} \right) \\  
    1305          D_v^{l{\rm {\bf U}}} =\Delta \left( {A^{lm}\;\Delta v} \right) 
    1306    \end{aligned}    \right. 
    1307    \quad \text{where} \quad  
    1308    \Delta \left( \bullet \right) = \nabla \cdot \left( \Re \nabla(\bullet) \right)  
    1309 \end{equation} 
    1310  
     1252is a re-entering second order operator \eqref{Eq_PE_lapU} or \eqref{Eq_PE_lapU_iso}  
     1253with the harmonic eddy diffusion coefficient set to the square root of the biharmonic one. 
     1254 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Chapters/Chap_Model_Basics_zstar.tex

    r4147 r6040  
    11% ================================================================ 
    2 % Chapter 1 Model Basics 
     2% Chapter 1 ——— Model Basics 
    33% ================================================================ 
    44% ================================================================ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Chapters/Chap_STP.tex

    r4147 r6040  
    11 
    22% ================================================================ 
    3 % Chapter 2 Time Domain (step.F90) 
     3% Chapter 2 ——— Time Domain (step.F90) 
    44% ================================================================ 
    55\chapter{Time Domain (STP) } 
     
    2121 
    2222Having defined the continuous equations in Chap.~\ref{PE}, we need now to choose  
    23 a time discretization. In the present chapter, we provide a general description of the \NEMO  
     23a time discretization, a key feature of an ocean model as it exerts a strong influence   
     24on the structure of the computer code ($i.e.$ on its flowchart).  
     25In the present chapter, we provide a general description of the \NEMO  
    2426time stepping strategy and the consequences for the order in which the equations are 
    2527solved. 
     
    158160\end{equation}  
    159161 
     162%%gm 
     163%%gm   UPDATE the next paragraphs with time varying thickness ... 
     164%%gm 
     165 
    160166This scheme is rather time consuming since it requires a matrix inversion,  
    161167but it becomes attractive since a value of 3 or more is needed for N in 
     
    188194 
    189195% ------------------------------------------------------------------------------------------------------------- 
    190 %        Hydrostatic Pressure gradient 
    191 % ------------------------------------------------------------------------------------------------------------- 
    192 \section{Hydrostatic Pressure Gradient --- semi-implicit scheme} 
    193 \label{STP_hpg_imp} 
     196%        Surface Pressure gradient 
     197% ------------------------------------------------------------------------------------------------------------- 
     198\section{Surface Pressure Gradient} 
     199\label{STP_spg_ts} 
     200 
     201===>>>>  TO BE written....  :-) 
    194202 
    195203%\gmcomment{  
     
    209217%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    210218%} 
    211  
    212 The range of stability of the Leap-Frog scheme can be extended by a factor of two 
    213 by introducing a semi-implicit computation of the hydrostatic pressure gradient term 
    214 \citep{Brown_Campana_MWR78}. Instead of evaluating the pressure at $t$, a linear  
    215 combination of values at $t-\rdt$, $t$ and $t+\rdt$ is used (see \S~\ref{DYN_hpg_imp}).   
    216 This technique, controlled by the \np{nn\_dynhpg\_rst} namelist parameter, does not  
    217 introduce a significant additional computational cost when tracers and thus density  
    218 is time stepped before the dynamics. This time step ordering is used in \NEMO  
    219 (Fig.\ref{Fig_TimeStep_flowchart}). 
    220  
    221  
    222 This technique, used in several GCMs (\NEMO, POP or MOM for instance),  
    223 makes the Leap-Frog scheme as efficient  
    224 \footnote{The efficiency is defined as the maximum allowed Courant number of the time  
    225 stepping scheme divided by the number of computations of the right-hand side per time step.}  
    226 as the Forward-Backward scheme used in MOM \citep{Griffies_al_OS05} and more  
    227 efficient than the LF-AM3 scheme (leapfrog time stepping combined with a third order 
    228 Adams-Moulthon interpolation for the predictor phase) used in ROMS  
    229 \citep{Shchepetkin_McWilliams_OM05}.  
    230  
    231 In fact, this technique is efficient when the physical phenomenon that  
    232 limits the time-step is internal gravity waves (IGWs). Indeed, it is  
    233 equivalent to applying a time filter to the pressure gradient to eliminate high  
    234 frequency IGWs. Obviously, the doubling of the time-step is achievable only  
    235 if no other factors control the time-step, such as the stability limits associated  
    236 with advection, diffusion or Coriolis terms. For example, it is inefficient in low resolution 
    237 global ocean configurations, since inertial oscillations in the vicinity of the North Pole  
    238 are the limiting factor for the time step. It is also often inefficient in very high  
    239 resolution configurations where strong currents and small grid cells exert  
    240 the strongest constraint on the time step. 
    241219 
    242220% ------------------------------------------------------------------------------------------------------------- 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Chapters/Chap_TRA.tex

    r5102 r6040  
    11% ================================================================ 
    2 % Chapter 1 Ocean Tracers (TRA) 
     2% Chapter 1 ——— Ocean Tracers (TRA) 
    33% ================================================================ 
    44\chapter{Ocean Tracers (TRA)} 
     
    4040described in chapters \S\ref{SBC}, \S\ref{LDF} and  \S\ref{ZDF}, respectively.  
    4141Note that \mdl{tranpc}, the non-penetrative convection module,  although  
    42 (temporarily) located in the NEMO/OPA/TRA directory, is described with the  
    43 model vertical physics (ZDF). 
    44 %%% 
    45 \gmcomment{change the position of eosbn2 in the reference code} 
    46 %%% 
     42located in the NEMO/OPA/TRA directory as it directly modifies the tracer fields,  
     43is described with the model vertical physics (ZDF) together with other available  
     44parameterization of convection. 
    4745 
    4846In the present chapter we also describe the diagnostic equations used to compute  
     
    5048freezing point with associated modules \mdl{eosbn2} and \mdl{phycst}). 
    5149 
    52 The different options available to the user are managed by namelist logicals or  
    53 CPP keys. For each equation term \textit{ttt}, the namelist logicals are \textit{ln\_trattt\_xxx},  
     50The different options available to the user are managed by namelist logicals or CPP keys.  
     51For each equation term  \textit{TTT}, the namelist logicals are \textit{ln\_traTTT\_xxx},  
    5452where \textit{xxx} is a 3 or 4 letter acronym corresponding to each optional scheme.  
    55 The CPP key (when it exists) is \textbf{key\_trattt}. The equivalent code can be  
    56 found in the \textit{trattt} or \textit{trattt\_xxx} module, in the NEMO/OPA/TRA directory. 
     53The CPP key (when it exists) is \textbf{key\_traTTT}. The equivalent code can be  
     54found in the \textit{traTTT} or \textit{traTTT\_xxx} module, in the NEMO/OPA/TRA directory. 
    5755 
    5856The user has the option of extracting each tendency term on the rhs of the tracer  
    59 equation for output (\key{trdtra} is defined), as described in Chap.~\ref{MISC}. 
     57equation for output (\np{ln\_tra\_trd} or \np{ln\_tra\_mxl}~=~true), as described in Chap.~\ref{MISC}. 
    6058 
    6159$\ $\newline    % force a new ligne 
     
    8280implicitly requires the use of the continuity equation. Indeed, it is obtained 
    8381by using the following equality : $\nabla \cdot \left( \vect{U}\,T \right)=\vect{U} \cdot \nabla T$  
    84 which results from the use of the continuity equation, $\nabla \cdot \vect{U}=0$ or  
    85 $ \partial _t e_3 + e_3\;\nabla \cdot \vect{U}=0$ in constant volume or variable volume case, respectively.  
     82which results from the use of the continuity equation,  $\partial _t e_3 + e_3\;\nabla \cdot \vect{U}=0$  
     83(which reduces to $\nabla \cdot \vect{U}=0$ in linear free surface, $i.e.$ \np{ln\_linssh}=true).  
    8684Therefore it is of paramount importance to design the discrete analogue of the  
    8785advection tendency so that it is consistent with the continuity equation in order to  
    8886enforce the conservation properties of the continuous equations. In other words,  
    89 by replacing $\tau$ by the number 1 in (\ref{Eq_tra_adv}) we recover the discrete form of  
     87by setting $\tau = 1$ in (\ref{Eq_tra_adv}) we recover the discrete form of  
    9088the continuity equation which is used to calculate the vertical velocity. 
    9189%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     
    113111boundary condition depends on the type of sea surface chosen:  
    114112\begin{description} 
    115 \item [linear free surface:] the first level thickness is constant in time:  
     113\item [linear free surface:] (\np{ln\_linssh}=true) the first level thickness is constant in time:  
    116114the vertical boundary condition is applied at the fixed surface $z=0$  
    117115rather than on the moving surface $z=\eta$. There is a non-zero advective  
     
    119117$\left. {\tau _w } \right|_{k=1/2} =T_{k=1} $, $i.e.$  
    120118the product of surface velocity (at $z=0$) by the first level tracer value. 
    121 \item [non-linear free surface:] (\key{vvl} is defined)  
     119\item [non-linear free surface:] (\np{ln\_linssh}=false)  
    122120convergence/divergence in the first ocean level moves the free surface  
    123121up/down. There is no tracer advection through it so that the advective  
     
    125123\end{description} 
    126124In all cases, this boundary condition retains local conservation of tracer.  
    127 Global conservation is obtained in both rigid-lid and non-linear free surface  
    128 cases, but not in the linear free surface case. Nevertheless, in the latter 
    129 case, it is achieved to a good approximation since the non-conservative  
     125Global conservation is obtained in non-linear free surface case,  
     126but \textit{not} in the linear free surface case. Nevertheless, in the latter case,  
     127it is achieved to a good approximation since the non-conservative  
    130128term is the product of the time derivative of the tracer and the free surface  
    131 height, two quantities that are not correlated (see \S\ref{PE_free_surface},  
    132 and also \citet{Roullet_Madec_JGR00,Griffies_al_MWR01,Campin2004}). 
     129height, two quantities that are not correlated \citep{Roullet_Madec_JGR00,Griffies_al_MWR01,Campin2004}. 
    133130 
    134131The velocity field that appears in (\ref{Eq_tra_adv}) and (\ref{Eq_tra_adv_zco})  
    135 is the centred (\textit{now}) \textit{eulerian} ocean velocity (see Chap.~\ref{DYN}).  
    136 When eddy induced velocity (\textit{eiv}) parameterisation is used it is the \textit{now}  
    137 \textit{effective} velocity ($i.e.$ the sum of the eulerian and eiv velocities) which is used. 
    138  
    139 The choice of an advection scheme is made in the \textit{\ngn{nam\_traadv}} namelist, by  
    140 setting to \textit{true} one and only one of the logicals \textit{ln\_traadv\_xxx}. The  
     132is the centred (\textit{now}) \textit{effective} ocean velocity, $i.e.$ the \textit{eulerian} velocity 
     133(see Chap.~\ref{DYN}) plus the eddy induced velocity (\textit{eiv})  
     134and/or the mixed layer eddy induced velocity (\textit{eiv}) 
     135when those parameterisations are used (see Chap.~\ref{LDF}). 
     136 
     137The choice of an advection scheme is made in the \textit{\ngn{namtra\_adv}} namelist, by  
     138setting to \textit{true} one of the logicals \textit{ln\_traadv\_xxx}. The  
    141139corresponding code can be found in the \textit{traadv\_xxx.F90} module, where  
    142 \textit{xxx} is a 3 or 4 letter acronym corresponding to each scheme. Details  
    143 of the advection schemes are given below. The choice of an advection scheme  
     140\textit{xxx} is a 3 or 4 letter acronym corresponding to each scheme.  
     141By default ($i.e.$ in the reference namelist, \ngn{namelist\_ref}), all the logicals  
     142are set to \textit{false}. If the user does not select an advection scheme  
     143in the configuration namelist (\ngn{namelist\_cfg}), the tracers will not be advected ! 
     144 
     145Details of the advection schemes are given below. The choice of an advection scheme  
    144146is a complex matter which depends on the model physics, model resolution,  
    145147type of tracer, as well as the issue of numerical cost.  
    146148 
    147149Note that  
    148 (1) cen2, cen4 and TVD schemes require an explicit diffusion  
    149 operator while the other schemes are diffusive enough so that they do not  
    150 require additional diffusion ;  
    151 (2) cen2, cen4, MUSCL2, and UBS are not \textit{positive} schemes 
     150(1) CEN and FCT schemes require an explicit diffusion operator  
     151while the other schemes are diffusive enough so that they do not necessarily require additional diffusion ;  
     152(2) CEN and UBS are not \textit{positive} schemes 
    152153\footnote{negative values can appear in an initially strictly positive tracer field  
    153154which is advected} 
     
    163164 
    164165% ------------------------------------------------------------------------------------------------------------- 
     166%        2nd and 4th order centred schemes 
     167% ------------------------------------------------------------------------------------------------------------- 
     168\subsection   [$2^{nd}$ and $4^{th}$ order centred schemes (CEN) (\np{ln\_traadv\_cen})] 
     169         {$2^{nd}$ and $4^{th}$ order centred schemes (CEN) (\np{ln\_traadv\_cen}=true)} 
     170\label{TRA_adv_cen} 
     171 
    165172%        2nd order centred scheme   
    166 % ------------------------------------------------------------------------------------------------------------- 
    167 \subsection   [$2^{nd}$ order centred scheme (cen2) (\np{ln\_traadv\_cen2})] 
    168          {$2^{nd}$ order centred scheme (cen2) (\np{ln\_traadv\_cen2}=true)} 
    169 \label{TRA_adv_cen2} 
    170  
    171 In the centred second order formulation, the tracer at velocity points is  
     173 
     174In the $2^{nd}$ order centred formulation (CEN2), the tracer at velocity points is  
    172175evaluated as the mean of the two neighbouring $T$-point values.  
    173176For example, in the $i$-direction : 
     
    176179\end{equation} 
    177180 
    178 The scheme is non diffusive ($i.e.$ it conserves the tracer variance, $\tau^2)$  
     181CEN2 is non diffusive ($i.e.$ it conserves the tracer variance, $\tau^2)$  
    179182but dispersive ($i.e.$ it may create false extrema). It is therefore notoriously  
    180183noisy and must be used in conjunction with an explicit diffusion operator to  
    181184produce a sensible solution. The associated time-stepping is performed using  
    182185a leapfrog scheme in conjunction with an Asselin time-filter, so $T$ in  
    183 (\ref{Eq_tra_adv_cen2}) is the \textit{now} tracer value. The centered second  
    184 order advection is computed in the \mdl{traadv\_cen2} module. In this module, 
    185 it is advantageous to combine the \textit{cen2} scheme with an upstream scheme 
    186 in specific areas which require a strong diffusion in order to avoid the generation  
    187 of false extrema. These areas are the vicinity of large river mouths, some straits  
    188 with coarse resolution, and the vicinity of ice cover area ($i.e.$ when the ocean  
    189 temperature is close to the freezing point). 
    190 This combined scheme has been included for specific grid points in the ORCA2  
    191 and ORCA4 configurations only. This is an obsolescent feature as the recommended  
    192 advection scheme for the ORCA configuration is TVD (see  \S\ref{TRA_adv_tvd}). 
    193  
    194 Note that using the cen2 scheme, the overall tracer advection is of second  
     186(\ref{Eq_tra_adv_cen2}) is the \textit{now} tracer value.  
     187CEN2 is computed in the \mdl{traadv\_cen} module. 
     188 
     189Note that using the CEN2, the overall tracer advection is of second  
    195190order accuracy since both (\ref{Eq_tra_adv}) and (\ref{Eq_tra_adv_cen2})  
    196191have this order of accuracy. \gmcomment{Note also that ... blah, blah} 
    197192 
    198 % ------------------------------------------------------------------------------------------------------------- 
    199193%        4nd order centred scheme   
    200 % ------------------------------------------------------------------------------------------------------------- 
    201 \subsection   [$4^{nd}$ order centred scheme (cen4) (\np{ln\_traadv\_cen4})] 
    202            {$4^{nd}$ order centred scheme (cen4) (\np{ln\_traadv\_cen4}=true)} 
    203 \label{TRA_adv_cen4} 
    204  
    205 In the $4^{th}$ order formulation (to be implemented), tracer values are  
    206 evaluated at velocity points as a $4^{th}$ order interpolation, and thus depend on  
    207 the four neighbouring $T$-points. For example, in the $i$-direction: 
     194 
     195In the $4^{th}$ order formulation (CEN4), tracer values are evaluated at velocity points as  
     196a $4^{th}$ order interpolation, and thus depend on the four neighbouring $T$-points.  
     197For example, in the $i$-direction: 
    208198\begin{equation} \label{Eq_tra_adv_cen4} 
    209199\tau _u^{cen4}  
     
    211201\end{equation} 
    212202 
    213 Strictly speaking, the cen4 scheme is not a $4^{th}$ order advection scheme  
     203Strictly speaking, the CEN4 scheme is not a $4^{th}$ order advection scheme  
    214204but a $4^{th}$ order evaluation of advective fluxes, since the divergence of  
    215 advective fluxes \eqref{Eq_tra_adv} is kept at $2^{nd}$ order. The phrase ``$4^{th}$  
    216 order scheme'' used in oceanographic literature is usually associated  
    217 with the scheme presented here. Introducing a \textit{true} $4^{th}$ order advection  
    218 scheme is feasible but, for consistency reasons, it requires changes in the  
    219 discretisation of the tracer advection together with changes in both the  
    220 continuity equation and the momentum advection terms.   
     205advective fluxes \eqref{Eq_tra_adv} is kept at $2^{nd}$ order.  
     206The expression \textit{$4^{th}$ order scheme} used in oceanographic literature  
     207is usually associated with the scheme presented here.  
     208Introducing a \textit{true} $4^{th}$ order advection scheme is feasible but,  
     209for consistency reasons, it requires changes in the discretisation of the tracer  
     210advection together with changes in the continuity equation,  
     211and the momentum advection and pressure terms.   
    221212 
    222213A direct consequence of the pseudo-fourth order nature of the scheme is that  
    223 it is not non-diffusive, i.e. the global variance of a tracer is not preserved using  
    224 \textit{cen4}. Furthermore, it must be used in conjunction with an explicit  
    225 diffusion operator to produce a sensible solution. The time-stepping is also  
     214it is not non-diffusive, $i.e.$ the global variance of a tracer is not preserved using  
     215CEN4. Furthermore, it must be used in conjunction with an explicit  
     216diffusion operator to produce a sensible solution. As in CEN2 case, the time-stepping is  
    226217performed using a leapfrog scheme in conjunction with an Asselin time-filter,  
    227218so $T$ in (\ref{Eq_tra_adv_cen4}) is the \textit{now} tracer. 
     
    235226 
    236227% ------------------------------------------------------------------------------------------------------------- 
    237 %        TVD scheme   
    238 % ------------------------------------------------------------------------------------------------------------- 
    239 \subsection   [Total Variance Dissipation scheme (TVD) (\np{ln\_traadv\_tvd})] 
    240          {Total Variance Dissipation scheme (TVD) (\np{ln\_traadv\_tvd}=true)} 
     228%        FCT scheme   
     229% ------------------------------------------------------------------------------------------------------------- 
     230\subsection   [$2^{nd}$ and $4^{th}$ Flux Corrected Transport schemes (FCT) (\np{ln\_traadv\_fct})] 
     231         {$2^{nd}$ and $4^{th}$ Flux Corrected Transport schemes (FCT) (\np{ln\_traadv\_fct}=true)} 
    241232\label{TRA_adv_tvd} 
    242233 
    243 In the Total Variance Dissipation (TVD) formulation, the tracer at velocity  
     234In the Flux Corrected Transport formulation, the tracer at velocity  
    244235points is evaluated using a combination of an upstream and a centred scheme.  
    245236For example, in the $i$-direction : 
    246 \begin{equation} \label{Eq_tra_adv_tvd} 
     237\begin{equation} \label{Eq_tra_adv_fct} 
    247238\begin{split} 
    248239\tau _u^{ups}&= \begin{cases} 
     
    251242              \end{cases}     \\ 
    252243\\ 
    253 \tau _u^{tvd}&=\tau _u^{ups} +c_u \;\left( {\tau _u^{cen2} -\tau _u^{ups} } \right) 
     244\tau _u^{fct}&=\tau _u^{ups} +c_u \;\left( {\tau _u^{cen} -\tau _u^{ups} } \right) 
    254245\end{split} 
    255246\end{equation} 
     
    260251produces a local extremum in the tracer field. The resulting scheme is quite  
    261252expensive but \emph{positive}. It can be used on both active and passive tracers.  
    262 This scheme is tested and compared with MUSCL and the MPDATA scheme in  
    263 \citet{Levy_al_GRL01}; note that in this paper it is referred to as "FCT" (Flux corrected  
    264 transport) rather than TVD. The TVD scheme is implemented in the \mdl{traadv\_tvd} module. 
     253This scheme is tested and compared with MUSCL and a MPDATA scheme in \citet{Levy_al_GRL01}.  
     254The FCT scheme is implemented in the \mdl{traadv\_fct} module. 
    265255 
    266256For stability reasons (see \S\ref{STP}), 
    267 $\tau _u^{cen2}$ is evaluated  in (\ref{Eq_tra_adv_tvd}) using the \textit{now} tracer while $\tau _u^{ups}$  
    268 is evaluated using the \textit{before} tracer. In other words, the advective part of  
    269 the scheme is time stepped with a leap-frog scheme while a forward scheme is  
    270 used for the diffusive part.  
     257$\tau _u^{cen}$ is evaluated  in (\ref{Eq_tra_adv_fct}) using the \textit{now} tracer  
     258while $\tau _u^{ups}$ is evaluated using the \textit{before} tracer. In other words,  
     259the advective part of the scheme is time stepped with a leap-frog scheme  
     260while a forward scheme is used for the diffusive part.  
    271261 
    272262% ------------------------------------------------------------------------------------------------------------- 
    273263%        MUSCL scheme   
    274264% ------------------------------------------------------------------------------------------------------------- 
    275 \subsection[MUSCL scheme  (\np{ln\_traadv\_muscl})] 
    276    {Monotone Upstream Scheme for Conservative Laws (MUSCL) (\np{ln\_traadv\_muscl}=T)} 
    277 \label{TRA_adv_muscl} 
     265\subsection[MUSCL scheme  (\np{ln\_traadv\_mus})] 
     266   {Monotone Upstream Scheme for Conservative Laws (MUSCL) (\np{ln\_traadv\_mus}=T)} 
     267\label{TRA_adv_mus} 
    278268 
    279269The Monotone Upstream Scheme for Conservative Laws (MUSCL) has been  
     
    281271is evaluated assuming a linear tracer variation between two $T$-points  
    282272(Fig.\ref{Fig_adv_scheme}). For example, in the $i$-direction : 
    283 \begin{equation} \label{Eq_tra_adv_muscl} 
     273\begin{equation} \label{Eq_tra_adv_mus} 
    284274   \tau _u^{mus} = \left\{      \begin{aligned} 
    285275         &\tau _i  &+ \frac{1}{2} \;\left( 1-\frac{u_{i+1/2} \;\rdt}{e_{1u}} \right) 
     
    296286 
    297287For an ocean grid point adjacent to land and where the ocean velocity is  
    298 directed toward land, two choices are available: an upstream flux  
    299 (\np{ln\_traadv\_muscl}=true) or a second order flux  
    300 (\np{ln\_traadv\_muscl2}=true). Note that the latter choice does not ensure  
    301 the \textit{positive} character of the scheme. Only the former can be used  
    302 on both active and passive tracers. The two MUSCL schemes are implemented  
    303 in the \mdl{traadv\_tvd} and \mdl{traadv\_tvd2} modules. 
     288directed toward land, an upstream flux is used. This choice ensure  
     289the \textit{positive} character of the scheme.  
    304290 
    305291% ------------------------------------------------------------------------------------------------------------- 
     
    310296\label{TRA_adv_ubs} 
    311297 
    312 The UBS advection scheme is an upstream-biased third order scheme based on  
    313 an upstream-biased parabolic interpolation. It is also known as the Cell  
    314 Averaged QUICK scheme (Quadratic Upstream Interpolation for Convective  
     298The UBS advection scheme (also often called UP3) is an upstream-biased third order  
     299scheme based on an upstream-biased parabolic interpolation. It is also known as  
     300the Cell Averaged QUICK scheme (Quadratic Upstream Interpolation for Convective  
    315301Kinematics). For example, in the $i$-direction : 
    316302\begin{equation} \label{Eq_tra_adv_ubs} 
     
    324310 
    325311This results in a dissipatively dominant (i.e. hyper-diffusive) truncation  
    326 error \citep{Shchepetkin_McWilliams_OM05}. The overall performance of the advection  
    327 scheme is similar to that reported in \cite{Farrow1995}.  
     312error \citep{Shchepetkin_McWilliams_OM05}. The overall performance of 
     313 the advection scheme is similar to that reported in \cite{Farrow1995}.  
    328314It is a relatively good compromise between accuracy and smoothness.  
    329315It is not a \emph{positive} scheme, meaning that false extrema are permitted,  
    330316but the amplitude of such are significantly reduced over the centred second  
    331 order method. Nevertheless it is not recommended that it should be applied  
    332 to a passive tracer that requires positivity.  
     317or fourth order method. Nevertheless it is not recommended that it should be  
     318applied to a passive tracer that requires positivity.  
    333319 
    334320The intrinsic diffusion of UBS makes its use risky in the vertical direction  
    335321where the control of artificial diapycnal fluxes is of paramount importance.  
    336 Therefore the vertical flux is evaluated using the TVD scheme when  
    337 \np{ln\_traadv\_ubs}=true. 
     322Therefore the vertical flux is evaluated using either a 2nd order FCT scheme  
     323or a 4th order COMPACT scheme (\np{nn\_cen\_v}=2 or 4). 
    338324 
    339325For stability reasons  (see \S\ref{STP}), 
    340 the first term  in \eqref{Eq_tra_adv_ubs} (which corresponds to a second order centred scheme)  
    341 is evaluated using the \textit{now} tracer (centred in time) while the  
    342 second term (which is the diffusive part of the scheme), is  
     326the first term  in \eqref{Eq_tra_adv_ubs} (which corresponds to a second order  
     327centred scheme) is evaluated using the \textit{now} tracer (centred in time)  
     328while the second term (which is the diffusive part of the scheme), is  
    343329evaluated using the \textit{before} tracer (forward in time).  
    344330This choice is discussed by \citet{Webb_al_JAOT98} in the context of the  
     
    350336substitution in the \mdl{traadv\_ubs} module and obtain a QUICK scheme. 
    351337 
     338??? 
     339 
    352340Four different options are possible for the vertical  
    353341component used in the UBS scheme. $\tau _w^{ubs}$ can be evaluated  
    354342using either \textit{(a)} a centred $2^{nd}$ order scheme, or  \textit{(b)}  
    355 a TVD scheme, or  \textit{(c)} an interpolation based on conservative  
     343a FCT scheme, or  \textit{(c)} an interpolation based on conservative  
    356344parabolic splines following the \citet{Shchepetkin_McWilliams_OM05}  
    357345implementation of UBS in ROMS, or  \textit{(d)} a UBS. The $3^{rd}$ case  
    358346has dispersion properties similar to an eighth-order accurate conventional scheme. 
    359 The current reference version uses method b) 
     347The current reference version uses method (b). 
     348 
     349??? 
    360350 
    361351Note that : 
     
    390380Thirdly, the diffusion term is in fact a biharmonic operator with an eddy  
    391381coefficient which is simply proportional to the velocity: 
    392  $A_u^{lm}= - \frac{1}{12}\,{e_{1u}}^3\,|u|$. Note that NEMO v3.4 still uses  
     382 $A_u^{lm}= \frac{1}{12}\,{e_{1u}}^3\,|u|$. Note the current version of NEMO still uses  
    393383 \eqref{Eq_tra_adv_ubs}, not \eqref{Eq_traadv_ubs2}. 
    394384 %%% 
     
    416406direction (as for the UBS case) should be implemented to restore this property. 
    417407 
    418  
    419 % ------------------------------------------------------------------------------------------------------------- 
    420 %        PPM scheme   
    421 % ------------------------------------------------------------------------------------------------------------- 
    422 \subsection   [Piecewise Parabolic Method (PPM) (\np{ln\_traadv\_ppm})] 
    423          {Piecewise Parabolic Method (PPM) (\np{ln\_traadv\_ppm}=true)} 
    424 \label{TRA_adv_ppm} 
    425  
    426 The Piecewise Parabolic Method (PPM) proposed by Colella and Woodward (1984)  
    427 \sgacomment{reference?} 
    428 is based on a quadradic piecewise construction. Like the QCK scheme, it is associated  
    429 with the ULTIMATE QUICKEST limiter \citep{Leonard1991}. It has been implemented  
    430 in \NEMO by G. Reffray (MERCATOR-ocean) but is not yet offered in the reference  
    431 version 3.3. 
    432408 
    433409% ================================================================ 
     
    11671143%        Equation of State 
    11681144% ------------------------------------------------------------------------------------------------------------- 
    1169 \subsection{Equation of State (\np{nn\_eos} = 0, 1 or 2)} 
     1145\subsection{Equation Of Seawater (\np{nn\_eos} = -1, 0, or 1)} 
    11701146\label{TRA_eos} 
    11711147 
    1172 It is necessary to know the equation of state for the ocean very accurately  
    1173 to determine stability properties (especially the Brunt-Vais\"{a}l\"{a} frequency),  
    1174 particularly in the deep ocean. The ocean seawater volumic mass, $\rho$,  
    1175 abusively called density, is a non linear empirical function of \textit{in situ}  
    1176 temperature, salinity and pressure. The reference equation of state is that  
    1177 defined by the Joint Panel on Oceanographic Tables and Standards  
    1178 \citep{UNESCO1983}. It was the standard equation of state used in early  
    1179 releases of OPA. However, even though this computation is fully vectorised,  
    1180 it is quite time consuming ($15$ to $20${\%} of the total CPU time) since  
    1181 it requires the prior computation of the \textit{in situ} temperature from the  
    1182 model \textit{potential} temperature using the \citep{Bryden1973} polynomial  
    1183 for adiabatic lapse rate and a $4^th$ order Runge-Kutta integration scheme.  
    1184 Since OPA6, we have used the \citet{JackMcD1995} equation of state for  
    1185 seawater instead. It allows the computation of the \textit{in situ} ocean density  
    1186 directly as a function of \textit{potential} temperature relative to the surface  
    1187 (an \NEMO variable), the practical salinity (another \NEMO variable) and the  
    1188 pressure (assuming no pressure variation along geopotential surfaces, $i.e.$  
    1189 the pressure in decibars is approximated by the depth in meters).  
    1190 Both the \citet{UNESCO1983} and \citet{JackMcD1995} equations of state  
    1191 have exactly the same except that the values of the various coefficients have  
    1192 been adjusted by \citet{JackMcD1995} in order to directly use the \textit{potential}  
    1193 temperature instead of the \textit{in situ} one. This reduces the CPU time of the  
    1194 \textit{in situ} density computation to about $3${\%} of the total CPU time,  
    1195 while maintaining a quite accurate equation of state. 
    1196  
    1197 In the computer code, a \textit{true} density anomaly, $d_a= \rho / \rho_o - 1$,  
    1198 is computed, with $\rho_o$ a reference volumic mass. Called \textit{rau0}  
    1199 in the code, $\rho_o$ is defined in \mdl{phycst}, and a value of $1,035~Kg/m^3$.  
     1148The Equation Of Seawater (EOS) is an empirical nonlinear thermodynamic relationship  
     1149linking seawater density, $\rho$, to a number of state variables,  
     1150most typically temperature, salinity and pressure.  
     1151Because density gradients control the pressure gradient force through the hydrostatic balance,  
     1152the equation of state provides a fundamental bridge between the distribution of active tracers  
     1153and the fluid dynamics. Nonlinearities of the EOS are of major importance, in particular  
     1154influencing the circulation through determination of the static stability below the mixed layer,  
     1155thus controlling rates of exchange between the atmosphere  and the ocean interior \citep{Roquet_JPO2015}.  
     1156Therefore an accurate EOS based on either the 1980 equation of state (EOS-80, \cite{UNESCO1983})  
     1157or TEOS-10 \citep{TEOS10} standards should be used anytime a simulation of the real  
     1158ocean circulation is attempted \citep{Roquet_JPO2015}.  
     1159The use of TEOS-10 is highly recommended because  
     1160\textit{(i)} it is the new official EOS,  
     1161\textit{(ii)} it is more accurate, being based on an updated database of laboratory measurements, and  
     1162\textit{(iii)} it uses Conservative Temperature and Absolute Salinity (instead of potential temperature  
     1163and practical salinity for EOS-980, both variables being more suitable for use as model variables  
     1164\citep{TEOS10, Graham_McDougall_JPO13}.  
     1165EOS-80 is an obsolescent feature of the NEMO system, kept only for backward compatibility. 
     1166For process studies, it is often convenient to use an approximation of the EOS. To that purposed,  
     1167a simplified EOS (S-EOS) inspired by \citet{Vallis06} is also available. 
     1168 
     1169In the computer code, a density anomaly, $d_a= \rho / \rho_o - 1$,  
     1170is computed, with $\rho_o$ a reference density. Called \textit{rau0}  
     1171in the code, $\rho_o$ is set in \mdl{phycst} to a value of $1,026~Kg/m^3$.  
    12001172This is a sensible choice for the reference density used in a Boussinesq ocean  
    12011173climate model, as, with the exception of only a small percentage of the ocean,  
    1202 density in the World Ocean varies by no more than 2$\%$ from $1,035~kg/m^3$  
    1203 \citep{Gill1982}. 
    1204  
    1205 Options are defined through the  \ngn{nameos} namelist variables. 
    1206 The default option (namelist parameter \np{nn\_eos}=0) is the \citet{JackMcD1995}  
    1207 equation of state. Its use is highly recommended. However, for process studies,  
    1208 it is often convenient to use a linear approximation of the density. 
     1174density in the World Ocean varies by no more than 2$\%$ from that value \citep{Gill1982}. 
     1175 
     1176Options are defined through the  \ngn{nameos} namelist variables, and in particular \np{nn\_eos}  
     1177which controls the EOS used (=-1 for TEOS10 ; =0 for EOS-80 ; =1 for S-EOS). 
     1178\begin{description} 
     1179 
     1180\item[\np{nn\_eos}$=-1$] the polyTEOS10-bsq equation of seawater \citep{Roquet_OM2015} is used.   
     1181The accuracy of this approximation is comparable to the TEOS-10 rational function approximation,  
     1182but it is optimized for a boussinesq fluid and the polynomial expressions have simpler  
     1183and more computationally efficient expressions for their derived quantities  
     1184which make them more adapted for use in ocean models.  
     1185Note that a slightly higher precision polynomial form is now used replacement of the TEOS-10  
     1186rational function approximation for hydrographic data analysis  \citep{TEOS10}.  
     1187A key point is that conservative state variables are used:  
     1188Absolute Salinity (unit: g/kg, notation: $S_A$) and Conservative Temperature (unit: $\degres C$, notation: $\Theta$). 
     1189The pressure in decibars is approximated by the depth in meters.  
     1190With TEOS10, the specific heat capacity of sea water, $C_p$, is a constant. It is set to  
     1191$C_p=3991.86795711963~J\,Kg^{-1}\,\degres K^{-1}$, according to \citet{TEOS10}. 
     1192 
     1193Choosing polyTEOS10-bsq implies that the state variables used by the model are  
     1194$\Theta$ and $S_A$. In particular, the initial state deined by the user have to be given as  
     1195\textit{Conservative} Temperature and \textit{Absolute} Salinity.  
     1196In addition, setting \np{ln\_useCT} to \textit{true} convert the Conservative SST to potential SST  
     1197prior to either computing the air-sea and ice-sea fluxes (forced mode)  
     1198or sending the SST field to the atmosphere (coupled mode). 
     1199 
     1200\item[\np{nn\_eos}$=0$] the polyEOS80-bsq equation of seawater is used. 
     1201It takes the same polynomial form as the polyTEOS10, but the coefficients have been optimized  
     1202to accurately fit EOS80 (Roquet, personal comm.). The state variables used in both the EOS80  
     1203and the ocean model are:  
     1204the Practical Salinity ((unit: psu, notation: $S_p$)) and Potential Temperature (unit: $\degres C$, notation: $\theta$). 
     1205The pressure in decibars is approximated by the depth in meters.   
     1206With thsi EOS, the specific heat capacity of sea water, $C_p$, is a function of temperature,  
     1207salinity and pressure \citep{UNESCO1983}. Nevertheless, a severe assumption is made in order to  
     1208have a heat content ($C_p T_p$) which is conserved by the model: $C_p$ is set to a constant  
     1209value, the TEOS10 value.  
     1210  
     1211\item[\np{nn\_eos}$=1$] a simplified EOS (S-EOS) inspired by \citet{Vallis06} is chosen,  
     1212the coefficients of which has been optimized to fit the behavior of TEOS10 (Roquet, personal comm.)  
     1213(see also \citet{Roquet_JPO2015}). It provides a simplistic linear representation of both  
     1214cabbeling and thermobaricity effects which is enough for a proper treatment of the EOS  
     1215in theoretical studies \citep{Roquet_JPO2015}. 
    12091216With such an equation of state there is no longer a distinction between  
    1210 \textit{in situ} and \textit{potential} density and both cabbeling and thermobaric 
    1211 effects are removed. 
    1212 Two linear formulations are available: a function of $T$ only (\np{nn\_eos}=1)  
    1213 and a function of both $T$ and $S$ (\np{nn\_eos}=2): 
    1214 \begin{equation} \label{Eq_tra_eos_linear} 
     1217\textit{conservative} and \textit{potential} temperature, as well as between \textit{absolute}  
     1218and \textit{practical} salinity. 
     1219S-EOS takes the following expression: 
     1220\begin{equation} \label{Eq_tra_S-EOS} 
    12151221\begin{split} 
    1216   d_a(T)       &=  \rho (T)      /  \rho_o   - 1     =  \  0.0285         -  \alpha   \;T     \\  
    1217   d_a(T,S)    &=  \rho (T,S)   /  \rho_o   - 1     =  \  \beta \; S       -  \alpha   \;T     
     1222  d_a(T,S,z)  =  ( & - a_0 \; ( 1 + 0.5 \; \lambda_1 \; T_a + \mu_1 \; z ) * T_a  \\ 
     1223                                & + b_0 \; ( 1 - 0.5 \; \lambda_2 \; S_a - \mu_2 \; z ) * S_a  \\ 
     1224                                & - \nu \; T_a \; S_a \;  ) \; / \; \rho_o                     \\ 
     1225  with \ \  T_a = T-10  \; ;  & \;  S_a = S-35  \; ;\;  \rho_o = 1026~Kg/m^3 
    12181226\end{split} 
    12191227\end{equation}  
    1220 where $\alpha$ and $\beta$ are the thermal and haline expansion  
    1221 coefficients, and $\rho_o$, the reference volumic mass, $rau0$.  
    1222 ($\alpha$ and $\beta$ can be modified through the \np{rn\_alpha} and  
    1223 \np{rn\_beta} namelist variables). Note that when $d_a$ is a function  
    1224 of $T$ only (\np{nn\_eos}=1), the salinity is a passive tracer and can be  
    1225 used as such. 
     1228where the computer name of the coefficients as well as their standard value are given in \ref{Tab_SEOS}. 
     1229In fact, when choosing S-EOS, various approximation of EOS can be specified simply by changing  
     1230the associated coefficients.  
     1231Setting to zero the two thermobaric coefficients ($\mu_1$, $\mu_2$) remove thermobaric effect from S-EOS. 
     1232setting to zero the three cabbeling coefficients ($\lambda_1$, $\lambda_2$, $\nu$) remove cabbeling effect from S-EOS. 
     1233Keeping non-zero value to $a_0$ and $b_0$ provide a linear EOS function of T and S. 
     1234 
     1235\end{description} 
     1236 
     1237 
     1238%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     1239\begin{table}[!tb] 
     1240\begin{center} \begin{tabular}{|p{26pt}|p{72pt}|p{56pt}|p{136pt}|} 
     1241\hline 
     1242coeff.   & computer name   & S-EOS     &  description                      \\ \hline 
     1243$a_0$       & \np{nn\_a0}     & 1.6550 $10^{-1}$ &  linear thermal expansion coeff.    \\ \hline 
     1244$b_0$       & \np{nn\_b0}     & 7.6554 $10^{-1}$ &  linear haline  expansion coeff.    \\ \hline 
     1245$\lambda_1$ & \np{nn\_lambda1}& 5.9520 $10^{-2}$ &  cabbeling coeff. in $T^2$          \\ \hline 
     1246$\lambda_2$ & \np{nn\_lambda2}& 5.4914 $10^{-4}$ &  cabbeling coeff. in $S^2$       \\ \hline 
     1247$\nu$       & \np{nn\_nu}     & 2.4341 $10^{-3}$ &  cabbeling coeff. in $T \, S$       \\ \hline 
     1248$\mu_1$     & \np{nn\_mu1}    & 1.4970 $10^{-4}$ &  thermobaric coeff. in T         \\ \hline 
     1249$\mu_2$     & \np{nn\_mu2}    & 1.1090 $10^{-5}$ &  thermobaric coeff. in S            \\ \hline 
     1250\end{tabular} 
     1251\caption{ \label{Tab_SEOS} 
     1252Standard value of S-EOS coefficients. } 
     1253\end{center} 
     1254\end{table} 
     1255%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     1256 
    12261257 
    12271258% ------------------------------------------------------------------------------------------------------------- 
     
    12321263 
    12331264An accurate computation of the ocean stability (i.e. of $N$, the brunt-Vais\"{a}l\"{a} 
    1234  frequency) is of paramount importance as it is used in several ocean  
    1235  parameterisations (namely TKE, KPP, Richardson number dependent  
    1236  vertical diffusion, enhanced vertical diffusion, non-penetrative convection,  
    1237  iso-neutral diffusion). In particular, one must be aware that $N^2$ has to  
    1238  be computed with an \textit{in situ} reference. The expression for $N^2$  
    1239  depends on the type of equation of state used (\np{nn\_eos} namelist parameter). 
    1240  
    1241 For \np{nn\_eos}=0 (\citet{JackMcD1995} equation of state), the \citet{McDougall1987}  
    1242 polynomial expression is used (with the pressure in decibar approximated by  
    1243 the depth in meters):  
     1265 frequency) is of paramount importance as determine the ocean stratification and  
     1266 is used in several ocean parameterisations (namely TKE, GLS, Richardson number dependent  
     1267 vertical diffusion, enhanced vertical diffusion, non-penetrative convection, tidal mixing  
     1268 parameterisation, iso-neutral diffusion). In particular, $N^2$ has to be computed at the local pressure  
     1269 (pressure in decibar being approximated by the depth in meters). The expression for $N^2$  
     1270 is given by:  
    12441271\begin{equation} \label{Eq_tra_bn2} 
    1245 N^2 = \frac{g}{e_{3w}} \; \beta   \  
    1246       \left(  \alpha / \beta \ \delta_{k+1/2}[T]     - \delta_{k+1/2}[S]   \right)  
    1247 \end{equation}  
    1248 where $\alpha$ and $\beta$ are the thermal and haline expansion coefficients.  
    1249 They are a function of  $\overline{T}^{\,k+1/2},\widetilde{S}=\overline{S}^{\,k+1/2} - 35.$,  
    1250 and  $z_w$, with $T$ the \textit{potential} temperature and $\widetilde{S}$ a salinity anomaly.  
    1251 Note that both $\alpha$ and $\beta$ depend on \textit{potential}  
    1252 temperature and salinity which are averaged at $w$-points prior  
    1253 to the computation instead of being computed at $T$-points and  
    1254 then averaged to $w$-points. 
    1255  
    1256 When a linear equation of state is used (\np{nn\_eos}=1 or 2,  
    1257 \eqref{Eq_tra_bn2} reduces to: 
    1258 \begin{equation} \label{Eq_tra_bn2_linear} 
    12591272N^2 = \frac{g}{e_{3w}} \left(   \beta \;\delta_{k+1/2}[S] - \alpha \;\delta_{k+1/2}[T]   \right) 
    12601273\end{equation}  
    1261 where $\alpha$ and $\beta $ are the constant coefficients used to  
    1262 defined the linear equation of state \eqref{Eq_tra_eos_linear}. 
    1263  
    1264 % ------------------------------------------------------------------------------------------------------------- 
    1265 %        Specific Heat 
    1266 % ------------------------------------------------------------------------------------------------------------- 
    1267 \subsection    [Specific Heat (\textit{phycst})] 
    1268          {Specific Heat (\mdl{phycst})} 
    1269 \label{TRA_adv_ldf} 
    1270  
    1271 The specific heat of sea water, $C_p$, is a function of temperature, salinity  
    1272 and pressure \citep{UNESCO1983}. It is only used in the model to convert  
    1273 surface heat fluxes into surface temperature increase and so the pressure  
    1274 dependence is neglected. The dependence on $T$ and $S$ is weak.  
    1275 For example, with $S=35~psu$, $C_p$ increases from $3989$ to $4002$  
    1276 when $T$ varies from -2~\degres C to 31~\degres C. Therefore, $C_p$ has  
    1277 been chosen as a constant: $C_p=4.10^3~J\,Kg^{-1}\,\degres K^{-1}$.  
    1278 Its value is set in \mdl{phycst} module.  
    1279  
     1274where $(T,S) = (\Theta, S_A)$ for TEOS10, $= (\theta, S_p)$ for TEOS-80, or $=(T,S)$ for S-EOS,  
     1275and, $\alpha$ and $\beta$ are the thermal and haline expansion coefficients.  
     1276The coefficients are a polynomial function of temperature, salinity and depth which expression  
     1277depends on the chosen EOS. They are computed through \textit{eos\_rab}, a \textsc{Fortran}  
     1278function that can be found in \mdl{eosbn2}. 
    12801279 
    12811280% ------------------------------------------------------------------------------------------------------------- 
     
    12981297sea water ($i.e.$ referenced to the surface $p=0$), thus the pressure dependent  
    12991298terms in \eqref{Eq_tra_eos_fzp} (last term) have been dropped. The freezing 
    1300 point is computed through \textit{tfreez}, a \textsc{Fortran} function that can be found  
     1299point is computed through \textit{eos\_fzp}, a \textsc{Fortran} function that can be found  
    13011300in \mdl{eosbn2}.   
     1301 
     1302 
     1303% ------------------------------------------------------------------------------------------------------------- 
     1304%        Potential Energy      
     1305% ------------------------------------------------------------------------------------------------------------- 
     1306%\subsection{Potential Energy anomalies} 
     1307%\label{TRA_bn2} 
     1308 
     1309%    =====>>>>> TO BE written 
     1310% 
     1311 
    13021312 
    13031313% ================================================================ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Chapters/Introduction.tex

    r4661 r6040  
    2424release 8.2, described in \citet{Madec1998}. This model has been used for a wide  
    2525range of applications, both regional or global, as a forced ocean model and as a  
    26 model coupled with the atmosphere. A complete list of references is found on the  
    27 \NEMO web site.  
     26model coupled with the sea-ice and/or the atmosphere.   
    2827 
    2928This manual is organised in as follows. Chapter~\ref{PE} presents the model basics,  
    3029$i.e.$ the equations and their assumptions, the vertical coordinates used, and the  
    3130subgrid scale physics. This part deals with the continuous equations of the model  
    32 (primitive equations, with potential temperature, salinity and an equation of state).  
     31(primitive equations, with temperature, salinity and an equation of seawater).  
    3332The equations are written in a curvilinear coordinate system, with a choice of vertical  
    34 coordinates ($z$ or $s$, with the rescaled height coordinate formulation \textit{z*}, or  
    35 \textit{s*}). Momentum equations are formulated in the vector invariant form or in the  
    36 flux form. Dimensional units in the meter, kilogram, second (MKS) international system  
     33coordinates ($z$, $s$, \textit{z*}, \textit{s*}, $\tilde{z}$, $\tilde{s}$, and a mixture of them).  
     34Momentum equations are formulated in the vector invariant form or in the flux form.  
     35Dimensional units in the meter, kilogram, second (MKS) international system  
    3736are used throughout. 
    3837 
     
    7978space and time variable coefficient \citet{Treguier1997}. The model has vertical harmonic  
    8079viscosity and diffusion with a space and time variable coefficient, with options to compute  
    81 the coefficients with \citet{Blanke1993}, \citet{Large_al_RG94}, \citet{Pacanowski_Philander_JPO81},  
     80the coefficients with \citet{Blanke1993}, \citet{Pacanowski_Philander_JPO81},  
    8281or \citet{Umlauf_Burchard_JMS03} mixing schemes. 
    8382 \vspace{1cm} 
    8483  
    85   
     84%%gm    To be put somewhere else .... 
     85 
    8686\noindent CPP keys and namelists are used for inputs to the code.  \newline 
    8787 
     
    112112 \vspace{1cm} 
    113113 
     114%%gm  end 
    114115 
    115116Model outputs management and specific online diagnostics are described in chapters~\ref{DIA}. 
     
    249250 
    250251 
     252 \vspace{1cm} 
     253$\bullet$ The main modifications from NEMO/OPA v3.4 and  v3.6 are :\\ 
     254\begin{enumerate} 
     255\item ... ;  
     256\end{enumerate} 
     257 
     258 
     259 \vspace{1cm} 
     260$\bullet$ The main modifications from NEMO/OPA v3.6 and  v4.0 are :\\ 
     261\begin{enumerate} 
     262\item ... ;  
     263\end{enumerate} 
     264 
     265 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/nam_tide

    r4147 r6040  
    11!----------------------------------------------------------------------- 
    2 &nam_tide      !   tide parameters (#ifdef key_tide) 
     2&nam_tide      !   tide parameters                                      ("key_tide") 
    33!----------------------------------------------------------------------- 
    44   ln_tide_pot   = .true.   !  use tidal potential forcing 
    5    clname(1)     =   'M2'   !  name of constituent 
    6    clname(2)     =   'S2' 
    7    clname(3)     =   'N2' 
    8    clname(4)     =   'K1' 
    9    clname(5)     =   'O1' 
    10    clname(6)     =   'Q1' 
    11    clname(7)     =   'M4' 
    12    clname(8)     =   'K2' 
    13    clname(9)     =   'P1' 
    14    clname(10)    =   'Mf' 
    15    clname(11)    =   'Mm' 
     5   ln_tide_ramp  = .false.  ! 
     6   rdttideramp   =    0.    ! 
     7   clname(1)     = 'DUMMY'  !  name of constituent - all tidal components must be set in namelist_cfg 
    168/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namagrif

    r2540 r6040  
    66   rn_sponge_tra = 2880.   !  coefficient for tracer   sponge layer [m2/s] 
    77   rn_sponge_dyn = 2880.   !  coefficient for dynamics sponge layer [m2/s] 
     8   ln_chk_bathy  = .FALSE. ! 
    89/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/nambbl

    r3294 r6040  
    11!----------------------------------------------------------------------- 
    2 &nambbl        !   bottom boundary layer scheme 
     2&nambbl        !   bottom boundary layer scheme                         ("key_trabbl") 
    33!----------------------------------------------------------------------- 
    44   nn_bbl_ldf  =  1      !  diffusive bbl (=1)   or not (=0) 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/nambdy

    r4147 r6040  
    22&nambdy        !  unstructured open boundaries                          ("key_bdy") 
    33!----------------------------------------------------------------------- 
    4     nb_bdy = 1                            !  number of open boundary sets 
     4    nb_bdy         = 0                    !  number of open boundary sets 
    55    ln_coords_file = .true.               !  =T : read bdy coordinates from file 
    66    cn_coords_file = 'coordinates.bdy.nc' !  bdy coordinates files 
    7     ln_mask_file = .false.                !  =T : read mask from file 
    8     cn_mask_file = ''                     !  name of mask file (if ln_mask_file=.TRUE.) 
    9     nn_dyn2d      =  2                    !  boundary conditions for barotropic fields 
    10     nn_dyn2d_dta  =  3                    !  = 0, bdy data are equal to the initial state 
     7    ln_mask_file   = .false.              !  =T : read mask from file 
     8    cn_mask_file   = ''                   !  name of mask file (if ln_mask_file=.TRUE.) 
     9    cn_dyn2d       = 'none'               ! 
     10    nn_dyn2d_dta   =  0                   !  = 0, bdy data are equal to the initial state 
    1111                                          !  = 1, bdy data are read in 'bdydata   .nc' files 
    1212                                          !  = 2, use tidal harmonic forcing data from files 
    1313                                          !  = 3, use external data AND tidal harmonic forcing 
    14     nn_dyn3d      =  0                    !  boundary conditions for baroclinic velocities 
     14    cn_dyn3d      =  'none'               ! 
    1515    nn_dyn3d_dta  =  0                    !  = 0, bdy data are equal to the initial state 
    16                            !  = 1, bdy data are read in 'bdydata   .nc' files 
    17     nn_tra        =  1                    !  boundary conditions for T and S 
    18     nn_tra_dta    =  1                    !  = 0, bdy data are equal to the initial state 
    19                            !  = 1, bdy data are read in 'bdydata   .nc' files 
    20     nn_rimwidth  = 10                      !  width of the relaxation zone 
    21     ln_vol     = .false.                  !  total volume correction (see nn_volctl parameter) 
    22     nn_volctl  = 1                        !  = 0, the total water flux across open boundaries is zero 
     16                                          !  = 1, bdy data are read in 'bdydata   .nc' files 
     17    cn_tra        =  'none'               ! 
     18    nn_tra_dta    =  0                    !  = 0, bdy data are equal to the initial state 
     19                                          !  = 1, bdy data are read in 'bdydata   .nc' files 
     20    cn_ice_lim      =  'none'             ! 
     21    nn_ice_lim_dta  =  0                  !  = 0, bdy data are equal to the initial state 
     22                                          !  = 1, bdy data are read in 'bdydata   .nc' files 
     23    rn_ice_tem      = 270.                !  lim3 only: arbitrary temperature of incoming sea ice 
     24    rn_ice_sal      = 10.                 !  lim3 only:      --   salinity           -- 
     25    rn_ice_age      = 30.                 !  lim3 only:      --   age                -- 
     26 
     27    ln_tra_dmp    =.false.                !  open boudaries conditions for tracers 
     28    ln_dyn3d_dmp  =.false.                !  open boundary condition for baroclinic velocities 
     29    rn_time_dmp   =  1.                   ! Damping time scale in days 
     30    rn_time_dmp_out =  1.                 ! Outflow damping time scale 
     31    nn_rimwidth   = 10                    !  width of the relaxation zone 
     32    ln_vol        = .false.               !  total volume correction (see nn_volctl parameter) 
     33    nn_volctl     = 1                     !  = 0, the total water flux across open boundaries is zero 
    2334/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/nambdy_dta

    r4230 r6040  
    11!----------------------------------------------------------------------- 
    2 &nambdy_dta      !  open boundaries - external data           ("key_bdy") 
     2&nambdy_dta    !  open boundaries - external data                       ("key_bdy") 
    33!----------------------------------------------------------------------- 
    4 !              !   file name    ! frequency (hours) !  variable  ! time interpol. !  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    5 !              !                !  (if <0  months)  !    name    !    (logical)   !  (T/F)  ! 'monthly' ! filename ! pairing  ! filename      ! 
    6    bn_ssh =     'amm12_bdyT_u2d' ,         24        , 'sossheig' ,     .true.     , .false. ,  'daily'  ,    ''    ,   ''    , '' 
    7    bn_u2d =     'amm12_bdyU_u2d' ,         24        , 'vobtcrtx' ,     .true.     , .false. ,  'daily'  ,    ''    ,   ''    , '' 
    8    bn_v2d =     'amm12_bdyV_u2d' ,         24        , 'vobtcrty' ,     .true.     , .false. ,  'daily'  ,    ''    ,   ''    , '' 
    9    bn_u3d  =    'amm12_bdyU_u3d' ,         24        , 'vozocrtx' ,     .true.     , .false. ,  'daily'  ,    ''    ,   ''    , '' 
    10    bn_v3d  =    'amm12_bdyV_u3d' ,         24        , 'vomecrty' ,     .true.     , .false. ,  'daily'  ,    ''    ,   ''    , '' 
    11    bn_tem  =    'amm12_bdyT_tra' ,         24        , 'votemper' ,     .true.     , .false. ,  'daily'  ,    ''    ,   ''    , '' 
    12    bn_sal  =    'amm12_bdyT_tra' ,         24        , 'vosaline' ,     .true.     , .false. ,  'daily'  ,    ''    ,   ''    , '' 
    13    cn_dir  =    'bdydta/' 
    14    ln_full_vel = .false. 
     4!              !  file name      ! frequency (hours) ! variable  ! time interp. !  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
     5!              !                 !  (if <0  months)  !   name    !  (logical)   !  (T/F ) ! 'monthly' ! filename ! pairing  ! filename      ! 
     6   bn_ssh =     'amm12_bdyT_u2d' ,         24        , 'sossheig',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     7   bn_u2d =     'amm12_bdyU_u2d' ,         24        , 'vobtcrtx',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     8   bn_v2d =     'amm12_bdyV_u2d' ,         24        , 'vobtcrty',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     9   bn_u3d  =    'amm12_bdyU_u3d' ,         24        , 'vozocrtx',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     10   bn_v3d  =    'amm12_bdyV_u3d' ,         24        , 'vomecrty',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     11   bn_tem  =    'amm12_bdyT_tra' ,         24        , 'votemper',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     12   bn_sal  =    'amm12_bdyT_tra' ,         24        , 'vosaline',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     13! for lim2 
     14!   bn_frld  =   'amm12_bdyT_ice' ,         24        , 'ileadfra',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     15!   bn_hicif =   'amm12_bdyT_ice' ,         24        , 'iicethic',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     16!   bn_hsnif =   'amm12_bdyT_ice' ,         24        , 'isnowthi',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     17! for lim3 
     18!   bn_a_i  =    'amm12_bdyT_ice' ,         24        , 'ileadfra',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     19!   bn_ht_i =    'amm12_bdyT_ice' ,         24        , 'iicethic',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     20!   bn_ht_s =    'amm12_bdyT_ice' ,         24        , 'isnowthi',     .true.   , .false. ,  'daily'  ,    ''    ,   ''     , '' 
     21 
     22   cn_dir      =    'bdydta/'   !  root directory for the location of the bulk files 
     23   ln_full_vel = .false.        !   
    1524/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/nambdy_tide

    r4147 r6040  
    22&nambdy_tide     ! tidal forcing at open boundaries 
    33!----------------------------------------------------------------------- 
    4    filtide          = 'bdydta/amm12_bdytide_'         !  file name root of tidal forcing files 
    5    ln_bdytide_2ddta = .false. 
    6    ln_bdytide_conj  = .false. 
     4   filtide          = 'bdydta/amm12_bdytide_'   !  file name root of tidal forcing files 
     5   ln_bdytide_2ddta = .false.   ! 
     6   ln_bdytide_conj  = .false.   !  
    77/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namberg

    r4230 r6040  
    11!----------------------------------------------------------------------- 
    2 &namberg       !   iceberg parameters 
     2&namberg       !   iceberg parameters                                   (default: No iceberg) 
    33!----------------------------------------------------------------------- 
    4       ln_icebergs              = .false. 
     4      ln_icebergs              = .false.              ! iceberg floats or not 
    55      ln_bergdia               = .true.               ! Calculate budgets 
    66      nn_verbose_level         = 1                    ! Turn on more verbose output if level > 0 
     
    99                                                      ! Initial mass required for an iceberg of each class 
    1010      rn_initial_mass          = 8.8e7, 4.1e8, 3.3e9, 1.8e10, 3.8e10, 7.5e10, 1.2e11, 2.2e11, 3.9e11, 7.4e11 
    11                                                       ! Proportion of calving mass to apportion to each class   
     11                                                      ! Proportion of calving mass to apportion to each class 
    1212      rn_distribution          = 0.24, 0.12, 0.15, 0.18, 0.12, 0.07, 0.03, 0.03, 0.03, 0.02 
    1313                                                      ! Ratio between effective and real iceberg mass (non-dim) 
    14                                                       ! i.e. number of icebergs represented at a point          
     14                                                      ! i.e. number of icebergs represented at a point 
    1515      rn_mass_scaling          = 2000, 200, 50, 20, 10, 5, 2, 1, 1, 1 
    1616                                                      ! thickness of newly calved bergs (m) 
     
    2121      rn_bits_erosion_fraction = 0.                   ! Fraction of erosion melt flux to divert to bergy bits 
    2222      rn_sicn_shift            = 0.                   ! Shift of sea-ice concn in erosion flux (0<sicn_shift<1) 
    23       ln_passive_mode          = .false.              ! iceberg - ocean decoupling    
     23      ln_passive_mode          = .false.              ! iceberg - ocean decoupling 
    2424      nn_test_icebergs         =  10                  ! Create test icebergs of this class (-1 = no) 
    2525                                                      ! Put a test iceberg at each gridpoint in box (lon1,lon2,lat1,lat2) 
    2626      rn_test_box              = 108.0,  116.0, -66.0, -58.0 
    27       rn_speed_limit           = 0.                   ! CFL speed limit for a berg    
     27      rn_speed_limit           = 0.                   ! CFL speed limit for a berg 
    2828 
    29                ! filename ! freq (hours) ! variable ! time interp. ! clim  !'yearly' or ! weights  ! rotation ! land/sea mask ! 
    30                !          ! (<0  months) !   name   !  (logical)   ! (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
    31       sn_icb =  'calving' ,     -1       , 'calvingmask',  .true.      , .true., 'yearly'   , ' '      , ' '  , '' 
    32     
    33       cn_dir = './'  
     29!              ! file name ! frequency (hours) !   variable   ! time interp.   !  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
     30!              !           !  (if <0  months)  !     name     !   (logical)    !  (T/F ) ! 'monthly' ! filename ! pairing  ! filename      ! 
     31      sn_icb =  'calving' ,       -1           , 'calvingmask',  .true.        , .true.  , 'yearly'  , ''       , ''       , '' 
     32 
     33      cn_dir = './' 
    3434/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/nambfr

    r5120 r6040  
    11!----------------------------------------------------------------------- 
    2 &nambfr        !   bottom friction 
     2&nambfr        !   bottom friction                                      (default: linear) 
    33!----------------------------------------------------------------------- 
    44   nn_bfr      =    1      !  type of bottom friction :   = 0 : free slip,  = 1 : linear friction 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namdct

    r4147 r6040  
    11!----------------------------------------------------------------------- 
    2 &namdct        ! transports through sections 
     2&namdct        ! transports through some sections 
    33!----------------------------------------------------------------------- 
    44    nn_dct      = 15       !  time step frequency for transports computing 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namdom

    r4560 r6040  
    33!----------------------------------------------------------------------- 
    44   nn_bathy    =    1      !  compute (=0) or read (=1) the bathymetry file 
    5    nn_closea    =   0      !  remove (=0) or keep (=1) closed seas and lakes (ORCA) 
    6    nn_msh      =    0      !  create (=1) a mesh file or not (=0) 
     5   rn_bathy    =    0.     !  value of the bathymetry. if (=0) bottom flat at jpkm1 
     6   nn_closea   =    0      !  remove (=0) or keep (=1) closed seas and lakes (ORCA) 
     7   nn_msh      =    1      !  create (=1) a mesh file or not (=0) 
    78   rn_hmin     =   -3.     !  min depth of the ocean (>0) or min number of ocean level (<0) 
    89   rn_e3zps_min=   20.     !  partial step thickness is set larger than the minimum of 
     
    1617   rn_rdtmax   = 28800.          !  maximum time step on tracers (used if nn_acc=1) 
    1718   rn_rdth     =  800.           !  depth variation of tracer time step  (used if nn_acc=1) 
     19   ln_crs      = .false.      !  Logical switch for coarsening module 
    1820   jphgr_msh   =       0               !  type of horizontal mesh 
    1921                                       !  = 0 curvilinear coordinate on the sphere read in coordinate.nc 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namdyn_adv

    r3294 r6040  
    11!----------------------------------------------------------------------- 
    2 &namdyn_adv    !   formulation of the momentum advection 
     2&namdyn_adv    !   formulation of the momentum advection                (default: vector form) 
    33!----------------------------------------------------------------------- 
    4    ln_dynadv_vec = .true.  !  vector form (T) or flux form (F)   
     4   ln_dynadv_vec = .true.  !  vector form (T) or flux form (F) 
     5   nn_dynkeg     = 0       ! scheme for grad(KE): =0   C2  ;  =1   Hollingsworth correction 
    56   ln_dynadv_cen2= .false. !  flux form - 2nd order centered scheme 
    6    ln_dynadv_ubs = .false. !  flux form - 3rd order UBS      scheme  
    7  
     7   ln_dynadv_ubs = .false. !  flux form - 3rd order UBS      scheme 
     8   ln_dynzad_zts = .false. !  Use (T) sub timestepping for vertical momentum advection 
     9/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namdyn_hpg

    r5120 r6040  
    11!----------------------------------------------------------------------- 
    2 &namdyn_hpg    !   Hydrostatic pressure gradient option 
     2&namdyn_hpg    !   Hydrostatic pressure gradient option                 (default: zps) 
    33!----------------------------------------------------------------------- 
    44   ln_hpg_zco  = .false.   !  z-coordinate - full steps 
    55   ln_hpg_zps  = .true.    !  z-coordinate - partial steps (interpolation) 
    66   ln_hpg_sco  = .false.   !  s-coordinate (standard jacobian formulation) 
    7    ln_hpg_isf  = .false.   !  s-coordinate (sco ) adapted to ice shelf cavity 
     7   ln_hpg_isf  = .false.   !  s-coordinate (sco ) adapted to isf 
    88   ln_hpg_djc  = .false.   !  s-coordinate (Density Jacobian with Cubic polynomial) 
    99   ln_hpg_prj  = .false.   !  s-coordinate (Pressure Jacobian scheme) 
    10    ln_dynhpg_imp = .false. !  time stepping: semi-implicit time scheme  (T) 
    11                                  !           centered      time scheme  (F) 
    1210/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namdyn_ldf

    r4147 r6040  
    11!----------------------------------------------------------------------- 
    2 &namdyn_ldf    !   lateral diffusion on momentum 
     2&namdyn_ldf    !   lateral diffusion on momentum                        (default: NO) 
    33!----------------------------------------------------------------------- 
    44   !                       !  Type of the operator : 
    5    ln_dynldf_lap    =  .true.   !  laplacian operator 
    6    ln_dynldf_bilap  =  .false.  !  bilaplacian operator 
     5   !                           !  no diffusion: set ln_dynldf_lap=..._blp=F  
     6   ln_dynldf_lap =  .false.    !    laplacian operator 
     7   ln_dynldf_blp =  .false.    !  bilaplacian operator 
    78   !                       !  Direction of action  : 
    8    ln_dynldf_level  =  .false.  !  iso-level 
    9    ln_dynldf_hor    =  .true.   !  horizontal (geopotential)            (require "key_ldfslp" in s-coord.) 
    10    ln_dynldf_iso    =  .false.  !  iso-neutral                          (require "key_ldfslp") 
     9   ln_dynldf_lev =  .false.    !  iso-level 
     10   ln_dynldf_hor =  .false.    !  horizontal (geopotential) 
     11   ln_dynldf_iso =  .false.    !  iso-neutral 
    1112   !                       !  Coefficient 
    12    rn_ahm_0_lap     = 40000.    !  horizontal laplacian eddy viscosity   [m2/s] 
    13    rn_ahmb_0        =     0.    !  background eddy viscosity for ldf_iso [m2/s] 
    14    rn_ahm_0_blp     =     0.    !  horizontal bilaplacian eddy viscosity [m4/s] 
    15    rn_cmsmag_1      =     3.    !  constant in laplacian Smagorinsky viscosity 
    16    rn_cmsmag_2      =     3     !  constant in bilaplacian Smagorinsky viscosity 
    17    rn_cmsh          =     1.    !  1 or 0 , if 0 -use only shear for Smagorinsky viscosity 
    18    rn_ahm_m_blp     =    -1.e12 !  upper limit for bilap  abs(ahm) < min( dx^4/128rdt, rn_ahm_m_blp) 
    19    rn_ahm_m_lap     = 40000.    !  upper limit for lap  ahm < min(dx^2/16rdt, rn_ahm_m_lap) 
     13   nn_ahm_ijk_t  = 0           !  space/time variation of eddy coef 
     14   !                                !  =-30  read in eddy_viscosity_3D.nc file 
     15   !                                !  =-20  read in eddy_viscosity_2D.nc file 
     16   !                                !  =  0  constant  
     17   !                                !  = 10  F(k)=c1d 
     18   !                                !  = 20  F(i,j)=F(grid spacing)=c2d 
     19   !                                !  = 30  F(i,j,k)=c2d*c1d 
     20   !                                !  = 31  F(i,j,k)=F(grid spacing and local velocity) 
     21   rn_ahm_0      =  40000.     !  horizontal laplacian eddy viscosity   [m2/s] 
     22   rn_ahm_b      =      0.     !  background eddy viscosity for ldf_iso [m2/s] 
     23   rn_bhm_0      = 1.e+12      !  horizontal bilaplacian eddy viscosity [m4/s] 
     24   ! 
     25   ! Caution in 20 and 30 cases the coefficient have to be given for a 1 degree grid (~111km) 
    2026/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namdyn_spg

    r3294 r6040  
    11!----------------------------------------------------------------------- 
    2 !namdyn_spg    !   surface pressure gradient   (CPP key only) 
     2&namdyn_spg    !   surface pressure gradient                            (default: NO) 
    33!----------------------------------------------------------------------- 
    4 !                          !  explicit free surface                     ("key_dynspg_exp") 
    5 !                          !  filtered free surface                     ("key_dynspg_flt") 
    6 !                          !  split-explicit free surface               ("key_dynspg_ts") 
     4   ln_dynspg_exp  = .false.   ! explicit free surface 
     5   ln_dynspg_ts   = .false.   ! split-explicit free surface 
     6      ln_bt_fw      = .true.     ! Forward integration of barotropic Eqs. 
     7      ln_bt_av      = .true.     ! Time filtering of barotropic variables 
     8         nn_bt_flt     = 1          ! Time filter choice  = 0 None 
     9         !                          !                     = 1 Boxcar over   nn_baro sub-steps 
     10         !                          !                     = 2 Boxcar over 2*nn_baro  "    " 
     11      ln_bt_auto    = .true.     ! Number of sub-step defined from: 
     12         rn_bt_cmax   =  0.8        ! =T : the Maximum Courant Number allowed 
     13         nn_baro      = 30          ! =F : the number of sub-step in rn_rdt seconds 
     14/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namdyn_vor

    r4147 r6040  
    11!----------------------------------------------------------------------- 
    2 &namdyn_vor    !   option of physics/algorithm (not control by CPP keys) 
     2&namdyn_vor    !   option of physics/algorithm                          (default: NO) 
    33!----------------------------------------------------------------------- 
    44   ln_dynvor_ene = .false. !  enstrophy conserving scheme 
    55   ln_dynvor_ens = .false. !  energy conserving scheme 
    66   ln_dynvor_mix = .false. !  mixed scheme 
    7    ln_dynvor_een = .true.  !  energy & enstrophy scheme 
     7   ln_dynvor_een = .false. !  energy & enstrophy scheme 
     8      nn_een_e3f = 1          ! e3f = masked averaging of e3t divided by 4 (=0) or by the sum of mask (=1) 
     9   ln_dynvor_msk = .false. !  vorticity multiplied by fmask (=T) or not (=F) (all vorticity schemes)  ! PLEASE DO NOT USE 
    810/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/nameos

    r3294 r6040  
    22&nameos        !   ocean physical parameters 
    33!----------------------------------------------------------------------- 
    4    nn_eos      =   0       !  type of equation of state and Brunt-Vaisala frequency 
    5                            !     = 0, UNESCO (formulation of Jackett and McDougall (1994) and of McDougall (1987) ) 
    6                            !     = 1, linear: rho(T)   = rau0 * ( 1.028 - ralpha * T ) 
    7                            !     = 2, linear: rho(T,S) = rau0 * ( rbeta * S - ralpha * T ) 
    8    rn_alpha    =   2.0e-4  !  thermal expension coefficient (nn_eos= 1 or 2) 
    9    rn_beta     =   7.7e-4  !  saline  expension coefficient (nn_eos= 2) 
     4   nn_eos      =  -1     !  type of equation of state and Brunt-Vaisala frequency 
     5                                 !  =-1, TEOS-10 
     6                                 !  = 0, EOS-80 
     7                                 !  = 1, S-EOS   (simplified eos) 
     8   ln_useCT    = .true.  ! use of Conservative Temp. ==> surface CT converted in Pot. Temp. in sbcssm 
     9                                 ! 
     10   !                     ! S-EOS coefficients : 
     11                                 !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     12   rn_a0       =  1.6550e-1      !  thermal expension coefficient (nn_eos= 1) 
     13   rn_b0       =  7.6554e-1      !  saline  expension coefficient (nn_eos= 1) 
     14   rn_lambda1  =  5.9520e-2      !  cabbeling coeff in T^2  (=0 for linear eos) 
     15   rn_lambda2  =  7.4914e-4      !  cabbeling coeff in S^2  (=0 for linear eos) 
     16   rn_mu1      =  1.4970e-4      !  thermobaric coeff. in T (=0 for linear eos) 
     17   rn_mu2      =  1.1090e-5      !  thermobaric coeff. in S (=0 for linear eos) 
     18   rn_nu       =  2.4341e-3      !  cabbeling coeff in T*S  (=0 for linear eos) 
    1019/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namhsb

    r2540 r6040  
    11!----------------------------------------------------------------------- 
    2 &namhsb       !  Heat and salt budgets  
     2&namhsb       !  Heat and salt budgets                                  (default F) 
    33!----------------------------------------------------------------------- 
    44   ln_diahsb  = .false.    !  check the heat and salt budgets (T) or not (F) 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namlbc

    r4147 r6040  
    22&namlbc        !   lateral momentum boundary condition 
    33!----------------------------------------------------------------------- 
     4   !                       !  free slip  !   partial slip  !   no slip   ! strong slip 
    45   rn_shlat    =    2.     !  shlat = 0  !  0 < shlat < 2  !  shlat = 2  !  2 < shlat 
    5                            !  free slip  !   partial slip  !   no slip   ! strong slip 
    6    ln_vorlat   = .false.   !  consistency of vorticity boundary condition with analytical eqs. 
     6   ln_vorlat   = .false.   !  consistency of vorticity boundary condition with analytical Eqs. 
    77/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namobs

    r4147 r6040  
    55   ln_s3d     = .false.    ! Logical switch for S profile observations 
    66   ln_ena     = .false.    ! Logical switch for ENACT insitu data set 
    7    !                       !     ln_cor                  Logical switch for Coriolis insitu data set 
     7   ln_cor     = .false.    ! Logical switch for Coriolis insitu data set 
    88   ln_profb   = .false.    ! Logical switch for feedback insitu data set 
    99   ln_sla     = .false.    ! Logical switch for SLA observations 
    10  
    1110   ln_sladt   = .false.    ! Logical switch for AVISO SLA data 
    12  
    1311   ln_slafb   = .false.    ! Logical switch for feedback SLA data 
    14                            !     ln_ssh                  Logical switch for SSH observations 
    15  
    16    ln_sst     = .true.     ! Logical switch for SST observations 
    17    ln_reysst  = .true.     !     ln_reysst               Logical switch for Reynolds observations 
    18    ln_ghrsst  = .false.    !     ln_ghrsst               Logical switch for GHRSST observations       
    19  
     12   ln_ssh     = .false.    ! Logical switch for SSH observations 
     13   ln_sst     = .false.    ! Logical switch for SST observations 
     14   ln_reysst  = .false.    ! Logical switch for Reynolds observations 
     15   ln_ghrsst  = .false.    ! Logical switch for GHRSST observations 
    2016   ln_sstfb   = .false.    ! Logical switch for feedback SST data 
    21                            !     ln_sss                  Logical switch for SSS observations 
    22                            !     ln_seaice               Logical switch for Sea Ice observations 
    23                            !     ln_vel3d                Logical switch for velocity observations 
    24                            !     ln_velavcur             Logical switch for velocity daily av. cur. 
    25                            !     ln_velhrcur             Logical switch for velocity high freq. cur. 
    26                            !     ln_velavadcp            Logical switch for velocity daily av. ADCP 
    27                            !     ln_velhradcp            Logical switch for velocity high freq. ADCP 
    28                            !     ln_velfb                Logical switch for feedback velocity data 
    29                            !     ln_grid_global          Global distribtion of observations 
    30                            !     ln_grid_search_lookup   Logical switch for obs grid search w/lookup table 
    31                            !     grid_search_file        Grid search lookup file header 
    32                            !     enactfiles              ENACT input observation file names 
    33                            !     coriofiles              Coriolis input observation file name 
    34    !                       ! profbfiles: Profile feedback input observation file name 
    35    profbfiles = 'profiles_01.nc' 
    36                            !     ln_profb_enatim         Enact feedback input time setting switch 
    37                            !     slafilesact             Active SLA input observation file name 
    38                            !     slafilespas             Passive SLA input observation file name 
    39    !                       ! slafbfiles: Feedback SLA input observation file name 
    40    slafbfiles = 'sla_01.nc' 
    41                            !     sstfiles                GHRSST input observation file name 
    42    !                       ! sstfbfiles: Feedback SST input observation file name 
    43    sstfbfiles = 'sst_01.nc' 'sst_02.nc' 'sst_03.nc' 'sst_04.nc' 'sst_05.nc' 
    44                            !     seaicefiles             Sea Ice input observation file name 
    45                            !     velavcurfiles           Vel. cur. daily av. input file name 
    46                            !     velhvcurfiles           Vel. cur. high freq. input file name 
    47                            !     velavadcpfiles          Vel. ADCP daily av. input file name 
    48                            !     velhvadcpfiles          Vel. ADCP high freq. input file name 
    49                            !     velfbfiles              Vel. feedback input observation file name 
    50                            !     dobsini                 Initial date in window YYYYMMDD.HHMMSS 
    51                            !     dobsend                 Final date in window YYYYMMDD.HHMMSS 
    52                            !     n1dint                  Type of vertical interpolation method 
    53                            !     n2dint                  Type of horizontal interpolation method 
    54                            !     ln_nea                  Rejection of observations near land switch 
    55    nmsshc     = 0          ! MSSH correction scheme 
    56                            !     mdtcorr                 MDT  correction 
    57                            !     mdtcutoff               MDT cutoff for computed correction 
     17   ln_sss     = .false.    ! Logical switch for SSS observations 
     18   ln_seaice  = .false.    ! Logical switch for Sea Ice observations 
     19   ln_vel3d   = .false.    ! Logical switch for velocity observations 
     20   ln_velavcur= .false     ! Logical switch for velocity daily av. cur. 
     21   ln_velhrcur= .false     ! Logical switch for velocity high freq. cur. 
     22   ln_velavadcp=.false.    ! Logical switch for velocity daily av. ADCP 
     23   ln_velhradcp=.false.    ! Logical switch for velocity high freq. ADCP 
     24   ln_velfb   = .false.    ! Logical switch for feedback velocity data 
     25   ln_grid_global=.false.  ! Global distribtion of observations 
     26   ln_grid_search_lookup = .false. !  Logical switch for obs grid search w/lookup table 
     27   grid_search_file = 'grid_search'  !  Grid search lookup file header 
     28! All of the *files* variables below are arrays. Use namelist_cfg to add more files 
     29   enactfiles = 'enact.nc' !  ENACT input observation file names (specify full array in namelist_cfg) 
     30   coriofiles = 'corio.nc' !  Coriolis input observation file name 
     31   profbfiles = 'profiles_01.nc' ! Profile feedback input observation file name 
     32   ln_profb_enatim = .false !        Enact feedback input time setting switch 
     33   slafilesact = 'sla_act.nc' !  Active SLA input observation file names 
     34   slafilespas = 'sla_pass.nc' ! Passive SLA input observation file names 
     35   slafbfiles = 'sla_01.nc' ! slafbfiles: Feedback SLA input observation file names 
     36   sstfiles = 'ghrsst.nc'   ! GHRSST input observation file names 
     37   sstfbfiles = 'sst_01.nc' ! Feedback SST input observation file names 
     38   seaicefiles = 'seaice_01.nc' ! Sea Ice input observation file names 
     39   velavcurfiles  = 'velavcurfile.nc'  ! Vel. cur. daily av. input file name 
     40   velhrcurfiles  = 'velhrcurfile.nc'  ! Vel. cur. high freq. input file name 
     41   velavadcpfiles = 'velavadcpfile.nc' ! Vel. ADCP daily av. input file name 
     42   velhradcpfiles = 'velhradcpfile.nc' ! Vel. ADCP high freq. input file name 
     43   velfbfiles = 'velfbfile.nc' ! Vel. feedback input observation file name 
     44   dobsini = 20000101.000000  !  Initial date in window YYYYMMDD.HHMMSS 
     45   dobsend = 20010101.000000  !  Final date in window YYYYMMDD.HHMMSS 
     46   n1dint = 0  !               Type of vertical interpolation method 
     47   n2dint = 0  !               Type of horizontal interpolation method 
     48   ln_nea = .false.   !        Rejection of observations near land switch 
     49   nmsshc     = 0     !        MSSH correction scheme 
     50   mdtcorr = 1.61     !        MDT  correction 
     51   mdtcutoff = 65.0   !        MDT cutoff for computed correction 
    5852   ln_altbias = .false.    ! Logical switch for alt bias 
    5953   ln_ignmis  = .true.     ! Logical switch for ignoring missing files 
    60                            !     endailyavtypes   ENACT daily average types 
    61    ln_grid_global = .true. 
    62    ln_grid_search_lookup = .false. 
     54   endailyavtypes = 820    ! ENACT daily average types - array (use namelist_cfg to set more values) 
    6355/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namptr

    r4147 r6040  
    11!----------------------------------------------------------------------- 
    2 &namptr       !   Poleward Transport Diagnostic 
     2&namptr       !   Poleward Transport Diagnostic                         (default F) 
    33!----------------------------------------------------------------------- 
    44   ln_diaptr  = .false.    !  Poleward heat and salt transport (T) or not (F) 
    5    ln_diaznl  = .true.     !  Add zonal means and meridional stream functions 
    6    ln_subbas  = .true.     !  Atlantic/Pacific/Indian basins computation (T) or not 
    7                            !  (orca configuration only, need input basins mask file named "subbasins.nc" 
    8    ln_ptrcomp = .true.     !  Add decomposition : overturning 
    9    nn_fptr    =  1         !  Frequency of ptr computation [time step] 
    10    nn_fwri    =  15        !  Frequency of ptr outputs [time step] 
     5   ln_subbas  = .false.     !  Atlantic/Pacific/Indian basins computation (T) or not 
    116/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namrun

    r4147 r6040  
    99   nn_leapy    =       0   !  Leap year calendar (1) or not (0) 
    1010   ln_rstart   = .false.   !  start from rest (F) or from a restart file (T) 
    11    nn_rstctl   =       0   !  restart control => activated only if ln_rstart = T 
    12                            !    = 0 nn_date0 read in namelist ; nn_it000 : read in namelist 
    13                            !    = 1 nn_date0 read in namelist ; nn_it000 : check consistancy between namelist and restart 
    14                            !    = 2 nn_date0 read in restart  ; nn_it000 : check consistancy between namelist and restart 
    15    cn_ocerst_in  = "restart"   !  suffix of ocean restart name (input) 
    16    cn_ocerst_out = "restart"   !  suffix of ocean restart name (output) 
     11      nn_euler    =    1         !  = 0 : start with forward time step if ln_rstart=T 
     12      nn_rstctl   =    0         !  restart control ==> activated only if ln_rstart=T 
     13                                 !    = 0 nn_date0 read in namelist ; nn_it000 : read in namelist 
     14                                 !    = 1 nn_date0 read in namelist ; nn_it000 : check consistancy between namelist and restart 
     15                                 !    = 2 nn_date0 read in restart  ; nn_it000 : check consistancy between namelist and restart 
     16      cn_ocerst_in  = "restart"  !  suffix of ocean restart name (input) 
     17      cn_ocerst_indir = "."      !  directory from which to read input ocean restarts 
     18      cn_ocerst_out = "restart"  !  suffix of ocean restart name (output) 
     19      cn_ocerst_outdir = "."     !  directory in which to write output ocean restarts 
    1720   nn_istate   =       0   !  output the initial state (1) or not (0) 
     21   ln_rst_list = .false.   !  output restarts at list of times using nn_stocklist (T) or at set frequency with nn_stock (F) 
    1822   nn_stock    =    5475   !  frequency of creation of a restart file (modulo referenced to 1) 
     23   nn_stocklist = 0,0,0,0,0,0,0,0,0,0 ! List of timesteps when a restart file is to be written 
    1924   nn_write    =    5475   !  frequency of write in the output file   (modulo referenced to nn_it000) 
    2025   ln_dimgnnn  = .false.   !  DIMG file format: 1 file for all processors (F) or by processor (T) 
    2126   ln_mskland  = .false.   !  mask land points in NetCDF outputs (costly: + ~15%) 
    22    ln_clobber  = .false.   !  clobber (overwrite) an existing file 
     27   ln_cfmeta   = .false.   !  output additional data to netCDF files required for compliance with the CF metadata standard 
     28   ln_clobber  = .true.    !  clobber (overwrite) an existing file 
    2329   nn_chunksz  =       0   !  chunksize (bytes) for NetCDF file (works only with iom_nf90 routines) 
    2430/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namsbc

    r5120 r6040  
    33!----------------------------------------------------------------------- 
    44   nn_fsbc     = 5         !  frequency of surface boundary condition computation 
    5                            !     (also = the frequency of sea-ice model call) 
     5                           !     (also = the frequency of sea-ice & iceberg model call) 
     6                     ! Type of air-sea fluxes  
    67   ln_ana      = .false.   !  analytical formulation                    (T => fill namsbc_ana ) 
    78   ln_flx      = .false.   !  flux formulation                          (T => fill namsbc_flx ) 
     
    910   ln_blk_core = .true.    !  CORE bulk formulation                     (T => fill namsbc_core) 
    1011   ln_blk_mfs  = .false.   !  MFS bulk formulation                      (T => fill namsbc_mfs ) 
    11    ln_cpl      = .false.   !  Coupled formulation                       (T => fill namsbc_cpl ) 
    12    ln_apr_dyn  = .false.   !  Patm gradient added in ocean & ice Eqs.   (T => fill namsbc_apr ) 
     12                     ! Type of coupling (Ocean/Ice/Atmosphere) : 
     13   ln_cpl      = .false.   !  atmosphere coupled   formulation          ( requires key_oasis3 ) 
     14   ln_mixcpl   = .false.   !  forced-coupled mixed formulation          ( requires key_oasis3 ) 
     15   nn_components = 0       !  configuration of the opa-sas OASIS coupling 
     16                           !  =0 no opa-sas OASIS coupling: default single executable configuration 
     17                           !  =1 opa-sas OASIS coupling: multi executable configuration, OPA component 
     18                           !  =2 opa-sas OASIS coupling: multi executable configuration, SAS component  
     19   nn_limflx = -1          !  LIM3 Multi-category heat flux formulation (use -1 if LIM3 is not used) 
     20                           !  =-1  Use per-category fluxes, bypass redistributor, forced mode only, not yet implemented coupled 
     21                           !  = 0  Average per-category fluxes (forced and coupled mode) 
     22                           !  = 1  Average and redistribute per-category fluxes, forced mode only, not yet implemented coupled 
     23                           !  = 2  Redistribute a single flux over categories (coupled mode only) 
     24                     ! Sea-ice : 
    1325   nn_ice      = 2         !  =0 no ice boundary condition   , 
    1426                           !  =1 use observed ice-cover      , 
    15                            !  =2 ice-model used                         ("key_lim3" or "key_lim2) 
    16    nn_ice_embd = 0         !  =0 levitating ice (no mass exchange, concentration/dilution effect) 
     27                           !  =2 ice-model used                         ("key_lim3", "key_lim2", "key_cice") 
     28   nn_ice_embd = 1         !  =0 levitating ice (no mass exchange, concentration/dilution effect) 
    1729                           !  =1 levitating ice with mass and salt exchange but no presure effect 
    1830                           !  =2 embedded sea-ice (full salt and mass exchanges and pressure) 
    19    ln_dm2dc    = .false.   !  daily mean to diurnal cycle on short wave 
     31                     ! Misc. options of sbc :  
     32   ln_traqsr   = .true.    !  Light penetration in the ocean            (T => fill namtra_qsr ) 
     33      ln_dm2dc = .false.      !  daily mean to diurnal cycle on short wave 
    2034   ln_rnf      = .true.    !  runoffs                                   (T => fill namsbc_rnf) 
     35   ln_ssr      = .true.    !  Sea Surface Restoring on T and/or S       (T => fill namsbc_ssr) 
     36   nn_fwb      = 2         !  FreshWater Budget: =0 unchecked 
     37                           !     =1 global mean of e-p-r set to zero at each time step 
     38                           !     =2 annual global mean of e-p-r set to zero 
     39   ln_apr_dyn  = .false.   !  Patm gradient added in ocean & ice Eqs.   (T => fill namsbc_apr ) 
    2140   nn_isf      = 0         !  ice shelf melting/freezing                (/=0 => fill namsbc_isf) 
    2241                           !  0 =no isf                  1 = presence of ISF 
     
    2443                           !  4 = ISF fwf specified 
    2544                           !  option 1 and 4 need ln_isfcav = .true. (domzgr) 
    26    ln_ssr      = .true.    !  Sea Surface Restoring on T and/or S       (T => fill namsbc_ssr) 
    27    nn_fwb      = 3         !  FreshWater Budget: =0 unchecked 
    28                            !     =1 global mean of e-p-r set to zero at each time step 
    29                            !     =2 annual global mean of e-p-r set to zero 
    30                            !     =3 global emp set to zero and spread out over erp area 
    31    ln_wave = .false.       !  Activate coupling with wave (either Stokes Drift or Drag coefficient, or both)  (T => fill namsbc_wave) 
    32    ln_cdgw = .false.       !  Neutral drag coefficient read from wave model (T => fill namsbc_wave) 
    33    ln_sdw  = .false.       !  Computation of 3D stokes drift                (T => fill namsbc_wave) 
    34    nn_lsm  = 0             !  =0   land/sea mask for input fields is not applied (the field land/sea mask filename 
    35                            !       is left empty in namelist)  , 
    36                            !  =1:n number of iterations of land/sea mask application for input fields 
     45   ln_wave = .false.       !  coupling with surface wave                    (T => fill namsbc_wave) 
     46   nn_lsm  = 0             !  =0 land/sea mask for input fields is not applied (keep empty land/sea mask filename field) , 
     47                           !  =1:n number of iterations of land/sea mask application for input fields (fill land/sea mask filename field) 
    3748/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namsbc_apr

    r4230 r6040  
    11!----------------------------------------------------------------------- 
    2 &namsbc_apr    !   Atmospheric pressure used as ocean forcing or in bulk 
     2&namsbc_apr    !   Atmospheric pressure forcing (in ocean or bulk)      (ln_apr_dyn=T) 
    33!----------------------------------------------------------------------- 
    4 !              ! file name ! frequency (hours) ! variable ! time interpol. !  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    5 !              !           !  (if <0  months)  !   name   !    (logical)   !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
    6    sn_apr      = 'patm'    ,         -1        ,'somslpre',    .true.      , .true. , 'yearly'  ,  ''      ,   ''     , '' 
     4!              !  file name ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
     5!              !            !  (if <0  months)  !   name    !  (logical)   !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
     6   sn_apr      = 'patm'     ,         -1        ,'somslpre',    .true.     , .true. , 'yearly'  ,  ''      ,   ''     , '' 
    77 
    88   cn_dir      = './'       !  root directory for the location of the bulk files 
    9    rn_pref     = 101000._wp !  reference atmospheric pressure   [N/m2]/ 
     9   rn_pref     = 101000.    !  reference atmospheric pressure   [N/m2]/ 
    1010   ln_ref_apr  = .false.    !  ref. pressure: global mean Patm (T) or a constant (F) 
    1111   ln_apr_obc  = .false.    !  inverse barometer added to OBC ssh data 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namsbc_core

    r4230 r6040  
    22&namsbc_core   !   namsbc_core  CORE bulk formulae 
    33!----------------------------------------------------------------------- 
    4 !              !  file name                    ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    5 !              !                               !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  !  filename     ! 
    6    sn_wndi     = 'u_10.15JUNE2009_orca2'       ,         6         , 'U_10_MOD',   .false.    , .true. , 'yearly'  , ''       , 'Uwnd'   , '' 
    7    sn_wndj     = 'v_10.15JUNE2009_orca2'       ,         6         , 'V_10_MOD',   .false.    , .true. , 'yearly'  , ''       , 'Vwnd'   , '' 
    8    sn_qsr      = 'ncar_rad.15JUNE2009_orca2'   ,        24         , 'SWDN_MOD',   .false.    , .true. , 'yearly'  , ''       , ''       , '' 
    9    sn_qlw      = 'ncar_rad.15JUNE2009_orca2'   ,        24         , 'LWDN_MOD',   .false.    , .true. , 'yearly'  , ''       , ''       , '' 
    10    sn_tair     = 't_10.15JUNE2009_orca2'       ,         6         , 'T_10_MOD',   .false.    , .true. , 'yearly'  , ''       , ''       , '' 
    11    sn_humi     = 'q_10.15JUNE2009_orca2'       ,         6         , 'Q_10_MOD',   .false.    , .true. , 'yearly'  , ''       , ''       , '' 
    12    sn_prec     = 'ncar_precip.15JUNE2009_orca2',        -1         , 'PRC_MOD1',   .false.    , .true. , 'yearly'  , ''       , ''       , '' 
    13    sn_snow     = 'ncar_precip.15JUNE2009_orca2',        -1         , 'SNOW'    ,   .false.    , .true. , 'yearly'  , ''       , ''       , '' 
    14    sn_tdif     = 'taudif_core'                 ,        24         , 'taudif'  ,   .false.    , .true. , 'yearly'  , ''       , ''       , '' 
    15 ! 
     4!              !  file name                   ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights                               ! rotation ! land/sea mask ! 
     5!              !                              !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename                              ! pairing  ! filename      ! 
     6   sn_wndi     = 'u_10.15JUNE2009_fill'       ,         6         , 'U_10_MOD',   .false.    , .true. , 'yearly'  , 'weights_core_orca2_bicubic_noc.nc'   , 'Uwnd'   , '' 
     7   sn_wndj     = 'v_10.15JUNE2009_fill'       ,         6         , 'V_10_MOD',   .false.    , .true. , 'yearly'  , 'weights_core_orca2_bicubic_noc.nc'   , 'Vwnd'   , '' 
     8   sn_qsr      = 'ncar_rad.15JUNE2009_fill'   ,        24         , 'SWDN_MOD',   .false.    , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc'  , ''       , '' 
     9   sn_qlw      = 'ncar_rad.15JUNE2009_fill'   ,        24         , 'LWDN_MOD',   .false.    , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc'  , ''       , '' 
     10   sn_tair     = 't_10.15JUNE2009_fill'       ,         6         , 'T_10_MOD',   .false.    , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc'  , ''       , '' 
     11   sn_humi     = 'q_10.15JUNE2009_fill'       ,         6         , 'Q_10_MOD',   .false.    , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc'  , ''       , '' 
     12   sn_prec     = 'ncar_precip.15JUNE2009_fill',        -1         , 'PRC_MOD1',   .false.    , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc'  , ''       , '' 
     13   sn_snow     = 'ncar_precip.15JUNE2009_fill',        -1         , 'SNOW'    ,   .false.    , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc'  , ''       , '' 
     14   sn_tdif     = 'taudif_core'                ,        24         , 'taudif'  ,   .false.    , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc'  , ''       , '' 
     15 
    1616   cn_dir      = './'      !  root directory for the location of the bulk files 
    17    ln_2m       = .false.   !  air temperature and humidity referenced at 2m (T) instead 10m (F) 
    1817   ln_taudif   = .false.   !  HF tau contribution: use "mean of stress module - module of the mean stress" data 
     18   rn_zqt      = 10.       !  Air temperature and humidity reference height (m) 
     19   rn_zu       = 10.       !  Wind vector reference height (m) 
    1920   rn_pfac     = 1.        !  multiplicative factor for precipitation (total & snow) 
     21   rn_efac     = 1.        !  multiplicative factor for evaporation (0. or 1.) 
     22   rn_vfac     = 0.        !  multiplicative factor for ocean/ice velocity 
     23                           !  in the calculation of the wind stress (0.=absolute winds or 1.=relative winds) 
    2024/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namsbc_cpl

    r4147 r6040  
    11!----------------------------------------------------------------------- 
    2 &namsbc_cpl    !   coupled ocean/atmosphere model                       ("key_coupled") 
     2&namsbc_cpl    !   coupled ocean/atmosphere model                       ("key_oasis3") 
    33!----------------------------------------------------------------------- 
    4 !                    !     description       !  multiple  !    vector   !      vector          ! vector ! 
    5 !                    !                       ! categories !  reference  !    orientation       ! grids  ! 
     4!                    !     description      !  multiple  !    vector   !      vector          ! vector ! 
     5!                    !                      ! categories !  reference  !    orientation       ! grids  ! 
    66! send 
    7 sn_snd_temp   =       'weighted oce and ice' ,    'no'    ,     ''      ,         ''           ,   '' 
    8 sn_snd_alb    =       'weighted ice'         ,    'no'    ,     ''      ,         ''           ,   '' 
    9 sn_snd_thick  =       'none'                 ,    'no'   ,     ''      ,         ''           ,   '' 
    10 sn_snd_crt    =       'none'                 ,    'no'    , 'spherical' , 'eastward-northward' ,  'T' 
    11 sn_snd_co2    =       'coupled'              ,    'no'    ,     ''      ,         ''           ,   '' 
     7   sn_snd_temp   =   'weighted oce and ice' ,    'no'    ,     ''      ,         ''           ,   '' 
     8   sn_snd_alb    =   'weighted ice'         ,    'no'    ,     ''      ,         ''           ,   '' 
     9   sn_snd_thick  =   'none'                 ,    'no'    ,     ''      ,         ''           ,   '' 
     10   sn_snd_crt    =   'none'                 ,    'no'    , 'spherical' , 'eastward-northward' ,  'T' 
     11   sn_snd_co2    =   'coupled'              ,    'no'    ,     ''      ,         ''           ,   '' 
    1212! receive 
    13 sn_rcv_w10m   =       'none'                 ,    'no'    ,     ''      ,         ''          ,   '' 
    14 sn_rcv_taumod =       'coupled'              ,    'no'    ,     ''      ,         ''          ,   '' 
    15 sn_rcv_tau    =       'oce only'             ,    'no'    , 'cartesian' , 'eastward-northward',  'U,V' 
    16 sn_rcv_dqnsdt =       'coupled'              ,    'no'    ,     ''      ,         ''          ,   '' 
    17 sn_rcv_qsr    =       'oce and ice'          ,    'no'    ,     ''      ,         ''          ,   '' 
    18 sn_rcv_qns    =       'oce and ice'          ,    'no'    ,     ''      ,         ''          ,   '' 
    19 sn_rcv_emp    =       'conservative'         ,    'no'    ,     ''      ,         ''          ,   '' 
    20 sn_rcv_rnf    =       'coupled'              ,    'no'    ,     ''      ,         ''          ,   '' 
    21 sn_rcv_cal    =       'coupled'              ,    'no'    ,     ''      ,         ''          ,   '' 
    22 sn_rcv_co2    =       'coupled'              ,    'no'    ,     ''      ,         ''          ,   '' 
     13   sn_rcv_w10m   =   'none'                 ,    'no'    ,     ''      ,         ''          ,   '' 
     14   sn_rcv_taumod =   'coupled'              ,    'no'    ,     ''      ,         ''          ,   '' 
     15   sn_rcv_tau    =   'oce only'             ,    'no'    , 'cartesian' , 'eastward-northward',  'U,V' 
     16   sn_rcv_dqnsdt =   'coupled'              ,    'no'    ,     ''      ,         ''          ,   '' 
     17   sn_rcv_qsr    =   'oce and ice'          ,    'no'    ,     ''      ,         ''          ,   '' 
     18   sn_rcv_qns    =   'oce and ice'          ,    'no'    ,     ''      ,         ''          ,   '' 
     19   sn_rcv_emp    =   'conservative'         ,    'no'    ,     ''      ,         ''          ,   '' 
     20   sn_rcv_rnf    =   'coupled'              ,    'no'    ,     ''      ,         ''          ,   '' 
     21   sn_rcv_cal    =   'coupled'              ,    'no'    ,     ''      ,         ''          ,   '' 
     22   sn_rcv_co2    =   'coupled'              ,    'no'    ,     ''      ,         ''          ,   '' 
     23! 
     24   nn_cplmodel   =     1     !  Maximum number of models to/from which NEMO is potentialy sending/receiving data 
     25   ln_usecplmask = .false.   !  use a coupling mask file to merge data received from several models 
     26                             !   -> file cplmask.nc with the float variable called cplmask (jpi,jpj,nn_cplmodel) 
    2327/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namsbc_isf

    r5120 r6040  
    11!----------------------------------------------------------------------- 
    2 &namsbc_isf    !  Top boundary layer (ISF) 
     2&namsbc_isf    !  Top boundary layer (ISF)                              (nn_isf >0) 
    33!----------------------------------------------------------------------- 
    4 !              ! file name ! frequency (hours) ! variable ! time interpol. ! clim   ! 'yearly'/ ! weights  ! rotation ! 
    5 !              !           !  (if <0  months)  !   name   !    (logical)   ! (T/F)  ! 'monthly' ! filename ! pairing  ! 
     4!              ! file name ! frequency (hours) ! variable ! time interp. ! clim   ! 'yearly'/ ! weights  ! rotation ! 
     5!              !           !  (if <0  months)  !   name   !   (logical)  ! (T/F)  ! 'monthly' ! filename ! pairing  ! 
    66! nn_isf == 4 
    7    sn_qisf      = 'rnfisf' ,         -12      ,'sohflisf',    .false.      , .true. , 'yearly'  ,  ''      ,   '' 
    8    sn_fwfisf    = 'rnfisf' ,         -12      ,'sowflisf',    .false.      , .true. , 'yearly'  ,  ''      ,   '' 
     7   sn_qisf      = 'rnfisf' ,         -12       ,'sohflisf',    .false.   , .true. , 'yearly'  ,  ''      ,   '' 
     8   sn_fwfisf    = 'rnfisf' ,         -12       ,'sowflisf',    .false.   , .true. , 'yearly'  ,  ''      ,   '' 
    99! nn_isf == 3 
    10    sn_rnfisf    = 'runoffs' ,         -12      ,'sofwfisf',    .false.      , .true. , 'yearly'  ,  ''      ,   '' 
     10   sn_rnfisf    = 'runoffs',         -12       ,'sofwfisf',    .false.   , .true. , 'yearly'  ,  ''      ,   '' 
    1111! nn_isf == 2 and 3 
    12    sn_depmax_isf = 'runoffs' ,       -12        ,'sozisfmax' ,   .false.  , .true. , 'yearly'  ,  ''      ,   '' 
    13    sn_depmin_isf = 'runoffs' ,       -12        ,'sozisfmin' ,   .false.  , .true. , 'yearly'  ,  ''      ,   '' 
     12   sn_depmax_isf = 'runoffs',        -12       ,'sozisfmax',   .false.   , .true. , 'yearly'  ,  ''      ,   '' 
     13   sn_depmin_isf = 'runoffs',        -12       ,'sozisfmin',   .false.   , .true. , 'yearly'  ,  ''      ,   '' 
    1414! nn_isf == 2 
    15    sn_Leff_isf = 'rnfisf' ,       0          ,'Leff'         ,   .false.  , .true.  , 'yearly'  ,  ''      ,   '' 
     15   sn_Leff_isf = 'rnfisf'  ,           0       ,'Leff'    ,    .false.   , .true. , 'yearly'  ,  ''      ,   '' 
     16 
    1617! for all case 
    17    ln_divisf   = .true.  ! apply isf melting as a mass flux or in the salinity trend. (maybe I should remove this option as for runoff?) 
     18   ln_divisf   = .true.   ! apply isf melting as a mass flux or in the salinity trend. (maybe I should remove this option as for runoff?) 
    1819! only for nn_isf = 1 or 2 
    19    rn_gammat0  = 1.0e-4   ! gammat coefficient used in blk formula 
    20    rn_gammas0  = 1.0e-4   ! gammas coefficient used in blk formula 
     20   rn_gammat0  = 1.e-4    ! gammat coefficient used in blk formula 
     21   rn_gammas0  = 1.e-4    ! gammas coefficient used in blk formula 
    2122! only for nn_isf = 1 
    2223   nn_isfblk   =  1       ! 1 ISOMIP ; 2 conservative (3 equation formulation, Jenkins et al. 1991 ??) 
    23    rn_hisf_tbl =  30.      ! thickness of the top boundary layer           (Losh et al. 2008) 
     24   rn_hisf_tbl =  30.     ! thickness of the top boundary layer           (Losh et al. 2008) 
    2425                          ! 0 => thickness of the tbl = thickness of the first wet cell 
    2526   ln_conserve = .true.   ! conservative case (take into account meltwater advection) 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namsbc_mfs

    r4230 r6040  
    22&namsbc_mfs   !   namsbc_mfs  MFS bulk formulae 
    33!----------------------------------------------------------------------- 
    4 !              !  file name  ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    5 !              !             !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
    6    sn_wndi     =   'ecmwf'   ,        6          , 'u10'     ,    .true.    , .false. , 'daily'  ,'bicubic.nc' , ''    , '' 
    7    sn_wndj     =   'ecmwf'   ,        6          , 'v10'     ,    .true.    , .false. , 'daily'  ,'bicubic.nc' , ''    , '' 
    8    sn_clc      =   'ecmwf'   ,        6          , 'clc'     ,    .true.    , .false. , 'daily'  ,'bilinear.nc', ''    , '' 
    9    sn_msl      =   'ecmwf'   ,        6          , 'msl'     ,    .true.    , .false. , 'daily'  ,'bicubic.nc' , ''    , '' 
    10    sn_tair     =   'ecmwf'   ,        6          , 't2'      ,    .true.    , .false. , 'daily'  ,'bicubic.nc' , ''    , '' 
    11    sn_rhm      =   'ecmwf'   ,        6          , 'rh'      ,    .true.    , .false. , 'daily'  ,'bilinear.nc', ''    , '' 
    12    sn_prec     =   'precip'  ,        6          , 'precip'  ,    .true.    , .false. , 'daily'  ,'bicubic'    , ''    , '' 
    13    cn_dir      =   './'      !  root directory for the location of the bulk files 
     4!              !  file name  ! frequency (hours) ! variable ! time interp. !  clim  ! 'yearly'/ ! weights     ! rotation ! land/sea mask ! 
     5!              !             !  (if <0  months)  !   name   !   (logical)  !  (T/F) ! 'monthly' ! filename    ! pairing  ! filename      ! 
     6   sn_wndi     =   'ecmwf'   ,        6          , 'u10'    ,    .true.    , .false., 'daily'   ,'bicubic.nc' ,   ''     ,   '' 
     7   sn_wndj     =   'ecmwf'   ,        6          , 'v10'    ,    .true.    , .false., 'daily'   ,'bicubic.nc' ,   ''     ,   '' 
     8   sn_clc      =   'ecmwf'   ,        6          , 'clc'    ,    .true.    , .false., 'daily'   ,'bilinear.nc',   ''     ,   '' 
     9   sn_msl      =   'ecmwf'   ,        6          , 'msl'    ,    .true.    , .false., 'daily'   ,'bicubic.nc' ,   ''     ,   '' 
     10   sn_tair     =   'ecmwf'   ,        6          , 't2'     ,    .true.    , .false., 'daily'   ,'bicubic.nc' ,   ''     ,   '' 
     11   sn_rhm      =   'ecmwf'   ,        6          , 'rh'     ,    .true.    , .false., 'daily'   ,'bilinear.nc',   ''     ,   '' 
     12   sn_prec     =   'ecmwf'   ,        6          , 'precip' ,    .true.    , .true. , 'daily'   ,'bicubic.nc' ,   ''     ,   '' 
     13 
     14   cn_dir      = './ECMWF/'      !  root directory for the location of the bulk files 
    1415/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namsbc_rnf

    r4230 r6040  
    11!----------------------------------------------------------------------- 
    2 &namsbc_rnf    !   runoffs namelist surface boundary condition 
     2&namsbc_rnf    !   runoffs namelist surface boundary condition          (ln_rnf=T) 
    33!----------------------------------------------------------------------- 
    4 !              !  file name  ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    5 !              !             !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
    6    sn_rnf      = 'runoff_core_monthly',    -1    , 'sorunoff',   .true.     , .true. , 'yearly'  , ''       , ''       , '' 
    7    sn_cnf      = 'runoff_core_monthly',     0    , 'socoefr0',   .false.    , .true. , 'yearly'  , ''       , ''       , '' 
    8    sn_s_rnf    = 'runoffs'            ,    24    , 'rosaline',   .true.     , .true. , 'yearly'  , ''       , ''       , '' 
    9    sn_t_rnf    = 'runoffs'            ,    24    , 'rotemper',   .true.     , .true. , 'yearly'  , ''       , ''       , '' 
    10    sn_dep_rnf  = 'runoffs'            ,     0    , 'rodepth' ,   .false.    , .true. , 'yearly'  , ''       , ''       , '' 
     4!              !  file name           ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
     5!              !                      !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
     6   sn_rnf      = 'runoff_core_monthly',        -1         , 'sorunoff',   .true.     , .true. , 'yearly'  , ''       , ''       , '' 
     7   sn_cnf      = 'runoff_core_monthly',         0         , 'socoefr0',   .false.    , .true. , 'yearly'  , ''       , ''       , '' 
     8   sn_s_rnf    = 'runoffs'            ,        24         , 'rosaline',   .true.     , .true. , 'yearly'  , ''       , ''       , '' 
     9   sn_t_rnf    = 'runoffs'            ,        24         , 'rotemper',   .true.     , .true. , 'yearly'  , ''       , ''       , '' 
     10   sn_dep_rnf  = 'runoffs'            ,         0         , 'rodepth' ,   .false.    , .true. , 'yearly'  , ''       , ''       , '' 
    1111 
    1212   cn_dir       = './'      !  root directory for the location of the runoff files 
    13    ln_rnf_emp   = .false.   !  runoffs included into precipitation field (T) or into a file (F) 
    1413   ln_rnf_mouth = .true.    !  specific treatment at rivers mouths 
    1514   rn_hrnf      =  15.e0    !  depth over which enhanced vertical mixing is used 
     
    1918   ln_rnf_tem   = .false.   !  read in temperature information for runoff 
    2019   ln_rnf_sal   = .false.   !  read in salinity information for runoff 
     20   ln_rnf_depth_ini = .false.  ! compute depth at initialisation from runoff file 
     21   rn_rnf_max   = 5.735e-4  !  max value of the runoff climatologie over global domain ( ln_rnf_depth_ini = .true ) 
     22   rn_dep_max   = 150.      !  depth over which runoffs is spread ( ln_rnf_depth_ini = .true ) 
     23   nn_rnf_depth_file = 0    !  create (=1) a runoff depth file or not (=0) 
    2124/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namsbc_sas

    r4230 r6040  
    44!              !  file name  ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    55!              !             !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
    6    sn_usp      = 'sas_grid_U' ,    120    , 'vozocrtx' ,  .true.    , .true. ,   'yearly'  , ''       , ''             , '' 
    7    sn_vsp      = 'sas_grid_V' ,    120    , 'vomecrty' ,  .true.    , .true. ,   'yearly'  , ''       , ''             , '' 
    8    sn_tem      = 'sas_grid_T' ,    120    , 'sosstsst' ,  .true.    , .true. ,   'yearly'  , ''       , ''             , '' 
    9    sn_sal      = 'sas_grid_T' ,    120    , 'sosaline' ,  .true.    , .true. ,   'yearly'  , ''       , ''             , '' 
    10    sn_ssh      = 'sas_grid_T' ,    120    , 'sossheig' ,  .true.    , .true. ,   'yearly'  , ''       , ''             , '' 
     6   sn_usp      = 'sas_grid_U' ,    120           , 'vozocrtx' ,  .true.    , .true. ,   'yearly'  , ''       , ''             , '' 
     7   sn_vsp      = 'sas_grid_V' ,    120           , 'vomecrty' ,  .true.    , .true. ,   'yearly'  , ''       , ''             , '' 
     8   sn_tem      = 'sas_grid_T' ,    120           , 'sosstsst' ,  .true.    , .true. ,   'yearly'  , ''       , ''             , '' 
     9   sn_sal      = 'sas_grid_T' ,    120           , 'sosaline' ,  .true.    , .true. ,   'yearly'  , ''       , ''             , '' 
     10   sn_ssh      = 'sas_grid_T' ,    120           , 'sossheig' ,  .true.    , .true. ,   'yearly'  , ''       , ''             , '' 
     11   sn_e3t      = 'sas_grid_T' ,    120           , 'e3t_m'    ,  .true.    , .true. ,   'yearly'  , ''       , ''             , '' 
     12   sn_frq      = 'sas_grid_T' ,    120           , 'frq_m'    ,  .true.    , .true. ,   'yearly'  , ''       , ''             , '' 
    1113 
    12    ln_3d_uv    = .true.    !  specify whether we are supplying a 3D u,v field 
     14   ln_3d_uve   = .true.    !  specify whether we are supplying a 3D u,v and e3 field 
     15   ln_read_frq = .false.    !  specify whether we must read frq or not 
    1316   cn_dir      = './'      !  root directory for the location of the bulk files are 
    1417/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namsbc_ssr

    r4230 r6040  
    11!----------------------------------------------------------------------- 
    2 &namsbc_ssr    !   surface boundary condition : sea surface restoring 
     2&namsbc_ssr    !   surface boundary condition : sea surface restoring   (ln_ssr=T) 
    33!----------------------------------------------------------------------- 
    44!              !  file name  ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namsbc_wave

    r4230 r6040  
    11!----------------------------------------------------------------------- 
    2 &namsbc_wave   ! External fields from wave model 
     2&namsbc_wave   ! External fields from wave model                        (ln_wave=T) 
    33!----------------------------------------------------------------------- 
    4 !              !  file name  ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    5 !              !             !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
    6    sn_cdg      =  'cdg_wave' ,        1          , 'drag_coeff' , .true.    , .false. , 'daily'  , ''       , ''       , '' 
    7    sn_usd      =  'sdw_wave' ,        1          , 'u_sd2d'     , .true.   , .false. , 'daily'  ,''         , ''       , '' 
    8    sn_vsd      =  'sdw_wave' ,        1          , 'v_sd2d'     , .true.   , .false. , 'daily'  ,''         , ''       , '' 
    9    sn_wn       =  'sdw_wave' ,        1          , 'wave_num'   , .true.   , .false. , 'daily'  ,''         , ''       , '' 
     4!              !  file name  ! frequency (hours) ! variable    ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
     5!              !             !  (if <0  months)  !   name      !  (logical)   !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
     6   sn_cdg      =  'cdg_wave' ,        1          , 'drag_coeff',     .true.   , .false., 'daily'   ,  ''      , ''       , '' 
     7   sn_usd      =  'sdw_wave' ,        1          , 'u_sd2d'    ,     .true.   , .false., 'daily'   ,  ''      , ''       , '' 
     8   sn_vsd      =  'sdw_wave' ,        1          , 'v_sd2d'    ,     .true.   , .false., 'daily'   ,  ''      , ''       , '' 
     9   sn_wn       =  'sdw_wave' ,        1          , 'wave_num'  ,     .true.   , .false., 'daily'   ,  ''      , ''       , '' 
    1010! 
    11    cn_dir_cdg  = './'  !  root directory for the location of drag coefficient files 
     11   cn_dir_cdg  = './'      !  root directory for the location of drag coefficient files 
     12   ln_cdgw = .false.       !  Neutral drag coefficient read from wave model 
     13   ln_sdw  = .false.       !  Computation of 3D stokes drift                
    1214/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namtra_adv

    r4147 r6040  
    11!----------------------------------------------------------------------- 
    2 &namtra_adv    !   advection scheme for tracer 
     2&namtra_adv    !   advection scheme for tracer                          (default: NO advection) 
    33!----------------------------------------------------------------------- 
    4    ln_traadv_cen2   =  .false.  !  2nd order centered scheme 
    5    ln_traadv_tvd    =  .true.   !  TVD scheme 
    6    ln_traadv_muscl  =  .false.  !  MUSCL scheme 
    7    ln_traadv_muscl2 =  .false.  !  MUSCL2 scheme + cen2 at boundaries 
    8    ln_traadv_ubs    =  .false.  !  UBS scheme 
    9    ln_traadv_qck    =  .false.  !  QUICKEST scheme 
    10    ln_traadv_msc_ups=  .false.  !  use upstream scheme within muscl 
     4   ln_traadv_cen =  .false.  !  2nd order centered scheme 
     5      nn_cen_h   =  4               !  =2/4, horizontal 2nd order CEN / 4th order CEN 
     6      nn_cen_v   =  4               !  =2/4, vertical   2nd order CEN / 4th order COMPACT 
     7   ln_traadv_fct =  .false.  !  FCT scheme 
     8      nn_fct_h   =  2               !  =2/4, horizontal 2nd / 4th order  
     9      nn_fct_v   =  2               !  =2/4, vertical   2nd / COMPACT 4th order  
     10      nn_fct_zts =  0               !  >=1,  2nd order FCT scheme with vertical sub-timestepping 
     11      !                             !        (number of sub-timestep = nn_fct_zts) 
     12   ln_traadv_mus =  .false.  !  MUSCL scheme 
     13      ln_mus_ups =  .false.         !  use upstream scheme near river mouths 
     14   ln_traadv_ubs =  .false.  !  UBS scheme 
     15      nn_ubs_v   =  2               !  =2  , vertical 2nd order FCT 
     16   ln_traadv_qck =  .false.  !  QUICKEST scheme 
    1117/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namtra_dmp

    r5102 r6040  
    11!----------------------------------------------------------------------- 
    2 &namtra_dmp    !   tracer: T & S newtonian damping 
     2&namtra_dmp    !   tracer: T & S newtonian damping                      (default: NO) 
    33!----------------------------------------------------------------------- 
    4    ln_tradmp   =  .true.     !  add a damping termn (T) or not (F) 
    5    nn_zdmp     =    0        !  vertical   shape =0    damping throughout the water column 
    6                              !                   =1 no damping in the mixing layer (kz  criteria) 
    7                              !                   =2 no damping in the mixed  layer (rho crieria) 
    8    cn_resto    = 'resto.nc'  ! Name of file containing restoration coefficient field (use dmp_tools to create this) 
    9  
     4   ln_tradmp   =  .true.   !  add a damping termn (T) or not (F) 
     5   nn_zdmp     =    0      !  vertical   shape =0    damping throughout the water column 
     6                           !                   =1 no damping in the mixing layer (kz  criteria) 
     7                           !                   =2 no damping in the mixed  layer (rho crieria) 
     8   cn_resto    ='resto.nc' !  Name of file containing restoration coeff. field (use dmp_tools to create this) 
    109/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namtra_ldf

    r4147 r6040  
    1 !---------------------------------------------------------------------------------- 
    2 &namtra_ldf    !   lateral diffusion scheme for tracers 
    3 !---------------------------------------------------------------------------------- 
     1!----------------------------------------------------------------------- 
     2&namtra_ldf    !   lateral diffusion scheme for tracers                 (default: NO diffusion) 
     3!----------------------------------------------------------------------- 
    44   !                       !  Operator type: 
    5    ln_traldf_lap    =  .true.   !  laplacian operator 
    6    ln_traldf_bilap  =  .false.  !  bilaplacian operator 
     5   !                           !  no diffusion: set ln_traldf_lap=..._blp=F  
     6   ln_traldf_lap   =  .false.  !    laplacian operator 
     7   ln_traldf_blp   =  .false.  !  bilaplacian operator 
    78   !                       !  Direction of action: 
    8    ln_traldf_level  =  .false.  !  iso-level 
    9    ln_traldf_hor    =  .false.  !  horizontal (geopotential)   (needs "key_ldfslp" when ln_sco=T) 
    10    ln_traldf_iso    =  .true.   !  iso-neutral                 (needs "key_ldfslp") 
    11    !                 !  Griffies parameters              (all need "key_ldfslp") 
    12    ln_traldf_grif   =  .false.  !  use griffies triads 
    13    ln_traldf_gdia   =  .false.  !  output griffies eddy velocities 
    14    ln_triad_iso     =  .false.  !  pure lateral mixing in ML 
    15    ln_botmix_grif   =  .false.  !  lateral mixing on bottom 
    16    !                       !  Coefficients 
    17    ! Eddy-induced (GM) advection always used with Griffies; otherwise needs "key_traldf_eiv" 
    18    ! Value rn_aeiv_0 is ignored unless = 0 with Held-Larichev spatially varying aeiv 
    19    !                                  (key_traldf_c2d & key_traldf_eiv & key_orca_r2, _r1 or _r05) 
    20    rn_aeiv_0        =  2000.    !  eddy induced velocity coefficient [m2/s] 
    21    rn_aht_0         =  2000.    !  horizontal eddy diffusivity for tracers [m2/s] 
    22    rn_ahtb_0        =     0.    !  background eddy diffusivity for ldf_iso [m2/s] 
    23    !                                           (normally=0; not used with Griffies) 
    24    rn_slpmax        =     0.01  !  slope limit 
    25    rn_chsmag        =     1.    !  multiplicative factor in Smagorinsky diffusivity 
    26    rn_smsh          =     1.    !  Smagorinsky diffusivity: = 0 - use only sheer 
    27    rn_aht_m         =  2000.    !  upper limit or stability criteria for lateral eddy diffusivity (m2/s) 
     9   ln_traldf_lev   =  .false.  !  iso-level 
     10   ln_traldf_hor   =  .false.  !  horizontal (geopotential) 
     11   ln_traldf_iso   =  .false.  !  iso-neutral (standard operator) 
     12   ln_traldf_triad =  .false.  !  iso-neutral (triad    operator) 
     13   ! 
     14   !                       !  iso-neutral options:         
     15   ln_traldf_msc   =  .false.  !  Method of Stabilizing Correction (both operators) 
     16   rn_slpmax       =   0.01    !  slope limit                      (both operators) 
     17   ln_triad_iso    =  .false.  !  pure horizontal mixing in ML              (triad only) 
     18   rn_sw_triad     =  1        !  =1 switching triad ; =0 all 4 triads used (triad only) 
     19   ln_botmix_triad =  .false.  !  lateral mixing on bottom                  (triad only) 
     20   ! 
     21   !                       !  Coefficients: 
     22   nn_aht_ijk_t    = 0         !  space/time variation of eddy coef 
     23   !                                !   =-20 (=-30)    read in eddy_diffusivity_2D.nc (..._3D.nc) file 
     24   !                                !   =  0           constant  
     25   !                                !   = 10 F(k)      =ldf_c1d  
     26   !                                !   = 20 F(i,j)    =ldf_c2d  
     27   !                                !   = 21 F(i,j,t)  =Treguier et al. JPO 1997 formulation 
     28   !                                !   = 30 F(i,j,k)  =ldf_c2d * ldf_c1d 
     29   !                                !   = 31 F(i,j,k,t)=F(local velocity and grid-spacing) 
     30   rn_aht_0        = 2000.     !  lateral eddy diffusivity   (lap. operator) [m2/s] 
     31   rn_bht_0        = 1.e+12    !  lateral eddy diffusivity (bilap. operator) [m4/s] 
    2832/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namtra_qsr

    r4230 r6040  
    11!----------------------------------------------------------------------- 
    2 &namtra_qsr    !   penetrative solar radiation 
     2&namtra_qsr    !   penetrative solar radiation                          (ln_traqsr=T) 
    33!----------------------------------------------------------------------- 
    44!              !  file name  ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
     
    77 
    88   cn_dir      = './'      !  root directory for the location of the runoff files 
    9    ln_traqsr   = .true.    !  Light penetration (T) or not (F) 
    109   ln_qsr_rgb  = .true.    !  RGB (Red-Green-Blue) light penetration 
    1110   ln_qsr_2bd  = .false.   !  2 bands              light penetration 
     
    1514   rn_si0      =   0.35    !  RGB & 2 bands: shortess depth of extinction 
    1615   rn_si1      =   23.0    !  2 bands: longest depth of extinction 
     16   ln_qsr_ice  = .true.    !  light penetration for ice-model LIM3 
    1717/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namtrd

    r3294 r6040  
    11!----------------------------------------------------------------------- 
    2 &namtrd        !   diagnostics on dynamics and/or tracer trends         ("key_trddyn" and/or "key_trdtra") 
    3 !              !       or mixed-layer trends or barotropic vorticity    ("key_trdmld" or     "key_trdvor") 
     2&namtrd        !   diagnostics on dynamics and/or tracer trends         (default F) 
     3!              !   and/or mixed-layer trends and/or barotropic vorticity 
    44!----------------------------------------------------------------------- 
    5    nn_trd      = 365       !  time step frequency dynamics and tracers trends 
    6    nn_ctls     =   0       !  control surface type in mixed-layer trends (0,1 or n<jpk) 
    7    rn_ucf      =   1.      !  unit conversion factor (=1 -> /seconds ; =86400. -> /day) 
    8    cn_trdrst_in      = "restart_mld"   ! suffix of ocean restart name (input) 
    9    cn_trdrst_out     = "restart_mld"   ! suffix of ocean restart name (output) 
    10    ln_trdmld_restart = .false.         !  restart for ML diagnostics 
    11    ln_trdmld_instant = .false.         !  flag to diagnose trends of instantantaneous or mean ML T/S 
     5   ln_glo_trd  = .false.   ! (T) global domain averaged diag for T, T^2, KE, and PE 
     6   ln_dyn_trd  = .false.   ! (T) 3D momentum trend output 
     7   ln_dyn_mxl  = .false.   ! (T) 2D momentum trends averaged over the mixed layer (not coded yet) 
     8   ln_vor_trd  = .false.   ! (T) 2D barotropic vorticity trends (not coded yet) 
     9   ln_KE_trd   = .false.   ! (T) 3D Kinetic   Energy     trends 
     10   ln_PE_trd   = .false.   ! (T) 3D Potential Energy     trends 
     11   ln_tra_trd  = .false.   ! (T) 3D tracer trend output 
     12   ln_tra_mxl  = .false.   ! (T) 2D tracer trends averaged over the mixed layer (not coded yet) 
     13   nn_trd      = 365       !  print frequency (ln_glo_trd=T) (unit=time step) 
    1214/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namtsd

    r4230 r6040  
    22&namtsd    !   data : Temperature  & Salinity 
    33!----------------------------------------------------------------------- 
    4 !          ! file name ! frequency (hours)         ! variable     ! time interp. ! clim  !'yearly' or ! weights  ! rotation ! land/sea mask ! 
    5 !          !           !  (if <0  months)          !   name       !  (logical)   ! (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
    6    sn_tem  = 'data_1m_potential_temperature_nomask', -1,'votemper',  .true.      , .true., 'yearly'   , ' '      , ' '      , '' 
    7    sn_sal  = 'data_1m_salinity_nomask'             , -1,'vosaline',  .true.      , .true., 'yearly'   , ''       , ' '      , '' 
     4!          !  file name                            ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
     5!          !                                       !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
     6   sn_tem  = 'data_1m_potential_temperature_nomask',         -1        ,'votemper' ,    .true.    , .true. , 'yearly'   , ''       ,   ''    ,    '' 
     7   sn_sal  = 'data_1m_salinity_nomask'             ,         -1        ,'vosaline' ,    .true.    , .true. , 'yearly'   , ''       ,   ''    ,    '' 
    88   ! 
    99   cn_dir        = './'     !  root directory for the location of the runoff files 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namzdf_gls

    r3294 r6040  
    22&namzdf_gls                !   GLS vertical diffusion                   ("key_zdfgls") 
    33!----------------------------------------------------------------------- 
    4    rn_emin       = 1.e-6   !  minimum value of e   [m2/s2] 
     4   rn_emin       = 1.e-7   !  minimum value of e   [m2/s2] 
    55   rn_epsmin     = 1.e-12  !  minimum value of eps [m2/s3] 
    66   ln_length_lim = .true.  !  limit on the dissipation rate under stable stratification (Galperin et al., 1988) 
    7    rn_clim_galp  = 0.53    !  galperin limit 
    8    ln_crban      = .true.  !  Use Craig & Banner (1994) surface wave mixing parametrisation 
     7   rn_clim_galp  = 0.267   !  galperin limit 
    98   ln_sigpsi     = .true.  !  Activate or not Burchard 2001 mods on psi schmidt number in the wb case 
    109   rn_crban      = 100.    !  Craig and Banner 1994 constant for wb tke flux 
    1110   rn_charn      = 70000.  !  Charnock constant for wb induced roughness length 
    12    nn_tkebc_surf =   1     !  surface tke condition (0/1/2=Dir/Neum/Dir Mellor-Blumberg) 
    13    nn_tkebc_bot  =   1     !  bottom tke condition (0/1=Dir/Neum) 
    14    nn_psibc_surf =   1     !  surface psi condition (0/1/2=Dir/Neum/Dir Mellor-Blumberg) 
    15    nn_psibc_bot  =   1     !  bottom psi condition (0/1=Dir/Neum) 
    16    nn_stab_func  =   2     !  stability function (0=Galp, 1= KC94, 2=CanutoA, 3=CanutoB) 
    17    nn_clos       =   1     !  predefined closure type (0=MY82, 1=k-eps, 2=k-w, 3=Gen) 
     11   rn_hsro       =  0.02   !  Minimum surface roughness 
     12   rn_frac_hs    =   1.3   !  Fraction of wave height as roughness (if nn_z0_met=2) 
     13   nn_z0_met     =     2   !  Method for surface roughness computation (0/1/2) 
     14   nn_bc_surf    =     1   !  surface condition (0/1=Dir/Neum) 
     15   nn_bc_bot     =     1   !  bottom condition (0/1=Dir/Neum) 
     16   nn_stab_func  =     2   !  stability function (0=Galp, 1= KC94, 2=CanutoA, 3=CanutoB) 
     17   nn_clos       =     1   !  predefined closure type (0=MY82, 1=k-eps, 2=k-w, 3=Gen) 
    1818/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namzdf_tke

    r4147 r6040  
    2121                           !        = 1 add a tke source below the ML 
    2222                           !        = 2 add a tke source just at the base of the ML 
    23                            !        = 3 as = 1 applied on HF part of the stress    ("key_coupled") 
     23                           !        = 3 as = 1 applied on HF part of the stress    ("key_oasis3") 
    2424   rn_efr      =   0.05    !  fraction of surface tke value which penetrates below the ML (nn_etau=1 or 2) 
    2525   nn_htau     =   1       !  type of exponential decrease of tke penetration below the ML 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namzgr

    r5120 r6040  
    11!----------------------------------------------------------------------- 
    2 &namzgr        !   vertical coordinate 
     2&namzgr        !   vertical coordinate                                  (default: NO selection) 
    33!----------------------------------------------------------------------- 
    4    ln_zco      = .false.   !  z-coordinate - full    steps   (T/F)      ("key_zco" may also be defined) 
    5    ln_zps      = .true.    !  z-coordinate - partial steps   (T/F) 
    6    ln_sco      = .false.   !  s- or hybrid z-s-coordinate    (T/F) 
    7    ln_isfcav   = .false.   !  ice shelf cavity               (T/F) 
     4   ln_zco      = .false.   !  z-coordinate - full    steps 
     5   ln_zps      = .false.   !  z-coordinate - partial steps 
     6   ln_sco      = .false.   !  s- or hybrid z-s-coordinate 
     7   ln_isfcav   = .false.   !  ice shelf cavity 
     8   ln_linssh   = .false.   !  linear free surface 
    89/ 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/DOC/TexFiles/Namelist/namzgr_sco

    r3680 r6040  
    22&namzgr_sco    !   s-coordinate or hybrid z-s-coordinate 
    33!----------------------------------------------------------------------- 
    4    ln_s_sh94   = .true.    !  Song & Haidvogel 1994 hybrid S-sigma   (T)| 
     4   ln_s_sh94   = .false.    !  Song & Haidvogel 1994 hybrid S-sigma   (T)| 
    55   ln_s_sf12   = .false.   !  Siddorn & Furner 2012 hybrid S-z-sigma (T)| if both are false the NEMO tanh stretching is applied 
    66   ln_sigcrit  = .false.   !  use sigma coordinates below critical depth (T) or Z coordinates (F) for Siddorn & Furner stretch 
     
    1313                        !!!!!!!  SH94 stretching coefficients  (ln_s_sh94 = .true.) 
    1414   rn_theta    =    6.0    !  surface control parameter (0<=theta<=20) 
    15    rn_bb       =    0.8    !  stretching with SH94 s-sigma    
     15   rn_bb       =    0.8    !  stretching with SH94 s-sigma 
    1616                        !!!!!!!  SF12 stretching coefficient  (ln_s_sf12 = .true.) 
    1717   rn_alpha    =    4.4    !  stretching with SF12 s-sigma 
     
    2222   rn_zb_b     =   -0.2    !  offset for calculating Zb 
    2323                        !!!!!!!! Other stretching (not SH94 or SF12) [also uses rn_theta above] 
    24    rn_thetb    =    1.0    !  bottom control parameter  (0<=thetb<= 1)  
     24   rn_thetb    =    1.0    !  bottom control parameter  (0<=thetb<= 1) 
    2525/ 
Note: See TracChangeset for help on using the changeset viewer.