1 |
% $Header: /u/gcmpack/manual/part6/generic_advdiff.tex,v 1.6 2005/08/01 18:07:24 cnh Exp $ |
2 |
% $Name: $ |
3 |
|
4 |
|
5 |
\subsection{Generic Advection/Diffusion} |
6 |
\label{sec:pkg:gad} |
7 |
\begin{rawhtml} |
8 |
<!-- CMIREDIR:package_gad: --> |
9 |
\end{rawhtml} |
10 |
|
11 |
The {\tt generic\_advdiff} package contains high-level |
12 |
subroutines to solve the advection-diffusion equation |
13 |
of any tracer, either active (potential temperature, |
14 |
salinity or water vapor) or passive (see pkg/ptracers). |
15 |
(see also sections \ref{sect:tracer_equations} to |
16 |
\ref{sect:tracer_advection_schemes}). |
17 |
|
18 |
|
19 |
\subsubsection{Introduction} |
20 |
Package ``generic\_advdiff'' provides a common set of routines for |
21 |
calculating advective/diffusive fluxes for tracers (cell centered |
22 |
quantities on a C-grid). |
23 |
|
24 |
Many different advection schemes are available: the standard centered |
25 |
second order, centered fourth order and upwind biased third order |
26 |
schemes are known as linear methods and require some stable |
27 |
time-stepping method such as Adams-Bashforth. Alternatives such as |
28 |
flux-limited schemes are stable in the forward sense and are best |
29 |
combined with the multi-dimensional method provided in gad\_advection. |
30 |
|
31 |
\subsubsection{Key subroutines, parameters and files} |
32 |
\label{sec:pkg:gad:implementation_synopsis} |
33 |
There are two high-level routines: |
34 |
\begin{itemize} |
35 |
\item{GAD\_CALC\_RHS} calculates all fluxes at time level ``n'' and is |
36 |
used for the standard linear schemes. This must be used in |
37 |
conjuction with Adams--Bashforth time stepping. Diffusive and |
38 |
parameterized fluxes are always calculated here. |
39 |
|
40 |
\item{GAD\_ADVECTION} calculates just the advective fluxes using the |
41 |
non-linear schemes and can not be used in conjuction with |
42 |
Adams--Bashforth time stepping. |
43 |
\end{itemize} |
44 |
|
45 |
\subsubsection{GAD Diagnostics} |
46 |
\label{sec:pkg:gad:diagnostics} |
47 |
|
48 |
\begin{verbatim} |
49 |
|
50 |
------------------------------------------------------------------------ |
51 |
<-Name->|Levs|<-parsing code->|<-- Units -->|<- Tile (max=80c) |
52 |
------------------------------------------------------------------------ |
53 |
ADVr_TH | 15 |WM LR |degC.m^3/s |Vertical Advective Flux of Pot.Temperature |
54 |
ADVx_TH | 15 |UU 087MR |degC.m^3/s |Zonal Advective Flux of Pot.Temperature |
55 |
ADVy_TH | 15 |VV 086MR |degC.m^3/s |Meridional Advective Flux of Pot.Temperature |
56 |
DFrE_TH | 15 |WM LR |degC.m^3/s |Vertical Diffusive Flux of Pot.Temperature (Explicit part) |
57 |
DIFx_TH | 15 |UU 090MR |degC.m^3/s |Zonal Diffusive Flux of Pot.Temperature |
58 |
DIFy_TH | 15 |VV 089MR |degC.m^3/s |Meridional Diffusive Flux of Pot.Temperature |
59 |
DFrI_TH | 15 |WM LR |degC.m^3/s |Vertical Diffusive Flux of Pot.Temperature (Implicit part) |
60 |
ADVr_SLT| 15 |WM LR |psu.m^3/s |Vertical Advective Flux of Salinity |
61 |
ADVx_SLT| 15 |UU 094MR |psu.m^3/s |Zonal Advective Flux of Salinity |
62 |
ADVy_SLT| 15 |VV 093MR |psu.m^3/s |Meridional Advective Flux of Salinity |
63 |
DFrE_SLT| 15 |WM LR |psu.m^3/s |Vertical Diffusive Flux of Salinity (Explicit part) |
64 |
DIFx_SLT| 15 |UU 097MR |psu.m^3/s |Zonal Diffusive Flux of Salinity |
65 |
DIFy_SLT| 15 |VV 096MR |psu.m^3/s |Meridional Diffusive Flux of Salinity |
66 |
DFrI_SLT| 15 |WM LR |psu.m^3/s |Vertical Diffusive Flux of Salinity (Implicit part) |
67 |
\end{verbatim} |
68 |
|
69 |
|