Generic base class for waves. Derived classes must implement field functions which return the elevation above the wave surface and the velocity field, both as a function of position. More...
Public Member Functions | |
TypeName ("waveModel") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, waveModel, objectRegistry,(const objectRegistry &db, const dictionary &dict),(db, dict)) | |
waveModel (const waveModel &wave) | |
Construct a copy. More... | |
waveModel (const objectRegistry &db, const dictionary &dict) | |
Construct from a database and a dictionary. More... | |
virtual autoPtr< waveModel > | clone () const =0 |
Construct a clone. More... | |
virtual | ~waveModel () |
Destructor. More... | |
scalar | amplitude (const scalar t) const |
Get the amplitude. More... | |
scalar | g () const |
Get the (scalar) value of gravity. More... | |
virtual tmp< scalarField > | elevation (const scalar t, const scalarField &x) const =0 |
Get the wave elevation at a given time and local coordinates. Local. More... | |
virtual tmp< vector2DField > | velocity (const scalar t, const vector2DField &xz) const =0 |
Get the wave velocity at a given time and local coordinates. Local. More... | |
virtual tmp< scalarField > | pressure (const scalar t, const vector2DField &xz) const =0 |
Get the wave pressure at a given time and local coordinates. Local. More... | |
virtual void | write (Ostream &os) const |
Write. More... | |
Static Public Member Functions | |
static autoPtr< waveModel > | New (const objectRegistry &db, const dictionary &dict) |
Select. More... | |
static autoPtr< waveModel > | New (const word &type, const objectRegistry &db, const dictionary &dict) |
Select. More... | |
Generic base class for waves. Derived classes must implement field functions which return the elevation above the wave surface and the velocity field, both as a function of position.
Definition at line 56 of file waveModel.H.
Construct a copy.
Definition at line 41 of file waveModel.C.
waveModel | ( | const objectRegistry & | db, |
const dictionary & | dict | ||
) |
Construct from a database and a dictionary.
Definition at line 49 of file waveModel.C.
|
virtual |
Destructor.
Definition at line 61 of file waveModel.C.
TypeName | ( | "waveModel" | ) |
Runtime type information.
declareRunTimeSelectionTable | ( | autoPtr | , |
waveModel | , | ||
objectRegistry | , | ||
(const objectRegistry &db, const dictionary &dict) | , | ||
(db, dict) | |||
) |
|
static |
Select.
Definition at line 31 of file waveModelNew.C.
References dict, dictionary::lookup(), and Foam::compressible::New().
Referenced by waveSuperposition::waveSuperposition().
|
static |
Select.
Definition at line 41 of file waveModelNew.C.
References dict, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::Info, and Foam::nl.
|
inline |
Get the amplitude.
Definition at line 123 of file waveModel.H.
References waveModel::elevation(), waveModel::g(), waveModel::pressure(), waveModel::velocity(), waveModel::write(), and x.
Referenced by solitary::elevation(), Airy::elevation(), and Airy::velocity().
Foam::scalar g | ( | ) | const |
Get the (scalar) value of gravity.
Definition at line 67 of file waveModel.C.
References objectRegistry::lookupObject(), Foam::mag(), and dimensioned< Type >::value().
Referenced by waveModel::amplitude().
|
pure virtual |
Get the wave elevation at a given time and local coordinates. Local.
x is aligned with the direction of propagation.
Implemented in Airy, solitary, Stokes2, and Stokes5.
Referenced by waveModel::amplitude().
|
pure 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.
Implemented in Airy, solitary, Stokes2, and Stokes5.
Referenced by waveModel::amplitude().
|
pure virtual |
Get the wave pressure at a given time and local coordinates. Local.
x is aligned with the direction of propagation, and z with negative gravity.
Implemented in Airy, and solitary.
Referenced by waveModel::amplitude().
|
virtual |
Write.
Reimplemented in Airy, and solitary.
Definition at line 73 of file waveModel.C.
References Foam::writeEntry().
Referenced by waveModel::amplitude(), solitary::write(), and Airy::write().