30 |
{\it GCHEM\_OPTIONS.h} includes the compiler options to be used |
{\it GCHEM\_OPTIONS.h} includes the compiler options to be used |
31 |
in any experiment. For instance \#define ALLOW\_CFC allows |
in any experiment. For instance \#define ALLOW\_CFC allows |
32 |
the CFC code to be run. An important compiler option is |
the CFC code to be run. An important compiler option is |
33 |
\#define PTRACERS\_SEPARATE\_FORCING which determined |
\#define GCHEM\_SEPARATE\_FORCING which determined |
34 |
how and when the tracer forcing is applied (see discussion |
how and when the tracer forcing is applied (see discussion |
35 |
on Forcing below). |
on Forcing below). |
36 |
There are further runtime parameters |
There are further runtime parameters |
65 |
|
|
66 |
There are two routine used to initialize parameters and fields |
There are two routine used to initialize parameters and fields |
67 |
needed by the experiment packages. These are |
needed by the experiment packages. These are |
68 |
{\it gchem\_init\_fixed.F} which is called from packages\_init\_fixed.F, and |
{\it gchem\_init\_fixed.F} which is called from \textit{packages\_init\_fixed.F}, and |
69 |
{\it gchem\_init\_vari.F} called from |
{\it gchem\_init\_vari.F} called from |
70 |
packages\_init\_variable.F. The first should |
packages\_init\_variable.F. The first should |
71 |
be used to call a subroutine specific to the tracer experiment |
be used to call a subroutine specific to the tracer experiment |
80 |
{{\bf LOADING FIELDS}}\\ |
{{\bf LOADING FIELDS}}\\ |
81 |
External forcing fields used by the tracer experiment are read |
External forcing fields used by the tracer experiment are read |
82 |
in by a subroutine (specific to the tracer experiment) called from |
in by a subroutine (specific to the tracer experiment) called from |
83 |
{\it gchem\_fields\_load.F}. This latter is called from forward\_step.F. |
{\it gchem\_fields\_load.F}. This latter is called from \textit{forward\_step.F}. |
84 |
|
|
85 |
\vspace{.5cm} |
\vspace{.5cm} |
86 |
|
|
93 |
interface. For tracers that are essentially passive (e.g. CFC's) |
interface. For tracers that are essentially passive (e.g. CFC's) |
94 |
but may have some surface boundary conditions |
but may have some surface boundary conditions |
95 |
this can easily be done within the regular tracer timestep. In this case |
this can easily be done within the regular tracer timestep. In this case |
96 |
{\it gchem\_forcing\_int.F} is called from ptracers\_integrate.F. |
{\it gchem\_calc\_tendency.F} is called from {\it forward\_step.F}, where the |
97 |
|
reactive (as opposed to the advective diffusive) tendencies are computed. |
98 |
|
These tendencies, stored on the 3D field \textbf{gchemTendency}, are added to |
99 |
|
the passive tracer tendencies \textbf{gPtr} in {\it gchem\_add\_tendency.F}, |
100 |
|
which is called from {\it ptracers\_forcing.F}. |
101 |
For tracers with more complicated dependencies on each other, |
For tracers with more complicated dependencies on each other, |
102 |
and especially tracers which require a smaller timestep than |
and especially tracers which require a smaller timestep than |
103 |
deltaTtracer, it will be easier to use {\it gchem\_forcing\_sep.F} |
deltaTtracer, it will be easier to use {\it gchem\_forcing\_sep.F} |
104 |
which is called from forward\_step.F. There is a |
which is called from forward\_step.F. There is a |
105 |
compiler option set in {\it GCHEM\_OPTIONS.h} that determines |
compiler option set in {\it GCHEM\_OPTIONS.h} that determines |
106 |
which method is used: \#define PTRACERS\_SEPARATE\_FORCING |
which method is used: \#define GCHEM\_SEPARATE\_FORCING |
107 |
does the latter where tracers are forced separately from the |
does the latter where tracers are forced separately from the |
108 |
advection-diffusion code, and \#undef PTRACERS\_SEPARATE\_FORCING |
advection-diffusion code, and \#undef GCHEM\_SEPARATE\_FORCING |
109 |
includes the forcing in the regular timestepping. |
includes the forcing in the regular timestepping. |
110 |
|
|
111 |
\vspace{.5cm} |
\vspace{.5cm} |
112 |
|
|
113 |
\noindent |
\noindent |
114 |
{{\bf DIAGNOSTICS}}\\ |
{{\bf DIAGNOSTICS}}\\ |
115 |
This package also includes routines {\it gchem\_monitor.F} and |
This package also also used the passive tracer routine {\it ptracers\_monitor.F} |
116 |
{\it gchem\_mon\_print.F} which print out tracer statistics |
which prints out tracer statistics |
117 |
as often as the model dynamic statistic diagnostics (dynsys) are written. |
as often as the model dynamic statistic diagnostics (dynsys) are written (or |
118 |
|
as prescribed by the runtime flag \textbf{PTRACERS\_monitorFreq}, set in {\it data.ptracers}). |
119 |
There is also a placeholder for any tracer experiment |
There is also a placeholder for any tracer experiment |
120 |
specific diagnostics to be calculated and printed to files. |
specific diagnostics to be calculated and printed to files. |
121 |
This is done in {\it gchem\_diags.F}. For instance the time average CO2 |
This is done in {\it gchem\_diags.F}. For instance the time average CO2 |
122 |
air-sea fluxes, and sea surface pH (among others) are written |
air-sea fluxes, and sea surface pH (among others) are written |
123 |
out by dic\_biotic\_diags.F which is called from gchem\_diags.F. |
out by {\it dic\_biotic\_diags.F} which is called from {\it gchem\_diags.F}. |
124 |
|
|
125 |
\subsection{Do's and Don'ts} |
\subsection{Do's and Don'ts} |
126 |
|
|
127 |
The pkg ptracer is required with use with this pkg. |
The pkg ptracer is required with use with this pkg. Also, as usual, the |
128 |
By itself, gchem pkg will read in {\bf data.gchem} and will |
runtime flag \textbf{useGCHEM} must be set to \textbf{.TRUE.} in \textbf{data.pkg}. |
129 |
write out ptracer diagnostics. It requires tracer experiment |
By itself, gchem pkg will read in \textbf{data.gchem} and will |
130 |
|
write out gchem diagnostics. It requires tracer experiment |
131 |
specific calls to do anything else (for instance the calls |
specific calls to do anything else (for instance the calls |
132 |
to dic and cfc pkgs). |
to dic and cfc pkgs). |
133 |
|
|