MOM6
MOM_wave_speed.F90 File Reference
#include <MOM_memory.h>
#include "version_variable.h"
Include dependency graph for MOM_wave_speed.F90:

Go to the source code of this file.

Data Types

type  mom_wave_speed::wave_speed_cs
 Control structure for MOM_wave_speed. More...
 

Modules

module  mom_wave_speed
 Routines for calculating baroclinic wave speeds.
 

Functions/Subroutines

subroutine, public mom_wave_speed::wave_speed (h, tv, G, GV, US, cg1, CS, full_halos, use_ebt_mode, mono_N2_column_fraction, mono_N2_depth, modal_structure)
 Calculates the wave speed of the first baroclinic mode. More...
 
subroutine mom_wave_speed::tdma6 (n, a, b, c, lam, y)
 Solve a non-symmetric tridiagonal problem with a scalar contribution to the leading diagonal. This uses the Thomas algorithm rather than the Hallberg algorithm since the matrix is not symmetric. More...
 
subroutine, public mom_wave_speed::wave_speeds (h, tv, G, GV, US, nmodes, cn, CS, full_halos)
 Calculates the wave speeds for the first few barolinic modes. More...
 
subroutine mom_wave_speed::tridiag_det (a, b, c, nrows, lam, det_out, ddet_out, row_scale)
 Calculate the determinant of a tridiagonal matrix with diagonals a,b-lam,c and its derivative with lam, where lam is constant across rows. Only the ratio of det to its derivative and their signs are typically used, so internal rescaling by consistent factors are used to avoid over- or underflow. More...
 
subroutine, public mom_wave_speed::wave_speed_init (CS, use_ebt_mode, mono_N2_column_fraction, mono_N2_depth)
 Initialize control structure for MOM_wave_speed. More...
 
subroutine, public mom_wave_speed::wave_speed_set_param (CS, use_ebt_mode, mono_N2_column_fraction, mono_N2_depth)
 Sets internal parameters for MOM_wave_speed. More...