83#ifndef waveMakerPointPatchVectorField_H
84#define waveMakerPointPatchVectorField_H
98class waveMakerPointPatchVectorField
100 public fixedValuePointPatchField<vector>
210 virtual scalar
waveLength(
const scalar
h,
const scalar
T);
213 virtual scalar
timeCoeff(
const scalar t)
const;
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Enum is a wrapper around a list of names/values that represent particular enumeration (or int) values...
tmp< Field< Type > > T() const
Return the field transpose (only defined for second rank tensors)
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
A FixedValue boundary condition for pointField.
Foam::pointPatchFieldMapper.
Basic pointPatch represents a set of points from the mesh.
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
Point motion boundary condition to generate waves based on either piston or flap motions.
virtual void initialiseGeometry()
Initialise.
scalarField zMin_
Minimum z (point) height per patch face / [m].
scalarField z_
Patch face centre z co-ordinates / [m].
static const Enum< motionTypes > motionTypeNames
Names for motion types.
TypeName("waveMaker")
Runtime type information.
tensor Rlg_
Rotation tensor from local to global system.
scalar zSpan_
Overall (point) span in z-direction / [m].
scalar wavePeriod_
Wave period.
motionTypes motionType_
Motion type.
scalar waveHeight_
Wave height.
tensor Rgl_
Rotation tensor from global to local system.
scalarField waterDepthRef_
Calculated water depth at the patch.
scalar rampTime_
Ramp time.
scalar zMinGb_
Global Minimum z (point) / [m].
scalarField yPaddle_
Paddle y co-ordinates / [m].
scalarField xPaddle_
Paddle x co-ordinates / [m].
vector gHat_
Vertical direction.
labelList pointToPaddle_
Addressing from point patch index to paddle index.
scalar secondOrder_
On/off second order calculation switch.
scalar initialDepth_
Initial water depth.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
scalarField zMax_
Maximum z (point) height per patch face / [m].
virtual scalar timeCoeff(const scalar t) const
Return the time scaling coefficient.
virtual scalar waveLength(const scalar h, const scalar T)
Dispersion equation.
labelList faceToPaddle_
Addressing from patch face index to paddle index.
vector n_
Patch normal direction.
scalar waveAngle_
Wave angle.
scalarField y_
Patch face centre y co-ordinates / [m].
scalar wavePhase_
Wave phase.
scalar startTime_
Start time.
virtual autoPtr< pointPatchField< vector > > clone() const
Construct and return a clone.
scalarField x_
Patch face centre x co-ordinates / [m].
scalar waveLength_
Wave length.
label nPaddle_
Number of wave paddles.
virtual autoPtr< pointPatchField< vector > > clone(const DimensionedField< vector, pointMesh > &iF) const
Construct and return a clone setting internal field reference.
const vector & g()
Return the gravitational acceleration.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.