Module ocean_po4_pre_mod
OVERVIEW
Add-on ocean biogeochemistry module
This module has simple implementation of preformed phosphate.
Where,
po4_pre=po4, if z <= mld
It is an optional package that requires TOPAZ, ocmip2_biotic, or ocean_bgc_restore to be running.
Various mixed layer depth options are available and can be
set via namelist
1 = kpp mixed layer (default)
2 = buoyancy criteria defined mixed layer, where this buoyancy
references in situ density
3 = buoyancy criteria defined mixed layer, where this buoyancy
references potential density
OTHER MODULES USED
field_manager_mod
mpp_mod
fms_mod
time_manager_mod
mpp_domains_mod
ocean_tpm_util_mod
fm_util_mod
ocean_types_mod
ocean_tracer_diag_mod
diag_manager_mod
PUBLIC INTERFACE
PUBLIC DATA
None.
PUBLIC ROUTINES
-
allocate_arrays
-
DESCRIPTION
- Dynamically allocate arrays
-
ocean_po4_pre_bbc
-
DESCRIPTION
- calculate the surface boundary conditions
-
ocean_po4_pre_end
-
DESCRIPTION
- Clean up various PO4_PRE quantities for this run.
-
ocean_po4_pre_sbc
-
DESCRIPTION
- Calculate the surface boundary conditions
-
ocean_po4_pre_flux_init
-
DESCRIPTION
- Set up any extra fields needed by the ocean-atmosphere gas fluxes
-
ocean_po4_pre_init
-
DESCRIPTION
- Set up any extra fields needed by the tracer packages
Save pointers to various "types", such as Grid and Domains.
-
ocean_po4_pre_init_sfc
-
DESCRIPTION
- Initialize surface fields for flux calculations
Note: this subroutine should be merged into ocean_po4_pre_start
-
ocean_po4_pre_sum_sfc
-
DESCRIPTION
- Sum surface fields for flux calculations
-
ocean_po4_pre_zero_sfc
-
DESCRIPTION
- Sum surface fields for flux calculations
-
ocean_po4_pre_avg_sfc
-
DESCRIPTION
- Sum surface fields for flux calculations
-
ocean_po4_pre_sfc_end
-
DESCRIPTION
- Finish up stuff for surface fields for flux calculations
-
ocean_po4_pre_source
-
DESCRIPTION
- compute the source terms for the PO4_PREs, including boundary
conditions (not done in setvbc, to minimize number
of hooks required in MOM base code)
-
ocean_po4_pre_start
-
DESCRIPTION
- Initialize variables, read in namelists, calculate constants for a given run
and allocate diagnostic arrays
-
ocean_po4_pre_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
-
set_array
-
DESCRIPTION
- Set up an array covering the model domain with a user-specified
value, in user-specified regions. There are a given number of
2-d regions specified by the values slat, nlat, wlon and elon.
The longitudes are for a cyclic domain, and if wlon and elon
are on opposite sides of the cut, the correct thing will
be done. Elon is considered to be east of wlon, so if elon is
less than wlon, then the region east of elon to the cut will be
filled, and the region from the cut to wlon will be filled.
After setting up the array in this routine, it may prove useful
to allow fine-tuning the settings via an array in a namelist.
Arguments:
Input:
num_regions = number of user-specified regions which will be
filled
wlon = 1-d array of western (starting) longitudes for the
rectangular regions
elon = 1-d array of eastern (ending) longitudes for the
rectangular regions
slat = 1-d array of southern (starting) latitudes for the
rectangular regions
nlat = 1-d array of northern (ending) latitudes for the
rectangular regions
Note: if slat >= nlat, then nothing is done
for that region
set_value = the value to assign to array in the user-specified
regions
unset_value = the value to assign to array outside of the
user-specified regions
name = character variable used in informative messages
coastal_only = true to limit changes only to coastal points
(i.e., at least one bordering point is land)
Output:
array = 2-d array which will contain the set- and unset-
values. The array is assumed to have a border
one unit wide on all edges, ala MOM. A cyclic
boundary condition will be set if requested.
DATA SETS
None.
ERROR MESSAGES
None.
REFERENCES
COMPILER SPECIFICS
None.
PRECOMPILER OPTIONS
None.
LOADER OPTIONS
None.
TEST PROGRAM
None.
KNOWN BUGS
None.
NOTES
None.
FUTURE PLANS
None.