marbl_forcing_mod module reference
This module provides a common datatype to provide forcing for MARBL tracers regardless of driver.
Data Types
Data type used to store diagnostic index returned from |
|
Control structure for this module. |
Functions/Subroutines
Detailed Description
This module provides a common datatype to provide forcing for MARBL tracers regardless of driver.
Type Documentation
- type marbl_forcing_mod/marbl_forcing_diag_ids
Data type used to store diagnostic index returned from
register_diag_field()For the forcing fields that can be written via post_data() For the forcing fields that can be written via post_data()- Type fields:
% atm_fine_dust ::
integer, privateAtmospheric fine dust component of dust_flux.% atm_coarse_dust ::
integer, privateAtmospheric coarse dust component of dust_flux.% atm_bc ::
integer, privateAtmospheric black carbon component of iron_flux.% ice_dust ::
integer, privateSea-ice dust component of dust_flux.% ice_bc ::
integer, privateSea-ice black carbon component of iron_flux.
- type marbl_forcing_mod/marbl_forcing_cs
Control structure for this module.
- Type fields:
% diag ::
type(diag_ctrl), pointerA structure that is used to regulate the timing of diagnostic output.% dust_ratio_thres ::
realcoarse/fine dust ratio threshold [1]% dust_ratio_to_fe_bioavail_frac ::
realratio of dust to iron bioavailability fraction [1]% fe_bioavail_frac_offset ::
realoffset for iron bioavailability fraction [1]% atm_fe_to_bc_ratio ::
realatmospheric iron to black carbon ratio [1]% atm_bc_fe_bioavail_frac ::
realatmospheric black carbon to iron bioavailablity fraction ratio [1]% seaice_fe_to_bc_ratio ::
realsea-ice iron to black carbon ratio [1]% seaice_bc_fe_bioavail_frac ::
realsea-ice black carbon to iron bioavailablity fraction ratio [1]% iron_frac_in_atm_fine_dust ::
realFraction of fine dust from the atmosphere that is iron [1].% iron_frac_in_atm_coarse_dust ::
realFraction of coarse dust from the atmosphere that is iron [1].% iron_frac_in_seaice_dust ::
realFraction of dust from the sea ice that is iron [1].% atm_co2_const ::
realatmospheric CO2 (if specifying a constant value) [ppm]% atm_alt_co2_const ::
realalternate atmospheric CO2 for _ALT_CO2 tracers (if specifying a constant value) [ppm]% diag_ids ::
type(marbl_forcing_diag_ids)used for registering and posting some MARBL forcing fields as diagnostics% use_marbl_tracers ::
logicalmost functions can return immediately MARBL tracers are turned off% atm_co2_iopt ::
integerInteger version of atm_co2_opt, which determines source of atm_co2.% atm_alt_co2_iopt ::
integerInteger version of atm_alt_co2_opt, which determines source of atm_alt_co2.
Function/Subroutine Documentation
- subroutine marbl_forcing_mod/marbl_forcing_init(G, US, param_file, diag, day, inputdir, use_marbl, CS)
- Parameters:
g :: [in] The ocean’s grid structure
us :: [in] A dimensional unit scaling type
param_file ::
param_file[in] A structure to parse for run-time parametersdiag ::
diag[in] Structure used to regulate diagnostic output.day ::
day[in] Time of the start of the run.inputdir ::
inputdir[in] Directory containing input filesuse_marbl ::
use_marbl[in] Is MARBL tracer package active?cs :: [inout] A pointer that is set to point to control structure for MARBL forcing
- Call to:
atm_co2_constant_ioptatm_co2_diagnostic_ioptatm_co2_prognostic_ioptmom_error_handler::mom_errormom_diag_mediator::register_diag_field
- subroutine marbl_forcing_mod/convert_driver_fields_to_forcings(atm_fine_dust_flux, atm_coarse_dust_flux, seaice_dust_flux, atm_bc_flux, seaice_bc_flux, nhx_dep, noy_dep, atm_co2_prog, atm_co2_diag, afracr, swnet_afracr, ifrac_n, swpen_ifrac_n, Time, G, US, i0, j0, fluxes, CS)
- Parameters:
atm_fine_dust_flux ::
atm_fine_dust_flux[in] atmosphere fine dust flux from IOB [kg m-2 s-1]atm_coarse_dust_flux ::
atm_coarse_dust_flux[in] atmosphere coarse dust flux from IOB [kg m-2 s-1]seaice_dust_flux ::
seaice_dust_flux[in] sea ice dust flux from IOB [kg m-2 s-1]atm_bc_flux ::
atm_bc_flux[in] atmosphere black carbon flux from IOB [kg m-2 s-1]seaice_bc_flux ::
seaice_bc_flux[in] sea ice black carbon flux from IOB [kg m-2 s-1]afracr ::
afracr[in] open ocean fraction [1]nhx_dep ::
nhx_dep[in] NHx flux from atmosphere [kg m-2 s-1]noy_dep ::
noy_dep[in] NOy flux from atmosphere [kg m-2 s-1]atm_co2_prog ::
atm_co2_prog[in] Prognostic atmospheric CO2 concentration [ppm]atm_co2_diag ::
atm_co2_diag[in] Diagnostic atmospheric CO2 concentration [ppm]swnet_afracr ::
swnet_afracr[in] shortwave flux * open ocean fraction [W m-2]ifrac_n ::
ifrac_n[in] per-category ice fraction [1]swpen_ifrac_n ::
swpen_ifrac_n[in] per-category shortwave flux * ice fraction [W m-2]time :: [in] The time of the fluxes, used for interpolating the salinity to the right time, when it is being restored.
g :: [in] The ocean’s grid structure
us :: [in] A dimensional unit scaling type
i0 ::
i0[in] i index offsetj0 ::
j0[in] j index offsetfluxes ::
fluxes[inout] MARBL-specific forcing fieldscs :: [inout] A pointer that is set to point to control structure for MARBL forcing
- Call to:
atm_co2_constant_ioptatm_co2_diagnostic_ioptatm_co2_prognostic_ioptmarbl_constants_mod::molw_femom_error_handler::mom_error- Called from: