Module ocmip2_cfc_mod
OVERVIEW
Ocean Carbon Model Intercomparison Study II: CFC module
Implementation of routines to solve the OCMIP-2 CFC
simulations as outlined in the CFC-HOWTO documentation,
revision 1.6, 1999/04/29.
OTHER MODULES USED
field_manager_mod
ocean_tpm_util_mod
mpp_mod
fms_mod
diag_manager_mod
time_interp_external_mod
time_manager_mod
mpp_io_mod
PUBLIC INTERFACE
PUBLIC DATA
None.
PUBLIC ROUTINES
-
allocate_arrays
-
DESCRIPTION
- Dynamically allocate arrays
-
bc_interp
-
DESCRIPTION
- Interpolates atmospheric CFC-11 and CFC-12 to the timestep of the model
ARGUMENT LIST -
Note: Variable type is given in square brackets (below)
(r-real, i-integer, l-logical, c-character; s-scaler, a-array).
INPUT:
[rs] - year_model = decimal year of model (e.g., 1990.67), as
computed from the timestep and the year of
the initialization of the simulation. This
information is necessary to interpolate
atmospheric levels of CO2 (atmco2_t) and
C-14 (atmc14_t) from the historical records
chosen for OCMIP-2 (from Enting et al. (1994).
OUTPUT:
[rs] - cfc11 = Atmospheric CFC-11 (ppvt) at "year_model"
[ra] - cfc12 = 3-member array of atmospheric C-14 at
year_model". Sequentially, the 3 values
correspond to forcing in 3 latitudinal bands:
(1) 90S - 20S,
(2) 20S - 20N, and
(3) 20N - 90N.
James Orr, LSCE/CEA-CNRS, Saclay, France, 20 April 1999
-
locate
-
DESCRIPTION
- After Numerical recipes:
Given an array XX of length N, and a given value of X, returns a
value of J such that X is between XX(J) and XX(J+1). XX must be
monotonic, either increasing or decreasing. J=0 or J=N is
returned to indicate that X is out of range.
New features:
If "period" is specified, then the array, xx, is considered
to be periodic with a period of "period". If "x_in" is out
of range, then add or subtract "period" once to attempt to
make "x_in" be in range.
If "nearest" is specified, and true, then return "j" such
that it is the element of "xx" which is nearest to the value
of "x_in" (where "x_in" may have been modified by the value
"period", above). With this option, "j" will be in
the range 1 <= j <= n.
-
ocmip2_cfc_bbc
-
DESCRIPTION
- calculate the surface boundary conditions
-
ocmip2_cfc_end
-
DESCRIPTION
- Clean up various CFC quantities for this run.
-
ocmip2_cfc_sbc
-
DESCRIPTION
- Calculate the surface boundary conditions
-
ocmip2_cfc_init
-
DESCRIPTION
- Set up any extra fields needed by the tracer packages
Save pointers to various "types", such as Grid and Domains.
-
ocmip2_cfc_source
-
DESCRIPTION
- compute the source terms for the CFCs, including boundary
conditions (not done in setvbc, to minimize number
of hooks required in MOM base code)
-
ocmip2_cfc_start
-
DESCRIPTION
- Initialize variables, read in namelists, calculate constants
for a given run and allocate diagnostic arrays
-
ocmip2_cfc_tracer
-
DESCRIPTION
- Perform things that should be done in tracer, but are done here
in order to minimize the number of hooks necessary in the MOM4 basecode
-
read_cfc_timehist
-
DESCRIPTION
- =====================================================================
SUBROUTINE read_cfc_timehist
PURPOSE: reads in the atmospheric time histories of CFC from
a specially prepared file. This file should contain
five columns with the following data entries
Year, CFC-11(NH),CFC-12(NH),
CFC-11(SH),CFC-12(SH)
=====================================================================
DATA SETS
None.
ERROR MESSAGES
None.
REFERENCES
- http://www.ipsl.jussieu.fr/OCMIP/phase2/simulations/CFC/HOWTO-CFC.html
COMPILER SPECIFICS
None.
PRECOMPILER OPTIONS
None.
LOADER OPTIONS
None.
TEST PROGRAM
None.
KNOWN BUGS
None.
NOTES
None.
FUTURE PLANS
None.