1 |
\section {GCHEM Package} |
\subsection {GCHEM Package} |
2 |
\label{sec:pkg:gchem} |
\label{sec:pkg:gchem} |
3 |
\begin{rawhtml} |
\begin{rawhtml} |
4 |
<!-- CMIREDIR:package_gchem: --> |
<!-- CMIREDIR:package_gchem: --> |
5 |
\end{rawhtml} |
\end{rawhtml} |
6 |
|
|
7 |
\subsection {Introduction} |
\subsubsection {Introduction} |
8 |
This package has been developed as interface to the PTRACERS package. |
This package has been developed as interface to the PTRACERS package. |
9 |
The purpose is to provide a structure where various (any) |
The purpose is to provide a structure where various (any) |
10 |
tracer experiments can be added to the code. |
tracer experiments can be added to the code. |
17 |
the subroutines used by specific biogeochemical experiments, |
the subroutines used by specific biogeochemical experiments, |
18 |
and does not "do" anything on its own. |
and does not "do" anything on its own. |
19 |
|
|
20 |
There are two examples: cfc which looks at 2 tracers with a |
There are two examples: {\bf cfc} which looks at 2 tracers with a |
21 |
simple external forcing and dic with 5 tracers whose tendency terms |
simple external forcing and {\bf dic} with 4,5 or 6 tracers |
22 |
|
whose tendency terms |
23 |
are related to one another. We will discuss these here only as |
are related to one another. We will discuss these here only as |
24 |
how they provide examples to use this package. |
how they provide examples to use this package. |
25 |
|
|
26 |
|
|
27 |
\subsection {Key subroutines and parameters} |
\subsubsection {Key subroutines and parameters} |
28 |
|
|
29 |
\noindent |
\noindent |
30 |
{{\bf FRAMEWORK}} \\ |
{{\bf FRAMEWORK}} \\ |
31 |
|
The different biogeochemistry frameworks (e.g. cfc of dic) |
32 |
|
are specified in the packages\_conf file. |
33 |
{\it GCHEM\_OPTIONS.h} includes the compiler options to be used |
{\it GCHEM\_OPTIONS.h} includes the compiler options to be used |
34 |
in any experiment. For instance \#define ALLOW\_CFC allows |
in any experiment. |
35 |
the CFC code to be run. An important compiler option is |
An important compiler option is |
36 |
\#define GCHEM\_SEPARATE\_FORCING which determined |
\#define GCHEM\_SEPARATE\_FORCING which determined |
37 |
how and when the tracer forcing is applied (see discussion |
how and when the tracer forcing is applied (see discussion |
38 |
on Forcing below). |
on Forcing below). See section on dic for some additional |
39 |
|
flags that can be set for that experiment. |
40 |
|
\\ |
41 |
|
|
42 |
There are further runtime parameters |
There are further runtime parameters |
43 |
set in {\it data.gchem} and kept in common block {\it GCHEM.h}. |
set in {\it data.gchem} and kept in common block {\it GCHEM.h}. |
44 |
These runtime options include:\\ |
These runtime options include:\\ |
45 |
$\bullet$ {\bf tIter0} which is the integer timestep when the tracer experiment |
$\bullet$ Parameters to set the timing for periodic forcing files to |
46 |
is initialized. If {\bf nIter0} $=$ {\bf tIter0} then the tracers |
be loaded are: {\it gchem\_ForcingPeriod}, {\it gchem\_ForcingCycle}. |
47 |
are initialized to zero or from initial files. If {\bf nIter0} $>$ |
The former is how often to load, the latter is how often to cycle |
48 |
{\bf tIter0} then tracers (and previous timestep tendency terms) |
through those fields (eg. period couple be monthly and cycle one year). |
49 |
are read in from a the ptracers pickup file. Note that tracers |
This is used in {\it dic} and {\it cfc}, with gchem\_ForcingPeriod=0 |
50 |
of zeros will be carried around if {\bf nIter0} $<$ {\bf tIter0}. |
meaning no periodic forcing. |
51 |
\\ |
\\ |
52 |
$\bullet$ {\bf nsubtime} is the integer number of extra timesteps |
$\bullet$ {\bf nsubtime} is the integer number of extra timesteps |
53 |
required by the tracer experiment. This will give a timestep |
required by the tracer experiment. This will give a timestep |
59 |
wind speed is needed in both DIC and CFC packages to calculate |
wind speed is needed in both DIC and CFC packages to calculate |
60 |
the air-sea exchange of gases. Not all file names will be used |
the air-sea exchange of gases. Not all file names will be used |
61 |
for every tracer experiment. |
for every tracer experiment. |
62 |
|
\\ |
63 |
|
$\bullet$ {\bf gchem\_int\_*} are variable names for run-time set integer numbers. (Currently 1 through 5). |
64 |
|
\\ |
65 |
|
$\bullet$ {\bf gchem\_rl\_*} are variable names for run-time set real numbers. (Currently 1 through 5). |
66 |
|
\\ |
67 |
|
$\bullet$ Note that the old {\bf tIter0} has been replaced by {\bf PTRACERS\_Iter0} which is |
68 |
|
set in data.ptracers instead. |
69 |
|
|
70 |
\vspace{.5cm} |
\vspace{.5cm} |
71 |
|
|
135 |
air-sea fluxes, and sea surface pH (among others) are written |
air-sea fluxes, and sea surface pH (among others) are written |
136 |
out by {\it dic\_biotic\_diags.F} which is called from {\it gchem\_diags.F}. |
out by {\it dic\_biotic\_diags.F} which is called from {\it gchem\_diags.F}. |
137 |
|
|
138 |
\subsection{Do's and Don'ts} |
\subsubsection{GCHEM Diagnostics} |
139 |
|
\label{sec:pkg:gchem:diagnostics} |
140 |
|
|
141 |
|
These diagnostics are particularly for the {\bf dic} package. |
142 |
|
|
143 |
|
{\footnotesize |
144 |
|
\begin{verbatim} |
145 |
|
|
146 |
|
------------------------------------------------------------------------ |
147 |
|
<-Name->|Levs|<-parsing code->|<-- Units -->|<- Tile (max=80c) |
148 |
|
------------------------------------------------------------------------ |
149 |
|
DICBIOA | 15 |SM P MR |mol/m3/sec |Biological Productivity (mol/m3/s) |
150 |
|
DICCARB | 15 |SM P MR |mol eq/m3/sec |Carbonate chg-biol prod and remin (mol eq/m3/s) |
151 |
|
DICTFLX | 1 |SM P L1 |mol/m3/sec |Tendency of DIC due to air-sea exch (mol/m3/s) |
152 |
|
DICOFLX | 1 |SM P L1 |mol/m3/sec |Tendency of O2 due to air-sea exch (mol/m3/s) |
153 |
|
DICCFLX | 1 |SM P L1 |mol/m2/sec |Flux of CO2 - air-sea exch (mol/m2/s) |
154 |
|
DICPCO2 | 1 |SM P M1 |atm |Partial Pressure of CO2 (atm) |
155 |
|
DICPHAV | 1 |SM P M1 |dimensionless |pH (dimensionless) |
156 |
|
\end{verbatim} |
157 |
|
} |
158 |
|
|
159 |
|
\subsubsection{Do's and Don'ts} |
160 |
|
|
161 |
The pkg ptracer is required with use with this pkg. Also, as usual, the |
The pkg ptracer is required with use with this pkg. Also, as usual, the |
162 |
runtime flag \textbf{useGCHEM} must be set to \textbf{.TRUE.} in \textbf{data.pkg}. |
runtime flag \textbf{useGCHEM} must be set to \textbf{.TRUE.} in \textbf{data.pkg}. |
165 |
specific calls to do anything else (for instance the calls |
specific calls to do anything else (for instance the calls |
166 |
to dic and cfc pkgs). |
to dic and cfc pkgs). |
167 |
|
|
168 |
\subsection{Reference Material} |
\subsubsection{Reference Material} |
169 |
|
|
170 |
|
\subsubsection{Experiments and tutorials that use gchem} |
171 |
|
\label{sec:pkg:gchem:experiments} |
172 |
|
|
173 |
|
\begin{itemize} |
174 |
|
\item{Global Ocean biogeochemical tutorial, in tutorial\_global\_oce\_biogeo verification directory, |
175 |
|
described in section \ref{sect:eg-biogeochem_tutorial} uses gchem and dic } |
176 |
|
|
177 |
|
\item{Global Ocean cfc tutorial, in tutorial\_cfc\_offline verification directory, |
178 |
|
uses gchem and cfc (and offline) described in \ref{sect:eg-cfc_offline} } |
179 |
|
|
180 |
|
\item{Global Ocean online cfc example in cfc\_example verification directory, |
181 |
|
uses gchem and cfc} |
182 |
|
|
183 |
|
|
184 |
|
|
185 |
|
\end{itemize} |
186 |
|
|