mom_int_tide_input module reference¶
Calculates energy input to the internal tides.
Data Types¶
This control structure holds parameters that regulate internal tide energy inputs. |
|
This type is used to exchange fields related to the internal tides. |
Functions/Subroutines¶
Sets the model-state dependent internal tide energy sources. |
|
Estimates the near-bottom buoyancy frequency (N^2). |
|
Returns TKE_itidal_input. |
|
Returns barotropic tidal velocities. |
|
Initializes the data related to the internal tide input module. |
|
Deallocates any memory related to the internal tide input module. |
Detailed Description¶
Calculates energy input to the internal tides.
Type Documentation¶
-
type
mom_int_tide_input/int_tide_input_cs¶ This control structure holds parameters that regulate internal tide energy inputs.
- Type fields:
%id_tke_itidal_itide[integer(:),allocatable] :: Diagnostic IDs.%id_nb[integer] :: Diagnostic IDs.%id_n2_bot[integer] :: Diagnostic IDs.%initialized[logical] :: True if this control structure has been initialized.%debug[logical] :: If true, write verbose checksums for debugging.%diag[type( diag_ctrl ),pointer] :: A structure that is used to regulate the timing of diagnostic output.%tke_itide_maxi[real] :: Maximum Internal tide conversion available to mix above the BBL [H Z2 T-3 ~> m3 s-3 or W m-2].%kappa_fill[real] :: Vertical diffusivity used to interpolate sensible values of T & S into thin layers [H Z T-1 ~> m2 s-1 or kg m-1 s-1].%tke_itidal_coef[real(:,:,:),allocatable] :: The time-invariant field that enters the TKE_itidal input calculation noting that the stratification and perhaps density are time-varying [R Z4 H-1 T-2 ~> J m-2 or J m kg-1].%tke_itidal_input[real(:,:,:),allocatable] :: The internal tide TKE input at the bottom of the ocean [H Z2 T-3 ~> m3 s-3 or W m-2].%tideamp[real(:,:,:),allocatable] :: The amplitude of the tidal velocities [L T-1 ~> m s-1].%inputdir[character (len=200)] :: The directory for input files.%int_tide_source_test[logical] :: If true, apply an arbitrary generation site for internal tide testing.%time_max_source[type(time_type)] :: A time for use in testing internal tides.%int_tide_source_x[real] :: X Location of generation site for internal tide for testing [degrees_E] or [km].%int_tide_source_y[real] :: Y Location of generation site for internal tide for testing [degrees_N] or [km].%int_tide_source_i[integer] :: I Location of generation site.%int_tide_source_j[integer] :: J Location of generation site.%int_tide_use_glob_ij[logical] :: Use global indices for generation site.%nfreq[integer] :: The number of internal tide frequency bands.
-
type
mom_int_tide_input/int_tide_input_type¶ This type is used to exchange fields related to the internal tides.
- Type fields:
%h2[real(:,:),allocatable] :: The squared topographic roughness height [Z2 ~> m2].%nb[real(:,:),allocatable] :: The bottom stratification [T-1 ~> s-1].%rho_bot[real(:,:),allocatable] :: The bottom density or the Boussinesq reference density [R ~> kg m-3].
Function/Subroutine Documentation¶
-
subroutine
mom_int_tide_input/set_int_tide_input(u, v, h, tv, fluxes, itide, dt, G, GV, US, CS)¶ Sets the model-state dependent internal tide energy sources.
- Parameters:
g :: [in] The ocean’s grid structure
gv :: [in] The ocean’s vertical grid structure
us :: [in] A dimensional unit scaling type
u :: [in] The zonal velocity [L T-1 ~> m s-1]
v :: [in] The meridional velocity [L T-1 ~> m s-1]
h :: [in] Layer thicknesses [H ~> m or kg m-2]
tv :: [in] A structure containing pointers to the thermodynamic fields
fluxes :: [in] A structure of thermodynamic surface fluxes
itide :: [inout] A structure containing fields related to the internal tide sources.
dt :: [in] The time increment [T ~> s].
cs :: This module’s control structure.
- Call to:
find_n2_bottommom_error_handler::mom_errormom_isopycnal_slopes::vert_fill_ts
-
subroutine
mom_int_tide_input/find_n2_bottom(G, GV, US, tv, fluxes, h, T_f, S_f, h2, N2_bot, Rho_bot, h_bot, k_bot)¶ Estimates the near-bottom buoyancy frequency (N^2).
- Parameters:
g :: [in] The ocean’s grid structure
gv :: [in] The ocean’s vertical grid structure
us :: [in] A dimensional unit scaling type
tv :: [in] A structure containing pointers to the thermodynamic fields
fluxes :: [in] A structure of thermodynamic surface fluxes
h :: [in] Layer thicknesses [H ~> m or kg m-2]
t_f :: [in] Temperature after vertical filtering to smooth out the values in thin layers [C ~> degC].
s_f :: [in] Salinity after vertical filtering to smooth out the values in thin layers [S ~> ppt].
h2 :: [in] Bottom topographic roughness [Z2 ~> m2].
n2_bot :: [out] The squared buoyancy frequency at the ocean bottom [T-2 ~> s-2].
rho_bot :: [out] The average density near the ocean bottom [R ~> kg m-3]
h_bot :: [out] Bottom boundary layer thickness [H ~> m or kg m-2]
k_bot :: [out] Bottom boundary layer top layer index
- Call to:
- Called from:
-
subroutine
mom_int_tide_input/get_input_tke(G, TKE_itidal_input, nFreq, CS)¶ Returns TKE_itidal_input.
- Parameters:
g :: [in] The ocean’s grid structure (in).
nfreq :: [in] number of frequencies
tke_itidal_input :: [out] The energy input to the internal waves
cs :: A pointer that is set to point to the control structure for the internal tide input module.
- Called from:
-
subroutine
mom_int_tide_input/get_barotropic_tidal_vel(G, vel_btTide, nFreq, CS)¶ Returns barotropic tidal velocities.
- Parameters:
g :: [in] The ocean’s grid structure (in).
nfreq :: [in] number of frequencies
vel_bttide :: [out] Barotropic velocity read from file [L T-1 ~> m s-1].
cs :: A pointer that is set to point to the control structure for the internal tide input module.
- Called from:
-
subroutine
mom_int_tide_input/int_tide_input_init(Time, G, GV, US, param_file, diag, CS, itide)¶ Initializes the data related to the internal tide input module.
- Parameters:
time :: [in] The current model time
g :: [in] The ocean’s grid structure
gv :: [in] The ocean’s vertical grid structure
us :: [in] A dimensional unit scaling type
param_file :: [in] A structure to parse for run-time parameters
diag :: [inout] structure used to regulate diagnostic output.
cs :: This module’s control structure, which is initialized here.
itide :: A structure containing fields related to the internal tide sources.
- Call to:
mom_string_functions::extractwordmom_error_handler::mom_errormom_diag_mediator::register_diag_field
-
subroutine
mom_int_tide_input/int_tide_input_end(CS)¶ Deallocates any memory related to the internal tide input module.
- Parameters:
cs :: This module’s control structure, which is deallocated here.