/[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.4 - (show annotations) (download) (as text)
Wed Sep 26 17:00:34 2001 UTC (23 years, 9 months ago) by adcroft
Branch: MAIN
Changes since 1.3: +315 -18 lines
File MIME type: application/x-tex
More tracer doc.

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

  ViewVC Help
Powered by ViewVC 1.1.22