Virtual Testbed
Ship dynamics simulator for extreme conditions
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
vtb::core::Wave_base< T, N > Class Template Reference

Base class for water waves. More...

#include <wave.hh>

Inheritance diagram for vtb::core::Wave_base< T, N >:
[legend]

Public Types

typedef T value_type
 
typedef blitz::TinyVector< T, N-1 > vec
 

Public Member Functions

 Wave_base (const Wave_base &)=default
 
Wave_baseoperator= (const Wave_base &)=default
 
 Wave_base (Amplitude< T > amplitude, const vec &k, Frequency< T > freq)
 
 Wave_base (Amplitude< T > amplitude, Length< T > length, Direction< T > direction, Frequency< T > velocity)
 
amplitude () const noexcept
 Get wave amplitude.
 
const vec & wave_number () const noexcept
 Get wave numbers for each dimension.
 
angular_frequency () const noexcept
 Get wave angular frequency.
 
vec length () const noexcept
 Get wave length.
 
scalar_length () const noexcept
 Get wave length.
 
direction () const noexcept
 Get wave direction in radians.
 
period () const noexcept
 Get wave period.
 
vec phase_velocity () const noexcept
 Get phase velocity.
 

Static Public Member Functions

static constexpr int dimensions () noexcept
 

Protected Attributes

_amplitude {1}
 
vec _k {T{0.05}}
 
_angfrequency {1}
 

Detailed Description

template<class T, int N>
class vtb::core::Wave_base< T, N >

Base class for water waves.

Date
2018-08-01
Author
Ivan Gankevich

Definition at line 49 of file core/types.hh.