/[MITgcm]/manual/s_algorithm/text/nonlin_frsurf.tex
ViewVC logotype

Diff of /manual/s_algorithm/text/nonlin_frsurf.tex

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.2 by jmc, Fri Aug 17 18:38:10 2001 UTC revision 1.10 by jmc, Mon Jul 11 13:49:29 2005 UTC
# Line 1  Line 1 
1  % $Header$  % $Header$
2  % $Name$  % $Name$
3    
 %\section{Time Integration}  
4    
 \subsection{Non-linear free surface}  
5    
6  Recently, 2 options have added to the model  \subsection{Non-linear free-surface}
7  (and therefore, have not yet been extensively tested)  \label{sect:nonlinear-freesurface}
8    
9    Recently, new options have been added to the model
10  that concern the free surface formulation.  that concern the free surface formulation.
11    
 %------------------------------------------  
 \subsubsection{Non-uniform linear-relation for the surface potential}  
12    
13  The linear relation between  \subsubsection{pressure/geo-potential and free surface}
14  surface pressure / geo- potential ($\Phi_{surf}$)  
15  and surface displacement ($\eta$)  For the atmosphere, since $\phi = \phi_{topo} - \int^p_{p_s} \alpha dp$,
16  has been considered as uniform ($b_s =$ Constant)  subtracting the reference state defined in section
17  but is in fact  \ref{sec:hpe-p-geo-potential-split}~:\\
18  dependent on the position ($x,y,r$)  $$
19  since we linearize:  \phi_o = \phi_{topo} - \int^p_{p_o} \alpha_o dp  
20  $$\Phi_{surf}=\int_{R_o}^{R_o+\eta} b dr \simeq b_s \eta  \hspace{5mm}\mathrm{with}\hspace{3mm} \phi_o(p_o)=\phi_{topo}
21  ~\mathrm{with}~ b_s = b(\theta,S,r)_{r=R_o}  $$
22  \simeq b_s(\theta_{ref}(R_o),S_{ref}(R_o),R_o)$$  we get:
23  Note that, for convinience, the effect of the local  $$
24  surface $\theta,S$ on $b_s$  \phi' = \phi - \phi_o = \int^{p_s}_p \alpha dp - \int^{p_o}_p \alpha_o dp
25  are not considered here, but incorporated in $\Phi'_{hyd}$.  $$
26    For the ocean, the reference state is simpler since $\rho_c$ does not dependent
27  For the ocean, $b_s = g \rho_{surf} / \rho_o \simeq g$  on $z$ ($b_o=g$) and the surface reference position is uniformly $z=0$ ($R_o=0$),
28  is a fairly good approximation since the relative difference  and the same subtraction leads to a similar relation.
29  in surface density are usually small and only due to  For both fluid, using the isomorphic notations, we can write:
30  local $\theta,S$ gradient (because $R_o = 0$);  $$
31  Therefore, they can easely be incorporated in $\Phi'_{hyd}$.  \phi' = \int^{r_{surf}}_r b~ dr - \int^{R_o}_r b_o dr
32    $$
33  For the atmosphere, because of topographic effects,  \begin{eqnarray}
34  the reference surface pressure $R_o$ has large spacial differences  \mathrm{and~re~write:}\hspace{10mm}
35  that are responsible for significant $b_s$ variations  \phi' = \int^{r_{surf}}_{R_o} b~ dr & + & \int^{R_o}_r (b - b_o) dr
36  (from 0.8 to 1.2 $[m^3/kg]$). For this reason,  \label{eq:split-phi-Ro} \\
37  we use a non-uniform linear coefficient $b_s$.  \mathrm{or:}\hspace{10mm}
38    \phi' = \int^{r_{surf}}_{R_o} b_o dr & + & \int^{r_{surf}}_r (b - b_o) dr
39  Practically, in an oceanic configuration or  \label{eq:split-phi-bo}
40  when the default value (TRUE) of the parameter  \end{eqnarray}
41  {\bf uniformLin\_PhiSurf} is used  
42  then $b_s$ is simply set to $g$ for the ocean  In section \ref{sec:finding_the_pressure_field}, following eq.\ref{eq:split-phi-Ro},
43  and $1.$ for the atmosphere.\\  the pressure/geo-potential $\phi'$ has been separated into surface ($\phi_s$),
44  Turning {\bf uniformLin\_PhiSurf} to "FALSE", allows to  and hydrostatic anomaly ($\phi'_{hyd}$).
45  evaluate $b_s$ from the reference vertical profile $\theta_{ref}$  In this section, the split between $\phi_s$ and $\phi'_{hyd}$ is
46  ({\it S/R INI\_LINEAR\_PHISURF})  made according to equation \ref{eq:split-phi-bo}. This slightly
47  according to the reference surface pressure $P_o$ ($=R_o$):  different definition reflects the actual implementation in the code
48  $b_s = c_p \kappa (P_o / Pc)^{(\kappa - 1)} \theta_{ref}(P_o)$  and is valid for both linear and non-linear
49    free-surface formulation, in both r-coordinate and r*-coordinate.
50    
51    Because the linear free-surface approximation ignore the tracer content
52    of the fluid parcel between $R_o$ and $r_{surf}=R_o+\eta$,
53    for consistency reasons, this part is also neglected in $\phi'_{hyd}$~:
54    $$
55    \phi'_{hyd} = \int^{r_{surf}}_r (b - b_o) dr \simeq \int^{R_o}_r (b - b_o) dr
56    $$
57    Note that in this case, the two definitions of $\phi_s$ and $\phi'_{hyd}$
58    from equation \ref{eq:split-phi-Ro} and \ref{eq:split-phi-bo} converge toward
59    the same (approximated) expressions: $\phi_s = \int^{r_{surf}}_{R_o} b_o dr$
60    and $\phi'_{hyd}=\int^{R_o}_r b' dr$.\\
61    On the contrary, the unapproximated formulation ("non-linear free-surface",
62    see the next section) retains the full expression:
63    $\phi'_{hyd} = \int^{r_{surf}}_r (b - b_o) dr $~.
64    This is obtained by selecting {\bf nonlinFreeSurf}=4 in parameter
65    file {\em data}.\\
66    
67    Regarding the surface potential:
68    $$\phi_s = \int_{R_o}^{R_o+\eta} b_o dr = b_s \eta
69    \hspace{5mm}\mathrm{with}\hspace{5mm}
70    b_s = \frac{1}{\eta} \int_{R_o}^{R_o+\eta} b_o dr $$
71    $b_s \simeq b_o(R_o)$ is an excellent approximation (better than
72    the usual numerical truncation, since generally $|\eta|$ is smaller
73    than the vertical grid increment).
74    
75    For the ocean, $\phi_s = g \eta$ and $b_s = g$ is uniform.
76    For the atmosphere, however, because of topographic effects, the
77    reference surface pressure $R_o=p_o$ has large spatial variations that
78    are responsible for significant $b_s$ variations (from 0.8 to 1.2
79    $[m^3/kg]$). For this reason, when {\bf uniformLin\_PhiSurf} {\em=.FALSE.}
80    (parameter file {\em data}, namelist {\em PARAM01})
81    a non-uniform linear coefficient $b_s$ is used and computed
82    ({\it S/R INI\_LINEAR\_PHISURF}) according to the reference surface
83    pressure $p_o$:
84    $b_s = b_o(R_o) = c_p \kappa (p_o / P^o_{SL})^{(\kappa - 1)} \theta_{ref}(p_o)$.
85    with $P^o_{SL}$ the mean sea-level pressure.
86    
87    
 %------------------------------------------  
88  \subsubsection{Free surface effect on column total thickness  \subsubsection{Free surface effect on column total thickness
89  (Non-linear free surface)}  (Non-linear free-surface)}
90    
91  The total thickness of the fluid column is  The total thickness of the fluid column is $r_{surf} - R_{fixed} =
92  $r_{surf} - R_{min} = \eta + R_o - R_{min}$  \eta + R_o - R_{fixed}$. In most applications, the free surface
93  In the linear free surface approximation  displacements are small compared to the total thickness
94  (detailed before), only the fixed part of  $\eta \ll H_o = R_o - R_{fixed}$.
95  it ($R_o - R_{min})$ is considered when we integrate the  In the previous sections and in older version of the model,
96  continuity equation or compute tracer and momentum advection term.  the linearized free-surface approximation was made, assuming
97    $r_{surf} - R_{fixed} \simeq H_o$ when computing horizontal transports,
98  This approximation is dropped when using  either in the continuity equation or in tracer and momentum
99  the non-linear free surface formulation.  advection terms.
100  Details follow here after for the barotropic part  This approximation is dropped when using the non-linear free-surface
101  and in the 2 next subsections for the baroclinic  formulation and the total thickness, including the time varying part
102  part.  $\eta$, is considered when computing horizontal transports.
103    Implications for the barotropic part are presented hereafter.
104  %------------------------------------------  In section \ref{sect:freesurf-tracer-advection} consequences for
105  % Non-Linear Barotropic part  tracer conservation is briefly discussed (more details can be
106    found in \cite{campin:02})~; the general time-stepping is presented
107  The continuous form of the model equations remains  in section \ref{sect:nonlin-freesurf-timestepping} with some
108  unchanged, except for the 2D continuity equation  limitations regarding the vertical resolution in section
109  (\ref{eq-tCsC-eta}) that is now integrated  \ref{sect:nonlin-freesurf-dz_surf}.
110  from $R_{min}(x,y)$ up to $r_{surf}=R_o+\eta$ :  
111    In the non-linear formulation, the continuous form of the model
112    equations remains unchanged, except for the 2D continuity equation
113    (\ref{eq:discrete-time-backward-free-surface}) which is now
114    integrated from $R_{fixed}(x,y)$ up to $r_{surf}=R_o+\eta$ :
115    
116  \begin{displaymath}  \begin{displaymath}
117  \epsilon_{fs} \partial_t \eta =  \epsilon_{fs} \partial_t \eta =
118  \left. \dot{r} \right|_{r=r_{surf}} + \epsilon_{fw} (P-E) =  \left. \dot{r} \right|_{r=r_{surf}} + \epsilon_{fw} (P-E) =
119  - {\bf \nabla}_h \cdot \int_{R_{min}}^{R_o+\eta} \vec{\bf v} dr  - {\bf \nabla}_h \cdot \int_{R_{fixed}}^{R_o+\eta} \vec{\bf v} dr
120  + \epsilon_{fw} (P-E)  + \epsilon_{fw} (P-E)
121  \end{displaymath}  \end{displaymath}
122    
123  Since $\eta$ has a direct effect on the horizontal  Since $\eta$ has a direct effect on the horizontal velocity (through
124  velocity (through $\nabla_h \Phi_{surf}$), this  $\nabla_h \Phi_{surf}$), this adds a non-linear term to the free
125  adds a non-linear term to the free surface equation.  surface equation. Several options for the time discretization of this
126    non-linear part can be considered, as detailed below.
127  Regarding the time discretization of this non-linear part,  
128  several options are now being tested:  If the column thickness is evaluated at time step $n$, and with
129    implicit treatment of the surface potential gradient, equations
130  With the column thickness evaluated at time step $n$,  (\ref{eq-solve2D} and \ref{eq-solve2D_rhs}) becomes:
 and the surface potential gradient still implicit,  
 equation (\ref{eq-solve2D} \& \ref{eq-solve2D_rhs})  
 become:  
131  \begin{eqnarray*}  \begin{eqnarray*}
132  \epsilon_{fs} {\eta}^{n+1} -  \epsilon_{fs} {\eta}^{n+1} -
133  {\bf \nabla}_h \cdot \Delta t^2 (\eta^{n}+R_o-R_{min})  {\bf \nabla}_h \cdot \Delta t^2 (\eta^{n}+R_o-R_{fixed})
134  {\bf \nabla}_h b_s {\eta}^{n+1}  {\bf \nabla}_h b_s {\eta}^{n+1}
135  = {\eta}^*  = {\eta}^*
 %\label{solve_2d}  
136  \end{eqnarray*}  \end{eqnarray*}
137  where  where
138  \begin{eqnarray*}  \begin{eqnarray*}
139  {\eta}^* = \epsilon_{fs} \: {\eta}^{n} -  {\eta}^* = \epsilon_{fs} \: {\eta}^{n} -
140  \Delta t {\bf \nabla}_h \cdot \int_{R_{min}}^{R_o+\eta^n} \vec{\bf v}^* dr  \Delta t {\bf \nabla}_h \cdot \int_{R_{fixed}}^{R_o+\eta^n} \vec{\bf v}^* dr
141  \: + \: \epsilon_{fw} \Delta_t (P-E)^{n}  \: + \: \epsilon_{fw} \Delta_t (P-E)^{n}
 %\label{solve_2d_rhs}  
142  \end{eqnarray*}  \end{eqnarray*}
143  This method requires to update the solver matrix at each time step.  This method requires us to update the solver matrix at each time step.
144    
145  Alternatively, the non-linear contribution can be evaluated fully  Alternatively, the non-linear contribution can be evaluated fully
146  explicitly:  explicitly:
147  \begin{eqnarray*}  \begin{eqnarray*}
148  \epsilon_{fs} {\eta}^{n+1} -  \epsilon_{fs} {\eta}^{n+1} -
149  {\bf \nabla}_h \cdot \Delta t^2 (R_o-R_{min})  {\bf \nabla}_h \cdot \Delta t^2 (R_o-R_{fixed})
150  {\bf \nabla}_h b_s {\eta}^{n+1}  {\bf \nabla}_h b_s {\eta}^{n+1}
151  = {\eta}^*  = {\eta}^*
152  +{\bf \nabla}_h \cdot \Delta t^2 (\eta^{n})  +{\bf \nabla}_h \cdot \Delta t^2 (\eta^{n})
153  {\bf \nabla}_h b_s {\eta}^{n}  {\bf \nabla}_h b_s {\eta}^{n}
154  \end{eqnarray*}  \end{eqnarray*}
155  This formulation allows to keep the initial solver matrix  This formulation allows one to keep the initial solver matrix
156  since the non-linear free surface only affects the RHS.  unchanged though throughout the integration, since the non-linear free
157    surface only affects the RHS.
158  An other option is a "linearized" formulation where the  
159  total column thickness appears only in the integral term of  Finally, another option is a "linearized" formulation where the total
160  the RHS (\ref{eq-solve2D_rhs}) but not directly in  column thickness appears only in the integral term of the RHS
161  the equation (\ref{eq-solve2D}).  (\ref{eq-solve2D_rhs}) but not directly in the equation
162    (\ref{eq-solve2D}).
163  %------------------------------------------  
164  \subsubsection{Free surface effect on the surface level thickness  Those different options (see Table \ref{tab:nonLinFreeSurf_flags})
165  (Non-linear free surface): Tracer advection}  have been tested and show little differences. However, we recommend
166    the use of the most precise method (the 1rst one) since the
167  To ensure a global tracer conservation (i.e., the total amount)  computation cost involved in the solver matrix update is negligible.
168  as well as the local one (see tracer section for more details),  
169  the change in the surface level thickness must be consistent with  \begin{table}[htb]
170  the way the continuity equation is integrated, both in  %\begin{center}
171  in the barotropic part (to find $\eta$) and baroclinic part  \centering
172  (to find $w = \dot{r}$).   \begin{tabular}[htb]{|l|c|l|}
173       \hline
174       parameter & value & description \\
175       \hline
176                       & -1 & linear free-surface, restart from a pickup file \\
177                       &    & produced with \#undef EXACT\_CONSERV code\\
178       \cline{2-3}
179                       & 0 & Linear free-surface \\
180       \cline{2-3}
181        nonlinFreeSurf & 4 & Non-linear free-surface \\
182       \cline{2-3}
183                       & 3 & same as 4 but neglecting
184                               $\int_{R_o}^{R_o+\eta} b' dr $ in $\Phi'_{hyd}$ \\
185       \cline{2-3}
186                       & 2 & same as 3 but do not update cg2d solver matrix \\
187       \cline{2-3}
188                      & 1 & same as 2 but treat momentum as in Linear FS \\
189       \hline
190                      & 0 & do not use $r*$ vertical coordinate (= default)\\
191       \cline{2-3}
192        select\_rStar & 2 & use $r^*$ vertical coordinate \\
193       \cline{2-3}
194                      & 1 & same as 2 but without the contribution of the\\
195                      &   & slope of the coordinate in $\nabla \Phi$ \\
196       \hline
197      \end{tabular}
198      \caption{Non-linear free-surface flags}
199      \label{tab:nonLinFreeSurf_flags}
200    %\end{center}
201    \end{table}
202    
203    
204    \subsubsection{Tracer conservation with non-linear free-surface}
205    \label{sect:freesurf-tracer-advection}
206    
207    To ensure global tracer conservation (i.e., the total amount) as well
208    as local conservation, the change in the surface level thickness must
209    be consistent with the way the continuity equation is integrated, both
210    in the barotropic part (to find $\eta$) and baroclinic part (to find
211    $w = \dot{r}$).
212    
213  To illustrate this, let's consider the shallow water model,  To illustrate this, consider the shallow water model, with a source
214  with uniform cartesian horizontal grid:  of fresh water (P):
215  $$  $$
216  \partial_t h + \nabla \cdot h \vec{\bf v} = 0  \partial_t h + \nabla \cdot h \vec{\bf v} = P
217  $$  $$
218  where $h$ is the total thickness of the water column.  where $h$ is the total thickness of the water column.
219  To conserve the tracer $\theta$ we have to discretize:  To conserve the tracer $\theta$ we have to discretize:
220  $$  $$
221  \partial_t (h \theta) + \nabla \cdot ( h \theta \vec{\bf v})= 0  \partial_t (h \theta) + \nabla \cdot ( h \theta \vec{\bf v})
222      = P \theta_{\mathrm{rain}}
223  $$  $$
224  Using the implicit (non-linear) free surface described before, we have:  Using the implicit (non-linear) free surface described above (section
225    \ref{sect:pressure-method-linear-backward}) we have:
226  \begin{eqnarray*}  \begin{eqnarray*}
227  h^{n+1} = h^{n} - \Delta_t \nabla \cdot (h^n \, \vec{\bf v}^{n+1} ) \\  h^{n+1} = h^{n} - \Delta t \nabla \cdot (h^n \, \vec{\bf v}^{n+1} ) + \Delta t P \\
228  \end{eqnarray*}  \end{eqnarray*}
229  The discretized form of the tracer equation must use the same  The discretized form of the tracer equation must adopt the same
230  "geometry" to compute the tracer fluxes, that is, the same value of  ``form'' in the computation of tracer fluxes, that is, the same value
231  h, as the continuity equation did:  of $h$, as used in the continuity equation:
232  \begin{eqnarray*}  \begin{eqnarray*}
233  h^{n+1} \, \theta^{n+1} = h^n \, \theta^n  h^{n+1} \, \theta^{n+1} = h^n \, \theta^n
234          - \Delta_t \nabla \cdot (h^n \, \theta^n \, \vec{\bf v}^{n+1})          - \Delta t \nabla \cdot (h^n \, \theta^n \, \vec{\bf v}^{n+1})
235            + \Delta t P \theta_{rain}
236  \end{eqnarray*}  \end{eqnarray*}
237    
238  In order to deal with the Adams-Bashforth time stepping,  The use of a 3 time-levels time-stepping scheme such as the Adams-Bashforth
239  we implement this scheme slightly differently, in two step:  make the conservation sightly tricky.
240  the variation of the water column thickness (from  The current implementation with the Adams-Bashforth time-stepping
241  $h^n$ to $h^{n+1}$)  provides an exact local conservation and prevents any drift in
242  is not incorporated directly to the tracer equation.  the global tracer content (\cite{campin:02}).
243  Instead,  Compared to the linear free-surface method, an additional step is required:
244  the model continues to evaluate the $G_\theta$ term (first step)  the variation of the water column thickness (from $h^n$ to $h^{n+1}$) is
245  as it use to do with the Linear free surface formulation  not incorporated directly into the tracer equation.  Instead, the
246  (with the "{\it surface correction}" turned "on", see tracer section):  model uses the $G_\theta$ terms (first step) as in the linear free
247    surface formulation (with the "{\it surface correction}" turned "on",
248    see tracer section):
249  $$  $$
250  G_\theta^n = \left(- \nabla \cdot (h^n \, \theta^n \, \vec{\bf v}^{n+1})  G_\theta^n = \left(- \nabla \cdot (h^n \, \theta^n \, \vec{\bf v}^{n+1})
251           - \dot{r}_{surf}^{n+1} \theta^n \right) / h^n           - \dot{r}_{surf}^{n+1} \theta^n \right) / h^n
252  $$  $$
253  Then in a second step,  Then, in a second step, the thickness variation (expansion/reduction)
254  thickness variation (expansion/reduction) is taken into account :  is taken into account:
255  $$  $$
256  \theta^{n+1} = \theta^n + \Delta_t \frac{h^n}{h^{n+1}} G_\theta^{(n+1/2)}  \theta^{n+1} = \theta^n + \Delta t \frac{h^n}{h^{n+1}}
257       \left( G_\theta^{(n+1/2)} + P (\theta_{\mathrm{rain}} - \theta^n )/h^n \right)
258    %\theta^{n+1} = \theta^n + \frac{\Delta t}{h^{n+1}}
259    %   \left( h^n G_\theta^{(n+1/2)} + P (\theta_{\mathrm{rain}} - \theta^n ) \right)
260  $$  $$
261  Note that with a simple forward time step (no Adams-Bashforth),  Note that with a simple forward time step (no Adams-Bashforth),
262    these two formulations are equivalent,  
263  since  since
264  $  $
265  \dot{r}_{surf}^{n+1}  (h^{n+1} - h^{n})/ \Delta t =
266  = - \nabla \cdot (h^n \, \vec{\bf v}^{n+1} ) = (h^{n+1} - h^{n})  P - \nabla \cdot (h^n \, \vec{\bf v}^{n+1} ) = P + \dot{r}_{surf}^{n+1}
 / \Delta_t  
267  $  $
 those 2 formulations are equivalent.  
268    
269  The implementation in the MITgcm follows this scheme.  \subsubsection{Time stepping implementation of the
270  The model "geometry" (here the {\bf hFacC,W,S}) is updated  non-linear free-surface}    
271  just before entering {\it SOLVE\_FOR\_PRESSURE},  \label{sect:nonlin-freesurf-timestepping}
272  according to the current $\eta$ field.  
273  Then, at the end of the time step, the variables are  The grid cell thickness was hold constant with the linear
274  advanced in time, so that $\eta^n$ becomes $\eta^{n-1}$.  free-surface~; with the non-linear free-surface, it is now varying
275  At the next time step, the tracer tendency ($G_\theta$) is computed  in time, at least at the surface level.
276  using the same geometry, that is now consistent with  This implies some modifications of the general algorithm described
277  $\eta^{n-1}$.  earlier in sections \ref{sect:adams-bashforth-sync} and
278  Finally, in S/R {\it TIMESTEP\_TRACER}, the expansion/reduction  \ref{sect:adams-bashforth-staggered}.
279  ratio is applied to the surface level to compute the new tracer field.  
280    A simplified version of the staggered in time, non-linear
281  %------------------------------------------  free-surface algorithm is detailed hereafter, and can be compared
282  \subsubsection{Free surface effect on the surface level thickness  to the equivalent linear free-surface case (eq. \ref{eq:Gv-n-staggered}
283  (Non-linear free surface): Momentum advection}      to \ref{eq:t-n+1-staggered}) and can also be easily transposed
284    to the synchronous time-stepping case.
285  Regarding momentum advection,  Among the simplifications, salinity equation, implicit operator
286  the vector invariant formulation is similar to the  and detailed elliptic equation are omitted. Surface forcing is
287  advective form (as opposed to the flux form) and therefore  explicitly written as fluxes of temperature, fresh water and
288  does not need specific modification to include the  momentum, $Q^{n+1/2}, P^{n+1/2}, F_{\bf v}^n$ respectively.
289  free surface effect on the surface level thickness.  $h^n$ and $dh^n$ are the column and grid box thickness in r-coordinate.
290  Updating the {\bf hFacC,W,S} and the {\bf recip\_hFac}(s)  %-------------------------------------------------------------
291  at one given place (like describe before) is sufficient.  \begin{eqnarray}
292    \phi^{n}_{hyd} & = & \int b(\theta^{n},S^{n},r) dr
293  With the flux form formulation, advection of momentum  \label{eq:phi-hyd-nlfs} \\
294  can be treated exactly as the tracer advection is.  \vec{\bf G}_{\vec{\bf v}}^{n-1/2}\hspace{-2mm} & = &
295  Here the expansion/reduction factors ($hFacW^{n+1}/hFacW^n$ for $u$  \vec{\bf G}_{\vec{\bf v}} (dh^{n-1},\vec{\bf v}^{n-1/2})
296  and $hFacS^{n+1}/hFacS^n$ for $v$) are simply applied in the  \hspace{+2mm};\hspace{+2mm}
297  subroutine {\it TIMESTEP}.  \vec{\bf G}_{\vec{\bf v}}^{(n)} =  
298       \frac{3}{2} \vec{\bf G}_{\vec{\bf v}}^{n-1/2}
299    -  \frac{1}{2} \vec{\bf G}_{\vec{\bf v}}^{n-3/2}
300    \label{eq:Gv-n-nlfs} \\
301    %\vec{\bf G}_{\vec{\bf v}}^{(n)} & = &
302    %   \frac{3}{2} \vec{\bf G}_{\vec{\bf v}}^{n-1/2}
303    %-  \frac{1}{2} \vec{\bf G}_{\vec{\bf v}}^{n-3/2}
304    %\label{eq:Gv-n+5-nlfs} \\
305    %\vec{\bf v}^{*} & = & \vec{\bf v}^{n-1/2} + \frac{\Delta t}{dh^{n}} \left(
306    %dh^{n-1}\vec{\bf G}_{\vec{\bf v}}^{(n)} + F_{\vec{\bf v}}^{n} \right)
307    \vec{\bf v}^{*} & = & \vec{\bf v}^{n-1/2} + \Delta t \frac{dh^{n-1}}{dh^{n}} \left(
308    \vec{\bf G}_{\vec{\bf v}}^{(n)} + F_{\vec{\bf v}}^{n}/dh^{n-1} \right)
309    - \Delta t \nabla \phi_{hyd}^{n}
310    \label{eq:vstar-nlfs} \\
311      \mathrm{update}\hspace{-4mm} & & \hspace{-4mm}\mathrm{
312      model~geometry~:~{\bf hFac}}(dh^n)\nonumber \\
313    \eta^{n+1/2} \hspace{-2mm} & = &
314    \eta^{n-1/2} + \Delta t P^{n+1/2} - \Delta t
315      \nabla \cdot \int \vec{\bf v}^{n+1/2} dh^{n} \nonumber \\
316                 & = & \eta^{n-1/2} + \Delta t P^{n+1/2} - \Delta t
317      \nabla \cdot \int \!\!\! \left( \vec{\bf v}^* - g \Delta t \nabla \eta^{n+1/2} \right) dh^{n}
318    \label{eq:nstar-nlfs} \\
319    \vec{\bf v}^{n+1/2}\hspace{-2mm} & = &
320    \vec{\bf v}^{*} - g \Delta t \nabla \eta^{n+1/2}
321    \label{eq:v-n+1-nlfs} \\
322    h^{n+1} & = & h^{n} + \Delta t P^{n+1/2} - \Delta t
323      \nabla \cdot \int \vec{\bf v}^{n+1/2} dh^{n}
324    \label{eq:h-n+1-nlfs} \\
325    G_{\theta}^{n} & = & G_{\theta} ( dh^{n}, u^{n+1/2}, \theta^{n} )
326    \hspace{+2mm};\hspace{+2mm}
327    G_{\theta}^{(n+1/2)} = \frac{3}{2} G_{\theta}^{n} - \frac{1}{2} G_{\theta}^{n-1}
328    \label{eq:Gt-n-nlfs} \\
329    %\theta^{n+1} & = &\theta^{n} + \frac{\Delta t}{dh^{n+1}} \left( dh^n
330    %G_{\theta}^{(n+1/2)} + Q^{n+1/2} + P^{n+1/2} (\theta_{\mathrm{rain}}-\theta^n) \right)
331    \theta^{n+1} & = &\theta^{n} + \Delta t \frac{dh^n}{dh^{n+1}} \left(
332    G_{\theta}^{(n+1/2)}
333    +( P^{n+1/2} (\theta_{\mathrm{rain}}-\theta^n) + Q^{n+1/2})/dh^n \right)
334    \nonumber \\
335    & & \label{eq:t-n+1-nlfs}
336    \end{eqnarray}
337    %-------------------------------------------------------------
338    Two steps have been added to linear free-surface algorithm
339    (eq. \ref{eq:Gv-n-staggered} to \ref{eq:t-n+1-staggered}):
340    Firstly, the model ``geometry''
341    (here the {\bf hFacC,W,S}) is updated just before entering {\it
342    SOLVE\_FOR\_PRESSURE}, using the current $dh^{n}$ field.
343    Secondly, the vertically integrated continuity equation
344    (eq.\ref{eq:h-n+1-nlfs}) has been added ({\bf exactConserv}{\em =TRUE},
345    in parameter file {\em data}, namelist {\em PARM01})
346    just before computing the vertical velocity, in subroutine
347    {\em INTEGR\_CONTINUITY}. This ensures that tracer and continuity equation
348    discretization  a Although this equation might appear
349    redundant with eq.\ref{eq:nstar-nlfs}, the integrated column
350    thickness $h^{n+1}$ can be different from $\eta^{n+1/2} + H$~:
351    \begin{itemize}
352    \item when Crank-Nickelson time-stepping is used (see section
353    \ref{sect:freesurf-CrankNick}).
354    \item when filters are applied to the flow field, after
355    (\ref{eq:v-n+1-nlfs}) and alter the divergence of the flow.
356    \item when the solver does not iterate until convergence~;
357     for example, because a too large residual target was set
358     ({\bf cg2dTargetResidual}, parameter file {\em data}, namelist
359     {\em PARM02}).
360    \end{itemize}\noindent
361    In this staggered time-stepping algorithm, the momentum tendencies
362    are computed using $dh^{n-1}$ geometry factors.
363    (eq.\ref{eq:Gv-n-nlfs}) and then rescaled in subroutine {\it TIMESTEP},
364    (eq.\ref{eq:vstar-nlfs}), similarly to tracer tendencies (see section
365    \ref{sect:freesurf-tracer-advection}).
366    The tracers are stepped forward later, using the recently updated
367    flow field ${\bf v}^{n+1/2}$ and the corresponding model geometry
368    $dh^{n}$ to compute the tendencies (eq.\ref{eq:Gt-n-nlfs});
369    Then the tendencies are rescaled by $dh^n/dh^{n+1}$ to derive
370    the new tracers values $(\theta,S)^{n+1}$ (eq.\ref{eq:t-n+1-nlfs},
371    in subroutine {\em CALC\_GT, CALC\_GS}).
372    
373    Note that the fresh-water input is added in a consistent way in the
374    continuity equation and in the tracer equation, taking into account
375    the fresh-water temperature $\theta_{\mathrm{rain}}$.
376    
377    Regarding the restart procedure,
378    two 2.D fields $h^{n-1}$ and $(h^n-h^{n-1})/\Delta t$
379    in addition to the standard
380    state variables and tendencies ($\eta^{n-1/2}$, ${\bf v}^{n-1/2}$,
381    $\theta^n$, $S^n$, ${\bf G}_{\bf v}^{n-3/2}$, $G_{\theta,S}^{n-1}$)
382    are stored in a "{\em pickup}" file.
383    The model restarts reading this "{\em pickup}" file,
384    then update the model geometry according to $h^{n-1}$,
385    and compute $h^n$ and the vertical velocity
386    %$h^n=h^{n-1} + \Delta t [(h^n-h^{n-1})/\Delta t]$,
387    before starting the main calling sequence (eq.\ref{eq:phi-hyd-nlfs}
388    to \ref{eq:t-n+1-nlfs}, {\em S/R FORWARD\_STEP}).
389    \\
390    
391    \fbox{ \begin{minipage}{4.75in}
392    {\em INTEGR\_CONTINUITY} ({\em integr\_continuity.F})
393    
394    $h^{n+1} -H_o$: {\bf etaH} ({\em DYNVARS.h})
395    
396    $h^{n} -H_o$: {\bf etaHnm1} ({\em SURFACE.h})
397    
398    $h^{n+1}-h^{n}/\Delta t$: {\bf dEtaHdt} ({\em SURFACE.h})
399    
400    \end{minipage} }
401    
402    \subsubsection{Non-linear free-surface and vertical resolution}
403    \label{sect:nonlin-freesurf-dz_surf}
404    
405    When the amplitude of the free-surface variations becomes
406    as large as the vertical resolution near the surface,
407    the surface layer thickness can decrease to nearly zero or
408    can even vanish completely.
409    This later possibility has not been implemented, and a
410    minimum relative thickness is imposed ({\bf hFacInf},
411    parameter file {\em data}, namelist {\em PARM01}) to prevent
412    numerical instabilities caused by very thin surface level.
413    
414    A better alternative to the vanishing level problem has been
415    found and implemented recently, and rely on a different
416    vertical coordinate $r^*$~:
417    The time variation ot the total column thickness becomes
418    part of the r* coordinate motion, as in a $\sigma_{z},\sigma_{p}$
419    model, but the fixed part related to topography is treated
420    as in a height or pressure coordinate model.
421    A complete description is given in \cite{adcroft:04a}.
422    
423    The time-stepping implementation of the $r^*$ coordinate is
424    identical to the non-linear free-surface in $r$ coordinate,
425    and differences appear only in the spacial discretization.
426    \marginpar{needs a subsection ref. here}
427    

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.10

  ViewVC Help
Powered by ViewVC 1.1.22