bfb_surface_forcing module reference

Surface forcing for the boundary-forced-basin (BFB) configuration.

More…

Data Types

bfb_surface_forcing_cs

Control structure for BFB_surface_forcing.

Functions/Subroutines

bfb_buoyancy_forcing()

Bouyancy forcing for the boundary-forced-basin (BFB) configuration.

bfb_surface_forcing_init()

Initialization for forcing the boundary-forced-basin (BFB) configuration.

Detailed Description

Surface forcing for the boundary-forced-basin (BFB) configuration.

Type Documentation

type  bfb_surface_forcing/bfb_surface_forcing_cs

Control structure for BFB_surface_forcing.

Type fields:
  • % use_temperature :: logical If true, temperature and salinity are used as state variables.

  • % restorebuoy :: logical If true, use restoring surface buoyancy forcing.

  • % rho0 :: real The density used in the Boussinesq approximation [R ~> kg m-3].

  • % g_earth :: real The gravitational acceleration [L2 Z-1 T-2 ~> m s-2].

  • % flux_const :: real The restoring rate at the surface [Z T-1 ~> m s-1].

  • % rho_restore :: real The density that is used to convert piston velocities into salt or heat fluxes with salinity or temperature restoring [R ~> kg m-3].

  • % sst_s :: real SST at the southern edge of the linear forcing ramp [C ~> degC].

  • % sst_n :: real SST at the northern edge of the linear forcing ramp [C ~> degC].

  • % s_ref :: real Reference salinity used throughout the domain [S ~> ppt].

  • % lfrslat :: real Southern latitude where the linear forcing ramp begins [degrees_N] or [km].

  • % lfrnlat :: real Northern latitude where the linear forcing ramp ends [degrees_N] or [km].

  • % rho_t0_s0 :: real The density at T=0, S=0 [R ~> kg m-3].

  • % drho_dt :: real The partial derivative of density with temperature [R C-1 ~> kg m-3 degC-1].

  • % drho_ds :: real The partial derivative of density with salinity [R S-1 ~> kg m-3 ppt-1] Note that temperature and salinity are being used as dummy variables here. All temperatures are converted into density.

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

[source]

Function/Subroutine Documentation

subroutine bfb_surface_forcing/bfb_buoyancy_forcing(sfc_state, fluxes, day, dt, G, US, CS)

Bouyancy forcing for the boundary-forced-basin (BFB) configuration.

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

  • fluxes :: fluxes [inout] A structure containing pointers to any possible forcing fields. Unused fields have NULL ptrs.

  • day :: day [in] Time of the fluxes.

  • dt :: dt [in] The amount of time over which the fluxes apply [T ~> s]

  • g :: [in] The ocean’s grid structure

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

  • cs :: A pointer to the control structure returned by a previous call to BFB_surface_forcing_init.

Call to:

mom_error_handler::mom_error

[source]

subroutine bfb_surface_forcing/bfb_surface_forcing_init(Time, G, US, param_file, diag, CS)

Initialization for forcing the boundary-forced-basin (BFB) configuration.

Parameters:
  • time :: [in] The current model time.

  • g :: [in] The ocean’s grid structure

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

  • param_file :: param_file [in] A structure to parse for run-time parameters

  • diag :: diag [in] A structure that is used to regulate diagnostic output.

  • cs :: A pointer to the control structure for this module

Call to:

mom_error_handler::mom_error

Called from:

mom_surface_forcing::surface_forcing_init

[source]

[source]