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