generic_tracer module reference

A non-functioning template of the GFDL ocean BGC.

More…

Functions/Subroutines

generic_tracer_register()

Unknown.

generic_tracer_init()

Initialize generic tracers.

generic_tracer_register_diag()

Unknown.

generic_tracer_coupler_get()

Get coupler values.

generic_tracer_coupler_accumulate()

Unknown.

generic_tracer_source()

Calls the corresponding generic_X_update_from_source routine for each package X.

generic_tracer_update_from_bottom()

Update the tracers from bottom fluxes.

generic_tracer_vertdiff_g()

Vertically diffuse all generic tracers for GOLD ocean.

generic_tracer_coupler_set()

Set the coupler values for each generic tracer.

generic_tracer_end()

End this module by calling the corresponding generic_X_end for each package X.

generic_tracer_get_list()

Get a pointer to the head of the generic tracers list.

generic_tracer_get_diag_list()

Unknown.

Detailed Description

A non-functioning template of the GFDL ocean BGC.

Function/Subroutine Documentation

subroutine generic_tracer/generic_tracer_registerNone()

Unknown.

subroutine generic_tracer/generic_tracer_init(isc, iec, jsc, jec, isd, ied, jsd, jed, nk, ntau, axes, grid_tmask, grid_kmt, init_time)

Initialize generic tracers.

Parameters:
  • isc :: [in] Computation start index in i direction

  • iec :: [in] Computation end index in i direction

  • jsc :: [in] Computation start index in j direction

  • jec :: [in] Computation end index in j direction

  • isd :: [in] Data start index in i direction

  • ied :: [in] Data end index in i direction

  • jsd :: [in] Data start index in j direction

  • jed :: [in] Data end index in j direction

  • nk :: [in] Number of levels in k direction

  • ntau :: [in] The number of tracer time levels (always 1 for MOM6)

  • axes :: [in] Domain axes?

  • init_time :: [in] Time

  • grid_tmask :: [in] Mask

  • grid_kmt :: [in] Number of wet cells in column

subroutine generic_tracer/generic_tracer_register_diagNone()

Unknown.

subroutine generic_tracer/generic_tracer_coupler_get(IOB_struc)

Get coupler values.

Parameters:

iob_struc :: [in] Ice Ocean Boundary flux structure

subroutine generic_tracer/generic_tracer_coupler_accumulate(IOB_struc, weight, model_time)

Unknown.

Parameters:
  • iob_struc :: [in] Ice Ocean Boundary flux structure

  • weight :: [in] A weight for accumulating these fluxes

  • model_time :: [in] Time

Called from:

mom_generic_tracer::mom_generic_tracer_fluxes_accumulate

subroutine generic_tracer/generic_tracer_source(Temp, Salt, rho_dzt, dzt, hblt_depth, ilb, jlb, tau, dtts, grid_dat, model_time, nbands, max_wavelength_band, sw_pen_band, opacity_band, internal_heat, frunoff, grid_ht, current_wave_stress, sosga)

Calls the corresponding generic_X_update_from_source routine for each package X.

Parameters:
  • ilb :: [in] Lower bounds of x extent of input arrays on data domain

  • jlb :: [in] Lower bounds of y extent of input arrays on data domain

  • temp :: [in] Potential temperature [deg C]

  • salt :: [in] Salinity [psu]

  • rho_dzt :: [in] Mass per unit area of each layer [kg m-2]

  • dzt :: [in] Ocean layer thickness [m]

  • hblt_depth :: [in] Boundary layer depth [m]

  • tau :: [in] Time step index of field

  • dtts :: [in] The time step for this call [s]

  • grid_dat :: [in] Grid cell areas [m2]

  • model_time :: [in] Time

  • nbands :: [in] The number of bands of penetrating shortwave radiation

  • max_wavelength_band :: [in] The maximum wavelength in each band of penetrating shortwave radiation [nm]

  • sw_pen_band :: [in] Penetrating shortwave radiation per band [W m-2]. The wavelength or angular direction band is the first index.

  • opacity_band :: [in] Opacity of seawater averaged over each band [m-1]. The wavelength or angular direction band is the first index.

  • internal_heat :: [in] Any internal or geothermal heat sources that are applied to the ocean integrated over this timestep [degC kg m-2]

  • frunoff :: [in] Rate of iceberg calving [kg m-2 s-1]

  • grid_ht :: [in] Unknown, and presently unused by MOM6

  • current_wave_stress :: [in] Unknown, and presently unused by MOM6

  • sosga :: [in] Global average sea surface salinity [ppt]

subroutine generic_tracer/generic_tracer_update_from_bottom(dt, tau, model_time)

Update the tracers from bottom fluxes.

Parameters:
  • dt :: [in] Time step increment [s]

  • tau :: [in] Time step index used for the concentration field

  • model_time :: [in] Time

subroutine generic_tracer/generic_tracer_vertdiff_g(h_old, ea, eb, dt, kg_m2_to_H, m_to_H, tau)

Vertically diffuse all generic tracers for GOLD ocean.

Parameters:
  • h_old :: [in] Layer thickness before entrainment [H ~> m or kg m-2]

  • ea :: [in] The amount of fluid entrained from the layer above during this call [H ~> m or kg m-2]

  • eb :: [in] The amount of fluid entrained from the layer below during this call [H ~> m or kg m-2]

  • dt :: [in] The amount of time covered by this call [s]

  • kg_m2_to_h :: [in] A unit conversion factor from mass per unit area to thickness units [H m2 kg-1 ~> m3 kg-1 or 1]

  • m_to_h :: [in] A unit conversion factor from heights to thickness units [H m-1 ~> 1 or kg m-3]

  • tau :: [in] The time level to work on (always 1 for MOM6)

subroutine generic_tracer/generic_tracer_coupler_set(IOB_struc, ST, SS, rho, ilb, jlb, tau, dzt, sosga, model_time)

Set the coupler values for each generic tracer.

Parameters:
  • iob_struc :: [inout] Ice Ocean Boundary flux structure

  • ilb :: [in] Lower bounds of x extent of input arrays on data domain

  • jlb :: [in] Lower bounds of y extent of input arrays on data domain

  • tau :: [in] Time step index of field

  • st :: [in] Sea surface temperature [degC]

  • ss :: [in] Sea surface salinity [ppt]

  • rho :: [in] Ocean density [kg m-3]

  • dzt :: [in] Layer thickness [m]

  • sosga :: [in] Global mean sea surface salinity [ppt]

  • model_time :: [in] Time

subroutine generic_tracer/generic_tracer_endNone()

End this module by calling the corresponding generic_X_end for each package X.

subroutine generic_tracer/generic_tracer_get_list(list)

Get a pointer to the head of the generic tracers list.

Parameters:

list :: Pointer to head of the linked list

subroutine generic_tracer/generic_tracer_get_diag_list(list)

Unknown.

Parameters:

list :: Pointer to head of the linked list