scientimate.wavedispersion#
k, L, C, Cg = scientimate.wavedispersion(h, T, kCalcMethod='beji')
Description#
Solve water wave dispersion relation
Calculate wave number (k), wave length (L), wave celereity (C), and wave group velocity (Cg) using linear wave theory
Inputs#
- h
Water depth in (m)
- T
- Wave period in (s)If peak wave frequency (Tp) is used, calculated values represent peak wave
- kCalcMethod=’beji’
- Wave number calculation method‘hunt’: Hunt (1979), ‘beji’: Beji (2013), ‘vatankhah’: Vatankhah and Aghashariatmadari (2013)‘goda’: Goda (2010), ‘exact’: calculate exact valueNote: inputs can be as a single value or a 1-D vertical array
Outputs#
- k
Wave number in (radian/m)
- L
Wave length in (m)
- C
Wave celerity in (m/s)
- Cg
Wave group celerity in (m/s)
Examples#
import scientimate as sm
import numpy as np
k,L,C,Cg=sm.wavedispersion(1,3,'beji')
k,L,C,Cg=sm.wavedispersion([1,1.1],[3,3.1],'exact')
k,L,C,Cg=sm.wavedispersion(np.array([1,1.1]),np.array([3,3.1]),'exact')
References#
Beji, S. (2013). Improved explicit approximation of linear dispersion relationship for gravity waves. Coastal Engineering, 73, 11-12.
Goda, Y. (2010). Random seas and design of maritime structures. World scientific.
Hunt, J. N. (1979). Direct solution of wave dispersion equation. Journal of the Waterway Port Coastal and Ocean Division, 105(4), 457-459.
Vatankhah, A. R., & Aghashariatmadari, Z. (2013). Improved explicit approximation of linear dispersion relationship for gravity waves: A discussion. Coastal engineering, 78, 21-22.