54 Foam::scalar Foam::waveModels::StokesI::eta
66 scalar phaseTot = Kx*
x + Ky*
y - omega*t + phase;
68 return H*0.5*
cos(phaseTot);
83 for (
int i=1; i<=100; i++)
106 scalar
k =
sqrt(Kx*Kx + Ky*Ky);
107 scalar phaseTot = Kx*
x + Ky*
y - omega*t +
phase;
111 scalar v = u*
sin(waveAngle_);
127 const scalar waveKx = waveK*
cos(waveAngle_);
128 const scalar waveKy = waveK*
sin(waveAngle_);
145 level[paddlei] = waterDepthRef_ + tCoeff*eta;
159 const scalar waveKx = waveK*
cos(waveAngle_);
160 const scalar waveKy = waveK*
sin(waveAngle_);
170 setPaddlePropeties(level, facei, fraction, z);
174 const label paddlei = faceToPaddle_[facei];
190 U_[facei] = fraction*
Uf*tCoeff;
221 waveLength_ = waveLength(waterDepthRef_, wavePeriod_);
234 os <<
" Wave type: " << waveType() <<
nl;
Different types of constants.
dimensionedScalar tanh(const dimensionedScalar &ds)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
A list of keyword definitions, which are a keyword followed by a number of values (eg...
const vector L(dict.get< vector >("L"))
constexpr char nl
The newline '\n' character (0x0a)
dimensionedScalar sqrt(const dimensionedScalar &ds)
virtual void setLevel(const scalar t, const scalar tCoeff, scalarField &level) const
Set the water level.
label k
Boltzmann constant.
Macros for easy insertion into run-time selection tables.
#define forAll(list, i)
Loop across all elements in list.
virtual void setVelocity(const scalar t, const scalar tCoeff, const scalarField &level)
Calculate the wave model velocity.
dimensionedScalar cos(const dimensionedScalar &ds)
void readFields(const typename GeoFieldType::Mesh &mesh, const IOobjectList &objects, const NameMatchPredicate &selectedFields, DynamicList< regIOobject *> &storedObjects)
Read the selected GeometricFields of the templated type and store on the objectRegistry.
constexpr scalar twoPi(2 *M_PI)
constexpr scalar pi(M_PI)
virtual scalar waveLength(const scalar h, const scalar T) const
Return the wavelength.
autoPtr< surfaceVectorField > Uf
virtual vector UfBase(const scalar H, const scalar h, const scalar Kx, const scalar x, const scalar Ky, const scalar y, const scalar omega, const scalar t, const scalar phase, const scalar z) const
Wave velocity.
InfoProxy< IOobject > info() const noexcept
Return info proxy, for printing information to a stream.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
dimensionedScalar sin(const dimensionedScalar &ds)
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
OBJstream os(runTime.globalPath()/outputName)
defineTypeNameAndDebug(combustionModel, 0)
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
const dimensionedScalar h
Planck constant.
virtual bool readDict(const dictionary &overrideDict)
Read from dictionary.
dimensionedScalar sinh(const dimensionedScalar &ds)
virtual bool readDict(const dictionary &overrideDict)
Read from dictionary.
Mesh data needed to do the Finite Volume discretisation.
const std::string patch
OpenFOAM patch number as a std::string.
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
dimensionedScalar cosh(const dimensionedScalar &ds)
A patch is a list of labels that address the faces in the global face list.
StokesI(const dictionary &dict, const fvMesh &mesh, const polyPatch &patch, const bool readFields=true)
Constructor.
volScalarField H(IOobject("H", runTime.timeName(), mesh.thisDb(), IOobject::NO_READ, IOobject::AUTO_WRITE), mesh, dimensionedScalar(dimLength, Zero))
addToRunTimeSelectionTable(functionObject, pointHistory, dictionary)