2 |
% $Name$ |
% $Name$ |
3 |
|
|
4 |
\section{Tracer equations} |
\section{Tracer equations} |
5 |
\label{sec:tracer_equations} |
\label{sect:tracer_equations} |
6 |
|
|
7 |
The basic discretization used for the tracer equations is the second |
The basic discretization used for the tracer equations is the second |
8 |
order piece-wise constant finite volume form of the forced |
order piece-wise constant finite volume form of the forced |
15 |
described here. |
described here. |
16 |
|
|
17 |
\subsection{Time-stepping of tracers: ABII} |
\subsection{Time-stepping of tracers: ABII} |
18 |
\label{sec:tracer_equations_abII} |
\label{sect:tracer_equations_abII} |
19 |
|
|
20 |
The default advection scheme is the centered second order method which |
The default advection scheme is the centered second order method which |
21 |
requires a second order or quasi-second order time-stepping scheme to |
requires a second order or quasi-second order time-stepping scheme to |
43 |
everywhere else. This term is therefore referred to as the surface |
everywhere else. This term is therefore referred to as the surface |
44 |
correction term. Global conservation is not possible using the |
correction term. Global conservation is not possible using the |
45 |
flux-form (as here) and a linearized free-surface |
flux-form (as here) and a linearized free-surface |
46 |
(\cite{Griffies00,Campin02}). |
(\cite{griffies:00,campin:02}). |
47 |
|
|
48 |
The continuity equation can be recovered by setting |
The continuity equation can be recovered by setting |
49 |
$G_{diff}=G_{forc}=0$ and $\tau=1$. |
$G_{diff}=G_{forc}=0$ and $\tau=1$. |
123 |
|
|
124 |
|
|
125 |
\section{Linear advection schemes} |
\section{Linear advection schemes} |
126 |
|
\label{sect:tracer-advection} |
127 |
|
|
128 |
\begin{figure} |
\begin{figure} |
129 |
\resizebox{5.5in}{!}{\includegraphics{part2/advect-1d-lo.eps}} |
\resizebox{5.5in}{!}{\includegraphics{part2/advect-1d-lo.eps}} |
201 |
|
|
202 |
For non-divergent flow, this discretization can be shown to conserve |
For non-divergent flow, this discretization can be shown to conserve |
203 |
the tracer both locally and globally and to globally conserve tracer |
the tracer both locally and globally and to globally conserve tracer |
204 |
variance, $\tau^2$. The proof is given in \cite{Adcroft95,Adcroft97}. |
variance, $\tau^2$. The proof is given in \cite{adcroft:95,adcroft:97}. |
205 |
|
|
206 |
\fbox{ \begin{minipage}{4.75in} |
\fbox{ \begin{minipage}{4.75in} |
207 |
{\em S/R GAD\_C2\_ADV\_X} ({\em gad\_c2\_adv\_x.F}) |
{\em S/R GAD\_C2\_ADV\_X} ({\em gad\_c2\_adv\_x.F}) |
388 |
r = \frac{ \tau_{i+1} - \tau_{i} }{ \tau_{i} - \tau_{i-1} } & \forall & u < 0 |
r = \frac{ \tau_{i+1} - \tau_{i} }{ \tau_{i} - \tau_{i-1} } & \forall & u < 0 |
389 |
\end{eqnarray} |
\end{eqnarray} |
390 |
as it's argument. There are many choices of limiter function but we |
as it's argument. There are many choices of limiter function but we |
391 |
only provide the Superbee limiter \cite{Roe85}: |
only provide the Superbee limiter \cite{roe:85}: |
392 |
\begin{equation} |
\begin{equation} |
393 |
\psi(r) = \max[0,\min[1,2r],\min[2,r]] |
\psi(r) = \max[0,\min[1,2r],\min[2,r]] |
394 |
\end{equation} |
\end{equation} |
450 |
|
|
451 |
The DST3 method described above must be used in a forward-in-time |
The DST3 method described above must be used in a forward-in-time |
452 |
manner and is stable for $0 \le |c| \le 1$. Although the scheme |
manner and is stable for $0 \le |c| \le 1$. Although the scheme |
453 |
appears to be forward-in-time, it is in fact second order in time and |
appears to be forward-in-time, it is in fact third order in time and |
454 |
the accuracy increases with the Courant number! For low Courant |
the accuracy increases with the Courant number! For low Courant |
455 |
number, DST3 produces very similar results (indistinguishable in |
number, DST3 produces very similar results (indistinguishable in |
456 |
Fig.~\ref{fig:advect-1d-lo}) to the linear third order method but for |
Fig.~\ref{fig:advect-1d-lo}) to the linear third order method but for |