Skeleton ocean-atmosphere configuration
A "skeleton" ocean-atmosphere configuration, defining Domains and fluxes but no biogeochemistry. Illustrative fluxes are configured for a C, O, P model.
yaml configuration file
The model configuration (file examples/skeleton_configuration/PALEO_examples_oceanskeleton_cfg.yaml
) contains:
# skeleton atmosphere-ocean configuration
# This defines Domains and fluxes, with no state variables or biogeochemistry
# Illustrative fluxes are defined for a carbon, oxygen, phosphorus model.
ocean_skeleton_COP:
parameters:
CIsotope: IsotopeLinear
domains:
global:
# scalar domain used for budgets and forcings
reactions:
atm:
# scalar domain for atmospheric reservoirs and chemistry
reactions:
# apply air-sea flux to atmosphere
transfer_fluxAtmtoOceansurface:
class: ReactionFluxTransfer
parameters:
transfer_matrix: Distribute
transfer_multiplier: -1.0
input_fluxes: fluxAtmtoOceansurface.flux_$fluxname$
output_fluxes: $fluxname$_sms
fluxAtmtoOceansurface:
# air-sea exchange fluxes
reactions:
fluxtarget:
class: ReactionFluxTarget
parameters:
flux_totals: true
fluxlist: ["CO2::CIsotope", "O2"]
oceansurface:
# air-sea exchange reactions
reactions:
# apply air-sea flux to ocean surface
transfer_fluxAtmtoOceansurface:
class: ReactionFluxTransfer
parameters:
transfer_matrix: Identity
input_fluxes: fluxAtmtoOceansurface.flux_$fluxname$
output_fluxes: ocean.oceansurface.$fluxname$_sms
variable_links:
output_CO2: ocean.oceansurface.DIC_sms
ocean:
reactions:
# transport reaction defines geometry and implements ocean transport
transport3box:
class: ReactionOceanTransport3box
parameters:
temp: [21.5, 2.0, 2.0]
temp_trackglobal: false
fluxOceanfloor:
# particulate and solute ocean floor fluxes
reactions:
particulatefluxtarget:
class: ReactionFluxTarget
parameters:
flux_totals: true
target_prefix: particulateflux_
fluxlist: ["P", "N", "Corg::CIsotope", "Ccarb::CIsotope"] # particulate organic matter is defined by Corg, N, P, Ccarb components
solutefluxtarget:
class: ReactionFluxTarget
parameters:
flux_totals: true
target_prefix: soluteflux_
fluxlist: ["DIC::CIsotope", "TAlk", "P", "O2"] # , "Ca" # solute fluxes should match ocean reservoirs
oceanfloor:
# reactions that remineralize or bury particulate fluxes
reactions:
# apply particulate fluxes to oceanfloor
transfer_particulatefluxOceanfloor:
class: ReactionFluxTransfer
parameters:
transfer_matrix: Identity
input_fluxes: fluxOceanfloor.particulateflux_$fluxname$
output_fluxes: particulateflux_$fluxname$
variable_links:
# apply solute fluxes to ocean
transfer_solutefluxOceanfloor:
class: ReactionFluxTransfer
parameters:
transfer_matrix: Identity
input_fluxes: fluxOceanfloor.soluteflux_$fluxname$
output_fluxes: ocean.oceanfloor.$fluxname$_sms
variable_links:
fluxOceanBurial:
# burial fluxes
reactions:
target:
class: ReactionFluxTarget
parameters:
flux_totals: true
fluxlist: ["Ccarb::CIsotope", "Corg::CIsotope", "P", "Pauth", "PFe", "Porg", ]
Variables defined
julia> include("PALEO_examples_oceanskeleton.jl")
show(PB.show_variables(model); allrows=true, allcols=true, eltypes=false, show_row_number=false)
48×8 DataFrame
domain name type units vfunction space field_data description
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
fluxAtmtoOceansurface flux_CO2 VariableDomContribTarget mol yr-1 VF_Undefined CellSpace IsotopeLinear flux input
fluxAtmtoOceansurface flux_O2 VariableDomContribTarget mol yr-1 VF_Undefined CellSpace ScalarData flux input
fluxAtmtoOceansurface flux_total_CO2 VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace IsotopeLinear total flux input
fluxAtmtoOceansurface flux_total_O2 VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace ScalarData total flux input
fluxOceanBurial flux_Ccarb VariableDomContribTarget mol yr-1 VF_Undefined CellSpace IsotopeLinear flux input
fluxOceanBurial flux_Corg VariableDomContribTarget mol yr-1 VF_Undefined CellSpace IsotopeLinear flux input
fluxOceanBurial flux_P VariableDomContribTarget mol yr-1 VF_Undefined CellSpace ScalarData flux input
fluxOceanBurial flux_PFe VariableDomContribTarget mol yr-1 VF_Undefined CellSpace ScalarData flux input
fluxOceanBurial flux_Pauth VariableDomContribTarget mol yr-1 VF_Undefined CellSpace ScalarData flux input
fluxOceanBurial flux_Porg VariableDomContribTarget mol yr-1 VF_Undefined CellSpace ScalarData flux input
fluxOceanBurial flux_total_Ccarb VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace IsotopeLinear total flux input
fluxOceanBurial flux_total_Corg VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace IsotopeLinear total flux input
fluxOceanBurial flux_total_P VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace ScalarData total flux input
fluxOceanBurial flux_total_PFe VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace ScalarData total flux input
fluxOceanBurial flux_total_Pauth VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace ScalarData total flux input
fluxOceanBurial flux_total_Porg VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace ScalarData total flux input
fluxOceanfloor particulateflux_Ccarb VariableDomContribTarget mol yr-1 VF_Undefined CellSpace IsotopeLinear flux input
fluxOceanfloor particulateflux_Corg VariableDomContribTarget mol yr-1 VF_Undefined CellSpace IsotopeLinear flux input
fluxOceanfloor particulateflux_N VariableDomContribTarget mol yr-1 VF_Undefined CellSpace ScalarData flux input
fluxOceanfloor particulateflux_P VariableDomContribTarget mol yr-1 VF_Undefined CellSpace ScalarData flux input
fluxOceanfloor particulateflux_total_Ccarb VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace IsotopeLinear total flux input
fluxOceanfloor particulateflux_total_Corg VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace IsotopeLinear total flux input
fluxOceanfloor particulateflux_total_N VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace ScalarData total flux input
fluxOceanfloor particulateflux_total_P VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace ScalarData total flux input
fluxOceanfloor soluteflux_DIC VariableDomContribTarget mol yr-1 VF_Undefined CellSpace IsotopeLinear flux input
fluxOceanfloor soluteflux_O2 VariableDomContribTarget mol yr-1 VF_Undefined CellSpace ScalarData flux input
fluxOceanfloor soluteflux_P VariableDomContribTarget mol yr-1 VF_Undefined CellSpace ScalarData flux input
fluxOceanfloor soluteflux_TAlk VariableDomContribTarget mol yr-1 VF_Undefined CellSpace ScalarData flux input
fluxOceanfloor soluteflux_total_DIC VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace IsotopeLinear total flux input
fluxOceanfloor soluteflux_total_O2 VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace ScalarData total flux input
fluxOceanfloor soluteflux_total_P VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace ScalarData total flux input
fluxOceanfloor soluteflux_total_TAlk VariableDomPropDep mol yr-1 VF_Undefined ScalarSpace ScalarData total flux input
ocean Abox VariableDomPropDep m^2 VF_Undefined CellSpace ScalarData horizontal area of box
ocean pressure VariableDomPropDep dbar VF_Undefined CellSpace ScalarData Ocean pressure
ocean rho VariableDomPropDep kg m^-3 VF_Undefined CellSpace ScalarData physical ocean density
ocean rho_ref VariableDomPropDep kg m^-3 VF_Undefined CellSpace ScalarData Ocean transport model density co…
ocean sal VariableDomPropDep psu VF_Undefined CellSpace ScalarData Ocean salinity
ocean temp VariableDomPropDep K VF_Undefined CellSpace ScalarData Ocean temperature
ocean volume VariableDomPropDep m^3 VF_Undefined CellSpace ScalarData volume of ocean cells
ocean volume_total VariableDomPropDep m^3 VF_Undefined ScalarSpace ScalarData total volume of ocean cells
ocean zlower VariableDomPropDep m VF_Undefined CellSpace ScalarData depth of lower surface of box (m)
ocean zmid VariableDomPropDep m VF_Undefined CellSpace ScalarData mean depth of box
ocean zupper VariableDomPropDep m VF_Undefined CellSpace ScalarData depth of upper surface of box (m…
oceanfloor Afloor VariableDomPropDep m^2 VF_Undefined CellSpace ScalarData horizontal area of seafloor at b…
oceanfloor Afloor_total VariableDomPropDep m^2 VF_Undefined ScalarSpace ScalarData total area of seafloor
oceanfloor zfloor VariableDomPropDep m VF_Undefined CellSpace ScalarData depth of ocean floor (m, -ve)
oceansurface Asurf VariableDomPropDep m^2 VF_Undefined CellSpace ScalarData horizontal area of oceansurface
oceansurface open_area_fraction VariableDomPropDep VF_Undefined CellSpace ScalarData fraction of area open to atmosph…
ocean, oceansurface, and oceanfloor Variables are standard grid variables, provided by the ocean transport Reaction (a ReactionOceanTransport3box
in this case).
Flux target Variables to accumulate exchange fluxes are provided by ReactionFluxTarget
Reactions, the illustrative configuration here defines fluxes for a C, O, P model with atmospheric state variables CO2, O2, and ocean state variables including DIC, TAlk, O2 and P.