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 11799 for NEMO/branches/2019/dev_r11470_HPC_12_mpi3/doc/latex/NEMO/subfiles/chap_time_domain.tex – NEMO

Ignore:
Timestamp:
2019-10-25T16:27:34+02:00 (5 years ago)
Author:
mocavero
Message:

Update the branch to v4.0.1 of the trunk

Location:
NEMO/branches/2019/dev_r11470_HPC_12_mpi3/doc
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r11470_HPC_12_mpi3/doc

    • Property svn:externals set to
      ^/utils/badges badges
      ^/utils/logos logos
  • NEMO/branches/2019/dev_r11470_HPC_12_mpi3/doc/latex

    • Property svn:ignore deleted
  • NEMO/branches/2019/dev_r11470_HPC_12_mpi3/doc/latex/NEMO

    • Property svn:externals set to
      ^/utils/figures/NEMO figures
  • NEMO/branches/2019/dev_r11470_HPC_12_mpi3/doc/latex/NEMO/subfiles

    • Property svn:ignore
      •  

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

    r11435 r11799  
    33\begin{document} 
    44 
    5 % ================================================================ 
    6 % Chapter 2 ——— Time Domain (step.F90) 
    7 % ================================================================ 
    8 \chapter{Time Domain (STP)} 
    9 \label{chap:STP} 
     5\chapter{Time Domain} 
     6\label{chap:TD} 
     7 
     8\thispagestyle{plain} 
     9 
    1010\chaptertoc 
    1111 
     12\paragraph{Changes record} ~\\ 
     13 
     14{\footnotesize 
     15  \begin{tabularx}{0.5\textwidth}{l||X|X} 
     16    Release          & Author(s)                                       & 
     17    Modifications                                                      \\ 
     18    \hline 
     19    {\em        4.0} & {\em J\'{e}r\^{o}me Chanut \newline Tim Graham} & 
     20    {\em Review \newline Update                                      } \\ 
     21    {\em        3.6} & {\em Christian \'{E}th\'{e}                   } & 
     22    {\em Update                                                      } \\ 
     23    {\em $\leq$ 3.4} & {\em Gurvan Madec                             } & 
     24    {\em First version                                               } \\ 
     25  \end{tabularx} 
     26} 
     27 
     28\clearpage 
     29 
    1230% Missing things: 
    13 %  - daymod: definition of the time domain (nit000, nitend and the calendar) 
    14  
    15 \gmcomment{STEVEN :maybe a picture of the directory structure in the introduction which could be referred to here, 
    16   would help  ==> to be added} 
    17 %%%% 
    18  
    19 \newpage 
    20  
    21 Having defined the continuous equations in \autoref{chap:PE}, we need now to choose a time discretization, 
     31% - daymod: definition of the time domain (nit000, nitend and the calendar) 
     32 
     33\gmcomment{STEVEN :maybe a picture of the directory structure in the introduction which 
     34could be referred to here, would help  ==> to be added} 
     35 
     36Having defined the continuous equations in \autoref{chap:MB}, 
     37we need now to choose a time discretization, 
    2238a key feature of an ocean model as it exerts a strong influence on the structure of the computer code 
    2339(\ie\ on its flowchart). 
    24 In the present chapter, we provide a general description of the \NEMO\  time stepping strategy and 
     40In the present chapter, we provide a general description of the \NEMO\ time stepping strategy and 
    2541the consequences for the order in which the equations are solved. 
    2642 
    27 % ================================================================ 
    28 % Time Discretisation 
    29 % ================================================================ 
     43%% ================================================================================================= 
    3044\section{Time stepping environment} 
    31 \label{sec:STP_environment} 
     45\label{sec:TD_environment} 
    3246 
    3347The time stepping used in \NEMO\ is a three level scheme that can be represented as follows: 
    3448\begin{equation} 
    35   \label{eq:STP} 
     49  \label{eq:TD} 
    3650  x^{t + \rdt} = x^{t - \rdt} + 2 \, \rdt \ \text{RHS}_x^{t - \rdt, \, t, \, t + \rdt} 
    3751\end{equation} 
    3852where $x$ stands for $u$, $v$, $T$ or $S$; 
    39 RHS is the Right-Hand-Side of the corresponding time evolution equation; 
     53RHS is the \textbf{R}ight-\textbf{H}and-\textbf{S}ide of the corresponding time evolution equation; 
    4054$\rdt$ is the time step; 
    4155and the superscripts indicate the time at which a quantity is evaluated. 
    42 Each term of the RHS is evaluated at a specific time stepping depending on the physics with which it is associated. 
     56Each term of the RHS is evaluated at a specific time stepping depending on 
     57the physics with which it is associated. 
    4358 
    4459The choice of the time stepping used for this evaluation is discussed below as well as 
    4560the implications for starting or restarting a model simulation. 
    4661Note that the time stepping calculation is generally performed in a single operation. 
    47 With such a complex and nonlinear system of equations it would be dangerous to let a prognostic variable evolve in 
    48 time for each term separately. 
     62With such a complex and nonlinear system of equations it would be dangerous to 
     63let a prognostic variable evolve in time for each term separately. 
    4964 
    5065The three level scheme requires three arrays for each prognostic variable. 
     
    5267The third array, although referred to as $x_a$ (after) in the code, 
    5368is usually not the variable at the after time step; 
    54 but rather it is used to store the time derivative (RHS in \autoref{eq:STP}) prior to time-stepping the equation. 
    55 The time stepping itself is performed once at each time step where implicit vertical diffusion is computed, \ie\ in the \mdl{trazdf} and \mdl{dynzdf} modules. 
    56  
    57 % ------------------------------------------------------------------------------------------------------------- 
    58 %        Non-Diffusive Part---Leapfrog Scheme 
    59 % ------------------------------------------------------------------------------------------------------------- 
     69but rather it is used to store the time derivative (RHS in \autoref{eq:TD}) 
     70prior to time-stepping the equation. 
     71The time stepping itself is performed once at each time step where 
     72implicit vertical diffusion is computed, 
     73\ie\ in the \mdl{trazdf} and \mdl{dynzdf} modules. 
     74 
     75%% ================================================================================================= 
    6076\section{Non-diffusive part --- Leapfrog scheme} 
    61 \label{sec:STP_leap_frog} 
    62  
    63 The time stepping used for processes other than diffusion is the well-known leapfrog scheme 
    64 \citep{mesinger.arakawa_bk76}. 
     77\label{sec:TD_leap_frog} 
     78 
     79The time stepping used for processes other than diffusion is 
     80the well-known \textbf{L}eap\textbf{F}rog (LF) scheme \citep{mesinger.arakawa_bk76}. 
    6581This scheme is widely used for advection processes in low-viscosity fluids. 
    66 It is a time centred scheme, \ie\ the RHS in \autoref{eq:STP} is evaluated at time step $t$, the now time step. 
     82It is a time centred scheme, \ie\ the RHS in \autoref{eq:TD} is evaluated at 
     83time step $t$, the now time step. 
    6784It may be used for momentum and tracer advection, pressure gradient, and Coriolis terms, 
    6885but not for diffusion terms. 
    6986It is an efficient method that achieves second-order accuracy with 
    7087just one right hand side evaluation per time step. 
    71 Moreover, it does not artificially damp linear oscillatory motion nor does it produce instability by 
    72 amplifying the oscillations. 
     88Moreover, it does not artificially damp linear oscillatory motion 
     89nor does it produce instability by amplifying the oscillations. 
    7390These advantages are somewhat diminished by the large phase-speed error of the leapfrog scheme, 
    74 and the unsuitability of leapfrog differencing for the representation of diffusion and Rayleigh damping processes. 
     91and the unsuitability of leapfrog differencing for the representation of diffusion and 
     92Rayleigh damping processes. 
    7593However, the scheme allows the coexistence of a numerical and a physical mode due to 
    7694its leading third order dispersive error. 
    7795In other words a divergence of odd and even time steps may occur. 
    78 To prevent it, the leapfrog scheme is often used in association with a Robert-Asselin time filter 
    79 (hereafter the LF-RA scheme). 
    80 This filter, first designed by \citet{robert_JMSJ66} and more comprehensively studied by \citet{asselin_MWR72}, 
     96To prevent it, the leapfrog scheme is often used in association with 
     97a \textbf{R}obert-\textbf{A}sselin time filter (hereafter the LF-RA scheme). 
     98This filter, 
     99first designed by \citet{robert_JMSJ66} and more comprehensively studied by \citet{asselin_MWR72}, 
    81100is a kind of laplacian diffusion in time that mixes odd and even time steps: 
    82101\begin{equation} 
    83   \label{eq:STP_asselin} 
     102  \label{eq:TD_asselin} 
    84103  x_F^t = x^t + \gamma \, \lt[ x_F^{t - \rdt} - 2 x^t + x^{t + \rdt} \rt] 
    85104\end{equation} 
    86105where the subscript $F$ denotes filtered values and $\gamma$ is the Asselin coefficient. 
    87 $\gamma$ is initialized as \np{rn\_atfp} (namelist parameter). 
    88 Its default value is \np{rn\_atfp}\forcode{ = 10.e-3} (see \autoref{sec:STP_mLF}), 
     106$\gamma$ is initialized as \np{rn_atfp}{rn\_atfp} (namelist parameter). 
     107Its default value is \np[=10.e-3]{rn_atfp}{rn\_atfp} (see \autoref{sec:TD_mLF}), 
    89108causing only a weak dissipation of high frequency motions (\citep{farge-coulombier_phd87}). 
    90109The addition of a time filter degrades the accuracy of the calculation from second to first order. 
    91110However, the second order truncation error is proportional to $\gamma$, which is small compared to 1. 
    92111Therefore, the LF-RA is a quasi second order accurate scheme. 
    93 The LF-RA scheme is preferred to other time differencing schemes such as predictor corrector or trapezoidal schemes, 
    94 because the user has an explicit and simple control of the magnitude of the time diffusion of the scheme. 
    95 When used with the 2nd order space centred discretisation of the advection terms in 
     112The LF-RA scheme is preferred to other time differencing schemes such as 
     113predictor corrector or trapezoidal schemes, because the user has an explicit and simple control of 
     114the magnitude of the time diffusion of the scheme. 
     115When used with the 2$^nd$ order space centred discretisation of the advection terms in 
    96116the momentum and tracer equations, LF-RA avoids implicit numerical diffusion: 
    97 diffusion is set explicitly by the user through the Robert-Asselin 
    98 filter parameter and the viscosity and diffusion coefficients. 
    99  
    100 % ------------------------------------------------------------------------------------------------------------- 
    101 %        Diffusive Part---Forward or Backward Scheme 
    102 % ------------------------------------------------------------------------------------------------------------- 
     117diffusion is set explicitly by the user through the Robert-Asselin filter parameter and 
     118the viscosity and diffusion coefficients. 
     119 
     120%% ================================================================================================= 
    103121\section{Diffusive part --- Forward or backward scheme} 
    104 \label{sec:STP_forward_imp} 
    105  
    106 The leapfrog differencing scheme is unsuitable for the representation of diffusion and damping processes. 
     122\label{sec:TD_forward_imp} 
     123 
     124The leapfrog differencing scheme is unsuitable for 
     125the representation of diffusion and damping processes. 
    107126For a tendency $D_x$, representing a diffusion term or a restoring term to a tracer climatology 
    108127(when present, see \autoref{sec:TRA_dmp}), a forward time differencing scheme is used : 
    109128\[ 
    110   %\label{eq:STP_euler} 
     129  %\label{eq:TD_euler} 
    111130  x^{t + \rdt} = x^{t - \rdt} + 2 \, \rdt \ D_x^{t - \rdt} 
    112131\] 
    113132 
    114133This is diffusive in time and conditionally stable. 
    115 The conditions for stability of second and fourth order horizontal diffusion schemes are \citep{griffies_bk04}: 
     134The conditions for stability of second and fourth order horizontal diffusion schemes are 
     135\citep{griffies_bk04}: 
    116136\begin{equation} 
    117   \label{eq:STP_euler_stability} 
     137  \label{eq:TD_euler_stability} 
    118138  A^h < 
    119139  \begin{cases} 
     
    122142  \end{cases} 
    123143\end{equation} 
    124 where $e$ is the smallest grid size in the two horizontal directions and $A^h$ is the mixing coefficient. 
    125 The linear constraint \autoref{eq:STP_euler_stability} is a necessary condition, but not sufficient. 
     144where $e$ is the smallest grid size in the two horizontal directions and 
     145$A^h$ is the mixing coefficient. 
     146The linear constraint \autoref{eq:TD_euler_stability} is a necessary condition, but not sufficient. 
    126147If it is not satisfied, even mildly, then the model soon becomes wildly unstable. 
    127 The instability can be removed by either reducing the length of the time steps or reducing the mixing coefficient. 
     148The instability can be removed by either reducing the length of the time steps or 
     149reducing the mixing coefficient. 
    128150 
    129151For the vertical diffusion terms, a forward time differencing scheme can be used, 
    130 but usually the numerical stability condition imposes a strong constraint on the time step. To overcome the stability constraint, a 
    131 backward (or implicit) time differencing scheme is used. This scheme is unconditionally stable but diffusive and can be written as follows: 
     152but usually the numerical stability condition imposes a strong constraint on the time step. 
     153To overcome the stability constraint, a backward (or implicit) time differencing scheme is used. 
     154This scheme is unconditionally stable but diffusive and can be written as follows: 
    132155\begin{equation} 
    133   \label{eq:STP_imp} 
     156  \label{eq:TD_imp} 
    134157  x^{t + \rdt} = x^{t - \rdt} + 2 \, \rdt \ \text{RHS}_x^{t + \rdt} 
    135158\end{equation} 
     
    139162%%gm 
    140163 
    141 This scheme is rather time consuming since it requires a matrix inversion. For example, the finite difference approximation of the temperature equation is: 
     164This scheme is rather time consuming since it requires a matrix inversion. 
     165For example, the finite difference approximation of the temperature equation is: 
    142166\[ 
    143   % \label{eq:STP_imp_zdf} 
     167  % \label{eq:TD_imp_zdf} 
    144168  \frac{T(k)^{t + 1} - T(k)^{t - 1}}{2 \; \rdt} 
    145169  \equiv 
     
    147171\] 
    148172where RHS is the right hand side of the equation except for the vertical diffusion term. 
    149 We rewrite \autoref{eq:STP_imp} as: 
     173We rewrite \autoref{eq:TD_imp} as: 
    150174\begin{equation} 
    151   \label{eq:STP_imp_mat} 
     175  \label{eq:TD_imp_mat} 
    152176  -c(k + 1) \; T^{t + 1}(k + 1) + d(k) \; T^{t + 1}(k) - \; c(k) \; T^{t + 1}(k - 1) \equiv b(k) 
    153177\end{equation} 
    154178where 
    155 \begin{align*} 
    156   c(k) &= A_w^{vT} (k) \, / \, e_{3w} (k)     \\ 
    157   d(k) &= e_{3t}   (k)       \, / \, (2 \rdt) + c_k + c_{k + 1}    \\ 
    158   b(k) &= e_{3t}   (k) \; \lt( T^{t - 1}(k) \, / \, (2 \rdt) + \text{RHS} \rt) 
    159 \end{align*} 
    160  
    161 \autoref{eq:STP_imp_mat} is a linear system of equations with an associated matrix which is tridiagonal. 
    162 Moreover, 
    163 $c(k)$ and $d(k)$ are positive and the diagonal term is greater than the sum of the two extra-diagonal terms, 
     179\[ 
     180  c(k) = A_w^{vT} (k) \, / \, e_{3w} (k) \text{,} \quad 
     181  d(k) = e_{3t}   (k)       \, / \, (2 \rdt) + c_k + c_{k + 1} \quad \text{and} \quad 
     182  b(k) = e_{3t}   (k) \; \lt( T^{t - 1}(k) \, / \, (2 \rdt) + \text{RHS} \rt) 
     183\] 
     184 
     185\autoref{eq:TD_imp_mat} is a linear system of equations with 
     186an associated matrix which is tridiagonal. 
     187Moreover, $c(k)$ and $d(k)$ are positive and 
     188the diagonal term is greater than the sum of the two extra-diagonal terms, 
    164189therefore a special adaptation of the Gauss elimination procedure is used to find the solution 
    165190(see for example \citet{richtmyer.morton_bk67}). 
    166191 
    167 % ------------------------------------------------------------------------------------------------------------- 
    168 %        Surface Pressure gradient 
    169 % ------------------------------------------------------------------------------------------------------------- 
     192%% ================================================================================================= 
    170193\section{Surface pressure gradient} 
    171 \label{sec:STP_spg_ts} 
    172  
    173 The leapfrog environment supports a centred in time computation of the surface pressure, \ie\ evaluated 
    174 at \textit{now} time step. This refers to as the explicit free surface case in the code (\np{ln\_dynspg\_exp}\forcode{ = .true.}). 
    175 This choice however imposes a strong constraint on the time step which should be small enough to resolve the propagation 
    176 of external gravity waves. As a matter of fact, one rather use in a realistic setup, a split-explicit free surface 
    177 (\np{ln\_dynspg\_ts}\forcode{ = .true.}) in which barotropic and baroclinic dynamical equations are solved separately with ad-hoc 
    178 time steps. The use of the time-splitting (in combination with non-linear free surface) imposes some constraints on the design of 
    179 the overall flowchart, in particular to ensure exact tracer conservation (see \autoref{fig:TimeStep_flowchart}). 
    180  
    181 Compared to the former use of the filtered free surface in \NEMO\ v3.6 (\citet{roullet.madec_JGR00}), the use of a split-explicit free surface is advantageous 
    182 on massively parallel computers. Indeed, no global computations are anymore required by the elliptic solver which saves a substantial amount of communication 
    183 time. Fast barotropic motions (such as tides) are also simulated with a better accuracy. 
     194\label{sec:TD_spg_ts} 
     195 
     196The leapfrog environment supports a centred in time computation of the surface pressure, 
     197\ie\ evaluated at \textit{now} time step. 
     198This refers to as the explicit free surface case in the code 
     199(\np[=.true.]{ln_dynspg_exp}{ln\_dynspg\_exp}). 
     200This choice however imposes a strong constraint on the time step which 
     201should be small enough to resolve the propagation of external gravity waves. 
     202As a matter of fact, one rather use in a realistic setup, 
     203a split-explicit free surface (\np[=.true.]{ln_dynspg_ts}{ln\_dynspg\_ts}) in which 
     204barotropic and baroclinic dynamical equations are solved separately with ad-hoc time steps. 
     205The use of the time-splitting (in combination with non-linear free surface) imposes 
     206some constraints on the design of the overall flowchart, 
     207in particular to ensure exact tracer conservation (see \autoref{fig:TD_TimeStep_flowchart}). 
     208 
     209Compared to the former use of the filtered free surface in \NEMO\ v3.6 (\citet{roullet.madec_JGR00}), 
     210the use of a split-explicit free surface is advantageous on massively parallel computers. 
     211Indeed, no global computations are anymore required by the elliptic solver which 
     212saves a substantial amount of communication time. 
     213Fast barotropic motions (such as tides) are also simulated with a better accuracy. 
    184214 
    185215%\gmcomment{ 
    186 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    187 \begin{figure}[!t] 
    188   \begin{center} 
    189     \includegraphics[width=\textwidth]{Fig_TimeStepping_flowchart_v4} 
    190     \caption{ 
    191       \protect\label{fig:TimeStep_flowchart} 
    192       Sketch of the leapfrog time stepping sequence in \NEMO\ with split-explicit free surface. The latter combined 
    193        with non-linear free surface requires the dynamical tendency being updated prior tracers tendency to ensure 
    194        conservation. Note the use of time integrated fluxes issued from the barotropic loop  in subsequent calculations 
    195        of tracer advection and in the continuity equation. Details about the time-splitting scheme can be found 
    196        in \autoref{subsec:DYN_spg_ts}. 
    197     } 
    198   \end{center} 
     216\begin{figure} 
     217  \centering 
     218  \includegraphics[width=0.66\textwidth]{Fig_TimeStepping_flowchart_v4} 
     219  \caption[Leapfrog time stepping sequence with split-explicit free surface]{ 
     220    Sketch of the leapfrog time stepping sequence in \NEMO\ with split-explicit free surface. 
     221    The latter combined with non-linear free surface requires 
     222    the dynamical tendency being updated prior tracers tendency to ensure conservation. 
     223    Note the use of time integrated fluxes issued from the barotropic loop in 
     224    subsequent calculations of tracer advection and in the continuity equation. 
     225    Details about the time-splitting scheme can be found in \autoref{subsec:DYN_spg_ts}.} 
     226  \label{fig:TD_TimeStep_flowchart} 
    199227\end{figure} 
    200 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    201228%} 
    202229 
    203 % ------------------------------------------------------------------------------------------------------------- 
    204 %        The Modified Leapfrog -- Asselin Filter scheme 
    205 % ------------------------------------------------------------------------------------------------------------- 
    206 \section{Modified Leapfrog -- Asselin filter scheme} 
    207 \label{sec:STP_mLF} 
    208  
    209 Significant changes have been introduced by \cite{leclair.madec_OM09} in the LF-RA scheme in order to 
    210 ensure tracer conservation and to allow the use of a much smaller value of the Asselin filter parameter. 
     230%% ================================================================================================= 
     231\section{Modified LeapFrog -- Robert Asselin filter scheme (LF-RA)} 
     232\label{sec:TD_mLF} 
     233 
     234Significant changes have been introduced by \cite{leclair.madec_OM09} in 
     235the LF-RA scheme in order to ensure tracer conservation and to 
     236allow the use of a much smaller value of the Asselin filter parameter. 
    211237The modifications affect both the forcing and filtering treatments in the LF-RA scheme. 
    212238 
    213 In a classical LF-RA environment, the forcing term is centred in time, 
    214 \ie\ it is time-stepped over a $2 \rdt$ period: 
     239In a classical LF-RA environment, 
     240the forcing term is centred in time, \ie\ it is time-stepped over a $2 \rdt$ period: 
    215241$x^t = x^t + 2 \rdt Q^t$ where $Q$ is the forcing applied to $x$, 
    216 and the time filter is given by \autoref{eq:STP_asselin} so that $Q$ is redistributed over several time step. 
     242and the time filter is given by \autoref{eq:TD_asselin} so that 
     243$Q$ is redistributed over several time step. 
    217244In the modified LF-RA environment, these two formulations have been replaced by: 
    218245\begin{gather} 
    219   \label{eq:STP_forcing} 
     246  \label{eq:TD_forcing} 
    220247  x^{t + \rdt} = x^{t - \rdt} + \rdt \lt( Q^{t - \rdt / 2} + Q^{t + \rdt / 2} \rt)  \\ 
    221   \label{eq:STP_RA} 
     248  \label{eq:TD_RA} 
    222249  x_F^t       = x^t + \gamma \, \lt( x_F^{t - \rdt} - 2 x^t + x^{t + \rdt} \rt) 
    223250                    - \gamma \, \rdt \, \lt( Q^{t + \rdt / 2} - Q^{t - \rdt / 2} \rt) 
    224251\end{gather} 
    225 The change in the forcing formulation given by \autoref{eq:STP_forcing} (see \autoref{fig:MLF_forcing}) 
    226 has a significant effect: 
    227 the forcing term no longer excites the divergence of odd and even time steps \citep{leclair.madec_OM09}. 
     252The change in the forcing formulation given by \autoref{eq:TD_forcing} 
     253(see \autoref{fig:TD_MLF_forcing}) has a significant effect: 
     254the forcing term no longer excites the divergence of odd and even time steps 
     255\citep{leclair.madec_OM09}. 
    228256% forcing seen by the model.... 
    229257This property improves the LF-RA scheme in two aspects. 
    230258First, the LF-RA can now ensure the local and global conservation of tracers. 
    231259Indeed, time filtering is no longer required on the forcing part. 
    232 The influence of the Asselin filter on the forcing is explicitly removed by adding a new term in the filter 
    233 (last term in \autoref{eq:STP_RA} compared to \autoref{eq:STP_asselin}). 
     260The influence of the Asselin filter on the forcing is explicitly removed by 
     261adding a new term in the filter (last term in \autoref{eq:TD_RA} compared to \autoref{eq:TD_asselin}). 
    234262Since the filtering of the forcing was the source of non-conservation in the classical LF-RA scheme, 
    235263the modified formulation becomes conservative \citep{leclair.madec_OM09}. 
    236 Second, the LF-RA becomes a truly quasi -second order scheme. 
    237 Indeed, \autoref{eq:STP_forcing} used in combination with a careful treatment of static instability 
     264Second, the LF-RA becomes a truly quasi-second order scheme. 
     265Indeed, \autoref{eq:TD_forcing} used in combination with a careful treatment of static instability 
    238266(\autoref{subsec:ZDF_evd}) and of the TKE physics (\autoref{subsec:ZDF_tke_ene}) 
    239267(the two other main sources of time step divergence), 
     
    242270Note that the forcing is now provided at the middle of a time step: 
    243271$Q^{t + \rdt / 2}$ is the forcing applied over the $[t,t + \rdt]$ time interval. 
    244 This and the change in the time filter, \autoref{eq:STP_RA}, 
     272This and the change in the time filter, \autoref{eq:TD_RA}, 
    245273allows for an exact evaluation of the contribution due to the forcing term between any two time steps, 
    246274even if separated by only $\rdt$ since the time filter is no longer applied to the forcing term. 
    247275 
    248 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    249 \begin{figure}[!t] 
    250   \begin{center} 
    251     \includegraphics[width=\textwidth]{Fig_MLF_forcing} 
    252     \caption{ 
    253       \protect\label{fig:MLF_forcing} 
    254       Illustration of forcing integration methods. 
    255       (top) ''Traditional'' formulation: 
    256       the forcing is defined at the same time as the variable to which it is applied 
    257       (integer value of the time step index) and it is applied over a $2 \rdt$ period. 
    258       (bottom)  modified formulation: 
    259       the forcing is defined in the middle of the time (integer and a half value of the time step index) and 
    260       the mean of two successive forcing values ($n - 1 / 2$, $n + 1 / 2$) is applied over a $2 \rdt$ period. 
    261     } 
    262   \end{center} 
     276\begin{figure} 
     277  \centering 
     278  \includegraphics[width=0.66\textwidth]{Fig_MLF_forcing} 
     279  \caption[Forcing integration methods for modified leapfrog (top and bottom)]{ 
     280    Illustration of forcing integration methods. 
     281    (top) ''Traditional'' formulation: 
     282    the forcing is defined at the same time as the variable to which it is applied 
     283    (integer value of the time step index) and it is applied over a $2 \rdt$ period. 
     284    (bottom)  modified formulation: 
     285    the forcing is defined in the middle of the time 
     286    (integer and a half value of the time step index) and 
     287    the mean of two successive forcing values ($n - 1 / 2$, $n + 1 / 2$) is applied over 
     288    a $2 \rdt$ period.} 
     289  \label{fig:TD_MLF_forcing} 
    263290\end{figure} 
    264 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    265  
    266 % ------------------------------------------------------------------------------------------------------------- 
    267 %        Start/Restart strategy 
    268 % ------------------------------------------------------------------------------------------------------------- 
     291 
     292%% ================================================================================================= 
    269293\section{Start/Restart strategy} 
    270 \label{sec:STP_rst} 
    271  
    272 %--------------------------------------------namrun------------------------------------------- 
    273 \nlst{namrun} 
    274 %-------------------------------------------------------------------------------------------------------------- 
    275  
    276 The first time step of this three level scheme when starting from initial conditions is a forward step 
    277 (Euler time integration): 
     294\label{sec:TD_rst} 
     295 
     296\begin{listing} 
     297  \nlst{namrun} 
     298  \caption{\forcode{&namrun}} 
     299  \label{lst:namrun} 
     300\end{listing} 
     301 
     302The first time step of this three level scheme when starting from initial conditions is 
     303a forward step (Euler time integration): 
    278304\[ 
    279   % \label{eq:DOM_euler} 
     305  % \label{eq:TD_DOM_euler} 
    280306  x^1 = x^0 + \rdt \ \text{RHS}^0 
    281307\] 
    282 This is done simply by keeping the leapfrog environment (\ie\ the \autoref{eq:STP} three level time stepping) but 
     308This is done simply by keeping the leapfrog environment 
     309(\ie\ the \autoref{eq:TD} three level time stepping) but 
    283310setting all $x^0$ (\textit{before}) and $x^1$ (\textit{now}) fields equal at the first time step and 
    284311using half the value of a leapfrog time step ($2 \rdt$). 
     
    289316running the model for $2N$ time steps in one go, 
    290317or by performing two consecutive experiments of $N$ steps with a restart. 
    291 This requires saving two time levels and many auxiliary data in the restart files in machine precision. 
     318This requires saving two time levels and many auxiliary data in 
     319the restart files in machine precision. 
    292320 
    293321Note that the time step $\rdt$, is also saved in the restart file. 
    294 When restarting, if the time step has been changed, or one of the prognostic variables at \textit{before} time step 
    295 is missing, an Euler time stepping scheme is imposed. A forward initial step can still be enforced by the user by setting 
    296 the namelist variable \np{nn\_euler}\forcode{=0}. Other options to control the time integration of the model 
    297 are defined through the  \nam{run} namelist variables. 
    298 %%% 
     322When restarting, if the time step has been changed, or 
     323one of the prognostic variables at \textit{before} time step is missing, 
     324an Euler time stepping scheme is imposed. 
     325A forward initial step can still be enforced by the user by 
     326setting the namelist variable \np[=0]{nn_euler}{nn\_euler}. 
     327Other options to control the time integration of the model are defined through 
     328the \nam{run}{run} namelist variables. 
     329 
    299330\gmcomment{ 
    300331add here how to force the restart to contain only one time step for operational purposes 
     
    302333add also the idea of writing several restart for seasonal forecast : how is it done ? 
    303334 
    304 verify that all namelist pararmeters are truly described 
     335verify that all namelist parameters are truly described 
    305336 
    306337a word on the check of restart  ..... 
    307338} 
    308 %%% 
    309339 
    310340\gmcomment{       % add a subsection here 
    311341 
    312 %------------------------------------------------------------------------------------------------------------- 
    313 %        Time Domain 
    314 % ------------------------------------------------------------------------------------------------------------- 
     342%% ================================================================================================= 
    315343\subsection{Time domain} 
    316 \label{subsec:STP_time} 
    317 %--------------------------------------------namrun------------------------------------------- 
    318  
    319 \nlst{namdom} 
    320 %-------------------------------------------------------------------------------------------------------------- 
    321  
    322 Options are defined through the  \nam{dom} namelist variables. 
     344\label{subsec:TD_time} 
     345 
     346Options are defined through the\nam{dom}{dom} namelist variables. 
    323347 \colorbox{yellow}{add here a few word on nit000 and nitend} 
    324348 
    325349 \colorbox{yellow}{Write documentation on the calendar and the key variable adatrj} 
    326350 
    327 add a description of daymod, and the model calandar (leap-year and co) 
    328  
    329 }        %% end add 
    330  
    331  
    332  
    333 %% 
     351add a description of daymod, and the model calendar (leap-year and co) 
     352 
     353}     %% end add 
     354 
    334355\gmcomment{       % add implicit in vvl case  and Crant-Nicholson scheme 
    335356 
     
    381402\end{flalign*} 
    382403 
    383 %% 
    384404} 
    385405 
    386 \biblio 
    387  
    388 \pindex 
     406\onlyinsubfile{\input{../../global/epilogue}} 
    389407 
    390408\end{document} 
Note: See TracChangeset for help on using the changeset viewer.