using value_type = T
using vec = Vector< T, N-1 >
No_wave(const No_wave &)
template <class T, int N, class Wave>
courant_number_sum(const Wave & wave, const Grid< T, N > & grid) -> T
courant_number(const Wave & wave, const Grid< T, N > & grid) -> T
length() const -> vec
Get wave length.
template <class T>
wave_normal(T direction) -> Vector< T, 2 >
operator()(const vec &, T) const -> T
Returns wavy surface elevation at point x.
x
phase_velocity() const -> vec
Get phase velocity.
number() const -> const vec &
Get wave numbers for each dimension.
operator=(const Wave_base &) -> Wave_base &
Wave_base(T amplitude, T length, vec normal, T velocity)explicit
wave_number() const -> const vec &
amplitude() const -> T
Get wave amplitude.
No_wave()
Wave_base(const Wave_base &)
period() const -> T
Get wave period.
scalar_length() const -> T
direction() const -> T
Get wave direction in radians.
dimensions() -> constexpr static int
Wave_base()
angular_frequency() const -> T
Get wave angular frequency.
operator=(const No_wave &) -> No_wave &
Wave_base(T amplitude, const vec & k, T freq)explicit
template <class T, int N>
wave_number(T length, Vector< T, N > normal) -> Vector< T, N >
normal() const -> vec
Get wave direction as unit vector.
T _angular_frequency
vec _wave_vector
T _amplitude