New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 6140 for trunk/DOC/TexFiles – NEMO

Changeset 6140 for trunk/DOC/TexFiles


Ignore:
Timestamp:
2015-12-21T12:35:23+01:00 (8 years ago)
Author:
timgraham
Message:

Merge of branches/2015/dev_merge_2015 back into trunk. Merge excludes NEMOGCM/TOOLS/OBSTOOLS/ for now due to issues with the change of file type. Will sort these manually with further commits.

Branch merged as follows:
In the working copy of branch ran:
svn merge svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk@HEAD
Small conflicts due to bug fixes applied to trunk since the dev_merge_2015 was copied. Bug fixes were applied to the branch as well so these were easy to resolve.
Branch committed at this stage

In working copy run:
svn switch svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk
to switch working copy

Run:
svn merge --reintegrate svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/branches/2015/dev_merge_2015
to merge the branch into the trunk and then commit - no conflicts at this stage.

Location:
trunk/DOC/TexFiles
Files:
57 edited
5 copied

Legend:

Unmodified
Added
Removed
  • trunk/DOC/TexFiles/Biblio/Biblio.bib

    r5120 r6140  
    149149  volume = {36}, 
    150150  pages = {1502--1522} 
     151} 
     152 
     153@ARTICLE{Artale_al_JGR02, 
     154  author={V. Artale and D. Iudicone and R. Santoleri and V. Rupolo and S. Marullo 
     155          and F. {D'O}rtenzio}, 
     156  title={{Role of surface fluxes in ocean general circulation models using satellite 
     157          sea surface temperature: Validation of and sensitivity to the forcing 
     158          frequency of the Mediterranean thermohaline circulation}}, 
     159  journal=JGR, 
     160  year={2002}, 
     161  volume={107}, 
     162  pages={1978-2012}, 
     163  doi = {10.1029/2000JC000452}, 
    151164} 
    152165 
     
    276289  author = {A. Beckmann and H. Goosse}, 
    277290  title = {A parameterization of ice shelf-ocean interaction for climate models}, 
    278   journal = OM 
    279   year = {2003} 
    280   volume = {5} 
     291  journal = OM, 
     292  year = {2003}, 
     293  volume = {5}, 
    281294  pages = {157--170} 
    282295} 
     
    763776} 
    764777 
     778@PHDTHESIS{Demange_PhD2014, 
     779  author = {J. Farge}, 
     780  title = {Sch\'{e}́mas num\'{e}́riques d’advection et de propagation d’ondes de gravit\'{e}́  
     781           dans les mod\`{e}les de circulation oc\'{e}́anique.}, 
     782  school = {Doctorat es Applied Mathematiques, Grenoble University, France}, 
     783  year = {2014}, 
     784  pages = {138pp} 
     785} 
    765786 
    766787@ARTICLE{Dobricic_al_OS07, 
     
    9831004  author = {M. Farge}, 
    9841005  title = {Dynamique non lineaire des ondes et des tourbillons dans les equations de Saint Venant}, 
    985   school = {Doctorat es Mathematiques, Paris VI University}, 
     1006  school = {Doctorat es Mathematiques, Paris VI University, France}, 
    9861007  year = {1987}, 
    9871008  pages = {401pp} 
     
    10591080  volume = {20},  number = {1}, 
    10601081  pages = {150--155}, 
     1082} 
     1083 
     1084@Article{Gentemann_al_JGR09, 
     1085  author =   {C. L. Gentemann  and P. J. Minnett and B. Ward}, 
     1086  title =        {Profiles of Ocean Surface heating ({POSH}): A new model  
     1087                  of upper ocean diurnal warming}, 
     1088  journal =     JGR, 
     1089  year =     {2009}, 
     1090  Volume =   {114}, 
     1091  Pages =    {C07017}, 
     1092  doi =   {10.1029/2008JC004825}, 
     1093  OPTannote =   {} 
    10611094} 
    10621095 
     
    11221155  doi = {10.1029/2006GL028210}, 
    11231156  url = {http://dx.doi.org/10.1029/2006GL028210} 
     1157} 
     1158 
     1159@ARTICLE{Graham_McDougall_JPO13, 
     1160  author = {F.S. Graham and T.J. McDougall}, 
     1161  title = {Quantifying the nonconservative production of conservative temperature, potential temperature, and entropy}, 
     1162  journal = JPO, 
     1163  year = {2013}, 
     1164  volume = {43}, 
     1165  pages = {838--862}, 
     1166  url ={http://dx.doi.org/10.1175/JPO-D-11-0188.1} 
    11241167} 
    11251168 
     
    13471390} 
    13481391 
     1392@ARTICLE{Holland1999,  
     1393  author = {D. Holland and A. Jenkins}, 
     1394  title = {Modeling Thermodynamic Ice-Ocean Interactions at the Base of an Ice Shelf}, 
     1395  journal = JPO, 
     1396  year = {1999}, 
     1397  volume = {29},   
     1398  pages = {1787--1800}, 
     1399} 
     1400 
    13491401@ARTICLE{HollowayOM86, 
    13501402  author = {Greg Holloway}, 
     
    14301482} 
    14311483 
     1484@TECHREPORT{TEOS10, 
     1485  author = {IOC and SCOR and IAPSO}, 
     1486  title = {The international thermodynamic equation of seawater - 2010: Calculation and use of thermodynamic properties}, 
     1487  institution = {Intergovernmental Oceanographic Commission}, 
     1488  publisher = {Manuals and Guides No. 56, UNESCO (English)}, 
     1489  year = {2010}, 
     1490  pages = {196pp}, 
     1491  url = {http://www.teos-10.org/pubs/TEOS-10_Manual.pdf} 
     1492} 
     1493 
    14321494@ARTICLE{Iudicone_al_JPO08b, 
    14331495  author = {D. Iudicone and G. Madec and B. Blanke and S. Speich}, 
     
    14931555} 
    14941556 
     1557@ARTICLE{Jenkins1991, 
     1558  author = {A. Jenkins}, 
     1559  title = {A one-dimensional model of ice shelf-ocean interaction}, 
     1560  journal = JGR, 
     1561  year = {1991}, 
     1562  volume = {96},  number = {C11}, 
     1563  pages = {2298--2312} 
     1564} 
     1565 
     1566@ARTICLE{Jenkins2010, 
     1567  author = {A. Jenkins}, 
     1568  title = {observation and parameterization of ablation at the base of Ronne Ice Shelf, Antarctica}, 
     1569  journal = JPO, 
     1570  year = {2010}, 
     1571  volume = {40},  number = {10}, 
     1572  pages = {2298--2312} 
     1573} 
     1574 
    14951575@BOOK{Jerlov_Bk68, 
    14961576  title = {Optical Oceanography}, 
     
    16431723} 
    16441724 
     1725 
     1726@ARTICLE{Lemarie_OM2015, 
     1727  author = {F. Lemari\'{e} and L. Debreu and J. Demange and  G. Madec and J.M. Molines and M. Honnorat}, 
     1728  title = {Stability Constraints for Oceanic Numerical Models:  
     1729           Implications for the Formulation of time and space Discretizations}, 
     1730  journal = OM, 
     1731  year = {2015}, 
     1732  volume = {92},  
     1733  pages = {124--148}, 
     1734  doi = {10.1016/j.ocemod.2015.06.006}, 
     1735  url = {http://dx.doi.org/10.1016/j.ocemod.2015.06.006} 
     1736} 
     1737 
    16451738@ARTICLE{Lermusiaux2001, 
    16461739  author = {P. F. J. Lermusiaux}, 
     
    16551748  author = {M. L\'{e}vy}, 
    16561749  title = {Mod\'{e}lisation des processus biog\'{e}ochimiques en M\'{e}diterran\'{e}e 
    1657    nord-occidentale. Cycle saisonnier et variabilit\'{e} m\'{e}so\'{e}chelle}, 
     1750           nord-occidentale. Cycle saisonnier et variabilit\'{e} m\'{e}so\'{e}chelle}, 
    16581751  school = {Universit\'{e} Pierre et Marie Curie, Paris, France, 207pp}, 
    16591752  year = {1996} 
     
    17961889} 
    17971890 
     1891@ARTICLE{Lele_JCP1992, 
     1892  author = {S.K. Lele}, 
     1893  title = {Compact finite difference schemes with spectral-like resolution}, 
     1894  journal = JCP, 
     1895  year = {1992}, 
     1896  volume = {103} 
     1897  pages = {16--42} 
     1898} 
     1899 
    17981900@ARTICLE{Lengaigne_al_JC03, 
    17991901  author = {M. Lengaigne and J.-P. Boulanger and C. Menkes and G. Madec and P. 
     
    18982000  volume = {51}, 
    18992001  pages = {737--769} 
     2002} 
     2003 
     2004@ARTICLE{Losch2008, 
     2005  author = {M. Losch}, 
     2006  title = {Modeling ice shelf cavities in a z coordinate ocean general circulation model}, 
     2007  journal = JGR, 
     2008  year = {2008}, 
     2009  volume = {113},  number = {C13}, 
    19002010} 
    19012011 
     
    24882598} 
    24892599 
     2600@article{Roquet_OM2015, 
     2601author = "F. Roquet and G. Madec and T.J. McDougall and P.M. Barker", 
     2602title = "Accurate polynomial expressions for the density and specific volume of seawater using the TEOS-10 standard ", 
     2603journal = OM, 
     2604volume = "90", 
     2605pages = "29--43", 
     2606year = "2015", 
     2607issn = "1463-5003", 
     2608doi = "10.1016/j.ocemod.2015.04.002", 
     2609url = "http://dx.doi.org/10.1016/j.ocemod.2015.04.002" 
     2610} 
     2611 
     2612@article{Roquet_JPO2015, 
     2613author = "F. Roquet and G. Madec and L. Brodeau and J. Nycander", 
     2614title = "Defining a Simplified Yet Realistic Equation of State for Seawater", 
     2615journal = JPO, 
     2616volume = "45", 
     2617pages = "2564--2579", 
     2618year = "2015", 
     2619doi = "10.1175/JPO-D-15-0080.1", 
     2620url = "http://dx.doi.org/10.1175/JPO-D-15-0080.1" 
     2621} 
     2622 
    24902623@ARTICLE{Roullet_Madec_JGR00, 
    24912624  author = {G. Roullet and G. Madec}, 
     
    25142647  volume = {87}, 
    25152648  pages = {394--409} 
     2649} 
     2650 
     2651@ARTICLE{Saunders_JAS82, 
     2652  author={P. M. Saunders}, 
     2653  title={{The Temperature at the Ocean-air Interface}}, 
     2654  journal=JAS, 
     2655  year={1967}, 
     2656  volume={24}, 
     2657  pages={269-273}, 
     2658  doi = {10.1175/1520-0469(1967)024<0269:TTATOA>2.0.CO;2}, 
    25162659} 
    25172660 
     
    26882831  volume = {359}, 
    26892832  pages = {123--129} 
     2833} 
     2834 
     2835@ARTICLE{Takaya_al_JGR10, 
     2836  author =   {Y. Takaya and J-R. Bidlot and A. C. M. Beljaars and  
     2837                  P. A. E. M. Janssen}, 
     2838  title =        {Refinements to a prognostic scheme of sea surface skin temperature}, 
     2839  journal =     JGR, 
     2840  year =     {2010}, 
     2841  Volume =   {115}, 
     2842  Pages =    {C06009}, 
     2843  doi =   {10.1029/2009JC005985}, 
    26902844} 
    26912845 
     
    27932947} 
    27942948 
     2949@ARTICLE{Tu_Tsuang_GRL05, 
     2950  title={{Cool-skin simulation by a one-column ocean model}}, 
     2951  author={{C-Y}. Tu  and {B-J}. Tsuang}, 
     2952  journal=GRL, 
     2953  year={2005}, 
     2954  volume={32}, 
     2955  pages={L22602}, 
     2956  doi = {10.1029/2005GL024252}, 
     2957} 
     2958 
    27952959@ARTICLE{Umlauf_Burchard_JMS03, 
    27962960  author = {L. Umlauf and H. Burchard}, 
     
    28423006  volume = {27}, 
    28433007  pages = {54--69} 
     3008} 
     3009 
     3010@book{Vallis06, 
     3011author = {Vallis, G. K.}, 
     3012title = {Atmospheric and Oceanic Fluid Dynamics}, 
     3013publisher = {Cambridge University Press}, 
     3014address = {Cambridge, U.K.}, 
     3015year = {2006}, 
     3016pages = {745}, 
    28443017} 
    28453018 
  • trunk/DOC/TexFiles/Chapters/Abstracts_Foreword.tex

    r3294 r6140  
    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 
  • trunk/DOC/TexFiles/Chapters/Annex_C.tex

    r3294 r6140  
    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:  
  • trunk/DOC/TexFiles/Chapters/Chap_DIA.tex

    • Property svn:keywords set to Id
    r5515 r6140  
    22% Chapter I/O & Diagnostics 
    33% ================================================================ 
    4 \chapter{Ouput and Diagnostics (IOM, DIA, TRD, FLO)} 
     4\chapter{Output and Diagnostics (IOM, DIA, TRD, FLO)} 
    55\label{DIA} 
    66\minitoc 
    77 
    88\newpage 
    9 $\ $\newline    % force a new ligne 
     9$\ $\newline    % force a new line 
    1010 
    1111% ================================================================ 
     
    3333"\textit{grep -i numout}" in the source code directory. 
    3434 
    35 By default, diagnostic output files are written in NetCDF format but an IEEE binary output format, called DIMG, can be choosen by defining \key{dimgout}.  
     35By default, diagnostic output files are written in NetCDF format but an IEEE binary output format, called DIMG, can be chosen by defining \key{dimgout}.  
    3636 
    3737Since version 3.2, when defining \key{iomput}, an I/O server has been added which provides more flexibility in the choice of the fields to be written as well as how the writing work is distributed over the processors in massively parallel computing. The complete description of the use of this I/O server is presented in the next section.  
     
    5757\item The choice of output frequencies that can be different for each file (including real months and years). 
    5858\item The choice of file contents; includes complete flexibility over which data are written in which files (the same data can be written in different files).  
    59 \item The possibility to split output files at a choosen frequency. 
     59\item The possibility to split output files at a chosen frequency. 
    6060\item The possibility to extract a vertical or an horizontal subdomain. 
    6161\item The choice of the temporal operation to perform, e.g.: average, accumulate, instantaneous, min, max and once. 
     
    13191319 
    13201320% ------------------------------------------------------------------------------------------------------------- 
     1321%       25 hour mean and hourly Surface, Mid and Bed  
     1322% ------------------------------------------------------------------------------------------------------------- 
     1323\section{25 hour mean output for tidal models } 
     1324 
     1325A module is available to compute a crudely detided M2 signal by obtaining a 25 hour mean. 
     1326The 25 hour mean is available for daily runs by summing up the 25 hourly instantananeous hourly values from 
     1327midnight at the start of the day to midight at the day end. 
     1328This diagnostic is actived with the logical  $ln\_dia25h$ 
     1329 
     1330%------------------------------------------nam_dia25h------------------------------------------------------ 
     1331\namdisplay{nam_dia25h} 
     1332%---------------------------------------------------------------------------------------------------------- 
     1333 
     1334\section{Top Middle and Bed hourly output } 
     1335 
     1336A module is available to output the surface (top), mid water and bed diagnostics of a set of standard variables.  
     1337This can be a useful diagnostic when hourly or sub-hourly output is required in high resolution tidal outputs. 
     1338The tidal signal is retained but the overall data usage is cut to just three vertical levels. Also the bottom level  
     1339is calculated for each cell. 
     1340This diagnostic is actived with the logical  $ln\_diatmb$ 
     1341 
     1342%------------------------------------------nam_diatmb----------------------------------------------------- 
     1343\namdisplay{nam_diatmb} 
     1344%---------------------------------------------------------------------------------------------------------- 
     1345 
     1346% ------------------------------------------------------------------------------------------------------------- 
    13211347%       Sections transports 
    13221348% ------------------------------------------------------------------------------------------------------------- 
     
    15221548\\ 
    15231549 
     1550\section{Courant numbers} 
     1551Courant numbers provide a theoretical indication of the model's numerical stability. The advective Courant numbers can be calculated according to 
     1552\begin{equation} 
     1553\label{eq:CFL} 
     1554C_u = |u|\frac{\rdt}{e_{1u}}, \quad C_v = |v|\frac{\rdt}{e_{2v}}, \quad C_w = |w|\frac{\rdt}{e_{3w}} 
     1555\end{equation} 
     1556in the zonal, meridional and vertical directions respectively. The vertical component is included although it is not strictly valid as the vertical velocity is calculated from the continuity equation rather than as a prognostic variable. Physically this represents the rate at which information is propogated across a grid cell. Values greater than 1 indicate that information is propagated across more than one grid cell in a single time step. 
     1557 
     1558The variables can be activated by setting the \np{nn\_diacfl} namelist parameter to 1 in the \ngn{namctl} namelist. The diagnostics will be written out to an ascii file named cfl\_diagnostics.ascii. In this file the maximum value of $C_u$, $C_v$, and $C_w$ are printed at each timestep along with the coordinates of where the maximum value occurs. At the end of the model run the maximum value of $C_u$, $C_v$, and $C_w$ for the whole model run is printed along with the coordinates of each. The maximum values from the run are also copied to the ocean.output file.  
    15241559 
    15251560 
  • trunk/DOC/TexFiles/Chapters/Chap_DOM.tex

    r5120 r6140  
    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  
    499500provision is made for reading it from a file. The only input file is the bathymetry  
    500 (in meters) (\ifile{bathy\_meter})  
     501(in meters) (\ifile{bathy\_meter}).  
    501502\footnote{N.B. in full step $z$-coordinate, a \ifile{bathy\_level} file can replace the  
    502503\ifile{bathy\_meter} file, so that the computation of the number of wet ocean point  
    503504in each water column is by-passed}.  
     505If \np{ln\_isfcav}~=~true, an extra file input file describing the ice shelf draft  
     506(in meters) (\ifile{isf\_draft\_meter}) is needed and all the location where the isf cavity thinnest 
     507 than \np{rn\_isfhmin} meters are grounded (ie masked).  
     508 
    504509After reading the bathymetry, the algorithm for vertical grid definition differs  
    505510between the different options: 
     
    519524%%% 
    520525 
    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). 
     526Unless a linear free surface is used (\np{ln\_linssh}=false), the arrays describing  
     527the grid point depths and vertical scale factors are three set of three dimensional arrays $(i,j,k)$  
     528defined at \textit{before}, \textit{now} and \textit{after} time step. The time at which they are 
     529defined is indicated by a suffix:$\_b$, $\_n$, or $\_a$, respectively. They are updated at each model time step 
     530using a fixed reference coordinate system which computer names have a $\_0$ suffix.  
     531When the linear free surface option is used (\np{ln\_linssh}=true), \textit{before}, \textit{now}  
     532and \textit{after} arrays are simply set one for all to their reference counterpart.  
     533 
    534534 
    535535% ------------------------------------------------------------------------------------------------------------- 
     
    840840%        z*- or s*-coordinate 
    841841% ------------------------------------------------------------------------------------------------------------- 
    842 \subsection{$z^*$- or $s^*$-coordinate (add \key{vvl}) } 
    843 \label{DOM_zgr_vvl} 
     842\subsection{$z^*$- or $s^*$-coordinate (\np{ln\_linssh}=false) } 
     843\label{DOM_zgr_star} 
    844844 
    845845This option is described in the Report by Levier \textit{et al.} (2007), available on  
  • trunk/DOC/TexFiles/Chapters/Chap_DYN.tex

    r5120 r6140  
    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} 
  • trunk/DOC/TexFiles/Chapters/Chap_LDF.tex

    r4147 r6140  
    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% ================================================================ 
  • trunk/DOC/TexFiles/Chapters/Chap_Model_Basics.tex

    r3294 r6140  
    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 
  • trunk/DOC/TexFiles/Chapters/Chap_Model_Basics_zstar.tex

    r4147 r6140  
    11% ================================================================ 
    2 % Chapter 1 Model Basics 
     2% Chapter 1 ——— Model Basics 
    33% ================================================================ 
    44% ================================================================ 
  • trunk/DOC/TexFiles/Chapters/Chap_OBS.tex

    r4245 r6140  
    1818location and nearest model timestep. The resulting data are saved in a ``feedback'' file (or 
    1919files). The code was originally developed for use with the NEMOVAR data assimilation code, but 
    20 can be used for validation or verification of model or any other data assimilation system. 
    21  
    22 The OBS code is called from \mdl{nemogcm.F90} for model initialisation and to calculate the model 
     20can be used for validation or verification of the model or with any other data assimilation system. 
     21 
     22The OBS code is called from \mdl{nemogcm} for model initialisation and to calculate the model 
    2323equivalent values for observations on the 0th timestep. The code is then called again after 
    24 each timestep from \mdl{step.F90}. To build with the OBS code active \key{diaobs} must be 
    25 set. 
     24each timestep from \mdl{step}. The code is only activated if the namelist logical \np{ln\_diaobs} 
     25is set to true. 
    2626 
    2727For all data types a 2D horizontal  interpolator is needed to interpolate the model fields to 
     
    2929addition to provide model fields at the observation depths. Currently this only works in 
    3030z-level model configurations, but is being developed to work with a generalised vertical 
    31 coordinate system. Temperature data from moored buoys (TAO, TRITON, PIRATA) in the 
    32 ENACT/ENSEMBLES data-base are available as daily averaged quantities. For this type of 
    33 observation the observation operator will compare such observations to the model temperature 
    34 fields averaged over one day. The relevant observation type may be specified in the namelist 
    35 using \np{endailyavtypes}. Otherwise the model value from the nearest timestep to the 
     31coordinate system.  
     32 
     33Some profile observation types (e.g. tropical moored buoys) are made available as daily averaged quantities. 
     34The observation operator code can be set-up to calculated the equivalent daily average model temperature fields 
     35using the \np{nn\_profdavtypes} namelist array. Some SST observations are equivalent to a night-time 
     36average value and the observation operator code can calculate equivalent night-time average model SST fields by 
     37setting the namelist value \np{ln\_sstnight} to true. Otherwise the model value from the nearest timestep to the 
    3638observation time is used. 
    3739 
    3840The code is controlled by the namelist \textit{nam\_obs}. See the following sections for more 
    39 details on setting up the namelist.  
     41details on setting up the namelist. 
    4042 
    4143Section~\ref{OBS_example} introduces a test example of the observation operator code including 
     
    5961 
    6062\begin{enumerate} 
    61 \item Compile NEMO with \key{diaobs} set. 
    62  
    63 \item Download some ENSEMBLES EN3 data from  
    64 \href{http://www.hadobs.org}{http://www.hadobs.org}. Choose observations which are 
     63\item Compile NEMO. 
     64 
     65\item Download some EN4 data from  
     66\href{http://www.metoffice.gov.uk/hadobs}{http://www.metoffice.gov.uk/hadobs}. Choose observations which are 
    6567valid for the period of your test run because the observation operator compares 
    6668the model and observations for a matching date and time.  
    6769 
    68 \item Add the following to the NEMO namelist to run the observation 
    69 operator on this data. Set the \np{enactfiles} namelist variable to the 
    70 observation  file name: 
     70\item Compile the OBSTOOLS code using:  
     71\begin{verbatim} 
     72./maketools -n OBSTOOLS -m [ARCH]. 
     73\end{verbatim} 
     74 
     75\item Convert the EN4 data into feedback format:  
     76\begin{verbatim} 
     77enact2fb.exe profiles_01.nc EN.4.1.1.f.profiles.g10.YYYYMM.nc 
     78\end{verbatim} 
     79 
     80\item Include the following in the NEMO namelist to run the observation 
     81operator on this data: 
    7182\end{enumerate} 
    7283 
     
    7788Options are defined through the  \ngn{namobs} namelist variables. 
    7889The options \np{ln\_t3d} and \np{ln\_s3d} switch on the temperature and salinity 
    79 profile observation operator code. The \np{ln\_ena} switch turns on the reading 
    80 of ENACT/ENSEMBLES type profile data. The filename or array of filenames are 
    81 specified using the \np{enactfiles} variable. The model grid points for a 
     90profile observation operator code. The filename or array of filenames are 
     91specified using the \np{cn\_profbfiles} variable. The model grid points for a 
    8292particular  observation latitude and longitude are found using the grid 
    8393searching part of the code. This can be expensive, particularly for large 
     
    92102A number of utilities are now provided to plot the feedback files, convert and 
    93103recombine the files. These are explained in more detail in section~\ref{OBS_obsutils}. 
     104Utilites to convert other input data formats into the feedback format are also  
     105described in section~\ref{OBS_obsutils}. 
    94106 
    95107\section{Technical details} 
     
    104116%------------------------------------------------------------------------------------------------------------- 
    105117 
    106 This name list uses the "feedback" type observation file input format for 
    107 profile, sea level anomaly and sea surface temperature data. All the 
     118The observation operator code uses the "feedback" observation file format for 
     119all data types. All the 
    108120observation files must be in NetCDF format. Some example headers (produced using 
    109121\mbox{\textit{ncdump~-h}}) for profile 
  • trunk/DOC/TexFiles/Chapters/Chap_SBC.tex

    r5120 r6140  
    4949(\np{nn\_ice}~=~0,1, 2 or 3); the addition of river runoffs as surface freshwater  
    5050fluxes or lateral inflow (\np{ln\_rnf}~=~true); the addition of isf melting as lateral inflow (parameterisation)  
    51 (\np{nn\_isf}~=~2 or 3 and \np{ln\_isfcav}~=~false) or as surface flux at the land-ice ocean interface 
    52 (\np{nn\_isf}~=~1 or 4 and \np{ln\_isfcav}~=~true);  
     51 or as surface flux at the land-ice ocean interface (\np{ln\_isf}=~true);  
    5352the addition of a freshwater flux adjustment in order to avoid a mean sea-level drift (\np{nn\_fwb}~=~0,~1~or~2); the  
    5453transformation of the solar radiation (if provided as daily mean) into a diurnal  
     
    958957\namdisplay{namsbc_isf} 
    959958%-------------------------------------------------------------------------------------------------------- 
    960 Namelist variable in \ngn{namsbc}, \np{nn\_isf},  control the kind of ice shelf representation used.  
     959Namelist variable in \ngn{namsbc}, \np{nn\_isf}, control the kind of ice shelf representation used.  
    961960\begin{description} 
    962961\item[\np{nn\_isf}~=~1] 
    963 The ice shelf cavity is represented. The fwf and heat flux are computed.  
     962The ice shelf cavity is represented. The fwf and heat flux are computed. 2 bulk formulations are available: the ISOMIP one (\np{nn\_isfblk = 1}) described in (\np{nn\_isfblk = 2}), the 3 equation formulation described in \citet{Jenkins1991}. In addition to this,  
     9633 different way to compute the exchange coefficient are available. $\gamma\_{T/S}$ is constant (\np{nn\_gammablk = 0}), $\gamma\_{T/S}$ is velocity dependant \citep{Jenkins2010} (\np{nn\_gammablk = 1}) and $\gamma\_{T/S}$ is velocity dependant and stratification dependent \citep{Holland1999} (\np{nn\_gammablk = 2}). For each of them, the thermal/salt exchange coefficient (\np{rn\_gammat0} and \np{rn\_gammas0}) have to be specified (the default values are for the ISOMIP case).  
    964964Full description, sensitivity and validation in preparation.  
    965965 
     
    969969(\np{sn\_depmax\_isf}) and the base of the ice shelf along the calving front (\np{sn\_depmin\_isf}) as in (\np{nn\_isf}~=~3).  
    970970Furthermore the fwf is computed using the \citet{Beckmann2003} parameterisation of isf melting.  
    971 The effective melting length (\np{sn\_Leff\_isf}) is read from a file. 
     971The effective melting length (\np{sn\_Leff\_isf}) is read from a file and the exchange coefficients are set as (\np{rn\_gammat0}) and (\np{rn\_gammas0}). 
    972972 
    973973\item[\np{nn\_isf}~=~3] 
     
    987987\np{nn\_isf}~=~3 and \np{nn\_isf}~=~4 read the melt rate and heat flux from a file. You have total control of the fwf scenario. 
    988988 
    989  This can be usefull if the water masses on the shelf are not realistic or the resolution (horizontal/vertical) are too  
     989This can be usefull if the water masses on the shelf are not realistic or the resolution (horizontal/vertical) are too  
    990990coarse to have realistic melting or for sensitivity studies where you want to control your input.  
    991991Full description, sensitivity and validation in preparation.  
    992992 
    993 There is 2 ways to apply the fwf to NEMO. The first possibility (\np{ln\_divisf}~=~false) applied the fwf 
    994  and heat flux directly on the salinity and temperature tendancy. The second possibility (\np{ln\_divisf}~=~true) 
    995  apply the fwf as for the runoff fwf (see \S\ref{SBC_rnf}). The mass/volume addition due to the ice shelf melting is, 
    996  at each relevant depth level, added to the horizontal divergence (\textit{hdivn}) in the subroutine \rou{sbc\_isf\_div}  
    997 (called from \mdl{divcur}).  
     993\np{rn\_hisf\_tbl} is the top boundary layer (tbl) thickness used by the Losch parametrisation \citep{Losch2008} to compute the melt. if 0, temperature/salt/velocity in the top cell is used to compute the melt. 
     994Otherwise, NEMO used the mean value into the tbl.  
     995 
     996\section{ Ice sheet coupling} 
     997\label{SBC_iscpl} 
     998%------------------------------------------namsbc_iscpl---------------------------------------------------- 
     999\namdisplay{namsbc_iscpl} 
     1000%-------------------------------------------------------------------------------------------------------- 
     1001Ice sheet/ocean coupling is done through file exchange at the restart step. NEMO, at each restart step,  
     1002read the bathymetry and ice shelf draft variable in a netcdf file.  
     1003If \np{ln\_iscpl = ~true}, the isf draft is assume to be different at each restart step  
     1004with potentially some new wet/dry cells due to the ice sheet dynamics/thermodynamics. 
     1005The wetting and drying scheme applied on the restart is very simple and described below for the 6 different cases: 
     1006\begin{description} 
     1007\item[Thin a cell down:] 
     1008   T/S/ssh are unchanged and U/V in the top cell are corrected to keep the barotropic transport (bt) constant ($bt_b=bt_n$). 
     1009\item[Enlarge  a cell:] 
     1010   See case "Thin a cell down" 
     1011\item[Dry a cell:] 
     1012   mask, T/S, U/V and ssh are set to 0. Furthermore, U/V into the water column are modified to satisfy ($bt_b=bt_n$). 
     1013\item[Wet a cell:]  
     1014   mask is set to 1, T/S is extrapolated from neighbours, $ssh_n = ssh_b$ and U/V set to 0. If no neighbours along i,j and k, T/S/U/V and mask are set to 0. 
     1015\item[Dry a column:] 
     1016   mask, T/S, U/V are set to 0 everywhere in the column and ssh set to 0. 
     1017\item[Wet a column:] 
     1018   set mask to 1, T/S is extrapolated from neighbours, ssh is extrapolated from neighbours and U/V set to 0. If no neighbour, T/S/U/V and mask set to 0. 
     1019\end{description} 
     1020The extrapolation is call \np{nn\_drown} times. It means that if the grounding line retreat by more than \np{nn\_drown} cells between 2 coupling steps, 
     1021 the code will be unable to fill all the new wet cells properly. The default number is set up for the MISOMIP idealised experiments.\\ 
     1022This coupling procedure is able to take into account grounding line and calving front migration. However, it is a non-conservative processe.  
     1023This could lead to a trend in heat/salt content and volume. In order to remove the trend and keep the conservation level as close to 0 as possible, 
     1024 a simple conservation scheme is available with \np{ln\_hsb = ~true}. The heat/salt/vol. gain/loss is diagnose, as well as the location.  
     1025Based on what is done on sbcrnf to prescribed a source of heat/salt/vol., the heat/salt/vol. gain/loss is removed/added, 
     1026 over a period of \np{rn\_fiscpl} time step, into the system.  
     1027So after \np{rn\_fiscpl} time step, all the heat/salt/vol. gain/loss due to extrapolation process is canceled.\\ 
     1028 
     1029As the before and now fields are not compatible (modification of the geometry), the restart time step is prescribed to be an euler time step instead of a leap frog and $fields_b = fields_n$. 
    9981030% 
    9991031% ================================================================ 
  • trunk/DOC/TexFiles/Chapters/Chap_STP.tex

    r4147 r6140  
    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% ------------------------------------------------------------------------------------------------------------- 
  • trunk/DOC/TexFiles/Chapters/Chap_TRA.tex

    r5102 r6140  
    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  
    141 corresponding 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  
     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 
     137Several tracer advection scheme are proposed, namely  
     138a $2^{nd}$ or $4^{th}$ order centred schemes (CEN),  
     139a $2^{nd}$ or $4^{th}$ order Flux Corrected Transport scheme (FCT), 
     140a Monotone Upstream Scheme for Conservative Laws scheme (MUSCL), 
     141a $3^{rd}$ Upstream Biased Scheme (UBS, also often called UP3), and 
     142a Quadratic Upstream Interpolation for Convective Kinematics with  
     143Estimated Streaming Terms scheme (QUICKEST). 
     144The choice is made in the \textit{\ngn{namtra\_adv}} namelist, by  
     145setting to \textit{true} one of the logicals \textit{ln\_traadv\_xxx}.  
     146The corresponding code can be found in the \textit{traadv\_xxx.F90} module,  
     147where \textit{xxx} is a 3 or 4 letter acronym corresponding to each scheme.  
     148By default ($i.e.$ in the reference namelist, \ngn{namelist\_ref}), all the logicals  
     149are set to \textit{false}. If the user does not select an advection scheme  
     150in the configuration namelist (\ngn{namelist\_cfg}), the tracers will \textit{not} be advected ! 
     151 
     152Details of the advection schemes are given below. The choosing an advection scheme  
    144153is a complex matter which depends on the model physics, model resolution,  
    145 type of tracer, as well as the issue of numerical cost.  
    146  
    147 Note 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 
     154type of tracer, as well as the issue of numerical cost. In particular, we note that 
     155(1) CEN and FCT schemes require an explicit diffusion operator  
     156while the other schemes are diffusive enough so that they do not necessarily need additional diffusion ;  
     157(2) CEN and UBS are not \textit{positive} schemes 
    152158\footnote{negative values can appear in an initially strictly positive tracer field  
    153159which is advected} 
     
    163169 
    164170% ------------------------------------------------------------------------------------------------------------- 
     171%        2nd and 4th order centred schemes 
     172% ------------------------------------------------------------------------------------------------------------- 
     173\subsection [centred schemes (CEN) (\np{ln\_traadv\_cen})] 
     174            {centred schemes (CEN) (\np{ln\_traadv\_cen}=true)} 
     175\label{TRA_adv_cen} 
     176 
    165177%        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  
    172 evaluated as the mean of the two neighbouring $T$-point values.  
     178 
     179The centred advection scheme (CEN) is used when \np{ln\_traadv\_cen}~=~\textit{true}.  
     180Its order ($2^{nd}$ or $4^{th}$) can be chosen independently on horizontal (iso-level)  
     181and vertical direction by setting \np{nn\_cen\_h} and \np{nn\_cen\_v} to $2$ or $4$.  
     182CEN implementation can be found in the \mdl{traadv\_cen} module. 
     183 
     184In the $2^{nd}$ order centred formulation (CEN2), the tracer at velocity points  
     185is evaluated as the mean of the two neighbouring $T$-point values.  
    173186For example, in the $i$-direction : 
    174187\begin{equation} \label{Eq_tra_adv_cen2} 
     
    176189\end{equation} 
    177190 
    178 The scheme is non diffusive ($i.e.$ it conserves the tracer variance, $\tau^2)$  
     191CEN2 is non diffusive ($i.e.$ it conserves the tracer variance, $\tau^2)$  
    179192but dispersive ($i.e.$ it may create false extrema). It is therefore notoriously  
    180193noisy and must be used in conjunction with an explicit diffusion operator to  
    181194produce a sensible solution. The associated time-stepping is performed using  
    182195a 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  
     196(\ref{Eq_tra_adv_cen2}) is the \textit{now} tracer value.  
     197 
     198Note that using the CEN2, the overall tracer advection is of second  
    195199order accuracy since both (\ref{Eq_tra_adv}) and (\ref{Eq_tra_adv_cen2})  
    196 have this order of accuracy. \gmcomment{Note also that ... blah, blah} 
    197  
    198 % ------------------------------------------------------------------------------------------------------------- 
     200have this order of accuracy. 
     201 
    199202%        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: 
     203 
     204In the $4^{th}$ order formulation (CEN4), tracer values are evaluated at u- and v-points as  
     205a $4^{th}$ order interpolation, and thus depend on the four neighbouring $T$-points.  
     206For example, in the $i$-direction: 
    208207\begin{equation} \label{Eq_tra_adv_cen4} 
    209208\tau _u^{cen4}  
    210209=\overline{   T - \frac{1}{6}\,\delta _i \left[ \delta_{i+1/2}[T] \,\right]   }^{\,i+1/2} 
    211210\end{equation} 
    212  
    213 Strictly speaking, the cen4 scheme is not a $4^{th}$ order advection scheme  
     211In the vertical direction (\np{nn\_cen\_v}=$4$), a $4^{th}$ COMPACT interpolation  
     212has been prefered \citep{Demange_PhD2014}. 
     213In the COMPACT scheme, both the field and its derivative are interpolated,  
     214which leads, after a matrix inversion, spectral characteristics  
     215similar to schemes of higher order \citep{Lele_JCP1992}. 
     216  
     217 
     218Strictly speaking, the CEN4 scheme is not a $4^{th}$ order advection scheme  
    214219but 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.   
     220advective fluxes \eqref{Eq_tra_adv} is kept at $2^{nd}$ order.  
     221The expression \textit{$4^{th}$ order scheme} used in oceanographic literature  
     222is usually associated with the scheme presented here.  
     223Introducing a \textit{true} $4^{th}$ order advection scheme is feasible but,  
     224for consistency reasons, it requires changes in the discretisation of the tracer  
     225advection together with changes in the continuity equation,  
     226and the momentum advection and pressure terms.   
    221227 
    222228A 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  
    226 performed using a leapfrog scheme in conjunction with an Asselin time-filter,  
    227 so $T$ in (\ref{Eq_tra_adv_cen4}) is the \textit{now} tracer. 
    228  
    229 At a $T$-grid cell adjacent to a boundary (coastline, bottom and surface), an  
    230 additional hypothesis must be made to evaluate $\tau _u^{cen4}$. This  
    231 hypothesis usually reduces the order of the scheme. Here we choose to set  
    232 the gradient of $T$ across the boundary to zero. Alternative conditions can be  
    233 specified, such as a reduction to a second order scheme for these near boundary  
    234 grid points. 
    235  
    236 % ------------------------------------------------------------------------------------------------------------- 
    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)} 
     229it is not non-diffusive, $i.e.$ the global variance of a tracer is not preserved using CEN4.  
     230Furthermore, it must be used in conjunction with an explicit diffusion operator  
     231to produce a sensible solution.  
     232As in CEN2 case, the time-stepping is performed using a leapfrog scheme in conjunction  
     233with an Asselin time-filter, so $T$ in (\ref{Eq_tra_adv_cen4}) is the \textit{now} tracer. 
     234 
     235At a $T$-grid cell adjacent to a boundary (coastline, bottom and surface),  
     236an additional hypothesis must be made to evaluate $\tau _u^{cen4}$.  
     237This hypothesis usually reduces the order of the scheme.  
     238Here we choose to set the gradient of $T$ across the boundary to zero.  
     239Alternative conditions can be specified, such as a reduction to a second order scheme  
     240for these near boundary grid points. 
     241 
     242% ------------------------------------------------------------------------------------------------------------- 
     243%        FCT scheme   
     244% ------------------------------------------------------------------------------------------------------------- 
     245\subsection   [Flux Corrected Transport schemes (FCT) (\np{ln\_traadv\_fct})] 
     246         {Flux Corrected Transport schemes (FCT) (\np{ln\_traadv\_fct}=true)} 
    241247\label{TRA_adv_tvd} 
    242248 
    243 In the Total Variance Dissipation (TVD) formulation, the tracer at velocity  
    244 points is evaluated using a combination of an upstream and a centred scheme.  
    245 For example, in the $i$-direction : 
    246 \begin{equation} \label{Eq_tra_adv_tvd} 
     249The Flux Corrected Transport schemes (FCT) is used when \np{ln\_traadv\_fct}~=~\textit{true}.  
     250Its order ($2^{nd}$ or $4^{th}$) can be chosen independently on horizontal (iso-level)  
     251and vertical direction by setting \np{nn\_fct\_h} and \np{nn\_fct\_v} to $2$ or $4$. 
     252FCT implementation can be found in the \mdl{traadv\_fct} module. 
     253 
     254In FCT formulation, the tracer at velocity points is evaluated using a combination of  
     255an upstream and a centred scheme. For example, in the $i$-direction : 
     256\begin{equation} \label{Eq_tra_adv_fct} 
    247257\begin{split} 
    248258\tau _u^{ups}&= \begin{cases} 
     
    251261              \end{cases}     \\ 
    252262\\ 
    253 \tau _u^{tvd}&=\tau _u^{ups} +c_u \;\left( {\tau _u^{cen2} -\tau _u^{ups} } \right) 
     263\tau _u^{fct}&=\tau _u^{ups} +c_u \;\left( {\tau _u^{cen} -\tau _u^{ups} } \right) 
    254264\end{split} 
    255265\end{equation} 
    256266where $c_u$ is a flux limiter function taking values between 0 and 1.  
     267The FCT order is the one of the centred scheme used ($i.e.$ it depends on the setting of 
     268\np{nn\_fct\_h} and \np{nn\_fct\_v}. 
    257269There exist many ways to define $c_u$, each corresponding to a different  
    258 total variance decreasing scheme. The one chosen in \NEMO is described in  
    259 \citet{Zalesak_JCP79}. $c_u$ only departs from $1$ when the advective term  
    260 produces a local extremum in the tracer field. The resulting scheme is quite  
    261 expensive 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. 
    265  
    266 For 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.  
     270FCT scheme. The one chosen in \NEMO is described in \citet{Zalesak_JCP79}.  
     271$c_u$ only departs from $1$ when the advective term produces a local extremum in the tracer field.  
     272The resulting scheme is quite expensive but \emph{positive}.  
     273It can be used on both active and passive tracers.  
     274A comparison of FCT-2 with MUSCL and a MPDATA scheme can be found in \citet{Levy_al_GRL01}.  
     275 
     276An additional option has been added controlled by \np{nn\_fct\_zts}. By setting this integer to  
     277a value larger than zero, a $2^{nd}$ order FCT scheme is used on both horizontal and vertical direction,  
     278but on the latter, a split-explicit time stepping is used, with a number of sub-timestep equals 
     279to \np{nn\_fct\_zts}. This option can be useful when the size of the timestep is limited  
     280by vertical advection \citep{Lemarie_OM2015)}. Note that in this case, a similar split-explicit  
     281time stepping should be used on vertical advection of momentum to insure a better stability 
     282(see \S\ref{DYN_zad}). 
     283 
     284For stability reasons (see \S\ref{STP}), $\tau _u^{cen}$ is evaluated in (\ref{Eq_tra_adv_fct})  
     285using the \textit{now} tracer while $\tau _u^{ups}$ is evaluated using the \textit{before} tracer. In other words,  
     286the advective part of the scheme is time stepped with a leap-frog scheme  
     287while a forward scheme is used for the diffusive part.  
    271288 
    272289% ------------------------------------------------------------------------------------------------------------- 
    273290%        MUSCL scheme   
    274291% ------------------------------------------------------------------------------------------------------------- 
    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} 
    278  
    279 The Monotone Upstream Scheme for Conservative Laws (MUSCL) has been  
    280 implemented by \citet{Levy_al_GRL01}. In its formulation, the tracer at velocity points  
     292\subsection[MUSCL scheme  (\np{ln\_traadv\_mus})] 
     293   {Monotone Upstream Scheme for Conservative Laws (MUSCL) (\np{ln\_traadv\_mus}=T)} 
     294\label{TRA_adv_mus} 
     295 
     296The Monotone Upstream Scheme for Conservative Laws (MUSCL) is used when \np{ln\_traadv\_mus}~=~\textit{true}.  
     297MUSCL implementation can be found in the \mdl{traadv\_mus} module. 
     298 
     299MUSCL has been first implemented in \NEMO by \citet{Levy_al_GRL01}. In its formulation, the tracer at velocity points  
    281300is evaluated assuming a linear tracer variation between two $T$-points  
    282301(Fig.\ref{Fig_adv_scheme}). For example, in the $i$-direction : 
    283 \begin{equation} \label{Eq_tra_adv_muscl} 
     302\begin{equation} \label{Eq_tra_adv_mus} 
    284303   \tau _u^{mus} = \left\{      \begin{aligned} 
    285304         &\tau _i  &+ \frac{1}{2} \;\left( 1-\frac{u_{i+1/2} \;\rdt}{e_{1u}} \right) 
     
    296315 
    297316For 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. 
     317directed toward land, an upstream flux is used. This choice ensure  
     318the \textit{positive} character of the scheme.  
     319In addition, fluxes round a grid-point where a runoff is applied can optionally be  
     320computed using upstream fluxes (\np{ln\_mus\_ups}~=~\textit{true}). 
    304321 
    305322% ------------------------------------------------------------------------------------------------------------- 
     
    310327\label{TRA_adv_ubs} 
    311328 
    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  
    315 Kinematics). For example, in the $i$-direction : 
     329The Upstream-Biased Scheme (UBS) is used when \np{ln\_traadv\_ubs}~=~\textit{true}.  
     330UBS implementation can be found in the \mdl{traadv\_mus} module. 
     331 
     332The UBS scheme, often called UP3, is also known as the Cell Averaged QUICK scheme  
     333(Quadratic Upstream Interpolation for Convective Kinematics). It is an upstream-biased  
     334third order scheme based on an upstream-biased parabolic interpolation.   
     335For example, in the $i$-direction : 
    316336\begin{equation} \label{Eq_tra_adv_ubs} 
    317337   \tau _u^{ubs} =\overline T ^{i+1/2}-\;\frac{1}{6} \left\{       
     
    324344 
    325345This 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}.  
     346error \citep{Shchepetkin_McWilliams_OM05}. The overall performance of 
     347 the advection scheme is similar to that reported in \cite{Farrow1995}.  
    328348It is a relatively good compromise between accuracy and smoothness.  
    329 It is not a \emph{positive} scheme, meaning that false extrema are permitted,  
     349Nevertheless the scheme is not \emph{positive}, meaning that false extrema are permitted,  
    330350but 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.  
     351or fourth order method. therefore it is not recommended that it should be  
     352applied to a passive tracer that requires positivity.  
    333353 
    334354The intrinsic diffusion of UBS makes its use risky in the vertical direction  
    335 where 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. 
     355where the control of artificial diapycnal fluxes is of paramount importance \citep{Shchepetkin_McWilliams_OM05, Demange_PhD2014}.  
     356Therefore the vertical flux is evaluated using either a $2^nd$ order FCT scheme  
     357or a $4^th$ order COMPACT scheme (\np{nn\_cen\_v}=2 or 4). 
    338358 
    339359For 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  
     360the first term  in \eqref{Eq_tra_adv_ubs} (which corresponds to a second order  
     361centred scheme) is evaluated using the \textit{now} tracer (centred in time)  
     362while the second term (which is the diffusive part of the scheme), is  
    343363evaluated using the \textit{before} tracer (forward in time).  
    344364This choice is discussed by \citet{Webb_al_JAOT98} in the context of the  
     
    350370substitution in the \mdl{traadv\_ubs} module and obtain a QUICK scheme. 
    351371 
    352 Four different options are possible for the vertical  
    353 component used in the UBS scheme. $\tau _w^{ubs}$ can be evaluated  
    354 using either \textit{(a)} a centred $2^{nd}$ order scheme, or  \textit{(b)}  
    355 a TVD scheme, or  \textit{(c)} an interpolation based on conservative  
    356 parabolic splines following the \citet{Shchepetkin_McWilliams_OM05}  
    357 implementation of UBS in ROMS, or  \textit{(d)} a UBS. The $3^{rd}$ case  
    358 has dispersion properties similar to an eighth-order accurate conventional scheme. 
    359 The current reference version uses method b) 
    360  
    361 Note that : 
    362  
    363 (1) When a high vertical resolution $O(1m)$ is used, the model stability can  
    364 be controlled by vertical advection (not vertical diffusion which is usually  
    365 solved using an implicit scheme). Computer time can be saved by using a  
    366 time-splitting technique on vertical advection. Such a technique has been  
    367 implemented and validated in ORCA05 with 301 levels. It is not available  
    368 in the current reference version.  
    369  
    370 (2) It is straightforward to rewrite \eqref{Eq_tra_adv_ubs} as follows: 
     372Note that it is straightforward to rewrite \eqref{Eq_tra_adv_ubs} as follows: 
    371373\begin{equation} \label{Eq_traadv_ubs2} 
    372374\tau _u^{ubs} = \tau _u^{cen4} + \frac{1}{12} \left\{   
     
    390392Thirdly, the diffusion term is in fact a biharmonic operator with an eddy  
    391393coefficient 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  
    393  \eqref{Eq_tra_adv_ubs}, not \eqref{Eq_traadv_ubs2}. 
    394  %%% 
    395  \gmcomment{the change in UBS scheme has to be done} 
    396  %%% 
     394 $A_u^{lm}= \frac{1}{12}\,{e_{1u}}^3\,|u|$. Note the current version of NEMO uses  
     395the computationally more efficient formulation \eqref{Eq_tra_adv_ubs}. 
    397396 
    398397% ------------------------------------------------------------------------------------------------------------- 
     
    405404The Quadratic Upstream Interpolation for Convective Kinematics with  
    406405Estimated Streaming Terms (QUICKEST) scheme proposed by \citet{Leonard1979}  
    407 is the third order Godunov scheme. It is associated with the ULTIMATE QUICKEST  
     406is used when \np{ln\_traadv\_qck}~=~\textit{true}.  
     407QUICKEST implementation can be found in the \mdl{traadv\_mus} module. 
     408 
     409QUICKEST is the third order Godunov scheme which is associated with the ULTIMATE QUICKEST  
    408410limiter \citep{Leonard1991}. It has been implemented in NEMO by G. Reffray  
    409411(MERCATOR-ocean) and can be found in the \mdl{traadv\_qck} module. 
     
    416418direction (as for the UBS case) should be implemented to restore this property. 
    417419 
    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. 
     420%%%gmcomment   :  Cross term are missing in the current implementation.... 
     421 
    432422 
    433423% ================================================================ 
     
    11671157%        Equation of State 
    11681158% ------------------------------------------------------------------------------------------------------------- 
    1169 \subsection{Equation of State (\np{nn\_eos} = 0, 1 or 2)} 
     1159\subsection{Equation Of Seawater (\np{nn\_eos} = -1, 0, or 1)} 
    11701160\label{TRA_eos} 
    11711161 
    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$.  
     1162The Equation Of Seawater (EOS) is an empirical nonlinear thermodynamic relationship  
     1163linking seawater density, $\rho$, to a number of state variables,  
     1164most typically temperature, salinity and pressure.  
     1165Because density gradients control the pressure gradient force through the hydrostatic balance,  
     1166the equation of state provides a fundamental bridge between the distribution of active tracers  
     1167and the fluid dynamics. Nonlinearities of the EOS are of major importance, in particular  
     1168influencing the circulation through determination of the static stability below the mixed layer,  
     1169thus controlling rates of exchange between the atmosphere  and the ocean interior \citep{Roquet_JPO2015}.  
     1170Therefore an accurate EOS based on either the 1980 equation of state (EOS-80, \cite{UNESCO1983})  
     1171or TEOS-10 \citep{TEOS10} standards should be used anytime a simulation of the real  
     1172ocean circulation is attempted \citep{Roquet_JPO2015}.  
     1173The use of TEOS-10 is highly recommended because  
     1174\textit{(i)} it is the new official EOS,  
     1175\textit{(ii)} it is more accurate, being based on an updated database of laboratory measurements, and  
     1176\textit{(iii)} it uses Conservative Temperature and Absolute Salinity (instead of potential temperature  
     1177and practical salinity for EOS-980, both variables being more suitable for use as model variables  
     1178\citep{TEOS10, Graham_McDougall_JPO13}.  
     1179EOS-80 is an obsolescent feature of the NEMO system, kept only for backward compatibility. 
     1180For process studies, it is often convenient to use an approximation of the EOS. To that purposed,  
     1181a simplified EOS (S-EOS) inspired by \citet{Vallis06} is also available. 
     1182 
     1183In the computer code, a density anomaly, $d_a= \rho / \rho_o - 1$,  
     1184is computed, with $\rho_o$ a reference density. Called \textit{rau0}  
     1185in the code, $\rho_o$ is set in \mdl{phycst} to a value of $1,026~Kg/m^3$.  
    12001186This is a sensible choice for the reference density used in a Boussinesq ocean  
    12011187climate 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. 
     1188density in the World Ocean varies by no more than 2$\%$ from that value \citep{Gill1982}. 
     1189 
     1190Options are defined through the  \ngn{nameos} namelist variables, and in particular \np{nn\_eos}  
     1191which controls the EOS used (=-1 for TEOS10 ; =0 for EOS-80 ; =1 for S-EOS). 
     1192\begin{description} 
     1193 
     1194\item[\np{nn\_eos}$=-1$] the polyTEOS10-bsq equation of seawater \citep{Roquet_OM2015} is used.   
     1195The accuracy of this approximation is comparable to the TEOS-10 rational function approximation,  
     1196but it is optimized for a boussinesq fluid and the polynomial expressions have simpler  
     1197and more computationally efficient expressions for their derived quantities  
     1198which make them more adapted for use in ocean models.  
     1199Note that a slightly higher precision polynomial form is now used replacement of the TEOS-10  
     1200rational function approximation for hydrographic data analysis  \citep{TEOS10}.  
     1201A key point is that conservative state variables are used:  
     1202Absolute Salinity (unit: g/kg, notation: $S_A$) and Conservative Temperature (unit: $\degres C$, notation: $\Theta$). 
     1203The pressure in decibars is approximated by the depth in meters.  
     1204With TEOS10, the specific heat capacity of sea water, $C_p$, is a constant. It is set to  
     1205$C_p=3991.86795711963~J\,Kg^{-1}\,\degres K^{-1}$, according to \citet{TEOS10}. 
     1206 
     1207Choosing polyTEOS10-bsq implies that the state variables used by the model are  
     1208$\Theta$ and $S_A$. In particular, the initial state deined by the user have to be given as  
     1209\textit{Conservative} Temperature and \textit{Absolute} Salinity.  
     1210In addition, setting \np{ln\_useCT} to \textit{true} convert the Conservative SST to potential SST  
     1211prior to either computing the air-sea and ice-sea fluxes (forced mode)  
     1212or sending the SST field to the atmosphere (coupled mode). 
     1213 
     1214\item[\np{nn\_eos}$=0$] the polyEOS80-bsq equation of seawater is used. 
     1215It takes the same polynomial form as the polyTEOS10, but the coefficients have been optimized  
     1216to accurately fit EOS80 (Roquet, personal comm.). The state variables used in both the EOS80  
     1217and the ocean model are:  
     1218the Practical Salinity ((unit: psu, notation: $S_p$)) and Potential Temperature (unit: $\degres C$, notation: $\theta$). 
     1219The pressure in decibars is approximated by the depth in meters.   
     1220With thsi EOS, the specific heat capacity of sea water, $C_p$, is a function of temperature,  
     1221salinity and pressure \citep{UNESCO1983}. Nevertheless, a severe assumption is made in order to  
     1222have a heat content ($C_p T_p$) which is conserved by the model: $C_p$ is set to a constant  
     1223value, the TEOS10 value.  
     1224  
     1225\item[\np{nn\_eos}$=1$] a simplified EOS (S-EOS) inspired by \citet{Vallis06} is chosen,  
     1226the coefficients of which has been optimized to fit the behavior of TEOS10 (Roquet, personal comm.)  
     1227(see also \citet{Roquet_JPO2015}). It provides a simplistic linear representation of both  
     1228cabbeling and thermobaricity effects which is enough for a proper treatment of the EOS  
     1229in theoretical studies \citep{Roquet_JPO2015}. 
    12091230With 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} 
     1231\textit{conservative} and \textit{potential} temperature, as well as between \textit{absolute}  
     1232and \textit{practical} salinity. 
     1233S-EOS takes the following expression: 
     1234\begin{equation} \label{Eq_tra_S-EOS} 
    12151235\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     
     1236  d_a(T,S,z)  =  ( & - a_0 \; ( 1 + 0.5 \; \lambda_1 \; T_a + \mu_1 \; z ) * T_a  \\ 
     1237                                & + b_0 \; ( 1 - 0.5 \; \lambda_2 \; S_a - \mu_2 \; z ) * S_a  \\ 
     1238                                & - \nu \; T_a \; S_a \;  ) \; / \; \rho_o                     \\ 
     1239  with \ \  T_a = T-10  \; ;  & \;  S_a = S-35  \; ;\;  \rho_o = 1026~Kg/m^3 
    12181240\end{split} 
    12191241\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. 
     1242where the computer name of the coefficients as well as their standard value are given in \ref{Tab_SEOS}. 
     1243In fact, when choosing S-EOS, various approximation of EOS can be specified simply by changing  
     1244the associated coefficients.  
     1245Setting to zero the two thermobaric coefficients ($\mu_1$, $\mu_2$) remove thermobaric effect from S-EOS. 
     1246setting to zero the three cabbeling coefficients ($\lambda_1$, $\lambda_2$, $\nu$) remove cabbeling effect from S-EOS. 
     1247Keeping non-zero value to $a_0$ and $b_0$ provide a linear EOS function of T and S. 
     1248 
     1249\end{description} 
     1250 
     1251 
     1252%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     1253\begin{table}[!tb] 
     1254\begin{center} \begin{tabular}{|p{26pt}|p{72pt}|p{56pt}|p{136pt}|} 
     1255\hline 
     1256coeff.   & computer name   & S-EOS     &  description                      \\ \hline 
     1257$a_0$       & \np{rn\_a0}     & 1.6550 $10^{-1}$ &  linear thermal expansion coeff.    \\ \hline 
     1258$b_0$       & \np{rn\_b0}     & 7.6554 $10^{-1}$ &  linear haline  expansion coeff.    \\ \hline 
     1259$\lambda_1$ & \np{rn\_lambda1}& 5.9520 $10^{-2}$ &  cabbeling coeff. in $T^2$          \\ \hline 
     1260$\lambda_2$ & \np{rn\_lambda2}& 5.4914 $10^{-4}$ &  cabbeling coeff. in $S^2$       \\ \hline 
     1261$\nu$       & \np{rn\_nu}     & 2.4341 $10^{-3}$ &  cabbeling coeff. in $T \, S$       \\ \hline 
     1262$\mu_1$     & \np{rn\_mu1}    & 1.4970 $10^{-4}$ &  thermobaric coeff. in T         \\ \hline 
     1263$\mu_2$     & \np{rn\_mu2}    & 1.1090 $10^{-5}$ &  thermobaric coeff. in S            \\ \hline 
     1264\end{tabular} 
     1265\caption{ \label{Tab_SEOS} 
     1266Standard value of S-EOS coefficients. } 
     1267\end{center} 
     1268\end{table} 
     1269%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     1270 
    12261271 
    12271272% ------------------------------------------------------------------------------------------------------------- 
     
    12321277 
    12331278An 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):  
     1279 frequency) is of paramount importance as determine the ocean stratification and  
     1280 is used in several ocean parameterisations (namely TKE, GLS, Richardson number dependent  
     1281 vertical diffusion, enhanced vertical diffusion, non-penetrative convection, tidal mixing  
     1282 parameterisation, iso-neutral diffusion). In particular, $N^2$ has to be computed at the local pressure  
     1283 (pressure in decibar being approximated by the depth in meters). The expression for $N^2$  
     1284 is given by:  
    12441285\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} 
    12591286N^2 = \frac{g}{e_{3w}} \left(   \beta \;\delta_{k+1/2}[S] - \alpha \;\delta_{k+1/2}[T]   \right) 
    12601287\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  
     1288where $(T,S) = (\Theta, S_A)$ for TEOS10, $= (\theta, S_p)$ for TEOS-80, or $=(T,S)$ for S-EOS,  
     1289and, $\alpha$ and $\beta$ are the thermal and haline expansion coefficients.  
     1290The coefficients are a polynomial function of temperature, salinity and depth which expression  
     1291depends on the chosen EOS. They are computed through \textit{eos\_rab}, a \textsc{Fortran}  
     1292function that can be found in \mdl{eosbn2}. 
    12801293 
    12811294% ------------------------------------------------------------------------------------------------------------- 
     
    12981311sea water ($i.e.$ referenced to the surface $p=0$), thus the pressure dependent  
    12991312terms 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  
     1313point is computed through \textit{eos\_fzp}, a \textsc{Fortran} function that can be found  
    13011314in \mdl{eosbn2}.   
     1315 
     1316 
     1317% ------------------------------------------------------------------------------------------------------------- 
     1318%        Potential Energy      
     1319% ------------------------------------------------------------------------------------------------------------- 
     1320%\subsection{Potential Energy anomalies} 
     1321%\label{TRA_bn2} 
     1322 
     1323%    =====>>>>> TO BE written 
     1324% 
     1325 
    13021326 
    13031327% ================================================================ 
  • trunk/DOC/TexFiles/Chapters/Introduction.tex

    r4661 r6140  
    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 
  • trunk/DOC/TexFiles/Namelist/nam_tide

    r4147 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namagrif

    r2540 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/nambbl

    r3294 r6140  
    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) 
  • trunk/DOC/TexFiles/Namelist/nambdy

    r4147 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/nambdy_dta

    r4230 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/nambdy_tide

    r4147 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namberg

    r4230 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/nambfr

    r5120 r6140  
    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 
  • trunk/DOC/TexFiles/Namelist/namctl

    • Property svn:keywords set to Id
    r4147 r6140  
    1313                           !     (no physical validity of the results) 
    1414   nn_timing   =    0      !  timing by routine activated (=1) creates timing.output file, or not (=0) 
     15   nn_diacfl   =    0      !  Write out cfl diagnostics (=1) in cfl_diagnostics.ascii, or not (=0) 
    1516/ 
  • trunk/DOC/TexFiles/Namelist/namdct

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

    r4560 r6140  
    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) 
     9   rn_isfhmin  =    1.00   !  treshold (m) to discriminate grounding ice to floating ice 
    810   rn_e3zps_min=   20.     !  partial step thickness is set larger than the minimum of 
    911   rn_e3zps_rat=    0.1    !  rn_e3zps_min and rn_e3zps_rat*e3t, with 0<rn_e3zps_rat<1 
     
    1618   rn_rdtmax   = 28800.          !  maximum time step on tracers (used if nn_acc=1) 
    1719   rn_rdth     =  800.           !  depth variation of tracer time step  (used if nn_acc=1) 
     20   ln_crs      = .false.      !  Logical switch for coarsening module 
    1821   jphgr_msh   =       0               !  type of horizontal mesh 
    1922                                       !  = 0 curvilinear coordinate on the sphere read in coordinate.nc 
  • trunk/DOC/TexFiles/Namelist/namdyn_adv

    r3294 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namdyn_hpg

    r5120 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namdyn_ldf

    r4147 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namdyn_spg

    r3294 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namdyn_vor

    r4147 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/nameos

    r3294 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namhsb

    r2540 r6140  
    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) 
  • trunk/DOC/TexFiles/Namelist/namlbc

    r4147 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namobs

    r4147 r6140  
    11!----------------------------------------------------------------------- 
    2 &namobs       !  observation usage switch                               ('key_diaobs') 
     2&namobs       !  observation usage switch 
    33!----------------------------------------------------------------------- 
    4    ln_t3d     = .false.    ! Logical switch for T profile observations 
    5    ln_s3d     = .false.    ! Logical switch for S profile observations 
    6    ln_ena     = .false.    ! Logical switch for ENACT insitu data set 
    7    !                       !     ln_cor                  Logical switch for Coriolis insitu data set 
    8    ln_profb   = .false.    ! Logical switch for feedback insitu data set 
    9    ln_sla     = .false.    ! Logical switch for SLA observations 
    10  
    11    ln_sladt   = .false.    ! Logical switch for AVISO SLA data 
    12  
    13    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  
    20    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 
    58    ln_altbias = .false.    ! Logical switch for alt bias 
    59    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. 
     4   ln_diaobs  = .true.                 ! Logical switch for the observation operator 
     5   ln_t3d     = .true.                 ! Logical switch for T profile observations 
     6   ln_s3d     = .true.                 ! Logical switch for S profile observations 
     7   ln_sla     = .true.                 ! Logical switch for SLA observations 
     8   ln_sst     = .true.                 ! Logical switch for SST observations 
     9   ln_sic     = .false.                ! Logical switch for Sea Ice observations 
     10   ln_vel3d   = .false.                ! Logical switch for velocity observations 
     11   ln_altbias = .false.                ! Logical switch for altimeter bias correction 
     12   ln_nea     = .false.                ! Logical switch for rejection of observations near land 
     13   ln_grid_global = .true.             ! Logical switch for global distribution of observations 
     14   ln_grid_search_lookup = .false.     ! Logical switch for obs grid search w/lookup table 
     15   ln_ignmis  = .true.                 ! Logical switch for ignoring missing files 
     16   ln_s_at_t  = .false.                ! Logical switch for computing model S at T obs if not there 
     17   ln_sstnight = .false.               ! Logical switch for calculating night-time average for SST obs 
     18   cn_profbfiles = 'profiles_01.nc'    ! Profile feedback input observation file names 
     19   cn_slafbfiles = 'sla_01.nc'         ! SLA feedback input observation file names 
     20   cn_sstfbfiles = 'sst_01.nc'         ! SST feedback input observation file names 
     21   cn_sicfbfiles = 'sic_01.nc'         ! SIC feedback input observation file names 
     22   cn_velfbfiles = 'vel_01.nc'         ! Velocity feedback input observation file names 
     23   cn_altbiasfile = 'altbias.nc'       ! Altimeter bias input file name 
     24   cn_gridsearchfile = 'gridsearch.nc' ! Grid search file name 
     25   rn_gridsearchres = 0.5              ! Grid search resolution 
     26   rn_dobsini = 20150101.000000        ! Initial date in window YYYYMMDD.HHMMSS 
     27   rn_dobsend = 20150102.000000        ! Final date in window YYYYMMDD.HHMMSS 
     28   nn_1dint = 0                        ! Type of vertical interpolation method 
     29   nn_2dint = 0                        ! Type of horizontal interpolation method 
     30   nn_msshc = 0                        ! MSSH correction scheme 
     31   rn_mdtcorr = 1.61                   ! MDT  correction 
     32   rn_mdtcutoff = 65.0                 ! MDT cutoff for computed correction 
     33   nn_profdavtypes = -1                ! Profile daily average types - array 
    6334/ 
  • trunk/DOC/TexFiles/Namelist/namobs_example

    r3294 r6140  
    11!----------------------------------------------------------------------- 
    2 !       namobs    observation usage switch 
     2&namobs       !  observation usage switch 
    33!----------------------------------------------------------------------- 
    4 ! 
    5 !  ln_t3d                  Logical switch for T profile observations          
    6 !  ln_s3d                  Logical switch for S profile observations           
    7 !  ln_ena                  Logical switch for ENACT insitu data set            
    8 !  ln_cor                  Logical switch for Coriolis insitu data set        
    9 !  ln_profb                Logical switch for feedback insitu data set      
    10 !  ln_sla                  Logical switch for SLA observations                
    11 !  ln_sladt                Logical switch for AVISO SLA data               
    12 !  ln_slafb                Logical switch for feedback SLA data             
    13 !  ln_ssh                  Logical switch for SSH observations               
    14 !  ln_sst                  Logical switch for SST observations               
    15 !  ln_reysst               Logical switch for Reynolds observations        
    16 !  ln_ghrsst               Logical switch for GHRSST observations           
    17 !  ln_sstfb                Logical switch for feedback SST data           
    18 !  ln_sss                  Logical switch for SSS observations               
    19 !  ln_seaice               Logical switch for Sea Ice observations         
    20 !  ln_vel3d                Logical switch for velocity observations          
    21 !  ln_velavcur             Logical switch for velocity daily av. cur.     
    22 !  ln_velhrcur             Logical switch for velocity high freq. cur.    
    23 !  ln_velavadcp            Logical switch for velocity daily av. ADCP   
    24 !  ln_velhradcp            Logical switch for velocity high freq. ADCP 
    25 !  ln_velfb                Logical switch for feedback velocity data        
    26 !  ln_grid_global          Global distribtion of observations          
    27 !  ln_grid_search_lookup   Logical switch for obs grid search w/lookup table   
    28 !  grid_search_file        Grid search lookup file header  
    29 !  enactfiles              ENACT input observation file names  
    30 !  coriofiles              Coriolis input observation file name   
    31 !  profbfiles              Profile feedback input observation file name  
    32 !  ln_profb_enatim         Enact feedback input time setting switch     
    33 !  slafilesact             Active SLA input observation file name 
    34 !  slafilespas             Passive SLA input observation file name  
    35 !  slafbfiles              Feedback SLA input observation file name  
    36 !  sstfiles                GHRSST input observation file name        
    37 !  sstfbfiles              Feedback SST input observation file name  
    38 !  seaicefiles             Sea Ice input observation file name  
    39 !  velavcurfiles           Vel. cur. daily av. input file name   
    40 !  velhvcurfiles           Vel. cur. high freq. input file name   
    41 !  velavadcpfiles          Vel. ADCP daily av. input file name     
    42 !  velhvadcpfiles          Vel. ADCP high freq. input file name  
    43 !  velfbfiles              Vel. feedback input observation file name  
    44 !  dobsini                 Initial date in window YYYYMMDD.HHMMSS        
    45 !  dobsend                 Final date in window YYYYMMDD.HHMMSS          
    46 !  n1dint                  Type of vertical interpolation method         
    47 !  n2dint                  Type of horizontal interpolation method        
    48 !  ln_nea                  Rejection of observations near land switch     
    49 !  nmsshc                  MSSH correction scheme                          
    50 !  mdtcorr                 MDT  correction                                
    51 !  mdtcutoff               MDT cutoff for computed correction           
    52 !  ln_altbias              Logical switch for alt bias                 
    53 !  ln_ignmis               Logical switch for ignoring missing files    
    54 !  endailyavtypes          ENACT daily average types                     
    55  &namobs 
    56    ln_t3d = .true. 
    57    ln_s3d = .true. 
    58    ln_ena = .true. 
    59    enactfiles = 'enact.1.nc' 
    60    ln_grid_global = .true. 
    61    ln_grid_search_lookup = .true. 
    62    ln_ignmis = .true.   
    63 /  
     4   ln_diaobs  = .true.                 ! Logical switch for the observation operator 
     5   ln_t3d     = .true.                 ! Logical switch for T profile observations 
     6   ln_s3d     = .true.                 ! Logical switch for S profile observations 
     7   ln_sla     = .false.                ! Logical switch for SLA observations 
     8   ln_sst     = .false.                ! Logical switch for SST observations 
     9   ln_sic     = .false.                ! Logical switch for Sea Ice observations 
     10   ln_vel3d   = .false.                ! Logical switch for velocity observations 
     11   ln_altbias = .false.                ! Logical switch for altimeter bias correction 
     12   ln_nea     = .false.                ! Logical switch for rejection of observations near land 
     13   ln_grid_global = .true.             ! Logical switch for global distribution of observations 
     14   ln_grid_search_lookup = .false.     ! Logical switch for obs grid search w/lookup table 
     15   ln_ignmis  = .true.                 ! Logical switch for ignoring missing files 
     16   ln_s_at_t  = .false.                ! Logical switch for computing model S at T obs if not there 
     17   ln_sstnight = .false.               ! Logical switch for calculating night-time average for SST obs 
     18   cn_profbfiles = 'profiles_01.nc'    ! Profile feedback input observation file names 
     19   cn_slafbfiles = 'sla_01.nc'         ! SLA feedback input observation file names 
     20   cn_sstfbfiles = 'sst_01.nc'         ! SST feedback input observation file names 
     21   cn_sicfbfiles = 'sic_01.nc'         ! SIC feedback input observation file names 
     22   cn_velfbfiles = 'vel_01.nc'         ! Velocity feedback input observation file names 
     23   cn_altbiasfile = 'altbias.nc'       ! Altimeter bias input file name 
     24   cn_gridsearchfile = 'gridsearch.nc' ! Grid search file name 
     25   rn_gridsearchres = 0.5              ! Grid search resolution 
     26   rn_dobsini = 00010101.000000        ! Initial date in window YYYYMMDD.HHMMSS 
     27   rn_dobsend = 00010102.000000        ! Final date in window YYYYMMDD.HHMMSS 
     28   nn_1dint = 0                        ! Type of vertical interpolation method 
     29   nn_2dint = 0                        ! Type of horizontal interpolation method 
     30   nn_msshc = 0                        ! MSSH correction scheme 
     31   rn_mdtcorr = 1.61                   ! MDT  correction 
     32   rn_mdtcutoff = 65.0                 ! MDT cutoff for computed correction 
     33   nn_profdavtypes = -1                ! Profile daily average types - array 
     34/ 
  • trunk/DOC/TexFiles/Namelist/namptr

    r4147 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namrun

    r4147 r6140  
    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 
     20   ln_iscpl    = .false.   !  cavity evolution forcing or coupling to ice sheet model (ln_iscpl = T => namsbc_iscpl) 
    1721   nn_istate   =       0   !  output the initial state (1) or not (0) 
     22   ln_rst_list = .false.   !  output restarts at list of times using nn_stocklist (T) or at set frequency with nn_stock (F) 
    1823   nn_stock    =    5475   !  frequency of creation of a restart file (modulo referenced to 1) 
     24   nn_stocklist = 0,0,0,0,0,0,0,0,0,0 ! List of timesteps when a restart file is to be written 
    1925   nn_write    =    5475   !  frequency of write in the output file   (modulo referenced to nn_it000) 
    2026   ln_dimgnnn  = .false.   !  DIMG file format: 1 file for all processors (F) or by processor (T) 
    2127   ln_mskland  = .false.   !  mask land points in NetCDF outputs (costly: + ~15%) 
    22    ln_clobber  = .false.   !  clobber (overwrite) an existing file 
     28   ln_cfmeta   = .false.   !  output additional data to netCDF files required for compliance with the CF metadata standard 
     29   ln_clobber  = .true.    !  clobber (overwrite) an existing file 
    2330   nn_chunksz  =       0   !  chunksize (bytes) for NetCDF file (works only with iom_nf90 routines) 
    2431/ 
  • trunk/DOC/TexFiles/Namelist/namsbc

    r5120 r6140  
    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) 
    21    nn_isf      = 0         !  ice shelf melting/freezing                (/=0 => fill namsbc_isf) 
    22                            !  0 =no isf                  1 = presence of ISF 
    23                            !  2 = bg03 parametrisation   3 = rnf file for isf 
    24                            !  4 = ISF fwf specified 
    25                            !  option 1 and 4 need ln_isfcav = .true. (domzgr) 
    2635   ln_ssr      = .true.    !  Sea Surface Restoring on T and/or S       (T => fill namsbc_ssr) 
    27    nn_fwb      = 3         !  FreshWater Budget: =0 unchecked 
     36   nn_fwb      = 2         !  FreshWater Budget: =0 unchecked 
    2837                           !     =1 global mean of e-p-r set to zero at each time step 
    2938                           !     =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 
     39   ln_apr_dyn  = .false.   !  Patm gradient added in ocean & ice Eqs.   (T => fill namsbc_apr ) 
     40   ln_isf      = .false.   !  ice shelf melting/freezing                (T => fill namsbc_isf) 
     41   ln_wave = .false.       !  coupling with surface wave                    (T => fill namsbc_wave) 
     42   nn_lsm  = 0             !  =0 land/sea mask for input fields is not applied (keep empty land/sea mask filename field) , 
     43                           !  =1:n number of iterations of land/sea mask application for input fields (fill land/sea mask filename field) 
    3744/ 
  • trunk/DOC/TexFiles/Namelist/namsbc_apr

    r4230 r6140  
    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 
  • trunk/DOC/TexFiles/Namelist/namsbc_core

    r4230 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namsbc_cpl

    r4147 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namsbc_isf

    r5120 r6140  
    11!----------------------------------------------------------------------- 
    2 &namsbc_isf    !  Top boundary layer (ISF) 
     2&namsbc_isf    !  Top boundary layer (ISF)                              (nn_isf >0) 
    33!----------------------------------------------------------------------- 
     4   nn_isf      = -99       !  ice shelf melting/freezing                (/=0 => fill namsbc_isf) 
     5                           !  1 = ISF explicit (cavity open) 
     6                           !  2 = bg03 parametrisation (cavity closed)   
     7                           !  3 = ISF  specified in depth along the calving front (cavity closed) 
     8                           !  4 = ISF melting specified (cavity open) 
     9                           !  option 1 and 4 need ln_isfcav = .true. (domzgr) 
    410!              ! file name ! frequency (hours) ! variable ! time interpol. !  clim   ! 'yearly'/ ! weights  ! rotation ! 
    511!              !           !  (if <0  months)  !   name   !    (logical)   !  (T/F)  ! 'monthly' ! filename ! pairing  ! 
    612! nn_isf == 4 
    7    sn_qisf      = 'rnfisf' ,         -12      ,'sohflisf',    .false.      , .true.  , 'yearly'  ,  ''      ,   '' 
    8    sn_fwfisf    = 'rnfisf' ,         -12      ,'sowflisf',    .false.      , .true.  , 'yearly'  ,  ''      ,   '' 
     13   sn_fwfisf     = 'rnfisf',         -12       ,'sowflisf',    .false.      , .true.  , 'yearly'  ,  ''      ,   '' 
    914! nn_isf == 3 
    10    sn_rnfisf    = 'runoffs' ,         -12      ,'sofwfisf',    .false.      , .true. , 'yearly'  ,  ''      ,   '' 
    11 ! 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'  ,  ''      ,   '' 
     15   sn_rnfisf     = 'rnfisf',         -12       ,'sofwfisf',    .false.   , .true. , 'yearly'  ,  ''      ,   '' 
     16! nn_isf == 2 or 3 
     17   sn_depmax_isf = 'rnfisf',         -12       ,'sozisfmax',   .false.   , .true. , 'yearly'  ,  ''      ,   '' 
     18   sn_depmin_isf = 'rnfisf',         -12       ,'sozisfmin',   .false.   , .true. , 'yearly'  ,  ''      ,   '' 
    1419! nn_isf == 2 
    15    sn_Leff_isf = 'rnfisf' ,       0          ,'Leff'         ,   .false.  , .true.  , 'yearly'  ,  ''      ,   '' 
    16 ! 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?) 
     20   sn_Leff_isf = 'rnfisf'  ,         -12       ,'Leff'     ,    .false.  , .true. , 'yearly'  ,  ''      ,   '' 
     21 
    1822! 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 
     23   rn_gammat0  = 1.e-4    ! gammat coefficient used in blk formula 
     24   rn_gammas0  = 1.e-4    ! gammas coefficient used in blk formula 
     25! only for nn_isf = 1 or 4 
     26   nn_isfblk   =  1       ! 1 ISOMIP ; 2 conservative (3 equation formulation, Jenkins et al. 1991 ??) 
    2127! only for nn_isf = 1 
    22    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) 
     28   rn_hisf_tbl =  30.     ! thickness of the top boundary layer           (Losh et al. 2008) 
    2429                          ! 0 => thickness of the tbl = thickness of the first wet cell 
    25    ln_conserve = .true.   ! conservative case (take into account meltwater advection) 
    2630   nn_gammablk = 1        ! 0 = cst Gammat (= gammat/s) 
    2731                          ! 1 = velocity dependend Gamma (u* * gammat/s)  (Jenkins et al. 2010) 
  • trunk/DOC/TexFiles/Namelist/namsbc_mfs

    r4230 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namsbc_rnf

    r4230 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namsbc_sas

    r4230 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namsbc_ssr

    r4230 r6140  
    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 ! 
  • trunk/DOC/TexFiles/Namelist/namsbc_wave

    r4230 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namtra_adv

    r4147 r6140  
    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 / COMPACT 4th order 
     16   ln_traadv_qck =  .false.  !  QUICKEST scheme 
    1117/ 
  • trunk/DOC/TexFiles/Namelist/namtra_dmp

    r5102 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namtra_ldf

    r4147 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namtra_qsr

    r4230 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namtrd

    r3294 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namtsd

    r4230 r6140  
    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 
  • trunk/DOC/TexFiles/Namelist/namzdf_gls

    r3294 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namzdf_tke

    r4147 r6140  
    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 
  • trunk/DOC/TexFiles/Namelist/namzgr

    r5120 r6140  
    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/ 
  • trunk/DOC/TexFiles/Namelist/namzgr_sco

    r3680 r6140  
    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.