48 axis_(
dict.lookup(
"axis")),
49 origin_(
dict.lookup(
"origin")),
50 angle0_(
dict.lookup<scalar>(
"angle0")),
51 amplitude_(
dict.lookup<scalar>(
"amplitude")),
52 omega_(
dict.lookup<scalar>(
"omega"))
54 if (!
dict.found(
"value"))
65 p0_ =
p.localPoints();
83 amplitude_(ptf.amplitude_),
100 amplitude_(ptf.amplitude_),
115 refCast<const angularOscillatingDisplacementPointPatchVectorField>(ptf);
119 mapper(p0_, aODptf.p0_);
129 refCast<const angularOscillatingDisplacementPointPatchVectorField>(ptf);
133 p0_.
reset(aODptf.p0_);
147 scalar angle = angle0_ + amplitude_*
sin(omega_*t.
value());
153 p0Rel*(
cos(angle) - 1)
154 + (axisHat ^ p0Rel*
sin(angle))
155 + (axisHat & p0Rel)*(1 -
cos(angle))*axisHat
Macros for easy insertion into run-time selection tables.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
void reset(const Field< Type > &)
Reset the field values to the given field.
friend Ostream & operator(Ostream &, const Field< vector > &)
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
Foam::angularOscillatingDisplacementPointPatchVectorField.
virtual void write(Ostream &) const
Write.
angularOscillatingDisplacementPointPatchVectorField(const pointPatch &, const DimensionedField< vector, pointMesh > &, const dictionary &)
Construct from patch, internal field and dictionary.
virtual void reset(const pointPatchField< vector > &)
Reset the pointPatchField to the given pointPatchField.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
virtual void map(const pointPatchField< vector > &, const pointPatchFieldMapper &)
Map the given pointPatchField onto this pointPatchField.
A list of keyword definitions, which are a keyword followed by any number of values (e....
const Type & value() const
Return const reference to value.
A FixedValue boundary condition for pointField.
const Time & time() const
Return time.
Foam::pointPatchFieldMapper.
Abstract base class for point-mesh patch fields.
virtual void write(Ostream &) const
Write.
const DimensionedField< Type, pointMesh > & internalField() const
Return dimensioned internal field reference.
bool updated() const
Return true if the boundary condition has already been updated.
Basic pointPatch represents a set of points from the mesh.
Mesh consisting of general polyhedral cells.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
virtual void reset(const pointPatchField< Type > &)
Reset the pointPatchField to the given pointPatchField.
virtual void map(const pointPatchField< Type > &, const pointPatchFieldMapper &)
Map the given pointPatchField onto this pointPatchField.
makePointPatchTypeField(pointPatchVectorField, solidBodyMotionDisplacementPointPatchVectorField)
dimensionedScalar sin(const dimensionedScalar &ds)
void writeEntry(Ostream &os, const HashTable< T, Key, Hash > &ht)
dimensioned< scalar > mag(const dimensioned< Type > &)
Field< vector > vectorField
Specialisation of Field<T> for vector.
dimensionedScalar cos(const dimensionedScalar &ds)