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

Contents of /manual/s_algorithm/text/tracer.tex

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


Revision 1.6 - (show annotations) (download) (as text)
Wed Oct 24 14:24:06 2001 UTC (23 years, 8 months ago) by cnh
Branch: MAIN
Changes since 1.5: +2 -2 lines
File MIME type: application/x-tex
Can't spell oops

1 % $Header: /u/u0/gcmpack/mitgcmdoc/part2/tracer.tex,v 1.5 2001/10/24 14:19:34 cnh Exp $
2 % $Name: $
3
4 \section{Tracer equations}
5 \label{sec:tracer_equations}
6
7 The basic discretization used for the tracer equations is the second
8 order piece-wise constant finite volume form of the forced
9 advection-diussion equations. There are many alternatives to second
10 order method for advection and alternative parameterizations for the
11 sub-grid scale processes. The Gent-McWilliams eddy parameterization,
12 KPP mixing scheme and PV flux parameterization are all dealt with in
13 separate sections. The basic discretization of the advection-diffusion
14 part of the tracer equations and the various advection schemes will be
15 described here.
16
17 \subsection{Time-stepping of tracers: ABII}
18
19 The default advection scheme is the centered second order method which
20 requires a second order or quasi-second order time-stepping scheme to
21 be stable. Historically this has been the quasi-second order
22 Adams-Bashforth method (ABII) and applied to all terms. For an
23 arbitrary tracer, $\tau$, the forced advection-diffusion equation
24 reads:
25 \begin{equation}
26 \partial_t \tau + G_{adv}^\tau = G_{diff}^\tau + G_{forc}^\tau
27 \end{equation}
28 where $G_{adv}^\tau$, $G_{diff}^\tau$ and $G_{forc}^\tau$ are the
29 tendencies due to advection, diffusion and forcing, respectively,
30 namely:
31 \begin{eqnarray}
32 G_{adv}^\tau & = & \partial_x u \tau + \partial_y v \tau + \partial_r w \tau
33 - \tau \nabla \cdot {\bf v} \\
34 G_{diff}^\tau & = & \nabla \cdot {\bf K} \nabla \tau
35 \end{eqnarray}
36 and the forcing can be some arbitrary function of state, time and
37 space.
38
39 The term, $\tau \nabla \cdot {\bf v}$, is required to retain local
40 conservation in conjunction with the linear implicit free-surface. It
41 only affects the surface layer since the flow is non-divergent
42 everywhere else. This term is therefore referred to as the surface
43 correction term. Global conservation is not possible using the
44 flux-form (as here) and a linearized free-surface
45 (\cite{Griffies00,Campin02}).
46
47 The continuity equation can be recovered by setting
48 $G_{diff}=G_{forc}=0$ and $\tau=1$.
49
50 The driver routine that calls the routines to calculate tendancies are
51 {\em S/R CALC\_GT} and {\em S/R CALC\_GS} for temperature and salt
52 (moisture), respectively. These in turn call a generic advection
53 diffusion routine {\em S/R GAD\_CALC\_RHS} that is called with the
54 flow field and relevent tracer as arguments and returns the collective
55 tendancy due to advection and diffusion. Forcing is add subsequently
56 in {\em S/R CALC\_GT} or {\em S/R CALC\_GS} to the same tendancy
57 array.
58
59 \fbox{ \begin{minipage}{4.75in}
60 {\em S/R GAD\_CALC\_RHS} ({\em pkg/generic\_advdiff/gad\_calc\_rhs.F})
61
62 $\tau$: {\bf tracer} (argument)
63
64 $G^{(n)}$: {\bf gTracer} (argument)
65
66 $F_r$: {\bf fVerT} (argument)
67
68 \end{minipage} }
69
70 The space and time discretizations are treated seperately (method of
71 lines). Tendancies are calculated at time levels $n$ and $n-1$ and
72 extrapolated to $n+1/2$ using the Adams-Bashforth method:
73 \marginpar{$\epsilon$: {\bf AB\_eps}}
74 \begin{equation}
75 G^{(n+1/2)} =
76 (\frac{3}{2} + \epsilon) G^{(n)} - (\frac{1}{2} + \epsilon) G^{(n-1)}
77 \end{equation}
78 where $G^{(n)} = G_{adv}^\tau + G_{diff}^\tau + G_{src}^\tau$ at time
79 step $n$. The tendancy at $n-1$ is not re-calculated but rather the
80 tendancy at $n$ is stored in a global array for later re-use.
81
82 \fbox{ \begin{minipage}{4.75in}
83 {\em S/R ADAMS\_BASHFORTH2} ({\em model/src/adams\_bashforth2.F})
84
85 $G^{(n+1/2)}$: {\bf gTracer} (argument on exit)
86
87 $G^{(n)}$: {\bf gTracer} (argument on entry)
88
89 $G^{(n-1)}$: {\bf gTrNm1} (argument)
90
91 $\epsilon$: {\bf ABeps} (PARAMS.h)
92
93 \end{minipage} }
94
95 The tracers are stepped forward in time using the extrapolated tendancy:
96 \begin{equation}
97 \tau^{(n+1)} = \tau^{(n)} + \Delta t G^{(n+1/2)}
98 \end{equation}
99 \marginpar{$\Delta t$: {\bf deltaTtracer}}
100
101 \fbox{ \begin{minipage}{4.75in}
102 {\em S/R TIMESTEP\_TRACER} ({\em model/src/timestep\_tracer.F})
103
104 $\tau^{(n+1)}$: {\bf gTracer} (argument on exit)
105
106 $\tau^{(n)}$: {\bf tracer} (argument on entry)
107
108 $G^{(n+1/2)}$: {\bf gTracer} (argument)
109
110 $\Delta t$: {\bf deltaTtracer} (PARAMS.h)
111
112 \end{minipage} }
113
114 Strictly speaking the ABII scheme should be applied only to the
115 advection terms. However, this scheme is only used in conjuction with
116 the standard second, third and fourth order advection
117 schemes. Selection of any other advection scheme disables
118 Adams-Bashforth for tracers so that explicit diffusion and forcing use
119 the forward method.
120
121
122
123
124 \section{Linear advection schemes}
125
126 \begin{figure}
127 \resizebox{5.5in}{!}{\includegraphics{part2/advect-1d-lo.eps}}
128 \caption{
129 Comparison of 1-D advection schemes. Courant number is 0.05 with 60
130 points and solutions are shown for T=1 (one complete period).
131 a) Shows the upwind biased schemes; first order upwind, DST3,
132 third order upwind and second order upwind.
133 b) Shows the centered schemes; Lax-Wendroff, DST4, centered second order,
134 centered fourth order and finite volume fourth order.
135 c) Shows the second order flux limiters: minmod, Superbee,
136 MC limiter and the van Leer limiter.
137 d) Shows the DST3 method with flux limiters due to Sweby with
138 $\mu=1$, $\mu=c/(1-c)$ and a fourth order DST method with Sweby limiter,
139 $\mu=c/(1-c)$.
140 \label{fig:advect-1d-lo}
141 }
142 \end{figure}
143
144 \begin{figure}
145 \resizebox{5.5in}{!}{\includegraphics{part2/advect-1d-hi.eps}}
146 \caption{
147 Comparison of 1-D advection schemes. Courant number is 0.89 with 60
148 points and solutions are shown for T=1 (one complete period).
149 a) Shows the upwind biased schemes; first order upwind and DST3.
150 Third order upwind and second order upwind are unstable at this Courant number.
151 b) Shows the centered schemes; Lax-Wendroff, DST4. Centered second order,
152 centered fourth order and finite volume fourth order and unstable at this
153 Courant number.
154 c) Shows the second order flux limiters: minmod, Superbee,
155 MC limiter and the van Leer limiter.
156 d) Shows the DST3 method with flux limiters due to Sweby with
157 $\mu=1$, $\mu=c/(1-c)$ and a fourth order DST method with Sweby limiter,
158 $\mu=c/(1-c)$.
159 \label{fig:advect-1d-hi}
160 }
161 \end{figure}
162
163 The advection schemes known as centered second order, centered fourth
164 order, first order upwind and upwind biased third order are known as
165 linear advection schemes because the coefficient for interpolation of
166 the advected tracer are linear and a function only of the flow, not
167 the tracer field it self. We discuss these first since they are most
168 commonly used in the field and most familiar.
169
170 \subsection{Centered second order advection-diffusion}
171
172 The basic discretization, centered second order, is the default. It is
173 designed to be consistant with the continuity equation to facilitate
174 conservation properties analogous to the continuum. However, centered
175 second order advection is notoriously noisey and must be used in
176 conjuction with some finite amount of diffusion to produce a sensible
177 solution.
178
179 The advection operator is discretized:
180 \begin{equation}
181 {\cal A}_c \Delta r_f h_c G_{adv}^\tau =
182 \delta_i F_x + \delta_j F_y + \delta_k F_r
183 \end{equation}
184 where the area integrated fluxes are given by:
185 \begin{eqnarray}
186 F_x & = & U \overline{ \tau }^i \\
187 F_y & = & V \overline{ \tau }^j \\
188 F_r & = & W \overline{ \tau }^k
189 \end{eqnarray}
190 The quantities $U$, $V$ and $W$ are volume fluxes defined:
191 \marginpar{$U$: {\bf uTrans} }
192 \marginpar{$V$: {\bf vTrans} }
193 \marginpar{$W$: {\bf rTrans} }
194 \begin{eqnarray}
195 U & = & \Delta y_g \Delta r_f h_w u \\
196 V & = & \Delta x_g \Delta r_f h_s v \\
197 W & = & {\cal A}_c w
198 \end{eqnarray}
199
200 For non-divergent flow, this discretization can be shown to conserve
201 the tracer both locally and globally and to globally conserve tracer
202 variance, $\tau^2$. The proof is given in \cite{Adcroft95,Adcroft97}.
203
204 \fbox{ \begin{minipage}{4.75in}
205 {\em S/R GAD\_C2\_ADV\_X} ({\em gad\_c2\_adv\_x.F})
206
207 $F_x$: {\bf uT} (argument)
208
209 $U$: {\bf uTrans} (argument)
210
211 $\tau$: {\bf tracer} (argument)
212
213 {\em S/R GAD\_C2\_ADV\_Y} ({\em gad\_c2\_adv\_y.F})
214
215 $F_y$: {\bf vT} (argument)
216
217 $V$: {\bf vTrans} (argument)
218
219 $\tau$: {\bf tracer} (argument)
220
221 {\em S/R GAD\_C2\_ADV\_R} ({\em gad\_c2\_adv\_r.F})
222
223 $F_r$: {\bf wT} (argument)
224
225 $W$: {\bf rTrans} (argument)
226
227 $\tau$: {\bf tracer} (argument)
228
229 \end{minipage} }
230
231
232 \subsection{Third order upwind bias advection}
233
234 Upwind biased third order advection offers a relatively good
235 compromise between accuracy and smoothness. It is not a ``positive''
236 scheme meaning false extrema are permitted but the amplitude of such
237 are significantly reduced over the centered second order method.
238
239 The third order upwind fluxes are discretized:
240 \begin{eqnarray}
241 F_x & = & U \overline{\tau - \frac{1}{6} \delta_{ii} \tau}^i
242 + \frac{1}{2} |U| \delta_i \frac{1}{6} \delta_{ii} \tau \\
243 F_y & = & V \overline{\tau - \frac{1}{6} \delta_{ii} \tau}^j
244 + \frac{1}{2} |V| \delta_j \frac{1}{6} \delta_{jj} \tau \\
245 F_r & = & W \overline{\tau - \frac{1}{6} \delta_{ii} \tau}^k
246 + \frac{1}{2} |W| \delta_k \frac{1}{6} \delta_{kk} \tau
247 \end{eqnarray}
248
249 At boundaries, $\delta_{\hat{n}} \tau$ is set to zero allowing
250 $\delta_{nn}$ to be evaluated. We are currently examing the accuracy
251 of this boundary condition and the effect on the solution.
252
253 \fbox{ \begin{minipage}{4.75in}
254 {\em S/R GAD\_U3\_ADV\_X} ({\em gad\_u3\_adv\_x.F})
255
256 $F_x$: {\bf uT} (argument)
257
258 $U$: {\bf uTrans} (argument)
259
260 $\tau$: {\bf tracer} (argument)
261
262 {\em S/R GAD\_U3\_ADV\_Y} ({\em gad\_u3\_adv\_y.F})
263
264 $F_y$: {\bf vT} (argument)
265
266 $V$: {\bf vTrans} (argument)
267
268 $\tau$: {\bf tracer} (argument)
269
270 {\em S/R GAD\_U3\_ADV\_R} ({\em gad\_u3\_adv\_r.F})
271
272 $F_r$: {\bf wT} (argument)
273
274 $W$: {\bf rTrans} (argument)
275
276 $\tau$: {\bf tracer} (argument)
277
278 \end{minipage} }
279
280 \subsection{Centered fourth order advection}
281
282 Centered fourth order advection is formally the most accurate scheme
283 we have implemented and can be used to great effect in high resolution
284 simultation where dynamical scales are well resolved. However, the
285 scheme is noisey like the centered second order method and so must be
286 used with some finite amount of diffusion. Bi-harmonic is recommended
287 since it is more scale selective and less likely to diffuse away the
288 well resolved gradient the fourth order scheme worked so hard to
289 create.
290
291 The centered fourth order fluxes are discretized:
292 \begin{eqnarray}
293 F_x & = & U \overline{\tau - \frac{1}{6} \delta_{ii} \tau}^i \\
294 F_y & = & V \overline{\tau - \frac{1}{6} \delta_{ii} \tau}^j \\
295 F_r & = & W \overline{\tau - \frac{1}{6} \delta_{ii} \tau}^k
296 \end{eqnarray}
297
298 As for the third order scheme, the best discretization near boundaries
299 is under investigation but currenlty $\delta_i \tau=0$ on a boundary.
300
301 \fbox{ \begin{minipage}{4.75in}
302 {\em S/R GAD\_C4\_ADV\_X} ({\em gad\_c4\_adv\_x.F})
303
304 $F_x$: {\bf uT} (argument)
305
306 $U$: {\bf uTrans} (argument)
307
308 $\tau$: {\bf tracer} (argument)
309
310 {\em S/R GAD\_C4\_ADV\_Y} ({\em gad\_c4\_adv\_y.F})
311
312 $F_y$: {\bf vT} (argument)
313
314 $V$: {\bf vTrans} (argument)
315
316 $\tau$: {\bf tracer} (argument)
317
318 {\em S/R GAD\_C4\_ADV\_R} ({\em gad\_c4\_adv\_r.F})
319
320 $F_r$: {\bf wT} (argument)
321
322 $W$: {\bf rTrans} (argument)
323
324 $\tau$: {\bf tracer} (argument)
325
326 \end{minipage} }
327
328
329 \subsection{First order upwind advection}
330
331 Although the upwind scheme is the underlying scheme for the robust or
332 non-linear methods given later, we haven't actually supplied this
333 method for general use. It would be very diffusive and it is unlikely
334 that it could ever produce more useful results than the positive
335 higher order schemes.
336
337 Upwind bias is introduced into many schemes using the {\em abs}
338 function and is allows the first order upwind flux to be written:
339 \begin{eqnarray}
340 F_x & = & U \overline{ \tau }^i - \frac{1}{2} |U| \delta_i \tau \\
341 F_y & = & V \overline{ \tau }^j - \frac{1}{2} |V| \delta_j \tau \\
342 F_r & = & W \overline{ \tau }^k - \frac{1}{2} |W| \delta_k \tau
343 \end{eqnarray}
344
345 If for some reason, the above method is required, then the second
346 order flux limiter scheme described later reduces to the above scheme
347 if the limiter is set to zero.
348
349
350 \section{Non-linear advection schemes}
351
352 Non-linear advection schemes invoke non-linear interpolation and are
353 widely used in computational fluid dynamics (non-linear does not refer
354 to the non-linearity of the advection operator). The flux limited
355 advection schemes belong to the class of finite volume methods which
356 neatly ties into the spatial discretization of the model.
357
358 When employing the flux limited schemes, first order upwind or
359 direct-space-time method the time-stepping is switched to forward in
360 time.
361
362 \subsection{Second order flux limiters}
363
364 The second order flux limiter method can be cast in several ways but
365 is generally expressed in terms of other flux approximations. For
366 example, in terms of a first order upwind flux and second order
367 Lax-Wendroff flux, the limited flux is given as:
368 \begin{equation}
369 F = F_1 + \psi(r) F_{LW}
370 \end{equation}
371 where $\psi(r)$ is the limiter function,
372 \begin{equation}
373 F_1 = u \overline{\tau}^i - \frac{1}{2} |u| \delta_i \tau
374 \end{equation}
375 is the upwind flux,
376 \begin{equation}
377 F_{LW} = F_1 + \frac{|u|}{2} (1-c) \delta_i \tau
378 \end{equation}
379 is the Lax-Wendroff flux and $c = \frac{u \Delta t}{\Delta x}$ is the
380 Courant (CFL) number.
381
382 The limiter function, $\psi(r)$, takes the slope ratio
383 \begin{eqnarray}
384 r = \frac{ \tau_{i-1} - \tau_{i-2} }{ \tau_{i} - \tau_{i-1} } & \forall & u > 0
385 \\
386 r = \frac{ \tau_{i+1} - \tau_{i} }{ \tau_{i} - \tau_{i-1} } & \forall & u < 0
387 \end{eqnarray}
388 as it's argument. There are many choices of limiter function but we
389 only provide the Superbee limiter \cite{Roe85}:
390 \begin{equation}
391 \psi(r) = \max[0,\min[1,2r],\min[2,r]]
392 \end{equation}
393
394 \fbox{ \begin{minipage}{4.75in}
395 {\em S/R GAD\_FLUXLIMIT\_ADV\_X} ({\em gad\_fluxlimit\_adv\_x.F})
396
397 $F_x$: {\bf uT} (argument)
398
399 $U$: {\bf uTrans} (argument)
400
401 $\tau$: {\bf tracer} (argument)
402
403 {\em S/R GAD\_FLUXLIMIT\_ADV\_Y} ({\em gad\_fluxlimit\_adv\_y.F})
404
405 $F_y$: {\bf vT} (argument)
406
407 $V$: {\bf vTrans} (argument)
408
409 $\tau$: {\bf tracer} (argument)
410
411 {\em S/R GAD\_FLUXLIMIT\_ADV\_R} ({\em gad\_fluxlimit\_adv\_r.F})
412
413 $F_r$: {\bf wT} (argument)
414
415 $W$: {\bf rTrans} (argument)
416
417 $\tau$: {\bf tracer} (argument)
418
419 \end{minipage} }
420
421
422 \subsection{Third order direct space time}
423
424 The direct-space-time method deals with space and time discretization
425 together (other methods that treat space and time seperately are known
426 collectively as the ``Method of Lines''). The Lax-Wendroff scheme
427 falls into this category; it adds sufficient diffusion to a second
428 order flux that the forward-in-time method is stable. The upwind
429 biased third order DST scheme is:
430 \begin{eqnarray}
431 F = u \left( \tau_{i-1}
432 + d_0 (\tau_{i}-\tau_{i-1}) + d_1 (\tau_{i-1}-\tau_{i-2}) \right)
433 & \forall & u > 0 \\
434 F = u \left( \tau_{i}
435 - d_0 (\tau_{i}-\tau_{i-1}) - d_1 (\tau_{i+1}-\tau_{i}) \right)
436 & \forall & u < 0
437 \end{eqnarray}
438 where
439 \begin{eqnarray}
440 d_1 & = & \frac{1}{6} ( 2 - |c| ) ( 1 - |c| ) \\
441 d_2 & = & \frac{1}{6} ( 1 - |c| ) ( 1 + |c| )
442 \end{eqnarray}
443 The coefficients $d_0$ and $d_1$ approach $1/3$ and $1/6$ repectively
444 as the Courant number, $c$, vanishes. In this limit, the conventional
445 third order upwind method is recovered. For finite Courant number, the
446 deviations from the linear method are analogous to the diffusion added
447 to centered second order advection in the Lax-Wendroff scheme.
448
449 The DST3 method described above must be used in a forward-in-time
450 manner and is stable for $0 \le |c| \le 1$. Although the scheme
451 appears to be forward-in-time, it is in fact second order in time and
452 the accuracy increases with the Courant number! For low Courant
453 number, DST3 produces very similar results (indistinguishable in
454 Fig.~\ref{fig:advect-1d-lo}) to the linear third order method but for
455 large Courant number, where the linear upwind third order method is
456 unstable, the scheme is extremely accurate
457 (Fig.~\ref{fig:advect-1d-hi}) with only minor overshoots.
458
459 \fbox{ \begin{minipage}{4.75in}
460 {\em S/R GAD\_DST3\_ADV\_X} ({\em gad\_dst3\_adv\_x.F})
461
462 $F_x$: {\bf uT} (argument)
463
464 $U$: {\bf uTrans} (argument)
465
466 $\tau$: {\bf tracer} (argument)
467
468 {\em S/R GAD\_DST3\_ADV\_Y} ({\em gad\_dst3\_adv\_y.F})
469
470 $F_y$: {\bf vT} (argument)
471
472 $V$: {\bf vTrans} (argument)
473
474 $\tau$: {\bf tracer} (argument)
475
476 {\em S/R GAD\_DST3\_ADV\_R} ({\em gad\_dst3\_adv\_r.F})
477
478 $F_r$: {\bf wT} (argument)
479
480 $W$: {\bf rTrans} (argument)
481
482 $\tau$: {\bf tracer} (argument)
483
484 \end{minipage} }
485
486
487 \subsection{Third order direct space time with flux limiting}
488
489 The overshoots in the DST3 method can be controlled with a flux limiter.
490 The limited flux is written:
491 \begin{equation}
492 F =
493 \frac{1}{2}(u+|u|)\left( \tau_{i-1} + \psi(r^+)(\tau_{i} - \tau_{i-1} )\right)
494 +
495 \frac{1}{2}(u-|u|)\left( \tau_{i-1} + \psi(r^-)(\tau_{i} - \tau_{i-1} )\right)
496 \end{equation}
497 where
498 \begin{eqnarray}
499 r^+ & = & \frac{\tau_{i-1} - \tau_{i-2}}{\tau_{i} - \tau_{i-1}} \\
500 r^- & = & \frac{\tau_{i+1} - \tau_{i}}{\tau_{i} - \tau_{i-1}}
501 \end{eqnarray}
502 and the limiter is the Sweby limiter:
503 \begin{equation}
504 \psi(r) = \max[0, \min[\min(1,d_0+d_1r],\frac{1-c}{c}r ]]
505 \end{equation}
506
507 \fbox{ \begin{minipage}{4.75in}
508 {\em S/R GAD\_DST3FL\_ADV\_X} ({\em gad\_dst3\_adv\_x.F})
509
510 $F_x$: {\bf uT} (argument)
511
512 $U$: {\bf uTrans} (argument)
513
514 $\tau$: {\bf tracer} (argument)
515
516 {\em S/R GAD\_DST3FL\_ADV\_Y} ({\em gad\_dst3\_adv\_y.F})
517
518 $F_y$: {\bf vT} (argument)
519
520 $V$: {\bf vTrans} (argument)
521
522 $\tau$: {\bf tracer} (argument)
523
524 {\em S/R GAD\_DST3FL\_ADV\_R} ({\em gad\_dst3\_adv\_r.F})
525
526 $F_r$: {\bf wT} (argument)
527
528 $W$: {\bf rTrans} (argument)
529
530 $\tau$: {\bf tracer} (argument)
531
532 \end{minipage} }
533
534
535 \subsection{Multi-dimensional advection}
536
537 \begin{figure}
538 \resizebox{5.5in}{!}{\includegraphics{part2/advect-2d-lo-diag.eps}}
539 \caption{
540 Comparison of advection schemes in two dimensions; diagonal advection
541 of a resolved Guassian feature. Courant number is 0.01 with
542 30$\times$30 points and solutions are shown for T=1/2. White lines
543 indicate zero crossing (ie. the presence of false minima). The left
544 column shows the second order schemes; top) centered second order with
545 Adams-Bashforth, middle) Lax-Wendroff and bottom) Superbee flux
546 limited. The middle column shows the third order schemes; top) upwind
547 biased third order with Adams-Bashforth, middle) third order direct
548 space-time method and bottom) the same with flux limiting. The top
549 right panel shows the centered fourth order scheme with
550 Adams-Bashforth and right middle panel shows a fourth order variant on
551 the DST method. Bottom right panel shows the Superbee flux limiter
552 (second order) applied independantly in each direction (method of
553 lines).
554 \label{fig:advect-2d-lo-diag}
555 }
556 \end{figure}
557
558 \begin{figure}
559 \resizebox{5.5in}{!}{\includegraphics{part2/advect-2d-mid-diag.eps}}
560 \caption{
561 Comparison of advection schemes in two dimensions; diagonal advection
562 of a resolved Guassian feature. Courant number is 0.27 with
563 30$\times$30 points and solutions are shown for T=1/2. White lines
564 indicate zero crossing (ie. the presence of false minima). The left
565 column shows the second order schemes; top) centered second order with
566 Adams-Bashforth, middle) Lax-Wendroff and bottom) Superbee flux
567 limited. The middle column shows the third order schemes; top) upwind
568 biased third order with Adams-Bashforth, middle) third order direct
569 space-time method and bottom) the same with flux limiting. The top
570 right panel shows the centered fourth order scheme with
571 Adams-Bashforth and right middle panel shows a fourth order variant on
572 the DST method. Bottom right panel shows the Superbee flux limiter
573 (second order) applied independantly in each direction (method of
574 lines).
575 \label{fig:advect-2d-mid-diag}
576 }
577 \end{figure}
578
579 \begin{figure}
580 \resizebox{5.5in}{!}{\includegraphics{part2/advect-2d-hi-diag.eps}}
581 \caption{
582 Comparison of advection schemes in two dimensions; diagonal advection
583 of a resolved Guassian feature. Courant number is 0.47 with
584 30$\times$30 points and solutions are shown for T=1/2. White lines
585 indicate zero crossings and initial maximum values (ie. the presence
586 of false extrema). The left column shows the second order schemes;
587 top) centered second order with Adams-Bashforth, middle) Lax-Wendroff
588 and bottom) Superbee flux limited. The middle column shows the third
589 order schemes; top) upwind biased third order with Adams-Bashforth,
590 middle) third order direct space-time method and bottom) the same with
591 flux limiting. The top right panel shows the centered fourth order
592 scheme with Adams-Bashforth and right middle panel shows a fourth
593 order variant on the DST method. Bottom right panel shows the Superbee
594 flux limiter (second order) applied independantly in each direction
595 (method of lines).
596 \label{fig:advect-2d-hi-diag}
597 }
598 \end{figure}
599
600
601
602 In many of the aforementioned advection schemes the behaviour in
603 multiple dimensions is not necessarily as good as the one dimensional
604 behaviour. For instance, a shape preserving monotonic scheme in one
605 dimension can have severe shape distortion in two dimensions if the
606 two components of horizontal fluxes are treated independently. There
607 is a large body of literature on the subject dealing with this problem
608 and among the fixes are operator and flux splitting methods, corner
609 flux methods and more. We have adopted a variant on the standard
610 splitting methods that allows the flux calculations to be implemented
611 as if in one dimension:
612 \begin{eqnarray}
613 \tau^{n+1/3} & = & \tau^{n}
614 - \Delta t \left( \frac{1}{\Delta x} \delta_i F^x(\tau^{n})
615 + \tau^{n} \frac{1}{\Delta x} \delta_i u \right) \\
616 \tau^{n+2/3} & = & \tau^{n}
617 - \Delta t \left( \frac{1}{\Delta y} \delta_j F^y(\tau^{n+1/3})
618 + \tau^{n} \frac{1}{\Delta y} \delta_i v \right) \\
619 \tau^{n+3/3} & = & \tau^{n}
620 - \Delta t \left( \frac{1}{\Delta r} \delta_k F^x(\tau^{n+2/3})
621 + \tau^{n} \frac{1}{\Delta r} \delta_i w \right)
622 \end{eqnarray}
623
624 In order to incorporate this method into the general model algorithm,
625 we compute the effective tendancy rather than update the tracer so
626 that other terms such as diffusion are using the $n$ time-level and
627 not the updated $n+3/3$ quantities:
628 \begin{equation}
629 G^{n+1/2}_{adv} = \frac{1}{\Delta t} ( \tau^{n+3/3} - \tau^{n} )
630 \end{equation}
631 So that the over all time-stepping looks likes:
632 \begin{equation}
633 \tau^{n+1} = \tau^{n} + \Delta t \left( G^{n+1/2}_{adv} + G_{diff}(\tau^{n}) + G^{n}_{forcing} \right)
634 \end{equation}
635
636 \fbox{ \begin{minipage}{4.75in}
637 {\em S/R GAD\_ADVECTION} ({\em gad\_advection.F})
638
639 $\tau$: {\bf Tracer} (argument)
640
641 $G^{n+1/2}_{adv}$: {\bf Gtracer} (argument)
642
643 $F_x, F_y, F_r$: {\bf af} (local)
644
645 $U$: {\bf uTrans} (local)
646
647 $V$: {\bf vTrans} (local)
648
649 $W$: {\bf rTrans} (local)
650
651 \end{minipage} }
652
653
654 \section{Comparison of advection schemes}
655
656 Figs.~\ref{fig:advect-2d-lo-diag}, \ref{fig:advect-2d-mid-diag} and
657 \ref{fig:advect-2d-hi-diag} show solutions to a simple diagonal
658 advection problem using a selection of schemes for low, moderate and
659 high Courant numbers, respectively. The top row shows the linear
660 schemes, integrated with the Adams-Bashforth method. Theses schemes
661 are clearly unstable for the high Courant number and weakly unstable
662 for the moderate Courant number. The presence of false extrema is very
663 apparent for all Courant numbers. The middle row shows solutions
664 obtained with the unlimited but multi-dimensional schemes. These
665 solutions also exhibit false extrema though the pattern now shows
666 symmetry due to the multi-dimensional scheme. Also, the schemes are
667 stable at high Courant number where the linear schemes weren't. The
668 bottom row (left and middle) shows the limited schemes and most
669 obvious is the absence of false extrema. The accuracy and stability of
670 the unlimited non-linear schemes is retained at high Courant number
671 but at low Courant number the tendancy is to loose amplitude in sharp
672 peaks due to diffusion. The one dimensional tests shown in
673 Figs.~\ref{fig:advect-1d-lo} and \ref{fig:advect-1d-hi} showed this
674 phenomenum.
675
676 Finally, the bottom left and right panels use the same advection
677 scheme but the right does not use the mutli-dimensional method. At low
678 Courant number this appears to not matter but for moderate Courant
679 number severe distortion of the feature is apparent. Moreoever, the
680 stability of the multi-dimensional scheme is determined by the maximum
681 Courant number applied of each dimension while the stability of the
682 method of lines is determined by the sum. Hence, in the high Courant
683 number plot, the scheme is unstable.
684
685 With many advection schemes implemented in the code two questions
686 arise: ``Which scheme is best?'' and ``Why don't you just offer the
687 best advection scheme?''. Unfortunately, no one advection scheme is
688 ``the best'' for all particular applications and for new applications
689 it is often a matter of trial to determine which is most
690 suitable. Here are some guidelines but these are not the rule;
691 \begin{itemize}
692 \item If you have a coarsely resolved model, using a
693 positive or upwind biased scheme will introduce significant diffusion
694 to the solution and using a centered higher order scheme will
695 introduce more noise. In this case, simplest may be best.
696 \item If you have a high resolution model, using a higher order
697 scheme will give a more accurate solution but scale-selective
698 diffusion might need to be employed. The flux limited methods
699 offer similar accuracy in this regime.
700 \item If your solution has shocks or propagatin fronts then a
701 flux limited scheme is almost essential.
702 \item If your time-step is limited by advection, the multi-dimensional
703 non-linear schemes have the most stablility (upto Courant number 1).
704 \item If you need to know how much diffusion/dissipation has occured you
705 will have a lot of trouble figuring it out with a non-linear method.
706 \item The presence of false extrema is unphysical and this alone is the
707 strongest argument for using a positive scheme.
708 \end{itemize}

  ViewVC Help
Powered by ViewVC 1.1.22