65 axis_(dict.
lookup(
"axis")),
66 origin_(dict.
lookup(
"origin")),
67 angle0_(dict.
lookup<scalar>(
"angle0")),
68 amplitude_(dict.
lookup<scalar>(
"amplitude")),
69 omega_(dict.
lookup<scalar>(
"omega"))
71 if (!dict.
found(
"value"))
82 p0_ = p.localPoints();
100 amplitude_(ptf.amplitude_),
115 origin_(ptf.origin_),
116 angle0_(ptf.angle0_),
117 amplitude_(ptf.amplitude_),
143 refCast<const angularOscillatingDisplacementPointPatchVectorField>(ptf);
147 p0_.rmap(aODptf.p0_, addr);
157 refCast<const angularOscillatingDisplacementPointPatchVectorField>(ptf);
161 p0_.reset(aODptf.p0_);
175 scalar angle = angle0_ + amplitude_*
sin(omega_*t.
value());
181 p0Rel*(
cos(angle) - 1)
182 + (axisHat ^ p0Rel*
sin(angle))
183 + (axisHat & p0Rel)*(1 -
cos(angle))*axisHat
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
virtual void reset(const pointPatchField< vector > &)
Reset the pointPatchField to the given pointPatchField.
A list of keyword definitions, which are a keyword followed by any number of values (e...
Foam::pointPatchFieldMapper.
label size() const
Return size.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
Macros for easy insertion into run-time selection tables.
friend Ostream & operator(Ostream &, const Field< vector > &)
dimensionedScalar cos(const dimensionedScalar &ds)
virtual void autoMap(const pointPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
virtual void write(Ostream &) const
Write.
virtual void rmap(const pointPatchField< vector > &, const labelList &)
Reverse map the given pointPatchField onto this pointPatchField.
const Type & value() const
Return const reference to value.
Foam::angularOscillatingDisplacementPointPatchVectorField.
virtual void autoMap(const pointPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
dimensionedScalar sin(const dimensionedScalar &ds)
angularOscillatingDisplacementPointPatchVectorField(const pointPatch &, const DimensionedField< vector, pointMesh > &)
Construct from patch and internal field.
const Time & time() const
Return time.
void writeEntry(Ostream &os, const HashTable< T, Key, Hash > &ht)
const DimensionedField< vector, pointMesh > & internalField() const
Return dimensioned internal field reference.
virtual void write(Ostream &) const
Write.
Basic pointPatch represents a set of points from the mesh.
virtual void reset(const pointPatchField< Type > &)
Reset the pointPatchField to the given pointPatchField.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
bool updated() const
Return true if the boundary condition has already been updated.
makePointPatchTypeField(pointPatchVectorField, solidBodyMotionDisplacementPointPatchVectorField)
dimensioned< scalar > mag(const dimensioned< Type > &)
Field< vector > vectorField
Specialisation of Field<T> for vector.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
Mesh consisting of general polyhedral cells.
virtual void rmap(const pointPatchField< Type > &, const labelList &)
Reverse map the given pointPatchField onto this pointPatchField.
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.