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 11563 for NEMO/trunk – NEMO

Changeset 11563 for NEMO/trunk


Ignore:
Timestamp:
2019-09-18T15:36:42+02:00 (5 years ago)
Author:
nicolasmartin
Message:

Miscellaneous changes

Location:
NEMO/trunk/doc/latex/global
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/doc/latex/global/annex_D.tex

    r11299 r11563  
    3131- flexible. 
    3232 
    33 To satisfy part of these aims, \NEMO is written with a coding standard which is close to the ECMWF rules, 
     33To satisfy part of these aims, \NEMO\ is written with a coding standard which is close to the ECMWF rules, 
    3434named DOCTOR \citep{gibson_rpt86}.  
    3535These rules present some advantages like: 
  • NEMO/trunk/doc/latex/global/coding_rules.tex

    r11543 r11563  
    2323\end{itemize} 
    2424 
    25 To satisfy part of these aims, \NEMO is written with a coding standard which is close to the ECMWF rules, 
     25To satisfy part of these aims, \NEMO\ is written with a coding standard which is close to the ECMWF rules, 
    2626named DOCTOR \citep{gibson_rpt86}. 
    2727These rules present some advantages like: 
     
    3636\section{Introduction} 
    3737 
    38 This document describes conventions used in \NEMO coding and suggested for its development. 
    39 The objectives are to offer a guide to all readers of the \NEMO code, and to facilitate the work of 
     38This document describes conventions used in \NEMO\ coding and suggested for its development. 
     39The objectives are to offer a guide to all readers of the \NEMO\ code, and to facilitate the work of 
    4040all the developers, including the validation of their developments, and 
    41 eventually the implementation of these developments within the \NEMO platform. 
     41eventually the implementation of these developments within the \NEMO\ platform. 
    4242 
    4343A first approach of these rules can be found in the code in \path{./src/OCE/module_example} where 
     
    4848\footnote {\href{http://www.cesm.ucar.edu/working_groups/Software/dev_guide/dev_guide/node7.html}{UCAR conventions}}, 
    4949the previous version of this document (``FORTRAN coding standard in the OPA System'') and 
    50 the expertise of the \NEMO System Team. 
     50the expertise of the \NEMO\ System Team. 
    5151After a general overview below, this document will describe: 
    5252 
     
    6060\section{Overview and general conventions} 
    6161 
    62 \NEMO has 3 major components: ocean dynamics (\path{./src/OCE}), sea-ice (\path{./src/ICE}) and 
     62\NEMO\ has 3 major components: ocean dynamics (\path{./src/OCE}), sea-ice (\path{./src/ICE}) and 
    6363marine biogeochemistry (\path{./src/MBG}). 
    6464%, linear-tangent and adjoint of the dynamics ($TAM$) each of them corresponding to a directory. 
     
    143143 
    144144All FORTRAN keywords are in capital: \forcode{DIMENSION}, \forcode{WRITE}, \forcode{DO}, \forcode{END DO}, 
    145 \forcode{NAMELIST}, ... All other parts of the \NEMO code will be written in lower case. 
     145\forcode{NAMELIST}, ... All other parts of the \NEMO\ code will be written in lower case. 
    146146 
    147147\subsection{Comments} 
     
    217217\subsection{F90 Standard} 
    218218 
    219 \NEMO software adheres to the \fninety language standard and does not rely on any specific language or 
     219\NEMO\ software adheres to the \fninety language standard and does not rely on any specific language or 
    220220vendor extensions. 
    221221 
     
    269269For example, zdftke, where ``zdf'' stands for vertical diffusion, and ``tke'' for turbulent kinetic energy. \\ 
    270270Note that by implication multiple modules are not allowed in a single file. 
    271 The use of common blocks is deprecated in \fortran 90 and their use in \NEMO is strongly discouraged. 
     271The use of common blocks is deprecated in \fortran 90 and their use in \NEMO\ is strongly discouraged. 
    272272Modules are a better way to declare static data. 
    273273Among the advantages of modules is the ability to freely mix data of various types, and 
     
    389389Is to be used rather than the \#ifdef abbreviate form since it may have conflicts with some Unix scripts. 
    390390 
    391 Tests on cpp keys included in \NEMO at compilation step: 
     391Tests on cpp keys included in \NEMO\ at compilation step: 
    392392 
    393393\begin{itemize} 
     
    403403\subsection{Configurations} 
    404404 
    405 The configuration defines the domain and the grid on which \NEMO is running. 
     405The configuration defines the domain and the grid on which \NEMO\ is running. 
    406406It may be useful to associate a CPP key and some variables to a given configuration, although 
    407407the part of the code changed under each of those keys should be minimized. 
     
    488488\subsection{Headers} 
    489489 
    490 Prologues are not used in \NEMO for now, although it may become an interesting tool in combination with 
     490Prologues are not used in \NEMO\ for now, although it may become an interesting tool in combination with 
    491491ProTeX auto documentation script in the future. 
    492492Rules to code the headers and layout of a module or a routine are illustrated in the example module available with 
     
    564564\subsection{Bounds checking} 
    565565 
    566 \NEMO is able to run when an array bounds checking option is enabled 
     566\NEMO\ is able to run when an array bounds checking option is enabled 
    567567(provided the cpp key \texttt{key\_vectopt\_loop} is not defined). \\ 
    568568Thus, constructs of the following form are disallowed: 
     
    607607the \texttt{stat=<integer\ variable>} optional argument. \\ 
    608608 
    609 In addition to arrays contained within modules, many routines in \NEMO require local, ``workspace'' arrays to 
     609In addition to arrays contained within modules, many routines in \NEMO\ require local, ``workspace'' arrays to 
    610610hold the intermediate results of calculations. 
    611611In previous versions of \NEMO, these arrays were declared in such a way as to be automatically allocated on 
     
    698698It is then associated with a sub-array of \texttt{wrk\_3d\_5} once the call to 
    699699\texttt{wrk\_in\_use()} has completed successfully. 
    700 Note that in F95 (to which \NEMO conforms) it is not possible for either the upper or lower array bounds of 
     700Note that in F95 (to which \NEMO\ conforms) it is not possible for either the upper or lower array bounds of 
    701701the pointer object to differ from those of the target array. \\ 
    702702 
     
    711711This should enable the developer to choose alternatives for use in the subroutine being worked on. \\ 
    712712 
    713 When compiling \NEMO for production runs, 
     713When compiling \NEMO\ for production runs, 
    714714the calls to {\texttt{wrk\_in\_use()} / \texttt{wrk\_not\_released()} can be reduced to stubs that just 
    715715return \forcode{.false.} by setting the cpp key \texttt{key\_no\_workspace\_check}. 
     
    733733\subsection{Parallelism using MPI} 
    734734 
    735 \NEMO is written in order to be able to run on one processor, or on one or more using MPI 
     735\NEMO\ is written in order to be able to run on one processor, or on one or more using MPI 
    736736($i.e.$ activating the cpp key $key\_mpp\_mpi$). 
    737 The domain decomposition divides the global domain in cubes (see \NEMO reference manual). 
     737The domain decomposition divides the global domain in cubes (see \NEMO\ reference manual). 
    738738Whilst coding a new development, the MPI compatibility has to be taken in account 
    739739(see \path{./src/LBC/lib_mpp.F90}) and should be tested. 
  • NEMO/trunk/doc/latex/global/document.tex

    r11543 r11563  
    1111 
    1212%% Document layout 
    13 \documentclass[fontsize = 10pt, 
    14 twoside = semi, abstract = on, 
    15 open = right]{scrreprt} 
     13\documentclass[fontsize = 10pt, twoside, abstract]{scrreprt} 
    1614 
    1715%% Load configurations 
     
    4644\input{../../global/info_page} 
    4745 
    48 \listoffigures \listoftables %\listoflistings   %% \listoflistings not working 
     46\listoffigures 
     47\listoflistings 
     48\listoftables 
    4949 
    5050\clearpage 
  • NEMO/trunk/doc/latex/global/frontpage.tex

    r11515 r11563  
    11 
    22\begin{titlepage} 
    3   \newgeometry{hmargin = 1.5cm, vmargin = 3cm} 
     3%  \newgeometry{hmargin = 1.5cm, vmargin = 3cm} 
    44  \setlength{\parindent}{0pt} 
    55 
  • NEMO/trunk/doc/latex/global/highlighting.tex

    r11515 r11563  
    22%% ============================================================================== 
    33 
    4 \usepackage[outputdir=../build]{minted} 
     4\usepackage[outputdir=../build, section]{minted} 
    55 
    66%% Global highlighting style 
     
    2222 
    2323%% File 
    24 \newmintedfile[forfile]{fortran}{}   % \forfile{../namelists/nam...} 
     24\newmintedfile[forfile]{fortran}{} 
    2525 
    2626%% Inline 
  • NEMO/trunk/doc/latex/global/indexes.tex

    r11433 r11563  
    1414\indexsetup{toclevel=section, othercode=\small} 
    1515 
    16 \makeindex[intoc=true, name=keys       , title=CPP keys            ({\em key\_     } prefix)           ] 
    17 \makeindex[intoc=true, name=modules    , title=\fortran modules                                        ] 
    18 \makeindex[intoc=true, name=blocks     , title=Namelist blocks     ({\em nam       } prefix), columns=3] 
    19 \makeindex[intoc=true, name=parameters , title=Namelist parameters ({\em [cdlnr]n\_}       ), columns=3] 
    20 \makeindex[intoc=true, name=subroutines, title=Subroutines                                             ] 
     16\makeindex[intoc=true, name=keys       , title=CPP keys            ({\em key\_     } prefix) 
     17         ] 
     18\makeindex[intoc=true, name=modules    , title=\fortran\ modules   ({\em *.F90     }       ), 
     19columns=3] 
     20\makeindex[intoc=true, name=blocks     , title=Namelist blocks     ({\em nam       } prefix), 
     21columns=3] 
     22\makeindex[intoc=true, name=parameters , title=Namelist parameters ({\em [cdlnr]n\_}       ), 
     23columns=3] 
     24\makeindex[intoc=true, name=subroutines, title=Subroutines 
     25         ] 
  • NEMO/trunk/doc/latex/global/new_cmds.tex

    r11515 r11563  
    33 
    44%% Include references and index for compilation of single subfile 
    5 %\newcommand{\mtoc}{\minitoc} 
    6 \newcommand{\biblio}{ \bibliography{../main/bibliography} } 
     5\newcommand{\biblio}{\bibliography{../main/bibliography}} 
    76\newcommand{\pindex}{\printindex} 
    87 
     
    6059} 
    6160 
    62 %% Macro for link to orcid profile 
    63 \newcommand{\orcid}[1]{ \href{http://orcid.org/#1}{\textcolor{orcidcolor} \aiOrcidSquare} } 
     61%% Link to orcid profile 
     62\newcommand{\orcid}[1]{\href{http://orcid.org/#1}{\textcolor{orcidcolor}\aiOrcidSquare}} 
    6463 
    65 %% Workaround for issue with \listoffigures 
     64%% Workaround for \listoffigures 
    6665\DeclareRobustCommand{\triad}[6][]{\ensuremath{ {}_{#2}^{#3} { \mathbb{#4}_{#1} }_{#5}^{\,#6} }} 
    6766 
     67%% New command for ToC 
    6868\newcommand{\chaptertoc}[1][Table of contents]{% 
    6969  \thispagestyle{empty} 
  • NEMO/trunk/doc/latex/global/styles.tex

    r11515 r11563  
    1818%% Caption 
    1919\captionsetup{font = footnotesize, justification = justified} 
     20 
     21%% Footnote 
     22\renewcommand{\thefootnote}{\fnsymbol{footnote}} 
    2023 
    2124%% Bibliography 
Note: See TracChangeset for help on using the changeset viewer.