ocean_config_t Derived Type

type, public :: ocean_config_t

All ocean-path knobs, nested by concern. Parallel to the state composition pattern (ocean_state%dyn, %vcoord, etc.). Read-side: see the per-sub-nml blocks in read_config. Call-side: cfg%ocean%bt%use_cont_type, cfg%ocean%pgf%form, etc.


Inherits

type~~ocean_config_t~~InheritsGraph type~ocean_config_t ocean_config_t type~ocean_bc_config_t ocean_bc_config_t type~ocean_config_t->type~ocean_bc_config_t bc type~ocean_bdrag_config_t ocean_bdrag_config_t type~ocean_config_t->type~ocean_bdrag_config_t bdrag type~ocean_bt_config_t ocean_bt_config_t type~ocean_config_t->type~ocean_bt_config_t bt type~ocean_cavity_dyn_config_t ocean_cavity_dyn_config_t type~ocean_config_t->type~ocean_cavity_dyn_config_t cavity_dyn type~ocean_cavity_melt_config_t ocean_cavity_melt_config_t type~ocean_config_t->type~ocean_cavity_melt_config_t cavity_melt type~ocean_continuity_config_t ocean_continuity_config_t type~ocean_config_t->type~ocean_continuity_config_t continuity type~ocean_conv_config_t ocean_conv_config_t type~ocean_config_t->type~ocean_conv_config_t conv type~ocean_coriolis_config_t ocean_coriolis_config_t type~ocean_config_t->type~ocean_coriolis_config_t coriolis type~ocean_data_config_t ocean_data_config_t type~ocean_config_t->type~ocean_data_config_t data type~ocean_dataovr_config_t ocean_dataovr_config_t type~ocean_config_t->type~ocean_dataovr_config_t dataovr type~ocean_ddiff_config_t ocean_ddiff_config_t type~ocean_config_t->type~ocean_ddiff_config_t ddiff type~ocean_debug_config_t ocean_debug_config_t type~ocean_config_t->type~ocean_debug_config_t debug type~ocean_diag_config_t ocean_diag_config_t type~ocean_config_t->type~ocean_diag_config_t diag type~ocean_eos_config_t ocean_eos_config_t type~ocean_config_t->type~ocean_eos_config_t eos type~ocean_epbl_config_t ocean_epbl_config_t type~ocean_config_t->type~ocean_epbl_config_t epbl type~ocean_forcing_config_t ocean_forcing_config_t type~ocean_config_t->type~ocean_forcing_config_t forcing type~ocean_foxkemper_config_t ocean_foxkemper_config_t type~ocean_config_t->type~ocean_foxkemper_config_t foxkemper type~ocean_geothermal_config_t ocean_geothermal_config_t type~ocean_config_t->type~ocean_geothermal_config_t geothermal type~ocean_gm_config_t ocean_gm_config_t type~ocean_config_t->type~ocean_gm_config_t gm type~ocean_grid_config_t ocean_grid_config_t type~ocean_config_t->type~ocean_grid_config_t grid type~ocean_hdiff_config_t ocean_hdiff_config_t type~ocean_config_t->type~ocean_hdiff_config_t hdiff type~ocean_hvisc_config_t ocean_hvisc_config_t type~ocean_config_t->type~ocean_hvisc_config_t hvisc type~ocean_ic_config_t ocean_ic_config_t type~ocean_config_t->type~ocean_ic_config_t ic type~ocean_ice_config_t ocean_ice_config_t type~ocean_config_t->type~ocean_ice_config_t ice type~ocean_ice_ic_config_t ocean_ice_ic_config_t type~ocean_config_t->type~ocean_ice_ic_config_t ice_ic type~ocean_isopycnal_config_t ocean_isopycnal_config_t type~ocean_config_t->type~ocean_isopycnal_config_t isopycnal type~ocean_kappa_shear_config_t ocean_kappa_shear_config_t type~ocean_config_t->type~ocean_kappa_shear_config_t kshear type~ocean_meke_config_t ocean_meke_config_t type~ocean_config_t->type~ocean_meke_config_t meke type~ocean_mpi_config_t ocean_mpi_config_t type~ocean_config_t->type~ocean_mpi_config_t mpi type~ocean_pgf_config_t ocean_pgf_config_t type~ocean_config_t->type~ocean_pgf_config_t pgf type~ocean_porous_config_t ocean_porous_config_t type~ocean_config_t->type~ocean_porous_config_t porous type~ocean_psurf_config_t ocean_psurf_config_t type~ocean_config_t->type~ocean_psurf_config_t psurf type~ocean_redi_config_t ocean_redi_config_t type~ocean_config_t->type~ocean_redi_config_t redi type~ocean_restore_config_t ocean_restore_config_t type~ocean_config_t->type~ocean_restore_config_t restore type~ocean_slopes_config_t ocean_slopes_config_t type~ocean_config_t->type~ocean_slopes_config_t slopes type~ocean_sponge_config_t ocean_sponge_config_t type~ocean_config_t->type~ocean_sponge_config_t sponge type~ocean_tdrag_config_t ocean_tdrag_config_t type~ocean_config_t->type~ocean_tdrag_config_t tdrag type~ocean_thermo_config_t ocean_thermo_config_t type~ocean_config_t->type~ocean_thermo_config_t thermo type~ocean_tidal_mixing_config_t ocean_tidal_mixing_config_t type~ocean_config_t->type~ocean_tidal_mixing_config_t tidal_mixing type~ocean_tides_config_t ocean_tides_config_t type~ocean_config_t->type~ocean_tides_config_t tides type~ocean_topo_config_t ocean_topo_config_t type~ocean_config_t->type~ocean_topo_config_t topo type~ocean_tracers_config_t ocean_tracers_config_t type~ocean_config_t->type~ocean_tracers_config_t tracers type~ocean_varmix_config_t ocean_varmix_config_t type~ocean_config_t->type~ocean_varmix_config_t varmix type~ocean_vdiff_config_t ocean_vdiff_config_t type~ocean_config_t->type~ocean_vdiff_config_t vdiff type~ocean_vmix_config_t ocean_vmix_config_t type~ocean_config_t->type~ocean_vmix_config_t vmix type~ocean_wave_speed_config_t ocean_wave_speed_config_t type~ocean_config_t->type~ocean_wave_speed_config_t wavespeed type~ocean_wetdry_config_t ocean_wetdry_config_t type~ocean_config_t->type~ocean_wetdry_config_t wetdry type~ocean_zinit_config_t ocean_zinit_config_t type~ocean_config_t->type~ocean_zinit_config_t zinit type~dataovr_entry_config_t dataovr_entry_config_t type~ocean_dataovr_config_t->type~dataovr_entry_config_t tau_x, tau_y, heat, evap, lprec, salt

Inherited by

type~~ocean_config_t~~InheritedByGraph type~ocean_config_t ocean_config_t type~config_t config_t type~config_t->type~ocean_config_t ocean type~ocean_handle_t ocean_handle_t type~ocean_handle_t->type~config_t cfg

Components

Type Visibility Attributes Name Initial
type(ocean_bc_config_t), public :: bc

Open-boundary condition config (&ocean_bc_nml). All defaults = wall — existing nmls without this block are bit-identical to prior behaviour.

type(ocean_bdrag_config_t), public :: bdrag
type(ocean_bt_config_t), public :: bt
type(ocean_cavity_dyn_config_t), public :: cavity_dyn

Static ice-shelf cavity geometry (&ocean_cavity_dyn_nml). Default-OFF ⇒ bit-identical.

type(ocean_cavity_melt_config_t), public :: cavity_melt

Ice-shelf basal-melt thermodynamics (&ocean_cavity_melt_nml). Default-OFF ⇒ bit-identical.

type(ocean_continuity_config_t), public :: continuity
type(ocean_conv_config_t), public :: conv
type(ocean_coriolis_config_t), public :: coriolis
type(ocean_data_config_t), public :: data

Shared time-varying NetCDF input reader (&ocean_data_nml, PR-14). Two knobs only — see ocean_data_config_t.

type(ocean_dataovr_config_t), public :: dataovr

File-backed surface forcing (&ocean_dataovr_nml, PR-15) — the first production consumer of data. Default-OFF ⇒ bit-identical.

type(ocean_ddiff_config_t), public :: ddiff
type(ocean_debug_config_t), public :: debug

Forensic probes (&ocean_debug_nml). Default all-off ⇒ bit-identical.

type(ocean_diag_config_t), public :: diag
type(ocean_eos_config_t), public :: eos
type(ocean_epbl_config_t), public :: epbl
type(ocean_forcing_config_t), public :: forcing

Surface-flux component-set gate (&ocean_forcing_nml, PR-12). Default off ⇒ byte-identical.

type(ocean_foxkemper_config_t), public :: foxkemper
type(ocean_geothermal_config_t), public :: geothermal
type(ocean_gm_config_t), public :: gm
type(ocean_grid_config_t), public :: grid
type(ocean_hdiff_config_t), public :: hdiff

Along-coordinate tracer Laplacian (&ocean_hdiff_nml). Default kappa_h = 0.0 ⇒ bit-identical.

type(ocean_hvisc_config_t), public :: hvisc
type(ocean_ic_config_t), public :: ic
type(ocean_ice_config_t), public :: ice

Sea-ice slot config (&ocean_ice_nml). Default off ⇒ byte-identical (PR 0 scaffold).

type(ocean_ice_ic_config_t), public :: ice_ic

Sea-ice initial-condition config (&ocean_ice_ic_nml, PR 24). Default conc_config="zero" ⇒ byte-identical.

type(ocean_isopycnal_config_t), public :: isopycnal

Lagrangian grounding-stability controls (&ocean_isopycnal_nml). Default-OFF ⇒ bit-identical.

type(ocean_kappa_shear_config_t), public :: kshear
type(ocean_meke_config_t), public :: meke
type(ocean_mpi_config_t), public :: mpi

Multi-rank MPI debug / tuning controls (&ocean_mpi_nml). Default off ⇒ bit-identical.

type(ocean_pgf_config_t), public :: pgf
type(ocean_porous_config_t), public :: porous
type(ocean_psurf_config_t), public :: psurf
type(ocean_redi_config_t), public :: redi
type(ocean_restore_config_t), public :: restore
type(ocean_slopes_config_t), public :: slopes
type(ocean_sponge_config_t), public :: sponge
type(ocean_tdrag_config_t), public :: tdrag

Ice-shelf TOP drag (&ocean_tdrag_nml). Default off ⇒ bit-identical.

type(ocean_thermo_config_t), public :: thermo
type(ocean_tidal_mixing_config_t), public :: tidal_mixing
type(ocean_tides_config_t), public :: tides
type(ocean_topo_config_t), public :: topo
type(ocean_tracers_config_t), public :: tracers
type(ocean_varmix_config_t), public :: varmix
type(ocean_vdiff_config_t), public :: vdiff
type(ocean_vmix_config_t), public :: vmix
type(ocean_wave_speed_config_t), public :: wavespeed
type(ocean_wetdry_config_t), public :: wetdry

Dynamic wetting/drying (&ocean_wetdry_nml). Default off ⇒ byte-identical.

type(ocean_zinit_config_t), public :: zinit

Source Code

   type :: ocean_config_t
      !! All ocean-path knobs, nested by concern.  Parallel to the
      !! state composition pattern (`ocean_state%dyn`, `%vcoord`, etc.).
      !! Read-side: see the per-sub-nml blocks in `read_config`.
      !! Call-side: `cfg%ocean%bt%use_cont_type`,
      !! `cfg%ocean%pgf%form`, etc.
      type(ocean_grid_config_t)       :: grid
      type(ocean_coriolis_config_t)   :: coriolis
      type(ocean_thermo_config_t)     :: thermo
      type(ocean_forcing_config_t)    :: forcing
         !! Surface-flux component-set gate (`&ocean_forcing_nml`, PR-12).
         !! Default off ⇒ byte-identical.
      type(ocean_ice_config_t)        :: ice
         !! Sea-ice slot config (`&ocean_ice_nml`).  Default off ⇒
         !! byte-identical (PR 0 scaffold).
      type(ocean_ice_ic_config_t)     :: ice_ic
         !! Sea-ice initial-condition config (`&ocean_ice_ic_nml`, PR 24).
         !! Default `conc_config="zero"` ⇒ byte-identical.
      type(ocean_restore_config_t)    :: restore
      type(ocean_geothermal_config_t) :: geothermal
      type(ocean_sponge_config_t)     :: sponge
      type(ocean_tracers_config_t)    :: tracers
      type(ocean_bt_config_t)         :: bt
      type(ocean_debug_config_t)      :: debug
         !! Forensic probes (`&ocean_debug_nml`).  Default all-off ⇒
         !! bit-identical.
      type(ocean_pgf_config_t)        :: pgf
      type(ocean_eos_config_t)        :: eos
      type(ocean_bdrag_config_t)      :: bdrag
      type(ocean_tdrag_config_t)      :: tdrag
         !! Ice-shelf TOP drag (`&ocean_tdrag_nml`).  Default off ⇒
         !! bit-identical.
      type(ocean_hdiff_config_t)      :: hdiff
         !! Along-coordinate tracer Laplacian (`&ocean_hdiff_nml`).
         !! Default `kappa_h = 0.0` ⇒ bit-identical.
      type(ocean_hvisc_config_t)      :: hvisc
      type(ocean_vmix_config_t)       :: vmix
      type(ocean_vdiff_config_t)      :: vdiff
      type(ocean_epbl_config_t)       :: epbl
      type(ocean_wave_speed_config_t) :: wavespeed
      type(ocean_foxkemper_config_t)  :: foxkemper
      type(ocean_kappa_shear_config_t) :: kshear
      type(ocean_slopes_config_t)     :: slopes
      type(ocean_gm_config_t)         :: gm
      type(ocean_redi_config_t)       :: redi
      type(ocean_varmix_config_t)     :: varmix
      type(ocean_meke_config_t)       :: meke
      type(ocean_tidal_mixing_config_t) :: tidal_mixing
      type(ocean_conv_config_t)       :: conv
      type(ocean_porous_config_t)     :: porous
      type(ocean_ddiff_config_t)      :: ddiff
      type(ocean_tides_config_t)      :: tides
      type(ocean_psurf_config_t)      :: psurf
      type(ocean_cavity_dyn_config_t) :: cavity_dyn
         !! Static ice-shelf cavity geometry (`&ocean_cavity_dyn_nml`).
         !! Default-OFF ⇒ bit-identical.
      type(ocean_cavity_melt_config_t) :: cavity_melt
         !! Ice-shelf basal-melt thermodynamics
         !! (`&ocean_cavity_melt_nml`).  Default-OFF ⇒ bit-identical.
      type(ocean_continuity_config_t)  :: continuity
      type(ocean_isopycnal_config_t)   :: isopycnal
         !! Lagrangian grounding-stability controls (`&ocean_isopycnal_nml`).
         !! Default-OFF ⇒ bit-identical.
      type(ocean_topo_config_t)        :: topo
      type(ocean_ic_config_t)         :: ic
      type(ocean_zinit_config_t)      :: zinit
      type(ocean_data_config_t)       :: data
         !! Shared time-varying NetCDF input reader (`&ocean_data_nml`,
         !! PR-14).  Two knobs only — see `ocean_data_config_t`.
      type(ocean_dataovr_config_t)    :: dataovr
         !! File-backed surface forcing (`&ocean_dataovr_nml`, PR-15) —
         !! the first production consumer of `data`.  Default-OFF ⇒
         !! bit-identical.
      type(ocean_diag_config_t)       :: diag
      type(ocean_bc_config_t)         :: bc
         !! Open-boundary condition config (`&ocean_bc_nml`).
         !! All defaults = wall — existing nmls without this block are
         !! bit-identical to prior behaviour.
      type(ocean_wetdry_config_t)     :: wetdry
         !! Dynamic wetting/drying (`&ocean_wetdry_nml`).  Default off ⇒
         !! byte-identical.
      type(ocean_mpi_config_t)        :: mpi
         !! Multi-rank MPI debug / tuning controls (`&ocean_mpi_nml`).
         !! Default off ⇒ bit-identical.
   end type ocean_config_t