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_max
[real] :: Maximum Internal tide conversion available to mix above the BBL [R Z3 T-3 ~> 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 [R Z3 T-3 ~> W m-2].%
tideamp
[real(:,:,:),allocatable] :: The amplitude of the tidal velocities [Z 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_bottom
mom_error_handler::mom_error
mom_isopycnal_slopes::vert_fill_ts
-
subroutine
mom_int_tide_input/
find_n2_bottom
(h, tv, T_f, S_f, h2, fluxes, G, GV, US, N2_bot, rho_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
h :: [in] Layer thicknesses [H ~> m or kg m-2]
tv :: [in] A structure containing pointers to the thermodynamic fields
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].
fluxes :: [in] A structure of thermodynamic surface fluxes
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]
- 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).
tke_itidal_input :: [out] The energy input to the internal waves [R Z3 T-3 ~> W m-2].
nfreq :: [in] number of frequencies
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).
vel_bttide :: [out] Barotropic velocity read from file [L T-1 ~> m s-1].
nfreq :: [in] number of frequencies
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::extractword
mom_error_handler::mom_error
mom_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.