Tracer Model

Tracer setup (Oceananigans)

Pelagos.TracerSetup.build_tracer_modelMethod
build_tracer_model(grid;
    T_init    = nothing,
    S_init    = nothing,
    T_restore = nothing,
    S_restore = nothing,
    tau_T     = 15 * 86400.0,
    tau_S     = 15 * 86400.0,
) -> HydrostaticFreeSurfaceModel

Construct the Oceananigans tracer-only model on grid.

Arguments

  • grid : Oceananigans grid (typically from build_climberx_grid)
  • T_init : initial temperature (nlon, nlat, nz) or nothing (→ 0)
  • S_init : initial salinity (nlon, nlat, nz) or nothing (→ 35)
  • T_restore : 2-D surface temperature reference (nlon, nlat) for surface restoring
  • S_restore : 2-D surface salinity reference (nlon, nlat) for surface restoring
  • tau_T : temperature restoring timescale, s (default 15 days)
  • tau_S : salinity restoring timescale, s (default 15 days)
source
Pelagos.TracerSetup.update_velocities!Method
update_velocities!(model, u_C, v_C, w)

Copy C-grid velocity arrays into the Oceananigans PrescribedVelocityFields.

Arguments

  • u_C : (Nλ+1, Nφ, Nz) zonal velocity on east faces, m s⁻¹
  • v_C : (Nλ, Nφ+1, Nz) meridional velocity on north faces, m s⁻¹
  • w : (Nλ, Nφ, Nz+1) vertical velocity on z-faces, m s⁻¹
source

Diffusion closures

Pelagos.Diffusion.bryan_lewis_kappaMethod
bryan_lewis_kappa(z)

Bryan & Lewis (1979) diapycnal diffusivity profile.

κ(z) = K_BG + (K_DEEP − K_BG) · (2/π) · arctan(|z| / K_DEEP_ZREF)

κ(0) = KBG (surface minimum); κ → KDEEP as z → −∞. KDEEPZREF is the half-saturation depth where κ = (KBG + KDEEP) / 2.

Returns κ in m² s⁻¹. z is depth in metres, negative downward.

source
Pelagos.Diffusion.diapycnal_closureMethod
diapycnal_closure()

Oceananigans vertical diffusivity closure using the Bryan & Lewis (1979) profile. Returns a VerticalScalarDiffusivity with depth-dependent κ.

source
Pelagos.Diffusion.gm_redi_closureMethod
gm_redi_closure()

Oceananigans closure implementing the GM + Redi scheme with Gerdes et al. (1991) slope tapering. κiso = κgm = 1500 m² s⁻¹, slope_max = 1e-3.

source

Convective adjustment

Pelagos.Convection.convective_adjustment_closureMethod
convective_adjustment_closure()

Returns an Oceananigans ConvectiveAdjustmentVerticalDiffusivity with κconvective = KCONV (default 100 m² s⁻¹), which effectively mixes any unstable density column instantly relative to the ocean dynamics timestep.

source