MOM6
mom_surface_forcing_mct::surface_forcing_cs Type Reference

Detailed Description

Contains pointers to the forcing fields which may be used to drive MOM. All fluxes are positive downward.

Definition at line 58 of file mom_surface_forcing_mct.F90.

Collaboration diagram for mom_surface_forcing_mct::surface_forcing_cs:
[legend]

Public variables and constants

integer wind_stagger
 AGRID, BGRID_NE, or CGRID_NE (integer values from MOM_domains) to indicate the staggering of the winds that are being provided in calls to update_ocean_model. More...
 
logical use_temperature
 
real wind_stress_multiplier
 A multiplier applied to incoming wind stress (nondim). More...
 
real rho0
 Boussinesq reference density [R ~> kg m-3]. More...
 
real area_surf = -1.0
 total ocean surface area [m2] More...
 
real latent_heat_fusion
 latent heat of fusion [J kg-1] More...
 
real latent_heat_vapor
 latent heat of vaporization [J kg-1] More...
 
real max_p_surf
 maximum surface pressure that can be exerted by the atmosphere and floating sea-ice, [Pa]. This is needed because the FMS coupling structure does not limit the water that can be frozen out of the ocean and the ice-ocean heat fluxes are treated explicitly. More...
 
logical use_limited_p_ssh
 If true, return the sea surface height with the correction for the atmospheric (and sea-ice) pressure limited by max_p_surf instead of the full atmospheric pressure. The default is true. More...
 
real gust_const
 constant unresolved background gustiness for ustar [R L Z T-1 ~> Pa] More...
 
logical read_gust_2d
 If true, use a 2-dimensional gustiness supplied from an input file. More...
 
real, dimension(:,:), pointer tke_tidal => NULL()
 turbulent kinetic energy introduced to the More...
 
real, dimension(:,:), pointer gust => NULL()
 spatially varying unresolved background More...
 
real, dimension(:,:), pointer ustar_tidal => NULL()
 tidal contribution to the bottom friction velocity [Z T-1 ~> m s-1] More...
 
real cd_tides
 drag coefficient that applies to the tides (nondimensional) More...
 
real utide
 constant tidal velocity to use if read_tideamp is false [Z T-1 ~> m s-1] More...
 
logical read_tideamp
 If true, spatially varying tidal amplitude read from a file. More...
 
logical rigid_sea_ice
 If true, sea-ice exerts a rigidity that acts to damp surface deflections (especially surface gravity waves). The default is false. More...
 
real g_earth
 Gravitational acceleration [m s-2]. More...
 
real kv_sea_ice
 
real density_sea_ice
 typical density of sea-ice [kg m-3]. The value is only used to convert the ice pressure into appropriate units for use with Kv_sea_ice. More...
 
real rigid_sea_ice_mass
 A mass per unit area of sea-ice beyond which sea-ice viscosity becomes effective, in kg m-2, typically of order 1000 [kg m-2]. More...
 
logical allow_flux_adjustments
 If true, use data_override to obtain flux adjustments. More...
 
real flux_const
 piston velocity for surface restoring [m/s] More...
 
logical salt_restore_as_sflux
 If true, SSS restore as salt flux instead of water flux. More...
 
logical adjust_net_srestore_to_zero
 adjust srestore to zero (for both salt_flux or vprec) More...
 
logical adjust_net_srestore_by_scaling
 adjust srestore w/o moving zero contour More...
 
logical adjust_net_fresh_water_to_zero
 adjust net surface fresh-water (w/ restoring) to zero More...
 
logical use_net_fw_adjustment_sign_bug
 use the wrong sign when adjusting net FW More...
 
logical adjust_net_fresh_water_by_scaling
 adjust net surface fresh-water w/o moving zero contour More...
 
logical mask_srestore_under_ice
 If true, use an ice mask defined by frazil criteria for salinity restoring. More...
 
real ice_salt_concentration
 salt concentration for sea ice [kg/kg] More...
 
logical mask_srestore_marginal_seas
 if true, then mask SSS restoring in marginal seas More...
 
real max_delta_srestore
 maximum delta salinity used for restoring More...
 
real max_delta_trestore
 maximum delta sst used for restoring More...
 
real, dimension(:,:), pointer basin_mask => NULL()
 mask for SSS restoring by basin More...
 
type(diag_ctrl), pointer diag
 structure to regulate diagnostic output timing More...
 
character(len=200) inputdir
 directory where NetCDF input files are More...
 
character(len=200) salt_restore_file
 filename for salt restoring data More...
 
character(len=30) salt_restore_var_name
 name of surface salinity in salt_restore_file More...
 
logical mask_srestore
 if true, apply a 2-dimensional mask to the surface salinity restoring fluxes. The masking file should be in inputdir/salt_restore_mask.nc and the field should be named 'mask' More...
 
real, dimension(:,:), pointer srestore_mask => NULL()
 mask for SSS restoring More...
 
character(len=200) temp_restore_file
 filename for sst restoring data More...
 
character(len=30) temp_restore_var_name
 name of surface temperature in temp_restore_file More...
 
logical mask_trestore
 if true, apply a 2-dimensional mask to the surface temperature restoring fluxes. The masking file should be in inputdir/temp_restore_mask.nc and the field should be named 'mask' More...
 
real, dimension(:,:), pointer trestore_mask => NULL()
 mask for SST restoring More...
 
integer id_srestore = -1
 id number for time_interp_external. More...
 
integer id_trestore = -1
 id number for time_interp_external. More...
 
type(forcing_diags), public handles
 diagnostics handles More...
 
type(mom_restart_cs), pointer restart_csp => NULL()
 restart pointer More...
 
type(user_revise_forcing_cs), pointer urf_cs => NULL()
 user revise pointer More...
 

Variables and constants

◆ adjust_net_fresh_water_by_scaling

logical mom_surface_forcing_mct::surface_forcing_cs::adjust_net_fresh_water_by_scaling

adjust net surface fresh-water w/o moving zero contour

Definition at line 113 of file mom_surface_forcing_mct.F90.

113  logical :: adjust_net_fresh_water_by_scaling !< adjust net surface fresh-water w/o moving zero contour

◆ adjust_net_fresh_water_to_zero

logical mom_surface_forcing_mct::surface_forcing_cs::adjust_net_fresh_water_to_zero

adjust net surface fresh-water (w/ restoring) to zero

Definition at line 111 of file mom_surface_forcing_mct.F90.

111  logical :: adjust_net_fresh_water_to_zero !< adjust net surface fresh-water (w/ restoring) to zero

◆ adjust_net_srestore_by_scaling

logical mom_surface_forcing_mct::surface_forcing_cs::adjust_net_srestore_by_scaling

adjust srestore w/o moving zero contour

Definition at line 110 of file mom_surface_forcing_mct.F90.

110  logical :: adjust_net_srestore_by_scaling !< adjust srestore w/o moving zero contour

◆ adjust_net_srestore_to_zero

logical mom_surface_forcing_mct::surface_forcing_cs::adjust_net_srestore_to_zero

adjust srestore to zero (for both salt_flux or vprec)

Definition at line 109 of file mom_surface_forcing_mct.F90.

109  logical :: adjust_net_srestore_to_zero !< adjust srestore to zero (for both salt_flux or vprec)

◆ allow_flux_adjustments

logical mom_surface_forcing_mct::surface_forcing_cs::allow_flux_adjustments

If true, use data_override to obtain flux adjustments.

Definition at line 106 of file mom_surface_forcing_mct.F90.

106  logical :: allow_flux_adjustments !< If true, use data_override to obtain flux adjustments

◆ area_surf

real mom_surface_forcing_mct::surface_forcing_cs::area_surf = -1.0

total ocean surface area [m2]

Definition at line 67 of file mom_surface_forcing_mct.F90.

67  real :: area_surf = -1.0 !< total ocean surface area [m2]

◆ basin_mask

real, dimension(:,:), pointer mom_surface_forcing_mct::surface_forcing_cs::basin_mask => NULL()

mask for SSS restoring by basin

Definition at line 120 of file mom_surface_forcing_mct.F90.

120  real, pointer, dimension(:,:) :: basin_mask => null() !< mask for SSS restoring by basin

◆ cd_tides

real mom_surface_forcing_mct::surface_forcing_cs::cd_tides

drag coefficient that applies to the tides (nondimensional)

Definition at line 91 of file mom_surface_forcing_mct.F90.

91  real :: cd_tides !< drag coefficient that applies to the tides (nondimensional)

◆ density_sea_ice

real mom_surface_forcing_mct::surface_forcing_cs::density_sea_ice

typical density of sea-ice [kg m-3]. The value is only used to convert the ice pressure into appropriate units for use with Kv_sea_ice.

Definition at line 100 of file mom_surface_forcing_mct.F90.

100  real :: density_sea_ice !< typical density of sea-ice [kg m-3]. The value is

◆ diag

type(diag_ctrl), pointer mom_surface_forcing_mct::surface_forcing_cs::diag

structure to regulate diagnostic output timing

Definition at line 121 of file mom_surface_forcing_mct.F90.

121  type(diag_ctrl), pointer :: diag !< structure to regulate diagnostic output timing

◆ flux_const

real mom_surface_forcing_mct::surface_forcing_cs::flux_const

piston velocity for surface restoring [m/s]

Definition at line 107 of file mom_surface_forcing_mct.F90.

107  real :: Flux_const !< piston velocity for surface restoring [m/s]

◆ g_earth

real mom_surface_forcing_mct::surface_forcing_cs::g_earth

Gravitational acceleration [m s-2].

Definition at line 98 of file mom_surface_forcing_mct.F90.

98  real :: G_Earth !< Gravitational acceleration [m s-2]

◆ gust

real, dimension(:,:), pointer mom_surface_forcing_mct::surface_forcing_cs::gust => NULL()

spatially varying unresolved background

Definition at line 84 of file mom_surface_forcing_mct.F90.

◆ gust_const

real mom_surface_forcing_mct::surface_forcing_cs::gust_const

constant unresolved background gustiness for ustar [R L Z T-1 ~> Pa]

Definition at line 81 of file mom_surface_forcing_mct.F90.

81  real :: gust_const !< constant unresolved background gustiness for ustar [R L Z T-1 ~> Pa]

◆ handles

type(forcing_diags), public mom_surface_forcing_mct::surface_forcing_cs::handles

diagnostics handles

Definition at line 140 of file mom_surface_forcing_mct.F90.

140  type(forcing_diags), public :: handles !< diagnostics handles

◆ ice_salt_concentration

real mom_surface_forcing_mct::surface_forcing_cs::ice_salt_concentration

salt concentration for sea ice [kg/kg]

Definition at line 116 of file mom_surface_forcing_mct.F90.

116  real :: ice_salt_concentration !< salt concentration for sea ice [kg/kg]

◆ id_srestore

integer mom_surface_forcing_mct::surface_forcing_cs::id_srestore = -1

id number for time_interp_external.

Definition at line 137 of file mom_surface_forcing_mct.F90.

137  integer :: id_srestore = -1 !< id number for time_interp_external.

◆ id_trestore

integer mom_surface_forcing_mct::surface_forcing_cs::id_trestore = -1

id number for time_interp_external.

Definition at line 138 of file mom_surface_forcing_mct.F90.

138  integer :: id_trestore = -1 !< id number for time_interp_external.

◆ inputdir

character(len=200) mom_surface_forcing_mct::surface_forcing_cs::inputdir

directory where NetCDF input files are

Definition at line 122 of file mom_surface_forcing_mct.F90.

122  character(len=200) :: inputdir !< directory where NetCDF input files are

◆ kv_sea_ice

real mom_surface_forcing_mct::surface_forcing_cs::kv_sea_ice

Definition at line 99 of file mom_surface_forcing_mct.F90.

99  real :: Kv_sea_ice !! viscosity in sea-ice that resists sheared vertical motions [m2 s-1]

◆ latent_heat_fusion

real mom_surface_forcing_mct::surface_forcing_cs::latent_heat_fusion

latent heat of fusion [J kg-1]

Definition at line 68 of file mom_surface_forcing_mct.F90.

68  real :: latent_heat_fusion !< latent heat of fusion [J kg-1]

◆ latent_heat_vapor

real mom_surface_forcing_mct::surface_forcing_cs::latent_heat_vapor

latent heat of vaporization [J kg-1]

Definition at line 69 of file mom_surface_forcing_mct.F90.

69  real :: latent_heat_vapor !< latent heat of vaporization [J kg-1]

◆ mask_srestore

logical mom_surface_forcing_mct::surface_forcing_cs::mask_srestore

if true, apply a 2-dimensional mask to the surface salinity restoring fluxes. The masking file should be in inputdir/salt_restore_mask.nc and the field should be named 'mask'

Definition at line 125 of file mom_surface_forcing_mct.F90.

125  logical :: mask_srestore !< if true, apply a 2-dimensional mask to the surface

◆ mask_srestore_marginal_seas

logical mom_surface_forcing_mct::surface_forcing_cs::mask_srestore_marginal_seas

if true, then mask SSS restoring in marginal seas

Definition at line 117 of file mom_surface_forcing_mct.F90.

117  logical :: mask_srestore_marginal_seas !< if true, then mask SSS restoring in marginal seas

◆ mask_srestore_under_ice

logical mom_surface_forcing_mct::surface_forcing_cs::mask_srestore_under_ice

If true, use an ice mask defined by frazil criteria for salinity restoring.

Definition at line 114 of file mom_surface_forcing_mct.F90.

114  logical :: mask_srestore_under_ice !< If true, use an ice mask defined by frazil

◆ mask_trestore

logical mom_surface_forcing_mct::surface_forcing_cs::mask_trestore

if true, apply a 2-dimensional mask to the surface temperature restoring fluxes. The masking file should be in inputdir/temp_restore_mask.nc and the field should be named 'mask'

Definition at line 132 of file mom_surface_forcing_mct.F90.

132  logical :: mask_trestore !< if true, apply a 2-dimensional mask to the surface

◆ max_delta_srestore

real mom_surface_forcing_mct::surface_forcing_cs::max_delta_srestore

maximum delta salinity used for restoring

Definition at line 118 of file mom_surface_forcing_mct.F90.

118  real :: max_delta_srestore !< maximum delta salinity used for restoring

◆ max_delta_trestore

real mom_surface_forcing_mct::surface_forcing_cs::max_delta_trestore

maximum delta sst used for restoring

Definition at line 119 of file mom_surface_forcing_mct.F90.

119  real :: max_delta_trestore !< maximum delta sst used for restoring

◆ max_p_surf

real mom_surface_forcing_mct::surface_forcing_cs::max_p_surf

maximum surface pressure that can be exerted by the atmosphere and floating sea-ice, [Pa]. This is needed because the FMS coupling structure does not limit the water that can be frozen out of the ocean and the ice-ocean heat fluxes are treated explicitly.

Definition at line 71 of file mom_surface_forcing_mct.F90.

71  real :: max_p_surf !< maximum surface pressure that can be

◆ read_gust_2d

logical mom_surface_forcing_mct::surface_forcing_cs::read_gust_2d

If true, use a 2-dimensional gustiness supplied from an input file.

Definition at line 82 of file mom_surface_forcing_mct.F90.

82  logical :: read_gust_2d !< If true, use a 2-dimensional gustiness supplied

◆ read_tideamp

logical mom_surface_forcing_mct::surface_forcing_cs::read_tideamp

If true, spatially varying tidal amplitude read from a file.

Definition at line 94 of file mom_surface_forcing_mct.F90.

94  logical :: read_tideamp !< If true, spatially varying tidal amplitude read from a file.

◆ restart_csp

type(mom_restart_cs), pointer mom_surface_forcing_mct::surface_forcing_cs::restart_csp => NULL()

restart pointer

Definition at line 141 of file mom_surface_forcing_mct.F90.

141  type(MOM_restart_CS), pointer :: restart_CSp => null() !< restart pointer

◆ rho0

real mom_surface_forcing_mct::surface_forcing_cs::rho0

Boussinesq reference density [R ~> kg m-3].

Definition at line 66 of file mom_surface_forcing_mct.F90.

66  real :: Rho0 !< Boussinesq reference density [R ~> kg m-3]

◆ rigid_sea_ice

logical mom_surface_forcing_mct::surface_forcing_cs::rigid_sea_ice

If true, sea-ice exerts a rigidity that acts to damp surface deflections (especially surface gravity waves). The default is false.

Definition at line 95 of file mom_surface_forcing_mct.F90.

95  logical :: rigid_sea_ice !< If true, sea-ice exerts a rigidity that acts

◆ rigid_sea_ice_mass

real mom_surface_forcing_mct::surface_forcing_cs::rigid_sea_ice_mass

A mass per unit area of sea-ice beyond which sea-ice viscosity becomes effective, in kg m-2, typically of order 1000 [kg m-2].

Definition at line 103 of file mom_surface_forcing_mct.F90.

103  real :: rigid_sea_ice_mass !< A mass per unit area of sea-ice beyond which

◆ salt_restore_as_sflux

logical mom_surface_forcing_mct::surface_forcing_cs::salt_restore_as_sflux

If true, SSS restore as salt flux instead of water flux.

Definition at line 108 of file mom_surface_forcing_mct.F90.

108  logical :: salt_restore_as_sflux !< If true, SSS restore as salt flux instead of water flux

◆ salt_restore_file

character(len=200) mom_surface_forcing_mct::surface_forcing_cs::salt_restore_file

filename for salt restoring data

Definition at line 123 of file mom_surface_forcing_mct.F90.

123  character(len=200) :: salt_restore_file !< filename for salt restoring data

◆ salt_restore_var_name

character(len=30) mom_surface_forcing_mct::surface_forcing_cs::salt_restore_var_name

name of surface salinity in salt_restore_file

Definition at line 124 of file mom_surface_forcing_mct.F90.

124  character(len=30) :: salt_restore_var_name !< name of surface salinity in salt_restore_file

◆ srestore_mask

real, dimension(:,:), pointer mom_surface_forcing_mct::surface_forcing_cs::srestore_mask => NULL()

mask for SSS restoring

Definition at line 129 of file mom_surface_forcing_mct.F90.

129  real, pointer, dimension(:,:) :: srestore_mask => null() !< mask for SSS restoring

◆ temp_restore_file

character(len=200) mom_surface_forcing_mct::surface_forcing_cs::temp_restore_file

filename for sst restoring data

Definition at line 130 of file mom_surface_forcing_mct.F90.

130  character(len=200) :: temp_restore_file !< filename for sst restoring data

◆ temp_restore_var_name

character(len=30) mom_surface_forcing_mct::surface_forcing_cs::temp_restore_var_name

name of surface temperature in temp_restore_file

Definition at line 131 of file mom_surface_forcing_mct.F90.

131  character(len=30) :: temp_restore_var_name !< name of surface temperature in temp_restore_file

◆ tke_tidal

real, dimension(:,:), pointer mom_surface_forcing_mct::surface_forcing_cs::tke_tidal => NULL()

turbulent kinetic energy introduced to the

Definition at line 84 of file mom_surface_forcing_mct.F90.

84  real, pointer, dimension(:,:) :: &
85  TKE_tidal => null(), & !< turbulent kinetic energy introduced to the
86  !! bottom boundary layer by drag on the tidal flows [R Z3 T-3 ~> W m-2]
87  gust => null(), & !< spatially varying unresolved background
88  !! gustiness that contributes to ustar [R L Z T-1 ~> Pa].
89  !! gust is used when read_gust_2d is true.
90  ustar_tidal => null() !< tidal contribution to the bottom friction velocity [Z T-1 ~> m s-1]

◆ trestore_mask

real, dimension(:,:), pointer mom_surface_forcing_mct::surface_forcing_cs::trestore_mask => NULL()

mask for SST restoring

Definition at line 136 of file mom_surface_forcing_mct.F90.

136  real, pointer, dimension(:,:) :: trestore_mask => null() !< mask for SST restoring

◆ urf_cs

type(user_revise_forcing_cs), pointer mom_surface_forcing_mct::surface_forcing_cs::urf_cs => NULL()

user revise pointer

Definition at line 142 of file mom_surface_forcing_mct.F90.

142  type(user_revise_forcing_CS), pointer :: urf_CS => null() !< user revise pointer

◆ use_limited_p_ssh

logical mom_surface_forcing_mct::surface_forcing_cs::use_limited_p_ssh

If true, return the sea surface height with the correction for the atmospheric (and sea-ice) pressure limited by max_p_surf instead of the full atmospheric pressure. The default is true.

Definition at line 77 of file mom_surface_forcing_mct.F90.

77  logical :: use_limited_P_SSH !< If true, return the sea surface height with

◆ use_net_fw_adjustment_sign_bug

logical mom_surface_forcing_mct::surface_forcing_cs::use_net_fw_adjustment_sign_bug

use the wrong sign when adjusting net FW

Definition at line 112 of file mom_surface_forcing_mct.F90.

112  logical :: use_net_FW_adjustment_sign_bug !< use the wrong sign when adjusting net FW

◆ use_temperature

logical mom_surface_forcing_mct::surface_forcing_cs::use_temperature

Definition at line 63 of file mom_surface_forcing_mct.F90.

63  logical :: use_temperature !! If true, temp and saln used as state variables

◆ ustar_tidal

real, dimension(:,:), pointer mom_surface_forcing_mct::surface_forcing_cs::ustar_tidal => NULL()

tidal contribution to the bottom friction velocity [Z T-1 ~> m s-1]

Definition at line 84 of file mom_surface_forcing_mct.F90.

◆ utide

real mom_surface_forcing_mct::surface_forcing_cs::utide

constant tidal velocity to use if read_tideamp is false [Z T-1 ~> m s-1]

Definition at line 92 of file mom_surface_forcing_mct.F90.

92  real :: utide !< constant tidal velocity to use if read_tideamp

◆ wind_stagger

integer mom_surface_forcing_mct::surface_forcing_cs::wind_stagger

AGRID, BGRID_NE, or CGRID_NE (integer values from MOM_domains) to indicate the staggering of the winds that are being provided in calls to update_ocean_model.

Definition at line 59 of file mom_surface_forcing_mct.F90.

59  integer :: wind_stagger !< AGRID, BGRID_NE, or CGRID_NE (integer values

◆ wind_stress_multiplier

real mom_surface_forcing_mct::surface_forcing_cs::wind_stress_multiplier

A multiplier applied to incoming wind stress (nondim).

Definition at line 64 of file mom_surface_forcing_mct.F90.

64  real :: wind_stress_multiplier!< A multiplier applied to incoming wind stress (nondim).

The documentation for this type was generated from the following file: