Stokes5 Class Reference

Fifth-order wave model. More...

Inheritance diagram for Stokes5:
Collaboration diagram for Stokes5:

Public Member Functions

 TypeName ("Stokes5")
 Runtime type information. More...
 
 Stokes5 (const dictionary &dict, const scalar g, const word &modelName=Stokes5::typeName, scalar(*modelCelerity)(scalar, scalar, scalar, scalar)=&Stokes5::celerity)
 Construct from a dictionary and gravity. More...
 
virtual autoPtr< waveModelclone () const
 Construct a clone. More...
 
virtual ~Stokes5 ()
 Destructor. More...
 
virtual tmp< scalarFieldelevation (const scalar t, const scalarField &x) const
 Get the wave elevation at a given time and local coordinates. Local. More...
 
virtual tmp< vector2DFieldvelocity (const scalar t, const vector2DField &xz) const
 Get the wave velocity at a given time and local coordinates. Local. More...
 
- Public Member Functions inherited from Stokes2
 TypeName ("Stokes2")
 Runtime type information. More...
 
 Stokes2 (const dictionary &dict, const scalar g, const word &modelName=Stokes2::typeName, scalar(*modelCelerity)(scalar, scalar, scalar, scalar)=&Stokes2::celerity)
 Construct from a dictionary and gravity. More...
 
virtual ~Stokes2 ()
 Destructor. More...
 
- Public Member Functions inherited from Airy
 TypeName ("Airy")
 Runtime type information. More...
 
 Airy (const Airy &wave)
 Construct a copy. More...
 
 Airy (const dictionary &dict, const scalar g, const word &modelName=Airy::typeName, scalar(*modelCelerity)(scalar, scalar, scalar, scalar)=&Airy::celerity)
 Construct from a dictionary and gravity. More...
 
virtual ~Airy ()
 Destructor. More...
 
scalar depth () const
 Get the depth. More...
 
scalar amplitude (const scalar t) const
 Get the amplitude. More...
 
scalar amplitude () const
 Get the amplitude at steady state. More...
 
scalar length () const
 Get the length. More...
 
scalar phase () const
 Get the phase. More...
 
virtual void write (Ostream &os) const
 Write. More...
 
- Public Member Functions inherited from waveModel
 TypeName ("waveModel")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, waveModel, dictionary,(const dictionary &dict, const scalar g),(dict, g))
 
 waveModel (const waveModel &wave)
 Construct a copy. More...
 
 waveModel (const dictionary &dict, const scalar g)
 Construct from a dictionary and gravity. More...
 
virtual ~waveModel ()
 Destructor. More...
 
scalar g () const
 Get the value of gravity. More...
 

Protected Member Functions

virtual scalar celerity () const
 The wave celerity [m/s]. More...
 
- Protected Member Functions inherited from Airy
scalar k () const
 The angular wavenumber [rad/m]. More...
 
bool deep () const
 Return whether shallow and intermediate effects are to be omitted. More...
 
tmp< scalarFieldangle (const scalar t, const scalarField &x) const
 Angle of the oscillation [rad]. More...
 
tmp< vector2DFieldvi (const label i, const scalar t, const vector2DField &xz) const
 Return the non-dimensionalised i-th harmonic of the velocity. More...
 

Static Protected Member Functions

static scalar celerity (const scalar depth, const scalar amplitude, const scalar length, const scalar g)
 The wave celerity [m/s]. More...
 
- Static Protected Member Functions inherited from Stokes2
static scalar celerity (const scalar depth, const scalar amplitude, const scalar length, const scalar g)
 The wave celerity [m/s]. More...
 
- Static Protected Member Functions inherited from Airy
static scalar k (const scalar length)
 The angular wavenumber [rad/m]. More...
 
static bool deep (const scalar length, const scalar depth)
 Return whether shallow and intermediate effects are to be omitted. More...
 
static scalar celerity (const scalar depth, const scalar amplitude, const scalar length, const scalar g)
 The wave celerity [m/s]. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from waveModel
static autoPtr< waveModelNew (const dictionary &dict, const scalar g)
 Select. More...
 
static autoPtr< waveModelNew (const word &type, const dictionary &dict, const scalar g)
 Select. More...
 

Detailed Description

Fifth-order wave model.

Reference:

    Fenton, J. D. (1985).
    A fifth-order Stokes theory for steady waves.
    Journal of waterway, port, coastal, and ocean engineering, 111(2),
    216-234.
Source files

Definition at line 58 of file Stokes5.H.

Constructor & Destructor Documentation

◆ Stokes5()

Stokes5 ( const dictionary dict,
const scalar  g,
const word modelName = Stokes5::typeName,
scalar(*)(scalar, scalar, scalar, scalar)  modelCelerity = &Stokes5::celerity 
)

Construct from a dictionary and gravity.

Definition at line 73 of file Stokes5.C.

Referenced by Stokes5::clone().

Here is the caller graph for this function:

◆ ~Stokes5()

~Stokes5 ( )
virtual

Destructor.

Definition at line 87 of file Stokes5.C.

Member Function Documentation

◆ celerity() [1/2]

Foam::scalar celerity ( const scalar  depth,
const scalar  amplitude,
const scalar  length,
const scalar  g 
)
staticprotected

◆ celerity() [2/2]

virtual scalar celerity ( ) const
inlineprotectedvirtual

The wave celerity [m/s].

Reimplemented from Stokes2.

Definition at line 76 of file Stokes5.H.

References Airy::amplitude(), Airy::depth(), waveModel::g(), and Airy::length().

Here is the call graph for this function:

◆ TypeName()

TypeName ( "Stokes5"  )

Runtime type information.

◆ clone()

virtual autoPtr<waveModel> clone ( ) const
inlinevirtual

Construct a clone.

Reimplemented from Stokes2.

Definition at line 101 of file Stokes5.H.

References Stokes5::Stokes5().

Here is the call graph for this function:

◆ elevation()

Foam::tmp< Foam::scalarField > elevation ( const scalar  t,
const scalarField x 
) const
virtual

Get the wave elevation at a given time and local coordinates. Local.

x is aligned with the direction of propagation.

Reimplemented from Stokes2.

Definition at line 93 of file Stokes5.C.

References Foam::cos(), Foam::cosh(), Stokes2::elevation(), Foam::endl(), Foam::Info, k, Foam::log(), Foam::max(), Foam::min(), Foam::pow3(), Foam::pow4(), Foam::pow5(), Foam::pow6(), Foam::fvm::S(), Foam::sqr(), Foam::T(), Foam::tanh(), and x.

Here is the call graph for this function:

◆ velocity()

Foam::tmp< Foam::vector2DField > velocity ( const scalar  t,
const vector2DField xz 
) const
virtual

Get the wave velocity at a given time and local coordinates. Local.

x is aligned with the direction of propagation, and z with negative gravity.

Reimplemented from Stokes2.

Definition at line 159 of file Stokes5.C.

References Airy::celerity(), Foam::cosh(), Foam::endl(), Foam::Info, k, Foam::log(), Foam::max(), Foam::min(), Foam::pow3(), Foam::pow4(), Foam::pow5(), Foam::pow6(), Foam::fvm::S(), Foam::sinh(), Foam::sqr(), and Stokes2::velocity().

Here is the call graph for this function:

The documentation for this class was generated from the following files: