Home Contact Us Site Map  
 
       
    next up previous contents
Next: 2.7 Staggered baroclinic time-stepping Up: 2. Discretization and Algorithm Previous: 2.5 Implicit time-stepping: backward   Contents


2.6 Synchronous time-stepping: variables co-located in time

Figure 2.4: A schematic of the explicit Adams-Bashforth and implicit time-stepping phases of the algorithm. All prognostic variables are co-located in time. Explicit tendencies are evaluated at time level $ n$ as a function of the state at that time level (dotted arrow). The explicit tendency from the previous time level, $ n-1$, is used to extrapolate tendencies to $ n+1/2$ (dashed arrow). This extrapolated tendency allows variables to be stably integrated forward-in-time to render an estimate ($ *$-variables) at the $ n+1$ time level (solid arc-arrow). The operator $ {\cal L}$ formed from implicit-in-time terms is solved to yield the state variables at time level $ n+1$.
\resizebox{5.0in}{!}{\includegraphics{part2/adams-bashforth-sync.eps}}

Figure 2.5: Calling tree for the overall synchronous algorithm using Adams-Bashforth time-stepping. The place where the model geometry (hFac factors) is updated is added here but is only relevant for the non-linear free-surface algorithm. For completeness, the external forcing, ocean and atmospheric physics have been added, although they are mainly optional
% latex2html id marker 4430
\fbox{ \begin{minipage}{4.7in} \begin{tabbing}
aaa ...
...lter (FFT) \\
\>\> CONVECTIVE\_ADJUSTMENT \\lq  \\
\end{tabbing} \end{minipage} }

The Adams-Bashforth extrapolation of explicit tendencies fits neatly into the pressure method algorithm when all state variables are co-located in time. Fig. 2.4 illustrates the location of variables in time and the evolution of the algorithm with time. The algorithm can be represented by the sequential solution of the follow equations:

$\displaystyle G_{\theta,S}^{n}$ $\displaystyle =$ $\displaystyle G_{\theta,S} ( u^n, \theta^n, S^n )$ (2.29)
$\displaystyle G_{\theta,S}^{(n+1/2)}$ $\displaystyle =$ $\displaystyle (3/2+\epsilon_{AB}) G_{\theta,S}^{n}-(1/2+\epsilon_{AB}) G_{\theta,S}^{n-1}$ (2.30)
$\displaystyle (\theta^*,S^*)$ $\displaystyle =$ $\displaystyle (\theta^{n},S^{n}) + \Delta t G_{\theta,S}^{(n+1/2)}$ (2.31)
$\displaystyle (\theta^{n+1},S^{n+1})$ $\displaystyle =$ $\displaystyle {\cal L}^{-1}_{\theta,S} (\theta^*,S^*)$ (2.32)
$\displaystyle \phi^n_{hyd}$ $\displaystyle =$ $\displaystyle \int b(\theta^n,S^n) dr$ (2.33)
$\displaystyle \vec{\bf G}_{\vec{\bf v}}^{n}$ $\displaystyle =$ $\displaystyle \vec{\bf G}_{\vec{\bf v}} ( \vec{\bf v}^n, \phi^n_{hyd} )$ (2.34)
$\displaystyle \vec{\bf G}_{\vec{\bf v}}^{(n+1/2)}$ $\displaystyle =$ $\displaystyle (3/2 + \epsilon_{AB} ) \vec{\bf G}_{\vec{\bf v}}^{n} - (1/2 + \epsilon_{AB} ) \vec{\bf G}_{\vec{\bf v}}^{n-1}$ (2.35)
$\displaystyle \vec{\bf v}^{*}$ $\displaystyle =$ $\displaystyle \vec{\bf v}^{n} + \Delta t \vec{\bf G}_{\vec{\bf v}}^{(n+1/2)}$ (2.36)
$\displaystyle \vec{\bf v}^{**}$ $\displaystyle =$ $\displaystyle {\cal L}_{\vec{\bf v}}^{-1} ( \vec{\bf v}^* )$ (2.37)
$\displaystyle \eta^*$ $\displaystyle =$ $\displaystyle \epsilon_{fs} \left( \eta^{n} + \Delta t (P-E) \right)- \Delta t
\nabla \cdot H \widehat{ \vec{\bf v}^{**} }$ (2.38)
$\displaystyle \nabla \cdot g H \nabla \eta^{n+1}$ $\displaystyle -$ $\displaystyle \frac{\epsilon_{fs} \eta^{n+1}}{\Delta t^2}
~ = ~ - \frac{\eta^*}{\Delta t^2}$ (2.39)
$\displaystyle \vec{\bf v}^{n+1}$ $\displaystyle =$ $\displaystyle \vec{\bf v}^{*} - \Delta t g \nabla \eta^{n+1}$ (2.40)

Fig. 2.4 illustrates the location of variables in time and evolution of the algorithm with time. The Adams-Bashforth extrapolation of the tracer tendencies is illustrated by the dashed arrow, the prediction at $ n+1$ is indicated by the solid arc. Inversion of the implicit terms, $ {\cal
L}^{-1}_{\theta,S}$, then yields the new tracer fields at $ n+1$. All these operations are carried out in subroutine THERMODYNAMICS an subsidiaries, which correspond to equations 2.29 to 2.32. Similarly illustrated is the Adams-Bashforth extrapolation of accelerations, stepping forward and solving of implicit viscosity and surface pressure gradient terms, corresponding to equations 2.34 to 2.40. These operations are carried out in subroutines DYNAMCIS, SOLVE_FOR_PRESSURE and MOMENTUM_CORRECTION_STEP. This, then, represents an entire algorithm for stepping forward the model one time-step. The corresponding calling tree is given in 2.5.


next up previous contents
Next: 2.7 Staggered baroclinic time-stepping Up: 2. Discretization and Algorithm Previous: 2.5 Implicit time-stepping: backward   Contents
mitgcm-support@dev.mitgcm.org
Copyright © 2002 Massachusetts Institute of Technology