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.
chap_model_basics_zstar.tex in NEMO/trunk/doc/latex/NEMO/subfiles – NEMO

source: NEMO/trunk/doc/latex/NEMO/subfiles/chap_model_basics_zstar.tex

Last change on this file was 14526, checked in by nicolasmartin, 3 years ago

Modify \nlst LaTeX macro for better efficienty
Only one line is needed now to include the highlighted source code, the caption and the cross-reference

\newcommand{\nlst}[1]{
   \begin{listing}
      \newmintedfile{fortran}{../../../namelists/#1}
      \caption{\forcode{&#1}}
      \label{lst:#1}
   \end{listing}
}
File size: 15.6 KB
RevLine 
[10414]1\documentclass[../main/NEMO_manual]{subfiles}
2
[6997]3\begin{document}
[11598]4
[10442]5\chapter{ essai \zstar \sstar}
[11598]6
7\chaptertoc
8
9\paragraph{Changes record} ~\\
10
11{\footnotesize
12  \begin{tabularx}{\textwidth}{l||X|X}
13    Release & Author(s) & Modifications \\
14    \hline
15    {\em   4.0} & {\em ...} & {\em ...} \\
16    {\em   3.6} & {\em ...} & {\em ...} \\
17    {\em   3.4} & {\em ...} & {\em ...} \\
18    {\em <=3.4} & {\em ...} & {\em ...}
19  \end{tabularx}
20}
21
22\clearpage
23
[11597]24%% =================================================================================================
[10442]25\section{Curvilinear \zstar- or \sstar coordinate system}
[707]26
27\colorbox{yellow}{ to be updated }
28
[10354]29In that case, the free surface equation is nonlinear, and the variations of volume are fully taken into account.
[14113]30These coordinates systems is presented in a report \citep{levier.treguier.ea_trpt07} available on the \NEMO\ web site.
[707]31
32\colorbox{yellow}{  end of to be updated}
33
34% from MOM4p1 documentation
35
[11435]36To overcome problems with vanishing surface and/or bottom cells, we consider the zstar coordinate
[10414]37\[
[11544]38  % \label{eq:MBZ_PE_}
[10414]39  z^\star = H \left( \frac{z-\eta}{H+\eta} \right)
40\]
[707]41
[10354]42This coordinate is closely related to the "eta" coordinate used in many atmospheric models
43(see Black (1994) for a review of eta coordinate atmospheric models).
44It was originally used in ocean models by Stacey et al. (1995) for studies of tides next to shelves,
45and it has been recently promoted by Adcroft and Campin (2004) for global climate modelling.
[707]46
[10354]47The surfaces of constant $z^\star$ are quasi-horizontal.
48Indeed, the $z^\star$ coordinate reduces to $z$ when $\eta$ is zero.
49In general, when noting the large differences between undulations of the bottom topography versus undulations in
50the surface height, it is clear that surfaces constant $z^\star$ are very similar to the depth surfaces.
51These properties greatly reduce difficulties of computing the horizontal pressure gradient relative to
[11543]52terrain following sigma models discussed in \autoref{subsec:MB_sco}.
[10354]53Additionally, since $z^\star$ when $\eta = 0$, no flow is spontaneously generated in
54an unforced ocean starting from rest, regardless the bottom topography.
55This behaviour is in contrast to the case with "s"-models, where pressure gradient errors in the presence of
56nontrivial topographic variations can generate nontrivial spontaneous flow from a resting state,
57depending on the sophistication of the pressure gradient solver.
58The quasi-horizontal nature of the coordinate surfaces also facilitates the implementation of
59neutral physics parameterizations in $z^\star$ models using the same techniques as in $z$-models
60(see Chapters 13-16 of Griffies (2004) for a discussion of neutral physics in $z$-models,
[11435]61as well as  \autoref{sec:LDF_slp} in this document for treatment in \NEMO).
[707]62
[10354]63The range over which $z^\star$ varies is time independent $-H \leq z^\star \leq 0$.
64Hence, all cells remain nonvanishing, so long as the surface height maintains $\eta > ?H$.
[11435]65This is a minor constraint relative to that encountered on the surface height when using $s = z$ or $s = z - \eta$.
[707]66
[10354]67Because $z^\star$ has a time independent range, all grid cells have static increments ds,
[11435]68and the sum of the ver tical increments yields the time independent ocean depth %�k ds = H.
[10354]69The $z^\star$ coordinate is therefore invisible to undulations of the free surface,
70since it moves along with the free surface.
71This proper ty means that no spurious ver tical transpor t is induced across surfaces of
72constant $z^\star$ by the motion of external gravity waves.
73Such spurious transpor t can be a problem in z-models, especially those with tidal forcing.
74Quite generally, the time independent range for the $z^\star$ coordinate is a very convenient property that
75allows for a nearly arbitrary vertical resolution even in the presence of large amplitude fluctuations of
[11435]76the surface height, again so long as $\eta > -H$.
[707]77
78%  essai update time splitting...
79
[11597]80%% =================================================================================================
[11571]81\section[Surface pressure gradient and sea surface heigth (\textit{dynspg.F90})]{Surface pressure gradient and sea surface heigth (\protect\mdl{dynspg})}
[11544]82\label{sec:MBZ_dyn_hpg_spg}
[10146]83
[11435]84%\nlst{nam_dynspg}
[14526]85
[11577]86Options are defined through the \nam{_dynspg}{\_dynspg} namelist variables.
[11543]87The surface pressure gradient term is related to the representation of the free surface (\autoref{sec:MB_hor_pg}).
[10354]88The main distinction is between the fixed volume case (linear free surface or rigid lid) and
89the variable volume case (nonlinear free surface, \key{vvl} is active).
[11543]90In the linear free surface case (\autoref{subsec:MB_free_surface}) and rigid lid (\autoref{PE_rigid_lid}),
[10354]91the vertical scale factors $e_{3}$ are fixed in time,
[11543]92while in the nonlinear case (\autoref{subsec:MB_free_surface}) they are time-dependent.
[10354]93With both linear and nonlinear free surface, external gravity waves are allowed in the equations,
94which imposes a very small time step when an explicit time stepping is used.
95Two methods are proposed to allow a longer time step for the three-dimensional equations:
[14178]96the filtered free surface, which is a modification of the continuous equations \iffalse (see \autoref{eq:MB_flt?}) \fi ,
[10354]97and the split-explicit free surface described below.
98The extra term introduced in the filtered method is calculated implicitly,
99so that the update of the next velocities is done in module \mdl{dynspg\_flt} and not in \mdl{dynnxt}.
[707]100
101% Explicit
[11597]102%% =================================================================================================
[11571]103\subsubsection[Explicit (\texttt{\textbf{key\_dynspg\_exp}})]{Explicit (\protect\key{dynspg\_exp})}
[11544]104\label{subsec:MBZ_dyn_spg_exp}
[707]105
[10354]106In the explicit free surface formulation, the model time step is chosen small enough to
107describe the external gravity waves (typically a few ten seconds).
108The sea surface height is given by:
[10414]109\begin{equation}
[11544]110  \label{eq:MBZ_dynspg_ssh}
[10414]111  \frac{\partial \eta }{\partial t}\equiv \frac{\text{EMP}}{\rho_w }+\frac{1}{e_{1T}
112    e_{2T} }\sum\limits_k {\left( {\delta_i \left[ {e_{2u} e_{3u} u}
113        \right]+\delta_j \left[ {e_{1v} e_{3v} v} \right]} \right)}
[707]114\end{equation}
115
[10354]116where EMP is the surface freshwater budget (evaporation minus precipitation, and minus river runoffs
117(if the later are introduced as a surface freshwater flux, see \autoref{chap:SBC}) expressed in $Kg.m^{-2}.s^{-1}$,
[10406]118and $\rho_w =1,000\,Kg.m^{-3}$ is the volumic mass of pure water.
[10354]119The sea-surface height is evaluated using a leapfrog scheme in combination with an Asselin time filter,
[11543]120(\ie\ the velocity appearing in (\autoref{eq:DYN_spg_ssh}) is centred in time (\textit{now} velocity).
[707]121
[10354]122The surface pressure gradient, also evaluated using a leap-frog scheme, is then simply given by:
[10414]123\begin{equation}
[11544]124  \label{eq:MBZ_dynspg_exp}
[10414]125  \left\{
126    \begin{aligned}
127      - \frac{1}                    {e_{1u}} \; \delta_{i+1/2} \left[  \,\eta\,  \right] \\ \\
128      - \frac{1}                    {e_{2v}} \; \delta_{j+1/2} \left[  \,\eta\,  \right]
129    \end{aligned}
130  \right.
[11435]131\end{equation}
[707]132
[10406]133Consistent with the linearization, a $\left. \rho \right|_{k=1} / \rho_o$ factor is omitted in
[11543]134(\autoref{eq:DYN_spg_exp}).
[707]135
136% Split-explicit time-stepping
[11597]137%% =================================================================================================
[11571]138\subsubsection[Split-explicit time-stepping (\texttt{\textbf{key\_dynspg\_ts}})]{Split-explicit time-stepping (\protect\key{dynspg\_ts})}
[11544]139\label{subsec:MBZ_dyn_spg_ts}
[10146]140
[11123]141The split-explicit free surface formulation used in OPA follows the one proposed by \citet{Griffies2004?}.
[10354]142The general idea is to solve the free surface equation with a small time step,
143while the three dimensional prognostic variables are solved with a longer time step that
[11578]144is a multiple of \np{rdtbt}{rdtbt} in the \nam{dom}{dom} namelist (Figure III.3).
[707]145
[10414]146\begin{figure}[!t]
[11558]147  \centering
[11693]148  %\includegraphics[width=0.66\textwidth]{MBZ_DYN_dynspg_ts}
[11558]149  \caption[Schematic of the split-explicit time stepping scheme for
150  the barotropic and baroclinic modes, after \citet{Griffies2004?}]{
151    Schematic of the split-explicit time stepping scheme for the barotropic and baroclinic modes,
152    after \citet{Griffies2004?}.
153    Time increases to the right.
154    Baroclinic time steps are denoted by $t-\Delta t$, $t, t+\Delta t$, and $t+2\Delta t$.
155    The curved line represents a leap-frog time step,
156    and the smaller barotropic time steps $N \Delta t=2\Delta t$ are denoted by the zig-zag line.
157    The vertically integrated forcing \textbf{M}(t) computed at
158    baroclinic time step t represents the interaction between the barotropic and baroclinic motions.
159    While keeping the total depth, tracer, and freshwater forcing fields fixed,
160    a leap-frog integration carries the surface height and vertically integrated velocity from
161    t to $t+2 \Delta t$ using N barotropic time steps of length $\Delta t$.
162    Time averaging the barotropic fields over the N+1 time steps (endpoints included)
163    centers the vertically integrated velocity at the baroclinic timestep $t+\Delta t$.
164    A baroclinic leap-frog time step carries the surface height to $t+\Delta t$ using
165    the convergence of the time averaged vertically integrated velocity taken from
166    baroclinic time step t.}
167  \label{fig:MBZ_dyn_dynspg_ts}
[707]168\end{figure}
169
[10354]170The split-explicit formulation has a damping effect on external gravity waves,
[14113]171which is weaker than the filtered free surface but still significant as shown by \citet{levier.treguier.ea_trpt07} in
[11435]172the case of an analytical barotropic Kelvin wave.
[707]173
174%from griffies book: .....   copy past !
175
176\textbf{title: Time stepping the barotropic system }
177
[10354]178Assume knowledge of the full velocity and tracer fields at baroclinic time $\tau$.
179Hence, we can update the surface height and vertically integrated velocity with a leap-frog scheme using
180the small barotropic time step $\Delta t$.
181We have
[10414]182\[
[11544]183  % \label{eq:MBZ_dyn_spg_ts_eta}
[10414]184  \eta^{(b)}(\tau,t_{n+1}) - \eta^{(b)}(\tau,t_{n+1}) (\tau,t_{n-1})
[11435]185  = 2 \Delta t \left[-\nabla \cdot \textbf{U}^{(b)}(\tau,t_n) + \text{EMP}_w(\tau) \right]
[10414]186\]
187\begin{multline*}
[11544]188  % \label{eq:MBZ_dyn_spg_ts_u}
[10414]189  \textbf{U}^{(b)}(\tau,t_{n+1}) - \textbf{U}^{(b)}(\tau,t_{n-1}\\
190  = 2\Delta t \left[ - f \textbf{k} \times \textbf{U}^{(b)}(\tau,t_{n})
191    - H(\tau) \nabla p_s^{(b)}(\tau,t_{n}) +\textbf{M}(\tau) \right]
192\end{multline*}
[707]193\
194
[10354]195In these equations, araised (b) denotes values of surface height and
196vertically integrated velocity updated with the barotropic time steps.
197The $\tau$ time label on $\eta^{(b)}$ and $U^{(b)}$ denotes the baroclinic time at which
198the vertically integrated forcing $\textbf{M}(\tau)$
199(note that this forcing includes the surface freshwater forcing), the tracer fields,
200the freshwater flux $\text{EMP}_w(\tau)$, and total depth of the ocean $H(\tau)$ are held for
201the duration of the barotropic time stepping over a single cycle.
[11435]202This is also the time that sets the barotropic time steps via
[10414]203\[
[11544]204  % \label{eq:MBZ_dyn_spg_ts_t}
[11435]205  t_n=\tau+n\Delta t
[10414]206\]
[10354]207with $n$ an integer.
[11435]208The density scaled surface pressure is evaluated via
[10414]209\[
[11544]210  % \label{eq:MBZ_dyn_spg_ts_ps}
[10414]211  p_s^{(b)}(\tau,t_{n}) =
212  \begin{cases}
213    g \;\eta_s^{(b)}(\tau,t_{n}) \;\rho(\tau)_{k=1}) / \rho_o  &      \text{non-linear case} \\
214    g \;\eta_s^{(b)}(\tau,t_{n})  &      \text{linear case}
215  \end{cases}
216\]
[11435]217To get started, we assume the following initial conditions
[10414]218\[
[11544]219  % \label{eq:MBZ_dyn_spg_ts_eta}
[10414]220  \begin{split}
221    \eta^{(b)}(\tau,t_{n=0}) &= \overline{\eta^{(b)}(\tau)} \\
222    \eta^{(b)}(\tau,t_{n=1}) &= \eta^{(b)}(\tau,t_{n=0}) + \Delta t \ \text{RHS}_{n=0}
223  \end{split}
224\]
[11435]225with
[10414]226\[
[11544]227  % \label{eq:MBZ_dyn_spg_ts_etaF}
[10414]228  \overline{\eta^{(b)}(\tau)} = \frac{1}{N+1} \sum\limits_{n=0}^N \eta^{(b)}(\tau-\Delta t,t_{n})
229\]
[10354]230the time averaged surface height taken from the previous barotropic cycle.
231Likewise,
[10414]232\[
[11544]233  % \label{eq:MBZ_dyn_spg_ts_u}
[10414]234  \textbf{U}^{(b)}(\tau,t_{n=0}) = \overline{\textbf{U}^{(b)}(\tau)} \\ \\
235  \textbf{U}(\tau,t_{n=1}) = \textbf{U}^{(b)}(\tau,t_{n=0}) + \Delta t \ \text{RHS}_{n=0}
236\]
[11435]237with
[10414]238\[
[11544]239  % \label{eq:MBZ_dyn_spg_ts_u}
[10414]240  \overline{\textbf{U}^{(b)}(\tau)} = \frac{1}{N+1} \sum\limits_{n=0}^N\textbf{U}^{(b)}(\tau-\Delta t,t_{n})
241\]
[10354]242the time averaged vertically integrated transport.
[11435]243Notably, there is no Robert-Asselin time filter used in the barotropic portion of the integration.
[707]244
[10354]245Upon reaching $t_{n=N} = \tau + 2\Delta \tau$ , the vertically integrated velocity is time averaged to
[11435]246produce the updated vertically integrated velocity at baroclinic time $\tau + \Delta \tau$
[10414]247\[
[11544]248  % \label{eq:MBZ_dyn_spg_ts_u}
[10414]249  \textbf{U}(\tau+\Delta t) = \overline{\textbf{U}^{(b)}(\tau+\Delta t)}
250  = \frac{1}{N+1} \sum\limits_{n=0}^N\textbf{U}^{(b)}(\tau,t_{n})
251\]
[10354]252The surface height on the new baroclinic time step is then determined via
[11435]253a baroclinic leap-frog using the following form
[10414]254\begin{equation}
[11544]255  \label{eq:MBZ_dyn_spg_ts_ssh}
[10414]256  \eta(\tau+\Delta) - \eta^{F}(\tau-\Delta) = 2\Delta t \ \left[ - \nabla \cdot \textbf{U}(\tau) + \text{EMP}_w \right]
[707]257\end{equation}
258
[10354]259The use of this "big-leap-frog" scheme for the surface height ensures compatibility between
260the mass/volume budgets and the tracer budgets.
[11435]261More discussion of this point is provided in Chapter 10 (see in particular Section 10.2).
262
[10354]263In general, some form of time filter is needed to maintain integrity of the surface height field due to
[11544]264the leap-frog splitting mode in equation \autoref{eq:MBZ_dyn_spg_ts_ssh}.
[10354]265We have tried various forms of such filtering,
266with the following method discussed in Griffies et al. (2001) chosen due to its stability and
[11435]267reasonably good maintenance of tracer conservation properties (see ??)
[707]268
[10414]269\begin{equation}
[11544]270  \label{eq:MBZ_dyn_spg_ts_sshf}
[10414]271  \eta^{F}(\tau-\Delta) =  \overline{\eta^{(b)}(\tau)}
[707]272\end{equation}
[11435]273Another approach tried was
[707]274
[10414]275\[
[11544]276  % \label{eq:MBZ_dyn_spg_ts_sshf2}
[10414]277  \eta^{F}(\tau-\Delta) = \eta(\tau)
278  + (\alpha/2) \left[\overline{\eta^{(b)}}(\tau+\Delta t)
279    + \overline{\eta^{(b)}}(\tau-\Delta t) -2 \;\eta(\tau) \right]
280\]
[707]281
[10354]282which is useful since it isolates all the time filtering aspects into the term multiplied by $\alpha$.
283This isolation allows for an easy check that tracer conservation is exact when eliminating tracer and
284surface height time filtering (see ?? for more complete discussion).
[11544]285However, in the general case with a non-zero $\alpha$, the filter \autoref{eq:MBZ_dyn_spg_ts_sshf} was found to
[11435]286be more conservative, and so is recommended.
[707]287
[11435]288% Filtered formulation
[11597]289%% =================================================================================================
[11571]290\subsubsection[Filtered formulation (\texttt{\textbf{key\_dynspg\_flt}})]{Filtered formulation (\protect\key{dynspg\_flt})}
[11544]291\label{subsec:MBZ_dyn_spg_flt}
[707]292
[11123]293The filtered formulation follows the \citet{Roullet2000?} implementation.
[10354]294The extra term introduced in the equations (see {\S}I.2.2) is solved implicitly.
295The elliptic solvers available in the code are documented in \autoref{chap:MISC}.
[11578]296The amplitude of the extra term is given by the namelist variable \np{rnu}{rnu}.
[11123]297The default value is 1, as recommended by \citet{Roullet2000?}
[707]298
[11582]299\colorbox{red}{\np[=1]{rnu}{rnu} to be suppressed from namelist !}
[707]300
[11435]301% Non-linear free surface formulation
[11597]302%% =================================================================================================
[11571]303\subsection[Non-linear free surface formulation (\texttt{\textbf{key\_vvl}})]{Non-linear free surface formulation (\protect\key{vvl})}
[11544]304\label{subsec:MBZ_dyn_spg_vvl}
[707]305
[10354]306In the non-linear free surface formulation, the variations of volume are fully taken into account.
[14113]307This option is presented in a report \citep{levier.treguier.ea_trpt07} available on the \NEMO\ web site.
[10354]308The three time-stepping methods (explicit, split-explicit and filtered) are the same as in
[11543]309\autoref{?:DYN_spg_linear?} except that the ocean depth is now time-dependent.
[10354]310In particular, this means that in filtered case, the matrix to be inverted has to be recomputed at each time-step.
[707]311
[11693]312\subinc{\input{../../global/epilogue}}
[707]313
[6997]314\end{document}
Note: See TracBrowser for help on using the repository browser.