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 11564 for NEMO/branches/2019/dev_r10973_AGRIF-01_jchanut_small_jpi_jpj/doc/latex/NEMO/subfiles/chap_DIA.tex – NEMO

Ignore:
Timestamp:
2019-09-18T16:11:52+02:00 (5 years ago)
Author:
jchanut
Message:

#2199, merged with trunk

Location:
NEMO/branches/2019/dev_r10973_AGRIF-01_jchanut_small_jpi_jpj/doc
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r10973_AGRIF-01_jchanut_small_jpi_jpj/doc

    • Property svn:ignore deleted
  • NEMO/branches/2019/dev_r10973_AGRIF-01_jchanut_small_jpi_jpj/doc/latex

    • Property svn:ignore
      •  

        old new  
        1 *.aux 
        2 *.bbl 
        3 *.blg 
        4 *.dvi 
        5 *.fdb* 
        6 *.fls 
        7 *.idx 
        8 *.ilg 
        9 *.ind 
        10 *.log 
        11 *.maf 
        12 *.mtc* 
        13 *.out 
        14 *.pdf 
        15 *.toc 
        16 _minted-* 
         1figures 
  • NEMO/branches/2019/dev_r10973_AGRIF-01_jchanut_small_jpi_jpj/doc/latex/NEMO

    • Property svn:ignore deleted
  • NEMO/branches/2019/dev_r10973_AGRIF-01_jchanut_small_jpi_jpj/doc/latex/NEMO/subfiles/chap_DIA.tex

    r10509 r11564  
    88\label{chap:DIA} 
    99 
    10 \minitoc 
     10\chaptertoc 
     11 
     12\vfill 
     13\begin{figure}[b] 
     14\subsubsection*{Changes record} 
     15\begin{tabular}{l||l|m{0.65\linewidth}} 
     16    Release   & Author        & Modifications \\ 
     17    {\em 4.0} & {\em Mirek Andrejczuk, Massimiliano Drudi} & {\em }  \\ 
     18    {\em }      & {\em Dorotea Iovino, Nicolas Martin} & {\em }  \\ 
     19    {\em 3.6} & {\em Gurvan Madec, Sebastien Masson } & {\em }  \\ 
     20    {\em 3.4} & {\em Gurvan Madec, Rachid Benshila, Andrew Coward } & {\em }  \\ 
     21    {\em }      & {\em Christian Ethe, Sebastien Masson } & {\em }  \\ 
     22\end{tabular} 
     23\end{figure} 
    1124 
    1225\newpage 
    1326 
    1427% ================================================================ 
    15 %       Old Model Output  
     28%       Old Model Output 
    1629% ================================================================ 
    17 \section{Old model output (default)} 
     30\section{Model output} 
    1831\label{sec:DIA_io_old} 
    1932 
     
    2538the same run performed in one step. 
    2639It should be noted that this requires that the restart file contains two consecutive time steps for 
    27 all the prognostic variables, and that it is saved in the same binary format as the one used by the computer that 
    28 is to read it (in particular, 32 bits binary IEEE format must not be used for this file). 
     40all the prognostic variables. 
    2941 
    3042The output listing and file(s) are predefined but should be checked and eventually adapted to the user's needs. 
    31 The output listing is stored in the $ocean.output$ file. 
    32 The information is printed from within the code on the logical unit $numout$. 
     43The output listing is stored in the \textit{ocean.output} file. 
     44The information is printed from within the code on the logical unit \texttt{numout}. 
    3345To locate these prints, use the UNIX command "\textit{grep -i numout}" in the source code directory. 
    3446 
     
    3951A complete description of the use of this I/O server is presented in the next section. 
    4052 
    41 By default, \key{iomput} is not defined, 
    42 NEMO produces NetCDF with the old IOIPSL library which has been kept for compatibility and its easy installation. 
    43 However, the IOIPSL library is quite inefficient on parallel machines and, since version 3.2, 
    44 many diagnostic options have been added presuming the use of \key{iomput}. 
    45 The usefulness of the default IOIPSL-based option is expected to reduce with each new release. 
    46 If \key{iomput} is not defined, output files and content are defined in the \mdl{diawri} module and 
    47 contain mean (or instantaneous if \key{diainstant} is defined) values over a regular period of 
    48 nn\_write time-steps (namelist parameter).  
    49  
    5053%\gmcomment{                    % start of gmcomment 
    5154 
     
    5659\label{sec:DIA_iom} 
    5760 
    58 Since version 3.2, iomput is the NEMO output interface of choice. 
     61Since version 3.2, iomput is the \NEMO\ output interface of choice. 
    5962It has been designed to be simple to use, flexible and efficient. 
    60 The two main purposes of iomput are:  
     63The two main purposes of iomput are: 
    6164 
    6265\begin{enumerate} 
     
    6972\end{enumerate} 
    7073 
    71 The first functionality allows the user to specify, without code changes or recompilation,  
     74The first functionality allows the user to specify, without code changes or recompilation, 
    7275aspects of the diagnostic output stream, such as: 
    7376 
     
    9194in a very easy way. 
    9295All details of iomput functionalities are listed in the following subsections. 
    93 Examples of the XML files that control the outputs can be found in: \path{NEMOGCM/CONFIG/ORCA2_LIM/EXP00/iodef.xml}, 
    94 \path{NEMOGCM/CONFIG/SHARED/field_def.xml} and \path{NEMOGCM/CONFIG/SHARED/domain_def.xml}. \\ 
     96Examples of the XML files that control the outputs can be found in: 
     97\path{cfgs/ORCA2_ICE_PISCES/EXPREF/iodef.xml}, 
     98\path{cfgs/SHARED/field_def_nemo-oce.xml}, 
     99\path{cfgs/SHARED/field_def_nemo-pisces.xml}, 
     100\path{cfgs/SHARED/field_def_nemo-ice.xml} and \path{cfgs/SHARED/domain_def_nemo.xml}. \\ 
    95101 
    96102The second functionality targets output performance when running in parallel (\key{mpp\_mpi}). 
    97 Iomput provides the possibility to specify N dedicated I/O processes (in addition to the NEMO processes) 
     103Iomput provides the possibility to specify N dedicated I/O processes (in addition to the \NEMO\ processes) 
    98104to collect and write the outputs. 
    99105With an appropriate choice of N by the user, the bottleneck associated with the writing of 
    100106the output files can be greatly reduced. 
    101107 
    102 In version 3.6, the iom\_put interface depends on 
    103 an external code called \href{https://forge.ipsl.jussieu.fr/ioserver/browser/XIOS/branchs/xios-1.0}{XIOS-1.0}  
    104 (use of revision 618 or higher is required). 
     108In version 3.6, the \rou{iom\_put} interface depends on 
     109an external code called \href{https://forge.ipsl.jussieu.fr/ioserver/browser/XIOS/branchs/xios-2.5}{XIOS-2.5} 
     110%(use of revision 618 or higher is required). 
    105111This new IO server can take advantage of the parallel I/O functionality of NetCDF4 to 
    106112create a single output file and therefore to bypass the rebuilding phase. 
    107113Note that writing in parallel into the same NetCDF files requires that your NetCDF4 library is linked to 
    108 an HDF5 library that has been correctly compiled (\ie with the configure option $--$enable-parallel). 
     114an HDF5 library that has been correctly compiled (\ie\ with the configure option $--$enable-parallel). 
    109115Note that the files created by iomput through XIOS are incompatible with NetCDF3. 
    110116All post-processsing and visualization tools must therefore be compatible with NetCDF4 and not only NetCDF3. 
    111117 
    112118Even if not using the parallel I/O functionality of NetCDF4, using N dedicated I/O servers, 
    113 where N is typically much less than the number of NEMO processors, will reduce the number of output files created. 
    114 This can greatly reduce the post-processing burden usually associated with using large numbers of NEMO processors. 
     119where N is typically much less than the number of \NEMO\ processors, will reduce the number of output files created. 
     120This can greatly reduce the post-processing burden usually associated with using large numbers of \NEMO\ processors. 
    115121Note that for smaller configurations, the rebuilding phase can be avoided, 
    116122even without a parallel-enabled NetCDF4 library, simply by employing only one dedicated I/O server. 
     
    118124\subsection{XIOS: Reading and writing restart file} 
    119125 
    120 XIOS may be used to read single file restart produced by NEMO. Currently only the variables written to  
    121 file \forcode{numror} can be handled by XIOS. To activate restart reading using XIOS, set \np{ln\_xios\_read}\forcode{ = .true. } 
    122 in \textit{namelist\_cfg}. This setting will be ignored when multiple restart files are present, and default NEMO  
    123 functionality will be used for reading. There is no need to change iodef.xml file to use XIOS to read  
    124 restart, all definitions are done within the NEMO code. For high resolution configuration, however,  
     126XIOS may be used to read single file restart produced by \NEMO. Currently only the variables written to 
     127file \forcode{numror} can be handled by XIOS. To activate restart reading using XIOS, set \np{ln\_xios\_read}\forcode{=.true. } 
     128in \textit{namelist\_cfg}. This setting will be ignored when multiple restart files are present, and default \NEMO 
     129functionality will be used for reading. There is no need to change iodef.xml file to use XIOS to read 
     130restart, all definitions are done within the \NEMO\ code. For high resolution configuration, however, 
    125131there may be a need to add the following line in iodef.xml (xios context): 
    126132 
     
    129135\end{xmllines} 
    130136 
    131 This variable sets timeout for reading.  
    132  
    133 If XIOS is to be used to read restart from file generated with an earlier NEMO version (3.6 for instance), 
     137This variable sets timeout for reading. 
     138 
     139If XIOS is to be used to read restart from file generated with an earlier \NEMO\ version (3.6 for instance), 
    134140dimension \forcode{z} defined in restart file must be renamed to \forcode{nav_lev}.\\ 
    135141 
    136 XIOS can also be used to write NEMO restart. A namelist parameter \np{nn\_wxios} is used to determine the  
    137 type of restart NEMO will write. If it is set to 0, default NEMO functionality will be used - each  
    138 processor writes its own restart file; if it is set to 1 XIOS will write restart into a single file;  
    139 for \np{nn\_wxios = 2} the restart will be written by XIOS into multiple files, one for each XIOS server.  
    140 Note, however, that \textbf{NEMO will not read restart generated by XIOS when \np{nn\_wxios = 2}}. The restart will  
    141 have to be rebuild before continuing the run. This option aims to reduce number of restart files generated by NEMO only,  
    142 and may be useful when there is a need to change number of processors used to run simulation.  
     142XIOS can also be used to write \NEMO\ restart. A namelist parameter \np{nn\_wxios} is used to determine the 
     143type of restart \NEMO\ will write. If it is set to 0, default \NEMO\ functionality will be used - each 
     144processor writes its own restart file; if it is set to 1 XIOS will write restart into a single file; 
     145for \np{nn\_wxios}\forcode{=2} the restart will be written by XIOS into multiple files, one for each XIOS server. 
     146Note, however, that \textbf{\NEMO\ will not read restart generated by XIOS when \np{nn\_wxios}\forcode{=2}}. The restart will 
     147have to be rebuild before continuing the run. This option aims to reduce number of restart files generated by \NEMO\ only, 
     148and may be useful when there is a need to change number of processors used to run simulation. 
    143149 
    144150If an additional variable must be written to a restart file, the following steps are needed: 
    145151\begin{description} 
    146    \item[step 1:] add variable name to a list of restart variables (in subroutine \rou{iom\_set\_rst\_vars,} \mdl{iom}) and  
    147 define correct grid for the variable (\forcode{grid_N_3D} - 3D variable, \forcode{grid_N} - 2D variable, \forcode{grid_vector} -  
     152   \item[step 1:] add variable name to a list of restart variables (in subroutine \rou{iom\_set\_rst\_vars,} \mdl{iom}) and 
     153define correct grid for the variable (\forcode{grid_N_3D} - 3D variable, \forcode{grid_N} - 2D variable, \forcode{grid_vector} - 
    1481541D variable, \forcode{grid_scalar} - scalar), 
    149    \item[step 2:] add variable to the list of fields written by restart.  This can be done either in subroutine  
    150 \rou{iom\_set\_rstw\_core} (\mdl{iom}) or by calling  \rou{iom\_set\_rstw\_active} (\mdl{iom}) with the name of a variable  
    151 as an argument. This convention follows approach for writing restart using iom, where variables are  
     155   \item[step 2:] add variable to the list of fields written by restart.  This can be done either in subroutine 
     156\rou{iom\_set\_rstw\_core} (\mdl{iom}) or by calling  \rou{iom\_set\_rstw\_active} (\mdl{iom}) with the name of a variable 
     157as an argument. This convention follows approach for writing restart using iom, where variables are 
    152158written either by \rou{rst\_write} or by calling \rou{iom\_rstput} from individual routines. 
    153159\end{description} 
     
    168174\xmlline|<variable id="using_server" type="bool"></variable>| 
    169175 
    170 The {\tt using\_server} setting determines whether or not the server will be used in \textit{attached mode} 
    171 (as a library) [{\tt> false <}] or in \textit{detached mode} 
    172 (as an external executable on N additional, dedicated cpus) [{\tt > true <}]. 
    173 The \textit{attached mode} is simpler to use but much less efficient for massively parallel applications. 
     176The \texttt{using\_server} setting determines whether or not the server will be used in 
     177\textit{attached mode} 
     178(as a library) [\texttt{> false <}] or in \textit{detached mode} 
     179(as an external executable on N additional, dedicated cpus) [\texttt{ > true <}]. 
     180The \textit{attached mode} is simpler to use but much less efficient for 
     181massively parallel applications. 
    174182The type of each file can be either ''multiple\_file'' or ''one\_file''. 
    175183 
    176184In \textit{attached mode} and if the type of file is ''multiple\_file'', 
    177 then each NEMO process will also act as an IO server and produce its own set of output files. 
     185then each \NEMO\ process will also act as an IO server and produce its own set of output files. 
    178186Superficially, this emulates the standard behaviour in previous versions. 
    179187However, the subdomain written out by each process does not correspond to 
     
    187195write to its own set of output files. 
    188196If the ''one\_file'' option is chosen then all XIOS processes will collect their longitudinal strips and 
    189 write (in parallel) to a single output file.  
     197write (in parallel) to a single output file. 
    190198Note running in detached mode requires launching a Multiple Process Multiple Data (MPMD) parallel job. 
    191199The following subsection provides a typical example but the syntax will vary in different MPP environments. 
     
    194202 
    195203The number of cores used by the XIOS is specified when launching the model. 
    196 The number of cores dedicated to XIOS should be from \texttildelow1/10 to \texttildelow1/50 of the number of  
    197 cores dedicated to NEMO. 
     204The number of cores dedicated to XIOS should be from \texttildelow1/10 to \texttildelow1/50 of the number of 
     205cores dedicated to \NEMO. 
    198206Some manufacturers suggest using O($\sqrt{N}$) dedicated IO processors for N processors but 
    199 this is a general recommendation and not specific to NEMO. 
     207this is a general recommendation and not specific to \NEMO. 
    200208It is difficult to provide precise recommendations because the optimal choice will depend on 
    201 the particular hardware properties of the target system  
     209the particular hardware properties of the target system 
    202210(parallel filesystem performance, available memory, memory bandwidth etc.) 
    203211and the volume and frequency of data to be created. 
     
    207215\subsubsection{Control of XIOS: the context in iodef.xml} 
    208216 
    209 As well as the {\tt using\_server} flag, other controls on the use of XIOS are set in the XIOS context in iodef.xml. 
     217As well as the \texttt{using\_server} flag, other controls on the use of XIOS are set in 
     218the XIOS context in \textit{iodef.xml}. 
    210219See the XML basics section below for more details on XML syntax and rules. 
    211220 
    212221\begin{table} 
    213   \scriptsize 
    214222  \begin{tabularx}{\textwidth}{|lXl|} 
    215223    \hline 
     
    220228    \hline 
    221229    buffer\_size                                                            & 
    222     buffer size used by XIOS to send data from NEMO to XIOS. 
     230    buffer size used by XIOS to send data from \NEMO\ to XIOS. 
    223231    Larger is more efficient. 
    224232    Note that needed/used buffer sizes are summarized at the end of the job & 
     
    226234    \hline 
    227235    buffer\_server\_factor\_size                                            & 
    228     ratio between NEMO and XIOS buffer size. 
     236    ratio between \NEMO\ and XIOS buffer size. 
    229237    Should be 2.                                                            & 
    230238    2        \\ 
     
    243251    \hline 
    244252    oasis\_codes\_id                                                        & 
    245     when using oasis, define the identifier of NEMO in the namcouple. 
     253    when using oasis, define the identifier of \NEMO\ in the namcouple. 
    246254    Note that the identifier of XIOS is xios.x                              & 
    247255    oceanx   \\ 
     
    254262\subsubsection{Installation} 
    255263 
    256 As mentioned, XIOS is supported separately and must be downloaded and compiled before it can be used with NEMO. 
     264As mentioned, XIOS is supported separately and must be downloaded and compiled before it can be used with \NEMO. 
    257265See the installation guide on the \href{http://forge.ipsl.jussieu.fr/ioserver/wiki}{XIOS} wiki for help and guidance. 
    258 NEMO will need to link to the compiled XIOS library. 
    259 The \href{https://forge.ipsl.jussieu.fr/nemo/wiki/Users/ModelInterfacing/InputsOutputs#Inputs-OutputsusingXIOS} 
    260 {XIOS with NEMO} guide provides an example illustration of how this can be achieved. 
     266\NEMO\ will need to link to the compiled XIOS library. 
     267The \href{https://forge.ipsl.jussieu.fr/nemo/chrome/site/doc/NEMO/guide/html/install.html#extract-and-install-xios} 
     268{Extract and install XIOS} guide provides an example illustration of how this can be achieved. 
    261269 
    262270\subsubsection{Add your own outputs} 
     
    269277\begin{enumerate} 
    270278\item[1.] 
    271   in NEMO code, add a \forcode{CALL iom\_put( 'identifier', array )} where you want to output a 2D or 3D array. 
     279  in \NEMO\ code, add a \forcode{CALL iom_put( 'identifier', array )} where you want to output a 2D or 3D array. 
    272280\item[2.] 
    273281  If necessary, add \forcode{USE iom ! I/O manager library} to the list of used modules in 
     
    282290   <field_group id="grid_T" grid_ref="grid_T_3D"> <!-- T grid --> 
    283291   ... 
    284       <field id="identifier" long_name="blabla" ... />    
     292      <field id="identifier" long_name="blabla" ... /> 
    285293      ... 
    286 </field_definition>  
     294</field_definition> 
    287295\end{xmllines} 
    288296 
     
    307315 
    308316\begin{xmllines} 
    309 <file id="file1" .../>    
     317<file id="file1" .../> 
    310318... 
    311    <field field_ref="identifier" />    
     319   <field field_ref="identifier" /> 
    312320   ... 
    313 </file>    
     321</file> 
    314322\end{xmllines} 
    315323 
     
    327335See \href{http://www.xmlnews.org/docs/xml-basics.html}{here} for more details. 
    328336 
    329 \subsubsection{Structure of the XML file used in NEMO} 
     337\subsubsection{Structure of the XML file used in \NEMO} 
    330338 
    331339The XML file used in XIOS is structured by 7 families of tags: 
     
    334342 
    335343\begin{table} 
    336   \scriptsize 
    337344  \begin{tabular*}{\textwidth}{|p{0.15\textwidth}p{0.4\textwidth}p{0.35\textwidth}|} 
    338345    \hline 
     
    366373 
    367374\begin{table} 
    368   \scriptsize 
    369375  \begin{tabular}{|p{0.15\textwidth}p{0.4\textwidth}p{0.35\textwidth}|} 
    370376    \hline 
     
    376382                                                                                                     \xmlcode{<context id="xios" ... >}   \\ 
    377383    \hline 
    378     context nemo    &   context containing IO information for NEMO (mother grid when using AGRIF)  &  
     384    context nemo    &   context containing IO information for \NEMO\ (mother grid when using AGRIF)  & 
    379385                                                                                                     \xmlcode{<context id="nemo" ... >}   \\ 
    380386    \hline 
    381     context 1\_nemo &   context containing IO information for NEMO child grid 1 (when using AGRIF) &  
     387    context 1\_nemo &   context containing IO information for \NEMO\ child grid 1 (when using AGRIF) & 
    382388                                                                                                     \xmlcode{<context id="1_nemo" ... >} \\ 
    383389    \hline 
    384     context n\_nemo &   context containing IO information for NEMO child grid n (when using AGRIF) &  
     390    context n\_nemo &   context containing IO information for \NEMO\ child grid n (when using AGRIF) & 
    385391                                                                                                     \xmlcode{<context id="n_nemo" ... >} \\ 
    386392    \hline 
     
    391397 
    392398\begin{table} 
    393   \scriptsize 
    394399  \begin{tabular}{|p{0.15\textwidth}p{0.4\textwidth}p{0.35\textwidth}|} 
    395400    \hline 
     
    407412\end{table} 
    408413 
    409 \noindent Each context tag related to NEMO (mother or child grids) is divided into 5 parts  
     414\noindent Each context tag related to \NEMO\ (mother or child grids) is divided into 5 parts 
    410415(that can be defined in any order): 
    411416 
    412417\begin{table} 
    413   \scriptsize 
    414418  \begin{tabular}{|p{0.15\textwidth}p{0.4\textwidth}p{0.35\textwidth}|} 
    415419    \hline 
     
    441445The inclusion of XML files into the main XML file can be done through the attribute src: 
    442446\xmlline|<context src="./nemo_def.xml" />| 
    443   
    444 \noindent In NEMO, by default, the field and domain definition is done in 2 separate files: 
    445 \path{NEMOGCM/CONFIG/SHARED/field_def.xml} and \path{NEMOGCM/CONFIG/SHARED/domain_def.xml} that 
     447 
     448\noindent In \NEMO, by default, the field definition is done in 3 separate files ( 
     449\path{cfgs/SHARED/field_def_nemo-oce.xml}, 
     450\path{cfgs/SHARED/field_def_nemo-pisces.xml} and 
     451\path{cfgs/SHARED/field_def_nemo-ice.xml} ) and the  domain definition is done in another file ( \path{cfgs/SHARED/domain_def_nemo.xml} ) 
     452that 
    446453are included in the main iodef.xml file through the following commands: 
    447454\begin{xmllines} 
    448 <field_definition src="./field_def.xml" /> 
    449 <domain_definition src="./domain_def.xml" /> 
     455<context id="nemo" src="./context_nemo.xml"/> 
    450456\end{xmllines} 
    451457 
     
    462468\begin{xmllines} 
    463469<field_definition operation="average" > 
    464    <field id="sst"                    />   <!-- averaged      sst -->  
    465    <field id="sss" operation="instant"/>   <!-- instantaneous sss -->  
    466 </field_definition>  
     470   <field id="sst"                    />   <!-- averaged      sst --> 
     471   <field id="sss" operation="instant"/>   <!-- instantaneous sss --> 
     472</field_definition> 
    467473\end{xmllines} 
    468474 
     
    481487</field_definition> 
    482488<file_definition> 
    483    <file id="myfile" output_freq="1d" />    
     489   <file id="myfile" output_freq="1d" /> 
    484490      <field field_ref="sst"                            />  <!-- default def --> 
    485491      <field field_ref="sss" long_name="my description" />  <!-- overwrite   --> 
    486492   </file> 
    487 </file_definition>  
     493</file_definition> 
    488494\end{xmllines} 
    489495 
     
    508514 
    509515Secondly, the group can be used to replace a list of elements. 
    510 Several examples of groups of fields are proposed at the end of the file \path{CONFIG/SHARED/field_def.xml}. 
     516Several examples of groups of fields are proposed at the end of the XML field files ( 
     517\path{cfgs/SHARED/field_def_nemo-oce.xml}, 
     518\path{cfgs/SHARED/field_def_nemo-pisces.xml} and 
     519\path{cfgs/SHARED/field_def_nemo-ice.xml} ) . 
    511520For example, a short list of the usual variables related to the U grid: 
    512521 
     
    514523<field_group id="groupU" > 
    515524   <field field_ref="uoce"  /> 
    516    <field field_ref="suoce" /> 
     525   <field field_ref="ssu" /> 
    517526   <field field_ref="utau"  /> 
    518527</field_group> 
     
    525534   <field_group group_ref="groupU" /> 
    526535   <field field_ref="uocetr_eff"   />  <!-- add another field --> 
    527 </file>    
     536</file> 
    528537\end{xmllines} 
    529538 
     
    537546Horizontal subdomains are defined through the attributs zoom\_ibegin, zoom\_jbegin, zoom\_ni, zoom\_nj of 
    538547the tag family domain. 
    539 It must therefore be done in the domain part of the XML file.  
    540 For example, in \path{CONFIG/SHARED/domain_def.xml}, we provide the following example of a definition of  
     548It must therefore be done in the domain part of the XML file. 
     549For example, in \path{cfgs/SHARED/domain_def.xml}, we provide the following example of a definition of 
    541550a 5 by 5 box with the bottom left corner at point (10,10). 
    542551 
    543552\begin{xmllines} 
    544 <domain_group id="grid_T"> 
    545    <domain id="myzoom" zoom_ibegin="10" zoom_jbegin="10" zoom_ni="5" zoom_nj="5" /> 
     553<domain id="myzoomT" domain_ref="grid_T"> 
     554   <zoom_domain ibegin="10" jbegin="10" ni="5" nj="5" /> 
    546555\end{xmllines} 
    547556 
     
    551560\begin{xmllines} 
    552561<file id="myfile_vzoom" output_freq="1d" > 
    553    <field field_ref="toce" domain_ref="myzoom"/> 
     562   <field field_ref="toce" domain_ref="myzoomT"/> 
    554563</file> 
    555564\end{xmllines} 
    556565 
    557 Moorings are seen as an extrem case corresponding to a 1 by 1 subdomain.  
     566Moorings are seen as an extrem case corresponding to a 1 by 1 subdomain. 
    558567The Equatorial section, the TAO, RAMA and PIRATA moorings are already registered in the code and 
    559568can therefore be outputted without taking care of their (i,j) position in the grid. 
     
    568577\end{xmllines} 
    569578 
    570 Note that if the domain decomposition used in XIOS cuts the subdomain in several parts and if  
    571 you use the ''multiple\_file'' type for your output files,  
    572 you will endup with several files you will need to rebuild using unprovided tools (like ncpdq and ncrcat,  
     579Note that if the domain decomposition used in XIOS cuts the subdomain in several parts and if 
     580you use the ''multiple\_file'' type for your output files, 
     581you will endup with several files you will need to rebuild using unprovided tools (like ncpdq and ncrcat, 
    573582\href{http://nco.sourceforge.net/nco.html#Concatenation}{see nco manual}). 
    574583We are therefore advising to use the ''one\_file'' type in this case. 
     
    576585\subsubsection{Define vertical zooms} 
    577586 
    578 Vertical zooms are defined through the attributs zoom\_begin and zoom\_end of the tag family axis. 
     587Vertical zooms are defined through the attributs zoom\_begin and zoom\_n of the tag family axis. 
    579588It must therefore be done in the axis part of the XML file. 
    580 For example, in \path{NEMOGCM/CONFIG/ORCA2_LIM/iodef_demo.xml}, we provide the following example: 
    581  
    582 \begin{xmllines} 
    583 <axis_group id="deptht" long_name="Vertical T levels" unit="m" positive="down" > 
    584    <axis id="deptht" /> 
    585    <axis id="deptht_myzoom" zoom_begin="1" zoom_end="10" /> 
     589For example, in \path{cfgs/ORCA2_ICE_PISCES/EXPREF/iodef_demo.xml}, we provide the following example: 
     590 
     591\begin{xmllines} 
     592<axis_definition> 
     593   <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" /> 
     594   <axis id="deptht_zoom" azix_ref="deptht" > 
     595      <zoom_axis zoom_begin="1" zoom_n="10" /> 
     596   </axis> 
    586597\end{xmllines} 
    587598 
     
    601612 
    602613\begin{xmllines} 
    603 <file_group id="1d" output_freq="1d" name="myfile_1d" >  
     614<file_group id="1d" output_freq="1d" name="myfile_1d" > 
    604615   <file id="myfileA" name_suffix="_AAA" > <!-- will create file "myfile_1d_AAA"  --> 
    605616      ... 
     
    620631 
    621632\begin{table} 
    622   \scriptsize 
    623633  \begin{tabularx}{\textwidth}{|lX|} 
    624634    \hline 
     
    656666\end{table} 
    657667 
    658 \noindent For example,  
     668\noindent For example, 
    659669\xmlline|<file id="myfile_hzoom" name="myfile_@expname@_@startdate@_freq@freq@" output_freq="1d" >| 
    660670 
     
    668678\noindent will give the following file name radical: \ifile{myfile\_ORCA2\_19891231\_freq1d} 
    669679 
    670 \subsubsection{Other controls of the XML attributes from NEMO} 
    671  
    672 The values of some attributes are defined by subroutine calls within NEMO  
     680\subsubsection{Other controls of the XML attributes from \NEMO} 
     681 
     682The values of some attributes are defined by subroutine calls within \NEMO 
    673683(calls to iom\_set\_domain\_attr, iom\_set\_axis\_attr and iom\_set\_field\_attr in \mdl{iom}). 
    674684Any definition given in the XML file will be overwritten. 
     
    681691 
    682692\begin{table} 
    683   \scriptsize 
    684   \begin{tabularx}{\textwidth}{|X|c|c|c|} 
     693  \begin{tabular}{|l|c|c|} 
    685694    \hline 
    686695    tag ids affected by automatic definition of some of their attributes & 
    687696    name attribute                                                       & 
    688     attribute value                      \\ 
     697    attribute value                                                      \\ 
    689698    \hline 
    690699    \hline 
    691700    field\_definition                                                    & 
    692701    freq\_op                                                             & 
    693     \np{rn\_rdt}                         \\ 
     702    \np{rn\_rdt}                                                         \\ 
    694703    \hline 
    695704    SBC                                                                  & 
    696705    freq\_op                                                             & 
    697     \np{rn\_rdt} $\times$ \np{nn\_fsbc}  \\ 
     706    \np{rn\_rdt} $\times$ \np{nn\_fsbc}                                  \\ 
    698707    \hline 
    699708    ptrc\_T                                                              & 
    700709    freq\_op                                                             & 
    701     \np{rn\_rdt} $\times$ \np{nn\_dttrc} \\ 
     710    \np{rn\_rdt} $\times$ \np{nn\_dttrc}                                 \\ 
    702711    \hline 
    703712    diad\_T                                                              & 
    704713    freq\_op                                                             & 
    705     \np{rn\_rdt} $\times$ \np{nn\_dttrc} \\ 
     714    \np{rn\_rdt} $\times$ \np{nn\_dttrc}                                 \\ 
    706715    \hline 
    707716    EqT, EqU, EqW                                                        & 
    708717    jbegin, ni,                                                          & 
    709     according to the grid                \\ 
    710     & 
     718    according to the grid                                                \\ 
     719                                                                         & 
    711720    name\_suffix                                                         & 
    712     \\ 
     721                                                                         \\ 
    713722    \hline 
    714723    TAO, RAMA and PIRATA moorings                                        & 
    715724    zoom\_ibegin, zoom\_jbegin,                                          & 
    716     according to the grid                \\ 
    717     & 
     725    according to the grid                                                \\ 
     726                                                                         & 
    718727    name\_suffix                                                         & 
    719     \\ 
    720     \hline 
    721   \end{tabularx} 
     728                                                                         \\ 
     729    \hline 
     730  \end{tabular} 
    722731\end{table} 
    723732 
     
    725734 
    726735\subsection{XML reference tables} 
    727 \label{subsec:IOM_xmlref} 
     736\label{subsec:DIA_IOM_xmlref} 
    728737 
    729738\begin{enumerate} 
     
    765774\end{xmllines} 
    766775 
    767 Note that, then the code is crashing, writting real4 variables forces a numerical convection from  
     776Note that, then the code is crashing, writting real4 variables forces a numerical conversion from 
    768777real8 to real4 which will create an internal error in NetCDF and will avoid the creation of the output files. 
    769778Forcing double precision outputs with prec="8" (for example in the field\_definition) will avoid this problem. 
     
    773782 
    774783\begin{xmllines} 
    775 <file_group id="1d" output_freq="1d" output_level="10" enabled=".true."> <!-- 1d files -->  
     784<file_group id="1d" output_freq="1d" output_level="10" enabled=".true."> <!-- 1d files --> 
    776785   <file id="file1" name_suffix="_grid_T" description="ocean T grid variables" > 
    777786      <field field_ref="sst" name="tos" > 
     
    782791      <variable id="my_global_attribute" type="string" > blabla_global </variable> 
    783792   </file> 
    784 </file_group>  
     793</file_group> 
    785794\end{xmllines} 
    786795 
     
    797806 
    798807\begin{xmllines} 
    799 <file_group id="5d" output_freq="5d"  output_level="10" enabled=".true." >  <!-- 5d files -->   
     808<file_group id="5d" output_freq="5d"  output_level="10" enabled=".true." >  <!-- 5d files --> 
    800809   <file id="file1" name_suffix="_grid_T" description="ocean T grid variables" > 
    801810      <field field_ref="toce" operation="instant" freq_op="5d" > @toce_e3t / @e3t </field> 
    802811   </file> 
    803 </file_group>  
     812</file_group> 
    804813\end{xmllines} 
    805814 
     
    826835 
    827836\begin{xmllines} 
    828 <file_group id="1m" output_freq="1m"  output_level="10" enabled=".true." >  <!-- 1m files -->   
     837<file_group id="1m" output_freq="1m"  output_level="10" enabled=".true." >  <!-- 1m files --> 
    829838   <file id="file1" name_suffix="_grid_T" description="ocean T grid variables" > 
    830       <field field_ref="ssh" name="sshstd" long_name="sea_surface_temperature_standard_deviation"  
     839      <field field_ref="ssh" name="sshstd" long_name="sea_surface_temperature_standard_deviation" 
    831840      operation="instant" freq_op="1m" > 
    832841         sqrt( @ssh2 - @ssh * @ssh ) 
    833842      </field> 
    834843   </file> 
    835 </file_group>  
     844</file_group> 
    836845\end{xmllines} 
    837846 
     
    840849here we use the default, average. 
    841850So, in the above case, @ssh2 will do the monthly mean of ssh*ssh. 
    842 Operation="instant" refers to the temporal operation to be performed on the field ''sqrt( @ssh2 - @ssh * @ssh )'':  
     851Operation="instant" refers to the temporal operation to be performed on the field ''sqrt( @ssh2 - @ssh * @ssh )'': 
    843852here the temporal average is alreday done by the ``@'' function so we just use instant. 
    844853field\_ref="ssh" means that attributes not explicitely defined, are inherited from ssh field. 
     
    858867 
    859868\begin{xmllines} 
    860 <file_group id="1m" output_freq="1m"  output_level="10" enabled=".true." >  <!-- 1m files -->   
     869<file_group id="1m" output_freq="1m"  output_level="10" enabled=".true." >  <!-- 1m files --> 
    861870   <file id="file1" name_suffix="_grid_T" description="ocean T grid variables" > 
    862871      <field field_ref="sst" name="sstdcy" long_name="amplitude of sst diurnal cycle" operation="average" freq_op="1d" > 
     
    864873      </field> 
    865874   </file> 
    866 </file_group>  
     875</file_group> 
    867876\end{xmllines} 
    868877 
     
    880889 
    881890\begin{table} 
    882   \scriptsize 
    883891  \begin{tabularx}{\textwidth}{|l|X|X|l|X|} 
    884892    \hline 
     
    903911    \hline 
    904912  \end{tabularx} 
    905   \caption{Context tags} 
     913  \caption{XIOS: context tags} 
    906914\end{table} 
    907915 
    908916\begin{table} 
    909   \scriptsize 
    910917  \begin{tabularx}{\textwidth}{|l|X|X|X|l|} 
    911918    \hline 
     
    938945    \hline 
    939946  \end{tabularx} 
    940   \caption{Field tags ("\tt{field\_*}")} 
     947  \caption{XIOS: field tags ("\texttt{field\_*}")} 
    941948\end{table} 
    942949 
    943950\begin{table} 
    944   \scriptsize 
    945951  \begin{tabularx}{\textwidth}{|l|X|X|X|l|} 
    946952    \hline 
     
    974980    \hline 
    975981  \end{tabularx} 
    976   \caption{File tags ("\tt{file\_*}")} 
     982  \caption{XIOS: file tags ("\texttt{file\_*}")} 
    977983\end{table} 
    978984 
    979985\begin{table} 
    980   \scriptsize 
    981986  \begin{tabularx}{\textwidth}{|l|X|X|X|X|} 
    982987    \hline 
     
    10071012    \hline 
    10081013  \end{tabularx} 
    1009   \caption{Axis tags ("\tt{axis\_*}")} 
     1014  \caption{XIOS: axis tags ("\texttt{axis\_*}")} 
    10101015\end{table} 
    10111016 
    10121017\begin{table} 
    1013   \scriptsize 
    10141018  \begin{tabularx}{\textwidth}{|l|X|X|X|X|} 
    10151019    \hline 
     
    10401044    \hline 
    10411045  \end{tabularx} 
    1042   \caption{Domain tags ("\tt{domain\_*)}"} 
     1046  \caption{XIOS: domain tags ("\texttt{domain\_*)}"} 
    10431047\end{table} 
    10441048 
    10451049\begin{table} 
    1046   \scriptsize 
    10471050  \begin{tabularx}{\textwidth}{|l|X|X|X|X|} 
    10481051    \hline 
     
    10731076    \hline 
    10741077  \end{tabularx} 
    1075   \caption{Grid tags ("\tt{grid\_*}")} 
     1078  \caption{XIOS: grid tags ("\texttt{grid\_*}")} 
    10761079\end{table} 
    10771080 
     
    10791082 
    10801083\begin{table} 
    1081   \scriptsize 
    10821084  \begin{tabularx}{\textwidth}{|l|X|l|l|} 
    10831085    \hline 
     
    11141116    \hline 
    11151117  \end{tabularx} 
    1116   \caption{Reference attributes ("\tt{*\_ref}")} 
     1118  \caption{XIOS: reference attributes ("\texttt{*\_ref}")} 
    11171119\end{table} 
    11181120 
    11191121\begin{table} 
    1120   \scriptsize 
    11211122  \begin{tabularx}{\textwidth}{|l|X|l|l|} 
    11221123    \hline 
     
    11501151    \hline 
    11511152  \end{tabularx} 
    1152   \caption{Domain attributes ("\tt{zoom\_*}")} 
     1153  \caption{XIOS: domain attributes ("\texttt{zoom\_*}")} 
    11531154\end{table} 
    11541155 
    11551156\begin{table} 
    1156   \scriptsize 
    11571157  \begin{tabularx}{\textwidth}{|l|X|l|l|} 
    11581158    \hline 
     
    12051205    \hline 
    12061206  \end{tabularx} 
    1207   \caption{File attributes} 
     1207  \caption{XIOS: file attributes} 
    12081208\end{table} 
    12091209 
    12101210\begin{table} 
    1211   \scriptsize 
    12121211  \begin{tabularx}{\textwidth}{|l|X|l|l|} 
    12131212    \hline 
     
    12541253    \hline 
    12551254  \end{tabularx} 
    1256   \caption{Field attributes} 
     1255  \caption{XIOS: field attributes} 
    12571256\end{table} 
    12581257 
    12591258\begin{table} 
    1260   \scriptsize 
    12611259  \begin{tabularx}{\textwidth}{|l|X|X|X|} 
    12621260    \hline 
     
    13131311    \hline 
    13141312  \end{tabularx} 
    1315   \caption{Miscellaneous attributes} 
     1313  \caption{XIOS: miscellaneous attributes} 
    13161314\end{table} 
    13171315 
    13181316\subsection{CF metadata standard compliance} 
    13191317 
    1320 Output from the XIOS-1.0 IO server is compliant with  
     1318Output from the XIOS IO server is compliant with 
    13211319\href{http://cfconventions.org/Data/cf-conventions/cf-conventions-1.5/build/cf-conventions.html}{version 1.5} of 
    1322 the CF metadata standard.  
     1320the CF metadata standard. 
    13231321Therefore while a user may wish to add their own metadata to the output files (as demonstrated in example 4 of 
    1324 section \autoref{subsec:IOM_xmlref}) the metadata should, for the most part, comply with the CF-1.5 standard. 
     1322section \autoref{subsec:DIA_IOM_xmlref}) the metadata should, for the most part, comply with the CF-1.5 standard. 
    13251323 
    13261324Some metadata that may significantly increase the file size (horizontal cell areas and vertices) are controlled by 
    1327 the namelist parameter \np{ln\_cfmeta} in the \ngn{namrun} namelist. 
     1325the namelist parameter \np{ln\_cfmeta} in the \nam{run} namelist. 
    13281326This must be set to true if these metadata are to be included in the output files. 
    13291327 
     
    13321330%       NetCDF4 support 
    13331331% ================================================================ 
    1334 \section{NetCDF4 support (\protect\key{netcdf4})} 
     1332\section[NetCDF4 support (\texttt{\textbf{key\_netcdf4}})] 
     1333{NetCDF4 support (\protect\key{netcdf4})} 
    13351334\label{sec:DIA_nc4} 
    13361335 
     
    13401339Chunking and compression can lead to significant reductions in file sizes for a small runtime overhead. 
    13411340For a fuller discussion on chunking and other performance issues the reader is referred to 
    1342 the NetCDF4 documentation found \href{http://www.unidata.ucar.edu/software/netcdf/docs/netcdf.html#Chunking}{here}. 
     1341the NetCDF4 documentation found \href{https://www.unidata.ucar.edu/software/netcdf/docs/netcdf_perf_chunking.html}{here}. 
    13431342 
    13441343The new features are only available when the code has been linked with a NetCDF4 library 
     
    13461345Datasets created with chunking and compression are not backwards compatible with NetCDF3 "classic" format but 
    13471346most analysis codes can be relinked simply with the new libraries and will then read both NetCDF3 and NetCDF4 files. 
    1348 NEMO executables linked with NetCDF4 libraries can be made to produce NetCDF3 files by 
    1349 setting the \np{ln\_nc4zip} logical to false in the \textit{namnc4} namelist: 
     1347\NEMO\ executables linked with NetCDF4 libraries can be made to produce NetCDF3 files by 
     1348setting the \np{ln\_nc4zip} logical to false in the \nam{nc4} namelist: 
    13501349 
    13511350%------------------------------------------namnc4---------------------------------------------------- 
    13521351 
    1353 \nlst{namnc4} 
     1352\begin{listing} 
     1353  \nlst{namnc4} 
     1354  \caption{\texttt{namnc4}} 
     1355  \label{lst:namnc4} 
     1356\end{listing} 
    13541357%------------------------------------------------------------------------------------------------------------- 
    13551358 
     
    13891392\end{forlines} 
    13901393 
    1391 \noindent for a standard ORCA2\_LIM configuration gives chunksizes of {\small\tt 46x38x1} respectively in 
    1392 the mono-processor case (\ie global domain of {\small\tt 182x149x31}). 
    1393 An illustration of the potential space savings that NetCDF4 chunking and compression provides is given in  
    1394 table \autoref{tab:NC4} which compares the results of two short runs of the ORCA2\_LIM reference configuration with 
     1394\noindent for a standard ORCA2\_LIM configuration gives chunksizes of {\small\texttt 46x38x1} respectively in 
     1395the mono-processor case (\ie\ global domain of {\small\texttt 182x149x31}). 
     1396An illustration of the potential space savings that NetCDF4 chunking and compression provides is given in 
     1397table \autoref{tab:DIA_NC4} which compares the results of two short runs of the ORCA2\_LIM reference configuration with 
    13951398a 4x2 mpi partitioning. 
    13961399Note the variation in the compression ratio achieved which reflects chiefly the dry to wet volume ratio of 
     
    13991402%------------------------------------------TABLE---------------------------------------------------- 
    14001403\begin{table} 
    1401   \scriptsize 
    14021404  \centering 
    14031405  \begin{tabular}{lrrr} 
     
    14311433    ORCA2\_2d\_grid\_W\_0007.nc & 4416    & 1368     & 70\%      \\ 
    14321434  \end{tabular} 
    1433   \caption{ 
    1434     \protect\label{tab:NC4} 
    1435     Filesize comparison between NetCDF3 and NetCDF4 with chunking and compression 
    1436   } 
     1435  \caption{Filesize comparison between NetCDF3 and NetCDF4 with chunking and compression} 
     1436  \label{tab:DIA_NC4} 
    14371437\end{table} 
    14381438%---------------------------------------------------------------------------------------------------- 
    14391439 
    14401440When \key{iomput} is activated with \key{netcdf4} chunking and compression parameters for fields produced via 
    1441 \np{iom\_put} calls are set via an equivalent and identically named namelist to \textit{namnc4} in 
    1442 \np{xmlio\_server.def}. 
    1443 Typically this namelist serves the mean files whilst the \ngn{ namnc4} in the main namelist file continues to 
     1441\rou{iom\_put} calls are set via an equivalent and identically named namelist to \nam{nc4} in 
     1442\textit{xmlio\_server.def}. 
     1443Typically this namelist serves the mean files whilst the \nam{nc4} in the main namelist file continues to 
    14441444serve the restart files. 
    14451445This duplication is unfortunate but appropriate since, if using io\_servers, the domain sizes of 
    14461446the individual files produced by the io\_server processes may be different to those produced by 
    14471447the invidual processing regions and different chunking choices may be desired. 
    1448   
     1448 
    14491449% ------------------------------------------------------------------------------------------------------------- 
    14501450%       Tracer/Dynamics Trends 
    14511451% ------------------------------------------------------------------------------------------------------------- 
    1452 \section{Tracer/Dynamics trends  (\protect\ngn{namtrd})} 
     1452\section[Tracer/Dynamics trends (\texttt{namtrd})] 
     1453{Tracer/Dynamics trends (\protect\nam{trd})} 
    14531454\label{sec:DIA_trd} 
    14541455 
    14551456%------------------------------------------namtrd---------------------------------------------------- 
    14561457 
    1457 \nlst{namtrd}  
     1458\begin{listing} 
     1459  \nlst{namtrd} 
     1460  \caption{\texttt{namtrd}} 
     1461  \label{lst:namtrd} 
     1462\end{listing} 
    14581463%------------------------------------------------------------------------------------------------------------- 
    14591464 
    14601465Each trend of the dynamics and/or temperature and salinity time evolution equations can be send to 
    14611466\mdl{trddyn} and/or \mdl{trdtra} modules (see TRD directory) just after their computation 
    1462 (\ie at the end of each $dyn\cdots.F90$ and/or $tra\cdots.F90$ routines). 
    1463 This capability is controlled by options offered in \ngn{namtrd} namelist. 
    1464 Note that the output are done with xIOS, and therefore the \key{IOM} is required. 
    1465  
    1466 What is done depends on the \ngn{namtrd} logical set to \forcode{.true.}: 
     1467(\ie\ at the end of each \textit{dyn....F90} and/or \textit{tra....F90} routines). 
     1468This capability is controlled by options offered in \nam{trd} namelist. 
     1469Note that the output are done with XIOS, and therefore the \key{iomput} is required. 
     1470 
     1471What is done depends on the \nam{trd} logical set to \forcode{.true.}: 
    14671472 
    14681473\begin{description} 
     
    14871492\end{description} 
    14881493 
    1489 Note that the mixed layer tendency diagnostic can also be used on biogeochemical models via  
    1490 the \key{trdtrc} and \key{trdmld\_trc} CPP keys. 
     1494Note that the mixed layer tendency diagnostic can also be used on biogeochemical models via 
     1495the \key{trdtrc} and \key{trdmxl\_trc} CPP keys. 
    14911496 
    14921497\textbf{Note that} in the current version (v3.6), many changes has been introduced but not fully tested. 
    14931498In particular, options associated with \np{ln\_dyn\_mxl}, \np{ln\_vor\_trd}, and \np{ln\_tra\_mxl} are not working, 
    1494 and none of the options have been tested with variable volume (\ie \key{vvl} defined). 
     1499and none of the options have been tested with variable volume (\ie\ \np{ln\_linssh}\forcode{=.true.}). 
    14951500 
    14961501% ------------------------------------------------------------------------------------------------------------- 
    14971502%       On-line Floats trajectories 
    14981503% ------------------------------------------------------------------------------------------------------------- 
    1499 \section{FLO: On-Line Floats trajectories (\protect\key{floats})} 
    1500 \label{sec:FLO} 
     1504\section[FLO: On-Line Floats trajectories (\texttt{\textbf{key\_floats}})] 
     1505{FLO: On-Line Floats trajectories (\protect\key{floats})} 
     1506\label{sec:DIA_FLO} 
    15011507%--------------------------------------------namflo------------------------------------------------------- 
    15021508 
    1503 \nlst{namflo}  
     1509\begin{listing} 
     1510  \nlst{namflo} 
     1511  \caption{\texttt{namflo}} 
     1512  \label{lst:namflo} 
     1513\end{listing} 
    15041514%-------------------------------------------------------------------------------------------------------------- 
    15051515 
    15061516The on-line computation of floats advected either by the three dimensional velocity field or constraint to 
    15071517remain at a given depth ($w = 0$ in the computation) have been introduced in the system during the CLIPPER project. 
    1508 Options are defined by \ngn{namflo} namelis variables. 
    1509 The algorithm used is based either on the work of \cite{Blanke_Raynaud_JPO97} (default option), 
    1510 or on a $4^th$ Runge-Hutta algorithm (\np{ln\_flork4}\forcode{ = .true.}). 
    1511 Note that the \cite{Blanke_Raynaud_JPO97} algorithm have the advantage of providing trajectories which 
     1518Options are defined by \nam{flo} namelist variables. 
     1519The algorithm used is based either on the work of \cite{blanke.raynaud_JPO97} (default option), 
     1520or on a $4^th$ Runge-Hutta algorithm (\np{ln\_flork4}\forcode{=.true.}). 
     1521Note that the \cite{blanke.raynaud_JPO97} algorithm have the advantage of providing trajectories which 
    15121522are consistent with the numeric of the code, so that the trajectories never intercept the bathymetry. 
    15131523 
     
    15151525 
    15161526Initial coordinates can be given with Ariane Tools convention 
    1517 (IJK coordinates, (\np{ln\_ariane}\forcode{ = .true.}) ) or with longitude and latitude. 
    1518  
    1519 In case of Ariane convention, input filename is \np{init\_float\_ariane}. 
     1527(IJK coordinates, (\np{ln\_ariane}\forcode{=.true.}) ) or with longitude and latitude. 
     1528 
     1529In case of Ariane convention, input filename is \textit{init\_float\_ariane}. 
    15201530Its format is: \\ 
    1521 {\scriptsize \texttt{I J K nisobfl itrash itrash}} 
     1531{ \texttt{I J K nisobfl itrash}} 
    15221532 
    15231533\noindent with: 
     
    15251535 - I,J,K  : indexes of initial position 
    15261536 
    1527  - nisobfl: 0 for an isobar float, 1 for a float following the w velocity   
     1537 - nisobfl: 0 for an isobar float, 1 for a float following the w velocity 
    15281538 
    15291539 - itrash : set to zero; it is a dummy variable to respect Ariane Tools convention 
     
    15311541\noindent Example: \\ 
    15321542\noindent 
    1533 {\scriptsize 
     1543{ 
    15341544  \texttt{ 
    15351545    100.00000  90.00000  -1.50000 1.00000   0.00000   \\ 
     
    15421552In the other case (longitude and latitude), input filename is init\_float. 
    15431553Its format is: \\ 
    1544 {\scriptsize \texttt{Long Lat depth nisobfl ngrpfl itrash}} 
     1554{ \texttt{Long Lat depth nisobfl ngrpfl itrash}} 
    15451555 
    15461556\noindent with: 
     
    15561566\noindent Example: \\ 
    15571567\noindent 
    1558 {\scriptsize 
     1568{ 
    15591569  \texttt{ 
    15601570    20.0 0.0 0.0 0 1 1    \\ 
     
    15661576 
    15671577\np{jpnfl} is the total number of floats during the run. 
    1568 When initial positions are read in a restart file (\np{ln\_rstflo}\forcode{ = .true.} ), 
     1578When initial positions are read in a restart file (\np{ln\_rstflo}\forcode{=.true.} ), 
    15691579\np{jpnflnewflo} can be added in the initialization file. 
    15701580 
     
    15741584creation of the float restart file. 
    15751585 
    1576 Output data can be written in ascii files (\np{ln\_flo\_ascii}\forcode{ = .true.}). 
     1586Output data can be written in ascii files (\np{ln\_flo\_ascii}\forcode{=.true.}). 
    15771587In that case, output filename is trajec\_float. 
    15781588 
    1579 Another possiblity of writing format is Netcdf (\np{ln\_flo\_ascii}\forcode{ = .false.}). 
    1580 There are 2 possibilities: 
    1581  
    1582 - if (\key{iomput}) is used, outputs are selected in  iodef.xml. 
     1589Another possiblity of writing format is Netcdf (\np{ln\_flo\_ascii}\forcode{=.false.}) with 
     1590\key{iomput} and outputs selected in iodef.xml. 
    15831591Here it is an example of specification to put in files description section: 
    15841592 
     
    15971605\end{xmllines} 
    15981606 
    1599  -  if (\key{iomput}) is not used, a file called \ifile{trajec\_float} will be created by IOIPSL library. 
    1600  
    1601  See also \href{http://stockage.univ-brest.fr/~grima/Ariane/}{here} the web site describing the off-line use of 
    1602  this marvellous diagnostic tool. 
    16031607 
    16041608% ------------------------------------------------------------------------------------------------------------- 
    16051609%       Harmonic analysis of tidal constituents 
    16061610% ------------------------------------------------------------------------------------------------------------- 
    1607 \section{Harmonic analysis of tidal constituents (\protect\key{diaharm}) } 
     1611\section[Harmonic analysis of tidal constituents (\texttt{\textbf{key\_diaharm}})] 
     1612{Harmonic analysis of tidal constituents (\protect\key{diaharm})} 
    16081613\label{sec:DIA_diag_harm} 
    16091614 
    1610 %------------------------------------------namdia_harm---------------------------------------------------- 
     1615%------------------------------------------nam_diaharm---------------------------------------------------- 
    16111616% 
    1612 \nlst{nam_diaharm} 
     1617\begin{listing} 
     1618  \nlst{nam_diaharm} 
     1619  \caption{\texttt{nam\_diaharm}} 
     1620  \label{lst:nam_diaharm} 
     1621\end{listing} 
    16131622%---------------------------------------------------------------------------------------------------------- 
    16141623 
     
    16161625This on-line Harmonic analysis is actived with \key{diaharm}. 
    16171626 
    1618 Some parameters are available in namelist \ngn{namdia\_harm}: 
     1627Some parameters are available in namelist \nam{\_diaharm}: 
    16191628 
    16201629 - \np{nit000\_han} is the first time step used for harmonic analysis 
     
    16241633 - \np{nstep\_han}  is the  time step frequency for harmonic analysis 
    16251634 
    1626  - \np{nb\_ana}     is the number of harmonics to analyse 
     1635% - \np{nb\_ana}     is the number of harmonics to analyse 
    16271636 
    16281637 - \np{tname}       is an array with names of tidal constituents to analyse 
     
    16521661%       Sections transports 
    16531662% ------------------------------------------------------------------------------------------------------------- 
    1654 \section{Transports across sections (\protect\key{diadct}) } 
     1663\section[Transports across sections (\texttt{\textbf{key\_diadct}})] 
     1664{Transports across sections (\protect\key{diadct})} 
    16551665\label{sec:DIA_diag_dct} 
    16561666 
    1657 %------------------------------------------namdct---------------------------------------------------- 
    1658  
    1659 \nlst{namdct} 
     1667%------------------------------------------nam_diadct---------------------------------------------------- 
     1668 
     1669\begin{listing} 
     1670  \nlst{nam_diadct} 
     1671  \caption{\texttt{nam\_diadct}} 
     1672  \label{lst:nam_diadct} 
     1673\end{listing} 
    16601674%------------------------------------------------------------------------------------------------------------- 
    16611675 
     
    16641678 
    16651679Each section is defined by the coordinates of its 2 extremities. 
    1666 The pathways between them are contructed using tools which can be found in \texttt{NEMOGCM/TOOLS/SECTIONS\_DIADCT} 
    1667 and are written in a binary file \texttt{section\_ijglobal.diadct\_ORCA2\_LIM} which is later read in by 
    1668 NEMO to compute on-line transports. 
     1680The pathways between them are contructed using tools which can be found in \texttt{tools/SECTIONS\_DIADCT} 
     1681and are written in a binary file \texttt{section\_ijglobal.diadct} which is later read in by 
     1682\NEMO\ to compute on-line transports. 
    16691683 
    16701684The on-line transports module creates three output ascii files: 
     
    16761690- \texttt{salt\_transport}   for   salt transports (unit: $10^{9}Kg s^{-1}$) \\ 
    16771691 
    1678 Namelist variables in \ngn{namdct} control how frequently the flows are summed and the time scales over which 
     1692Namelist variables in \nam{\_diadct} control how frequently the flows are summed and the time scales over which 
    16791693they are averaged, as well as the level of output for debugging: 
    16801694\np{nn\_dct}   : frequency of instantaneous transports computing 
     
    16841698\subsubsection{Creating a binary file containing the pathway of each section} 
    16851699 
    1686 In \texttt{NEMOGCM/TOOLS/SECTIONS\_DIADCT/run}, 
     1700In \texttt{tools/SECTIONS\_DIADCT/run}, 
    16871701the file \textit{ {list\_sections.ascii\_global}} contains a list of all the sections that are to be computed 
    16881702(this list of sections is based on MERSEA project metrics). 
     
    16911705 
    16921706Each section is defined by: \\ 
    1693 \noindent {\scriptsize \texttt{long1 lat1 long2 lat2 nclass (ok/no)strpond (no)ice section\_name}} \\ 
     1707\noindent { \texttt{long1 lat1 long2 lat2 nclass (ok/no)strpond (no)ice section\_name}} \\ 
    16941708with: 
    16951709 
     
    16981712 - \texttt{long2 lat2}, coordinates of the second extremity of the section; 
    16991713 
    1700  - \texttt{nclass}    the number of bounds of your classes (\eg bounds for 2 classes); 
     1714 - \texttt{nclass}    the number of bounds of your classes (\eg\ bounds for 2 classes); 
    17011715 
    17021716 - \texttt{okstrpond} to compute    heat and       salt transports, \texttt{nostrpond} if no; 
     
    17081722 
    17091723\noindent If nclass $\neq$ 0, the next lines contain the class type and the nclass bounds: \\ 
    1710 {\scriptsize 
     1724{ 
    17111725  \texttt{ 
    17121726    long1 lat1 long2 lat2 nclass (ok/no)strpond (no)ice section\_name \\ 
     
    17311745 
    17321746 - \texttt{zsigp} for potential density classes \\ 
    1733    
     1747 
    17341748 The script \texttt{job.ksh} computes the pathway for each section and creates a binary file 
    1735  \texttt{section\_ijglobal.diadct\_ORCA2\_LIM} which is read by NEMO. \\ 
     1749 \texttt{section\_ijglobal.diadct} which is read by \NEMO. \\ 
    17361750 
    17371751 It is possible to use this tools for new configuations: \texttt{job.ksh} has to be updated with 
     
    17411755 and the ATL\_Cuba\_Florida with 4 temperature clases (5 class bounds), are shown: \\ 
    17421756 \noindent 
    1743  {\scriptsize 
     1757 { 
    17441758   \texttt{ 
    17451759     -68.    -54.5   -60.    -64.7  00 okstrpond noice ACC\_Drake\_Passage \\ 
     
    17561770 
    17571771The output format is: \\ 
    1758 {\scriptsize 
     1772{ 
    17591773  \texttt{ 
    17601774    date, time-step number, section number,                \\ 
     
    17781792 
    17791793\begin{table} 
    1780   \scriptsize 
    17811794  \begin{tabular}{|l|l|l|l|l|} 
    17821795    \hline 
     
    18091822The steric effect is therefore not explicitely represented. 
    18101823This approximation does not represent a serious error with respect to the flow field calculated by the model 
    1811 \citep{Greatbatch_JGR94}, but extra attention is required when investigating sea level, 
     1824\citep{greatbatch_JGR94}, but extra attention is required when investigating sea level, 
    18121825as steric changes are an important contribution to local changes in sea level on seasonal and climatic time scales. 
    18131826This is especially true for investigation into sea level rise due to global warming. 
    18141827 
    18151828Fortunately, the steric contribution to the sea level consists of a spatially uniform component that 
    1816 can be diagnosed by considering the mass budget of the world ocean \citep{Greatbatch_JGR94}. 
     1829can be diagnosed by considering the mass budget of the world ocean \citep{greatbatch_JGR94}. 
    18171830In order to better understand how global mean sea level evolves and thus how the steric sea level can be diagnosed, 
    18181831we compare, in the following, the non-Boussinesq and Boussinesq cases. 
    18191832 
    18201833Let denote 
    1821 $\mathcal{M}$ the total mass    of liquid seawater ($\mathcal{M} = \int_D \rho dv$),  
    1822 $\mathcal{V}$ the total volume  of        seawater      ($\mathcal{V} = \int_D dv$),  
    1823 $\mathcal{A}$ the total surface of       the ocean      ($\mathcal{A} = \int_S ds$),  
    1824 $\bar{\rho}$ the global mean  seawater (\textit{in situ}) density  
     1834$\mathcal{M}$ the total mass    of liquid seawater ($\mathcal{M} = \int_D \rho dv$), 
     1835$\mathcal{V}$ the total volume  of        seawater      ($\mathcal{V} = \int_D dv$), 
     1836$\mathcal{A}$ the total surface of       the ocean      ($\mathcal{A} = \int_S ds$), 
     1837$\bar{\rho}$ the global mean  seawater (\textit{in situ}) density 
    18251838($\bar{\rho} = 1/\mathcal{V} \int_D \rho \,dv$), and 
    1826 $\bar{\eta}$ the global mean sea level  
     1839$\bar{\eta}$ the global mean sea level 
    18271840($\bar{\eta} = 1/\mathcal{A} \int_S \eta \,ds$). 
    18281841 
     
    18341847    \mathcal{V} &=  \mathcal{A}  \;\bar{\eta} 
    18351848  \end{split} 
    1836   \label{eq:MV_nBq} 
     1849  \label{eq:DIA_MV_nBq} 
    18371850\end{equation} 
    18381851 
     
    18421855  \frac{1}{e_3} \partial_t ( e_3\,\rho) + \nabla( \rho \, \textbf{U} ) 
    18431856  = \left. \frac{\textit{emp}}{e_3}\right|_\textit{surface} 
    1844   \label{eq:Co_nBq} 
     1857  \label{eq:DIA_Co_nBq} 
    18451858\end{equation} 
    18461859 
    18471860where $\rho$ is the \textit{in situ} density, and \textit{emp} the surface mass exchanges with the other media of 
    18481861the Earth system (atmosphere, sea-ice, land). 
    1849 Its global averaged leads to the total mass change  
     1862Its global averaged leads to the total mass change 
    18501863 
    18511864\begin{equation} 
    18521865  \partial_t \mathcal{M} = \mathcal{A} \;\overline{\textit{emp}} 
    1853   \label{eq:Mass_nBq} 
     1866  \label{eq:DIA_Mass_nBq} 
    18541867\end{equation} 
    18551868 
    18561869where $\overline{\textit{emp}} = \int_S \textit{emp}\,ds$ is the net mass flux through the ocean surface. 
    1857 Bringing \autoref{eq:Mass_nBq} and the time derivative of \autoref{eq:MV_nBq} together leads to 
     1870Bringing \autoref{eq:DIA_Mass_nBq} and the time derivative of \autoref{eq:DIA_MV_nBq} together leads to 
    18581871the evolution equation of the mean sea level 
    18591872 
     
    18611874  \partial_t \bar{\eta} = \frac{\overline{\textit{emp}}}{ \bar{\rho}} 
    18621875  - \frac{\mathcal{V}}{\mathcal{A}} \;\frac{\partial_t \bar{\rho} }{\bar{\rho}} 
    1863   \label{eq:ssh_nBq} 
     1876  \label{eq:DIA_ssh_nBq} 
    18641877\end{equation} 
    18651878 
    1866 The first term in equation \autoref{eq:ssh_nBq} alters sea level by adding or subtracting mass from the ocean.  
    1867 The second term arises from temporal changes in the global mean density; \ie from steric effects. 
     1879The first term in equation \autoref{eq:DIA_ssh_nBq} alters sea level by adding or subtracting mass from the ocean. 
     1880The second term arises from temporal changes in the global mean density; \ie\ from steric effects. 
    18681881 
    18691882In a Boussinesq fluid, $\rho$ is replaced by $\rho_o$ in all the equation except when $\rho$ appears multiplied by 
    1870 the gravity (\ie in the hydrostatic balance of the primitive Equations). 
    1871 In particular, the mass conservation equation, \autoref{eq:Co_nBq}, degenerates into the incompressibility equation: 
     1883the gravity (\ie\ in the hydrostatic balance of the primitive Equations). 
     1884In particular, the mass conservation equation, \autoref{eq:DIA_Co_nBq}, degenerates into the incompressibility equation: 
    18721885 
    18731886\[ 
    18741887  \frac{1}{e_3} \partial_t ( e_3 ) + \nabla( \textbf{U} ) = \left. \frac{\textit{emp}}{\rho_o \,e_3}\right|_ \textit{surface} 
    1875   % \label{eq:Co_Bq} 
     1888  % \label{eq:DIA_Co_Bq} 
    18761889\] 
    18771890 
     
    18801893\[ 
    18811894  \partial_t \mathcal{V} = \mathcal{A} \;\frac{\overline{\textit{emp}}}{\rho_o} 
    1882   % \label{eq:V_Bq} 
     1895  % \label{eq:DIA_V_Bq} 
    18831896\] 
    18841897 
     
    18881901the ocean surface, not by changes in mean mass of the ocean: the steric effect is missing in a Boussinesq fluid. 
    18891902 
    1890 Nevertheless, following \citep{Greatbatch_JGR94}, the steric effect on the volume can be diagnosed by 
    1891 considering the mass budget of the ocean.  
     1903Nevertheless, following \citep{greatbatch_JGR94}, the steric effect on the volume can be diagnosed by 
     1904considering the mass budget of the ocean. 
    18921905The apparent changes in $\mathcal{M}$, mass of the ocean, which are not induced by surface mass flux 
    18931906must be compensated by a spatially uniform change in the mean sea level due to expansion/contraction of the ocean 
    1894 \citep{Greatbatch_JGR94}. 
     1907\citep{greatbatch_JGR94}. 
    18951908In others words, the Boussinesq mass, $\mathcal{M}_o$, can be related to $\mathcal{M}$, 
    18961909the total mass of the ocean seen by the Boussinesq model, via the steric contribution to the sea level, 
     
    18991912\begin{equation} 
    19001913  \mathcal{M}_o = \mathcal{M} + \rho_o \,\eta_s \,\mathcal{A} 
    1901   \label{eq:M_Bq} 
     1914  \label{eq:DIA_M_Bq} 
    19021915\end{equation} 
    19031916 
     
    19051918is converted into a mean change in sea level. 
    19061919Introducing the total density anomaly, $\mathcal{D}= \int_D d_a \,dv$, 
    1907 where $d_a = (\rho -\rho_o ) / \rho_o$ is the density anomaly used in \NEMO (cf. \autoref{subsec:TRA_eos}) 
    1908 in \autoref{eq:M_Bq} leads to a very simple form for the steric height: 
     1920where $d_a = (\rho -\rho_o ) / \rho_o$ is the density anomaly used in \NEMO\ (cf. \autoref{subsec:TRA_eos}) 
     1921in \autoref{eq:DIA_M_Bq} leads to a very simple form for the steric height: 
    19091922 
    19101923\begin{equation} 
    19111924  \eta_s = - \frac{1}{\mathcal{A}} \mathcal{D} 
    1912   \label{eq:steric_Bq} 
     1925  \label{eq:DIA_steric_Bq} 
    19131926\end{equation} 
    19141927 
    19151928The above formulation of the steric height of a Boussinesq ocean requires four remarks. 
    19161929First, one can be tempted to define $\rho_o$ as the initial value of $\mathcal{M}/\mathcal{V}$, 
    1917 \ie set $\mathcal{D}_{t=0}=0$, so that the initial steric height is zero. 
     1930\ie\ set $\mathcal{D}_{t=0}=0$, so that the initial steric height is zero. 
    19181931We do not recommend that. 
    19191932Indeed, in this case $\rho_o$ depends on the initial state of the ocean. 
     
    19241937This value is a sensible choice for the reference density used in a Boussinesq ocean climate model since, 
    19251938with the exception of only a small percentage of the ocean, density in the World Ocean varies by no more than 
    1926 2$\%$ from this value (\cite{Gill1982}, page 47). 
     19392$\%$ from this value (\cite{gill_bk82}, page 47). 
    19271940 
    19281941Second, we have assumed here that the total ocean surface, $\mathcal{A}$, 
    19291942does not change when the sea level is changing as it is the case in all global ocean GCMs 
    19301943(wetting and drying of grid point is not allowed). 
    1931    
    1932 Third, the discretisation of \autoref{eq:steric_Bq} depends on the type of free surface which is considered. 
    1933 In the non linear free surface case, \ie \key{vvl} defined, it is given by 
     1944 
     1945Third, the discretisation of \autoref{eq:DIA_steric_Bq} depends on the type of free surface which is considered. 
     1946In the non linear free surface case, \ie\ \np{ln\_linssh}\forcode{=.true.}, it is given by 
    19341947 
    19351948\[ 
    19361949  \eta_s = - \frac{ \sum_{i,\,j,\,k} d_a\; e_{1t} e_{2t} e_{3t} }{ \sum_{i,\,j,\,k}       e_{1t} e_{2t} e_{3t} } 
    1937   % \label{eq:discrete_steric_Bq_nfs} 
     1950  % \label{eq:DIA_discrete_steric_Bq_nfs} 
    19381951\] 
    19391952 
     
    19451958  \eta_s = - \frac{ \sum_{i,\,j,\,k} d_a\; e_{1t}e_{2t}e_{3t} + \sum_{i,\,j} d_a\; e_{1t}e_{2t} \eta } 
    19461959                  { \sum_{i,\,j,\,k}       e_{1t}e_{2t}e_{3t} + \sum_{i,\,j}       e_{1t}e_{2t} \eta } 
    1947   % \label{eq:discrete_steric_Bq_fs} 
     1960  % \label{eq:DIA_discrete_steric_Bq_fs} 
    19481961\] 
    19491962 
     
    19541967so that there are no associated ocean currents. 
    19551968Hence, the dynamically relevant sea level is the effective sea level, 
    1956 \ie the sea level as if sea ice (and snow) were converted to liquid seawater \citep{Campin_al_OM08}. 
    1957 However, in the current version of \NEMO the sea-ice is levitating above the ocean without mass exchanges between 
     1969\ie\ the sea level as if sea ice (and snow) were converted to liquid seawater \citep{campin.marshall.ea_OM08}. 
     1970However, in the current version of \NEMO\ the sea-ice is levitating above the ocean without mass exchanges between 
    19581971ice and ocean. 
    19591972Therefore the model effective sea level is always given by $\eta + \eta_s$, whether or not there is sea ice present. 
     
    19651978\[ 
    19661979  \eta_s = - \frac{1}{\mathcal{A}} \int_D d_a(T,S_o,p_o) \,dv 
    1967   % \label{eq:thermosteric_Bq} 
     1980  % \label{eq:DIA_thermosteric_Bq} 
    19681981\] 
    19691982 
    19701983where $S_o$ and $p_o$ are the initial salinity and pressure, respectively. 
    19711984 
    1972 Both steric and thermosteric sea level are computed in \mdl{diaar5} which needs the \key{diaar5} defined to 
    1973 be called. 
     1985Both steric and thermosteric sea level are computed in \mdl{diaar5}. 
    19741986 
    19751987% ------------------------------------------------------------------------------------------------------------- 
    19761988%       Other Diagnostics 
    19771989% ------------------------------------------------------------------------------------------------------------- 
    1978 \section{Other diagnostics (\protect\key{diahth}, \protect\key{diaar5})} 
     1990\section[Other diagnostics] 
     1991{Other diagnostics} 
    19791992\label{sec:DIA_diag_others} 
    19801993 
     
    19821995The available ready-to-add diagnostics modules can be found in directory DIA. 
    19831996 
    1984 \subsection{Depth of various quantities (\protect\mdl{diahth})} 
     1997\subsection[Depth of various quantities (\textit{diahth.F90})] 
     1998{Depth of various quantities (\protect\mdl{diahth})} 
    19851999 
    19862000Among the available diagnostics the following ones are obtained when defining the \key{diahth} CPP key: 
    19872001 
    1988 - the mixed layer depth (based on a density criterion \citep{de_Boyer_Montegut_al_JGR04}) (\mdl{diahth}) 
     2002- the mixed layer depth (based on a density criterion \citep{de-boyer-montegut.madec.ea_JGR04}) (\mdl{diahth}) 
    19892003 
    19902004- the turbocline depth (based on a turbulent mixing coefficient criterion) (\mdl{diahth}) 
     
    19942008- the depth of the thermocline (maximum of the vertical temperature gradient) (\mdl{diahth}) 
    19952009 
     2010 
     2011%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     2012\begin{figure}[!t] 
     2013  \centering 
     2014  \includegraphics[width=\textwidth]{Fig_mask_subasins} 
     2015  \caption[Decomposition of the World Ocean to compute transports as well as 
     2016  the meridional stream-function]{ 
     2017    Decomposition of the World Ocean (here ORCA2) into sub-basin used in to 
     2018    compute the heat and salt transports as well as the meridional stream-function: 
     2019    Atlantic basin (red), Pacific basin (green), 
     2020    Indian basin (blue), Indo-Pacific basin (blue+green). 
     2021    Note that semi-enclosed seas (Red, Med and Baltic seas) as well as 
     2022    Hudson Bay are removed from the sub-basins. 
     2023    Note also that the Arctic Ocean has been split into Atlantic and 
     2024    Pacific basins along the North fold line. 
     2025  } 
     2026  \label{fig:DIA_mask_subasins} 
     2027\end{figure} 
     2028%>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     2029 
    19962030% ----------------------------------------------------------- 
    1997 %     Poleward heat and salt transports 
     2031%       CMIP specific diagnostics 
    19982032% ----------------------------------------------------------- 
    1999  
    2000 \subsection{Poleward heat and salt transports (\protect\mdl{diaptr})} 
    2001  
    2002 %------------------------------------------namptr----------------------------------------- 
    2003  
    2004 \nlst{namptr}  
    2005 %----------------------------------------------------------------------------------------- 
    2006  
    2007 The poleward heat and salt transports, their advective and diffusive component, 
    2008 and the meriodional stream function can be computed on-line in \mdl{diaptr} \np{ln\_diaptr} to true 
    2009 (see the \textit{\ngn{namptr} } namelist below). 
    2010 When \np{ln\_subbas}\forcode{ = .true.}, transports and stream function are computed for the Atlantic, Indian, 
     2033\subsection[CMIP specific diagnostics (\textit{diaar5.F90}, \textit{diaptr.F90})] 
     2034{CMIP specific diagnostics (\protect\mdl{diaar5})} 
     2035 
     2036A series of diagnostics has been added in the \mdl{diaar5} and \mdl{diaptr}. 
     2037In \mdl{diaar5} they correspond to outputs that are required for AR5 simulations (CMIP5) 
     2038(see also \autoref{sec:DIA_steric} for one of them). 
     2039The module \mdl{diaar5} is active when one of the following outputs is required : 
     2040global total volume (voltot), global mean ssh (sshtot), global total mass (masstot), global mean temperature (temptot), 
     2041global mean ssh steric (sshsteric), global mean ssh thermosteric (sshthster), global mean salinity (saltot), 
     2042sea water pressure at sea floor (botpres), dynamic sea surface height (sshdyn). 
     2043 
     2044In \mdl{diaptr} when \np{ln\_diaptr}\forcode{=.true.} 
     2045(see the \nam{ptr} namelist below) can be computed on-line the poleward heat and salt transports, 
     2046their advective and diffusive component, and the meriodional stream function . 
     2047When \np{ln\_subbas}\forcode{=.true.}, transports and stream function are computed for the Atlantic, Indian, 
    20112048Pacific and Indo-Pacific Oceans (defined north of 30\deg{S}) as well as for the World Ocean. 
    20122049The sub-basin decomposition requires an input file (\ifile{subbasins}) which contains three 2D mask arrays, 
    2013 the Indo-Pacific mask been deduced from the sum of the Indian and Pacific mask (\autoref{fig:mask_subasins}). 
    2014  
    2015 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    2016 \begin{figure}[!t] 
    2017   \begin{center} 
    2018     \includegraphics[width=1.0\textwidth]{Fig_mask_subasins} 
    2019     \caption{ 
    2020       \protect\label{fig:mask_subasins} 
    2021       Decomposition of the World Ocean (here ORCA2) into sub-basin used in to 
    2022       compute the heat and salt transports as well as the meridional stream-function: 
    2023       Atlantic basin (red), Pacific basin (green), Indian basin (bleue), Indo-Pacific basin (bleue+green). 
    2024       Note that semi-enclosed seas (Red, Med and Baltic seas) as well as Hudson Bay are removed from the sub-basins. 
    2025       Note also that the Arctic Ocean has been split into Atlantic and Pacific basins along the North fold line. 
    2026     } 
    2027   \end{center} 
    2028 \end{figure}   
    2029 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     2050the Indo-Pacific mask been deduced from the sum of the Indian and Pacific mask (\autoref{fig:DIA_mask_subasins}). 
     2051 
     2052%------------------------------------------namptr----------------------------------------- 
     2053 
     2054\begin{listing} 
     2055  \nlst{namptr} 
     2056  \caption{\texttt{namptr}} 
     2057  \label{lst:namptr} 
     2058\end{listing} 
     2059%----------------------------------------------------------------------------------------- 
    20302060 
    20312061% ----------------------------------------------------------- 
    2032 %       CMIP specific diagnostics  
    2033 % ----------------------------------------------------------- 
    2034 \subsection{CMIP specific diagnostics (\protect\mdl{diaar5})} 
    2035  
    2036 A series of diagnostics has been added in the \mdl{diaar5}. 
    2037 They corresponds to outputs that are required for AR5 simulations (CMIP5) 
    2038 (see also \autoref{sec:DIA_steric} for one of them). 
    2039 Activating those outputs requires to define the \key{diaar5} CPP key. 
    2040  
    2041 % ----------------------------------------------------------- 
    2042 %       25 hour mean and hourly Surface, Mid and Bed  
     2062%       25 hour mean and hourly Surface, Mid and Bed 
    20432063% ----------------------------------------------------------- 
    20442064\subsection{25 hour mean output for tidal models} 
     
    20462066%------------------------------------------nam_dia25h------------------------------------- 
    20472067 
    2048 \nlst{nam_dia25h} 
     2068\begin{listing} 
     2069  \nlst{nam_dia25h} 
     2070  \caption{\texttt{nam\_dia25h}} 
     2071  \label{lst:nam_dia25h} 
     2072\end{listing} 
    20492073%----------------------------------------------------------------------------------------- 
    20502074 
     
    20612085%------------------------------------------nam_diatmb----------------------------------------------------- 
    20622086 
    2063 \nlst{nam_diatmb} 
     2087\begin{listing} 
     2088  \nlst{nam_diatmb} 
     2089  \caption{\texttt{nam\_diatmb}} 
     2090  \label{lst:nam_diatmb} 
     2091\end{listing} 
    20642092%---------------------------------------------------------------------------------------------------------- 
    20652093 
     
    20802108\[ 
    20812109  C_u = |u|\frac{\rdt}{e_{1u}}, \quad C_v = |v|\frac{\rdt}{e_{2v}}, \quad C_w = |w|\frac{\rdt}{e_{3w}} 
    2082   % \label{eq:CFL} 
     2110  % \label{eq:DIA_CFL} 
    20832111\] 
    20842112 
     
    20892117Values greater than 1 indicate that information is propagated across more than one grid cell in a single time step. 
    20902118 
    2091 The variables can be activated by setting the \np{nn\_diacfl} namelist parameter to 1 in the \ngn{namctl} namelist. 
     2119The variables can be activated by setting the \np{nn\_diacfl} namelist parameter to 1 in the \nam{ctl} namelist. 
    20922120The diagnostics will be written out to an ascii file named cfl\_diagnostics.ascii. 
    20932121In this file the maximum value of $C_u$, $C_v$, and $C_w$ are printed at each timestep along with the coordinates of 
     
    20952123At 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 
    20962124with the coordinates of each. 
    2097 The maximum values from the run are also copied to the ocean.output file.  
     2125The maximum values from the run are also copied to the ocean.output file. 
    20982126 
    20992127% ================================================================ 
Note: See TracChangeset for help on using the changeset viewer.