MOM6
mom_surface_forcing_gfdl::surface_forcing_cs Type Reference

Detailed Description

surface_forcing_CS is a structure containing pointers to the forcing fields which may be used to drive MOM. All fluxes are positive downward.

Definition at line 59 of file MOM_surface_forcing_gfdl.F90.

Collaboration diagram for mom_surface_forcing_gfdl::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.
 
logical use_temperature
 If true, temp and saln used as state variables.
 
real wind_stress_multiplier
 A multiplier applied to incoming wind stress [nondim].
 
real rho0
 Boussinesq reference density [R ~> kg m-3].
 
real area_surf = -1.0
 Total ocean surface area [m2].
 
real latent_heat_fusion
 Latent heat of fusion [J kg-1].
 
real latent_heat_vapor
 Latent heat of vaporization [J kg-1].
 
real max_p_surf
 The maximum surface pressure that can be exerted by the atmosphere and floating sea-ice [R L2 T-2 ~> 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.
 
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.
 
logical approx_net_mass_src
 If true, use the net mass sources from the ice-ocean boundary type without any further adjustments to drive the ocean dynamics. The actual net mass source may differ due to corrections.
 
real gust_const
 Constant unresolved background gustiness for ustar [R L Z T-1 ~> Pa].
 
logical read_gust_2d
 If true, use a 2-dimensional gustiness supplied from an input file.
 
real, dimension(:,:), pointer tke_tidal => NULL()
 Turbulent kinetic energy introduced to the bottom boundary layer.
 
real, dimension(:,:), pointer gust => NULL()
 A spatially varying unresolved background gustiness that.
 
real, dimension(:,:), pointer ustar_tidal => NULL()
 Tidal contribution to the bottom friction velocity [Z T-1 ~> m s-1].
 
real cd_tides
 Drag coefficient that applies to the tides (nondimensional)
 
real utide
 Constant tidal velocity to use if read_tideamp is false [Z T-1 ~> m s-1].
 
logical read_tideamp
 If true, spatially varying tidal amplitude read from a file.
 
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.
 
real g_earth
 Gravitational acceleration [L2 Z-1 T-2 ~> m s-2].
 
real kv_sea_ice
 Viscosity in sea-ice that resists sheared vertical motions [L4 Z-2 T-1 ~> m2 s-1].
 
real density_sea_ice
 Typical density of sea-ice [R ~> kg m-3]. The value is only used to convert the ice pressure into appropriate units for use with Kv_sea_ice.
 
real rigid_sea_ice_mass
 A mass per unit area of sea-ice beyond which sea-ice viscosity becomes effective [R Z ~> kg m-2], typically of order 1000 kg m-2.
 
logical allow_flux_adjustments
 If true, use data_override to obtain flux adjustments.
 
logical restore_salt
 If true, the coupled MOM driver adds a term to restore surface salinity to a specified value.
 
logical restore_temp
 If true, the coupled MOM driver adds a term to restore sea surface temperature to a specified value.
 
real flux_const
 Piston velocity for surface restoring [Z T-1 ~> m s-1].
 
logical salt_restore_as_sflux
 If true, SSS restore as salt flux instead of water flux.
 
logical adjust_net_srestore_to_zero
 Adjust srestore to zero (for both salt_flux or vprec)
 
logical adjust_net_srestore_by_scaling
 Adjust srestore w/o moving zero contour.
 
logical adjust_net_fresh_water_to_zero
 Adjust net surface fresh-water (with restoring) to zero.
 
logical use_net_fw_adjustment_sign_bug
 Use the wrong sign when adjusting net FW.
 
logical adjust_net_fresh_water_by_scaling
 Adjust net surface fresh-water w/o moving zero contour.
 
logical mask_srestore_under_ice
 If true, use an ice mask defined by frazil criteria for salinity restoring.
 
real ice_salt_concentration
 Salt concentration for sea ice [kg/kg].
 
logical mask_srestore_marginal_seas
 If true, then mask SSS restoring in marginal seas.
 
real max_delta_srestore
 Maximum delta salinity used for restoring.
 
real max_delta_trestore
 Maximum delta sst used for restoring.
 
real, dimension(:,:), pointer basin_mask => NULL()
 Mask for surface salinity restoring by basin.
 
logical answers_2018
 If true, use the order of arithmetic and expressions that recover the answers from the end of 2018. Otherwise, use a simpler expression to calculate gustiness.
 
logical fix_ustar_gustless_bug
 If true correct a bug in the time-averaging of the gustless wind friction velocity.
 
logical check_no_land_fluxes
 Return warning if IOB flux over land is non-zero.
 
type(diag_ctrl), pointer diag => NULL()
 Structure to regulate diagnostic output timing.
 
character(len=200) inputdir
 Directory where NetCDF input files are.
 
character(len=200) salt_restore_file
 Filename for salt restoring data.
 
character(len=30) salt_restore_var_name
 Name of surface salinity in salt_restore_file.
 
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'.
 
real, dimension(:,:), pointer srestore_mask => NULL()
 mask for SSS restoring
 
character(len=200) temp_restore_file
 Filename for sst restoring data.
 
character(len=30) temp_restore_var_name
 Name of surface temperature in temp_restore_file.
 
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'.
 
real, dimension(:,:), pointer trestore_mask => NULL()
 Mask for SST restoring.
 
integer id_srestore = -1
 An id number for time_interp_external.
 
integer id_trestore = -1
 An id number for time_interp_external.
 
type(forcing_diags), public handles
 Diagnostics handles.
 
type(mom_restart_cs), pointer restart_csp => NULL()
 A pointer to the restart control structure.
 
type(user_revise_forcing_cs), pointer urf_cs => NULL()
 A control structure for user forcing revisions.
 

Detailed Description

surface_forcing_CS is a structure containing pointers to the forcing fields which may be used to drive MOM. All fluxes are positive downward.

Definition at line 59 of file MOM_surface_forcing_gfdl.F90.


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