Changeset 11563
- Timestamp:
- 2019-09-18T15:36:42+02:00 (4 years ago)
- Location:
- NEMO/trunk/doc/latex/global
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/doc/latex/global/annex_D.tex
r11299 r11563 31 31 - flexible. 32 32 33 To satisfy part of these aims, \NEMO is written with a coding standard which is close to the ECMWF rules,33 To satisfy part of these aims, \NEMO\ is written with a coding standard which is close to the ECMWF rules, 34 34 named DOCTOR \citep{gibson_rpt86}. 35 35 These rules present some advantages like: -
NEMO/trunk/doc/latex/global/coding_rules.tex
r11543 r11563 23 23 \end{itemize} 24 24 25 To satisfy part of these aims, \NEMO is written with a coding standard which is close to the ECMWF rules,25 To satisfy part of these aims, \NEMO\ is written with a coding standard which is close to the ECMWF rules, 26 26 named DOCTOR \citep{gibson_rpt86}. 27 27 These rules present some advantages like: … … 36 36 \section{Introduction} 37 37 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 of38 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 40 40 all the developers, including the validation of their developments, and 41 eventually the implementation of these developments within the \NEMO platform.41 eventually the implementation of these developments within the \NEMO\ platform. 42 42 43 43 A first approach of these rules can be found in the code in \path{./src/OCE/module_example} where … … 48 48 \footnote {\href{http://www.cesm.ucar.edu/working_groups/Software/dev_guide/dev_guide/node7.html}{UCAR conventions}}, 49 49 the previous version of this document (``FORTRAN coding standard in the OPA System'') and 50 the expertise of the \NEMO System Team.50 the expertise of the \NEMO\ System Team. 51 51 After a general overview below, this document will describe: 52 52 … … 60 60 \section{Overview and general conventions} 61 61 62 \NEMO has 3 major components: ocean dynamics (\path{./src/OCE}), sea-ice (\path{./src/ICE}) and62 \NEMO\ has 3 major components: ocean dynamics (\path{./src/OCE}), sea-ice (\path{./src/ICE}) and 63 63 marine biogeochemistry (\path{./src/MBG}). 64 64 %, linear-tangent and adjoint of the dynamics ($TAM$) each of them corresponding to a directory. … … 143 143 144 144 All 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. 146 146 147 147 \subsection{Comments} … … 217 217 \subsection{F90 Standard} 218 218 219 \NEMO software adheres to the \fninety language standard and does not rely on any specific language or219 \NEMO\ software adheres to the \fninety language standard and does not rely on any specific language or 220 220 vendor extensions. 221 221 … … 269 269 For example, zdftke, where ``zdf'' stands for vertical diffusion, and ``tke'' for turbulent kinetic energy. \\ 270 270 Note 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.271 The use of common blocks is deprecated in \fortran 90 and their use in \NEMO\ is strongly discouraged. 272 272 Modules are a better way to declare static data. 273 273 Among the advantages of modules is the ability to freely mix data of various types, and … … 389 389 Is to be used rather than the \#ifdef abbreviate form since it may have conflicts with some Unix scripts. 390 390 391 Tests on cpp keys included in \NEMO at compilation step:391 Tests on cpp keys included in \NEMO\ at compilation step: 392 392 393 393 \begin{itemize} … … 403 403 \subsection{Configurations} 404 404 405 The configuration defines the domain and the grid on which \NEMO is running.405 The configuration defines the domain and the grid on which \NEMO\ is running. 406 406 It may be useful to associate a CPP key and some variables to a given configuration, although 407 407 the part of the code changed under each of those keys should be minimized. … … 488 488 \subsection{Headers} 489 489 490 Prologues are not used in \NEMO for now, although it may become an interesting tool in combination with490 Prologues are not used in \NEMO\ for now, although it may become an interesting tool in combination with 491 491 ProTeX auto documentation script in the future. 492 492 Rules to code the headers and layout of a module or a routine are illustrated in the example module available with … … 564 564 \subsection{Bounds checking} 565 565 566 \NEMO is able to run when an array bounds checking option is enabled566 \NEMO\ is able to run when an array bounds checking option is enabled 567 567 (provided the cpp key \texttt{key\_vectopt\_loop} is not defined). \\ 568 568 Thus, constructs of the following form are disallowed: … … 607 607 the \texttt{stat=<integer\ variable>} optional argument. \\ 608 608 609 In addition to arrays contained within modules, many routines in \NEMO require local, ``workspace'' arrays to609 In addition to arrays contained within modules, many routines in \NEMO\ require local, ``workspace'' arrays to 610 610 hold the intermediate results of calculations. 611 611 In previous versions of \NEMO, these arrays were declared in such a way as to be automatically allocated on … … 698 698 It is then associated with a sub-array of \texttt{wrk\_3d\_5} once the call to 699 699 \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 of700 Note that in F95 (to which \NEMO\ conforms) it is not possible for either the upper or lower array bounds of 701 701 the pointer object to differ from those of the target array. \\ 702 702 … … 711 711 This should enable the developer to choose alternatives for use in the subroutine being worked on. \\ 712 712 713 When compiling \NEMO for production runs,713 When compiling \NEMO\ for production runs, 714 714 the calls to {\texttt{wrk\_in\_use()} / \texttt{wrk\_not\_released()} can be reduced to stubs that just 715 715 return \forcode{.false.} by setting the cpp key \texttt{key\_no\_workspace\_check}. … … 733 733 \subsection{Parallelism using MPI} 734 734 735 \NEMO is written in order to be able to run on one processor, or on one or more using MPI735 \NEMO\ is written in order to be able to run on one processor, or on one or more using MPI 736 736 ($i.e.$ activating the cpp key $key\_mpp\_mpi$). 737 The domain decomposition divides the global domain in cubes (see \NEMO reference manual).737 The domain decomposition divides the global domain in cubes (see \NEMO\ reference manual). 738 738 Whilst coding a new development, the MPI compatibility has to be taken in account 739 739 (see \path{./src/LBC/lib_mpp.F90}) and should be tested. -
NEMO/trunk/doc/latex/global/document.tex
r11543 r11563 11 11 12 12 %% Document layout 13 \documentclass[fontsize = 10pt, 14 twoside = semi, abstract = on, 15 open = right]{scrreprt} 13 \documentclass[fontsize = 10pt, twoside, abstract]{scrreprt} 16 14 17 15 %% Load configurations … … 46 44 \input{../../global/info_page} 47 45 48 \listoffigures \listoftables %\listoflistings %% \listoflistings not working 46 \listoffigures 47 \listoflistings 48 \listoftables 49 49 50 50 \clearpage -
NEMO/trunk/doc/latex/global/frontpage.tex
r11515 r11563 1 1 2 2 \begin{titlepage} 3 \newgeometry{hmargin = 1.5cm, vmargin = 3cm}3 % \newgeometry{hmargin = 1.5cm, vmargin = 3cm} 4 4 \setlength{\parindent}{0pt} 5 5 -
NEMO/trunk/doc/latex/global/highlighting.tex
r11515 r11563 2 2 %% ============================================================================== 3 3 4 \usepackage[outputdir=../build ]{minted}4 \usepackage[outputdir=../build, section]{minted} 5 5 6 6 %% Global highlighting style … … 22 22 23 23 %% File 24 \newmintedfile[forfile]{fortran}{} % \forfile{../namelists/nam...}24 \newmintedfile[forfile]{fortran}{} 25 25 26 26 %% Inline -
NEMO/trunk/doc/latex/global/indexes.tex
r11433 r11563 14 14 \indexsetup{toclevel=section, othercode=\small} 15 15 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 } ), 19 columns=3] 20 \makeindex[intoc=true, name=blocks , title=Namelist blocks ({\em nam } prefix), 21 columns=3] 22 \makeindex[intoc=true, name=parameters , title=Namelist parameters ({\em [cdlnr]n\_} ), 23 columns=3] 24 \makeindex[intoc=true, name=subroutines, title=Subroutines 25 ] -
NEMO/trunk/doc/latex/global/new_cmds.tex
r11515 r11563 3 3 4 4 %% 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}} 7 6 \newcommand{\pindex}{\printindex} 8 7 … … 60 59 } 61 60 62 %% Macro for link to orcid profile63 \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}} 64 63 65 %% Workaround for issue with\listoffigures64 %% Workaround for \listoffigures 66 65 \DeclareRobustCommand{\triad}[6][]{\ensuremath{ {}_{#2}^{#3} { \mathbb{#4}_{#1} }_{#5}^{\,#6} }} 67 66 67 %% New command for ToC 68 68 \newcommand{\chaptertoc}[1][Table of contents]{% 69 69 \thispagestyle{empty} -
NEMO/trunk/doc/latex/global/styles.tex
r11515 r11563 18 18 %% Caption 19 19 \captionsetup{font = footnotesize, justification = justified} 20 21 %% Footnote 22 \renewcommand{\thefootnote}{\fnsymbol{footnote}} 20 23 21 24 %% Bibliography
Note: See TracChangeset
for help on using the changeset viewer.