mom_marine_ice module reference

Routines incorporating the effects of marine ice (sea-ice and icebergs) into the ocean model dynamics and thermodynamics.

More…

Data Types

marine_ice_cs

Control structure for MOM_marine_ice.

Functions/Subroutines

iceberg_forces()

add_berg_flux_to_shelf adds rigidity and ice-area coverage due to icebergs to the forces type fields, and adds ice-areal coverage and modifies various thermodynamic fluxes due to the presence of icebergs.

iceberg_fluxes()

iceberg_fluxes adds ice-area-coverage and modifies various thermodynamic fluxes due to the presence of icebergs.

marine_ice_init()

Initialize control structure for MOM_marine_ice.

Detailed Description

Routines incorporating the effects of marine ice (sea-ice and icebergs) into the ocean model dynamics and thermodynamics.

Type Documentation

type  mom_marine_ice/marine_ice_cs

Control structure for MOM_marine_ice.

Type fields:
  • % kv_iceberg :: real The viscosity of the icebergs [L4 Z-2 T-1 ~> m2 s-1] (for ice rigidity)

  • % berg_area_threshold :: real Fraction of grid cell which iceberg must occupy so that fluxes below are set to zero [nondim]. (0.5 is a good value to use.) Not applied for negative values.

  • % latent_heat_fusion :: real Latent heat of fusion [Q ~> J kg-1].

  • % density_iceberg :: real A typical density of icebergs [R ~> kg m-3] (for ice rigidity)

  • % time :: type(time_type), pointer A pointer to the ocean model’s clock.

  • % diag :: type(diag_ctrl), pointer A structure that is used to regulate the timing of diagnostic output.

[source]

Function/Subroutine Documentation

subroutine mom_marine_ice/iceberg_forces(G, forces, use_ice_shelf, sfc_state, time_step, CS)

add_berg_flux_to_shelf adds rigidity and ice-area coverage due to icebergs to the forces type fields, and adds ice-areal coverage and modifies various thermodynamic fluxes due to the presence of icebergs.

Parameters:
  • g :: [inout] The ocean’s grid structure

  • forces :: forces [inout] A structure with the driving mechanical forces

  • sfc_state :: sfc_state [inout] A structure containing fields that describe the surface state of the ocean.

  • use_ice_shelf :: use_ice_shelf [in] If true, this configuration uses ice shelves.

  • time_step :: time_step [in] The coupling time step [T ~> s].

  • cs :: Pointer to the control structure for MOM_marine_ice

Called from:

ocean_model_mod::update_ocean_model

[source]

subroutine mom_marine_ice/iceberg_fluxes(G, US, fluxes, use_ice_shelf, sfc_state, time_step, CS)

iceberg_fluxes adds ice-area-coverage and modifies various thermodynamic fluxes due to the presence of icebergs.

Parameters:
  • g :: [inout] The ocean’s grid structure

  • us :: [in] A dimensional unit scaling type

  • fluxes :: fluxes [inout] A structure with pointers to themodynamic, tracer and mass exchange forcing fields

  • sfc_state :: sfc_state [inout] A structure containing fields that describe the surface state of the ocean.

  • use_ice_shelf :: use_ice_shelf [in] If true, this configuration uses ice shelves.

  • time_step :: time_step [in] The coupling time step [T ~> s].

  • cs :: Pointer to the control structure for MOM_marine_ice

Called from:

ocean_model_mod::update_ocean_model

[source]

subroutine mom_marine_ice/marine_ice_init(Time, G, param_file, diag, CS)

Initialize control structure for MOM_marine_ice.

Parameters:
  • time :: [in] Current model time

  • g :: [in] Ocean grid structure

  • param_file :: param_file [in] Runtime parameter handles

  • diag :: diag [inout] Diagnostics control structure

  • cs :: Pointer to the control structure for MOM_marine_ice

Call to:

mom_error_handler::mom_error

Called from:

ocean_model_mod::ocean_model_init

[source]

[source]