Go to the documentation of this file.
51 initialPoints_(
p.localPoints()),
76 if (rhoName_ ==
"rhoInf")
97 initialPoints_ =
p.localPoints();
149 initialPoints_.autoMap(m);
160 refCast<const sixDoFRigidBodyDisplacementPointPatchVectorField>(ptf);
177 if (
db().foundObject<uniformDimensionedVectorField>(
"g"))
182 <<
"Specifying the value of g in this boundary condition "
183 <<
"when g is available from the database is considered "
184 <<
"a fatal error to avoid the possibility of inconsistency"
203 bool firstIter =
false;
213 forcesDict.
add(
"type", forces::typeName);
221 f.calcForcesMoment();
void newTime()
Store the motion state at the beginning of the time-step.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
scalar mass() const
Return the mass.
scalar rhoInf_
Reference density required by the forces object for.
A class for handling words, derived from string.
vector g_
Gravity vector to store when not available from the db.
bool readIfPresent(const word &, T &, bool recursive=false, bool patternMatch=true) const
Find an entry if present, and assign to T.
sixDoFRigidBodyMotion motion_
Six dof motion object.
scalar deltaT0Value() const
Return old time step value.
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
const dimensionedVector & g
Basic pointPatch represents a set of points from the mesh.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
Mesh consisting of general polyhedral cells.
const pointPatch & patch() const
Return patch.
Foam::pointPatchFieldMapper.
Field< vector > vectorField
Specialisation of Field<T> for vector.
void write(Ostream &) const
Write.
List< word > wordList
A List of words.
Foam::sixDoFRigidBodyDisplacementPointPatchVectorField.
void update(bool firstIter, const vector &fGlobal, const vector &tauGlobal, scalar deltaT, scalar deltaT0)
Symplectic integration of velocities, orientation and position.
virtual void autoMap(const pointPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
makePointPatchTypeField(pointPatchVectorField, solidBodyMotionDisplacementPointPatchVectorField)
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
Pre-declare SubField and related Field type.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
virtual void write(Ostream &) const
Write.
scalar deltaTValue() const
Return time step value.
A list of keyword definitions, which are a keyword followed by any number of values (e....
Macros for easy insertion into run-time selection tables.
virtual const word & name() const =0
Return name.
const objectRegistry & db() const
Return local objectRegistry.
virtual void autoMap(const pointPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
errorManipArg< error, int > exit(error &err, const int errNo=1)
bool updated() const
Return true if the boundary condition has already been updated.
void writeEntry(const word &keyword, Ostream &os) const
Write the field as a dictionary entry.
This function object calculates the forces and moments by integrating the pressure and skin-friction ...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
point transform(const point &initialPoints) const
Transform the given initial state point by the current motion.
bool readScalar(const char *buf, doubleScalar &s)
Read whole of buf as a scalar. Return true if succesful.
label curTimeIndex_
Current time index (used for updating)
pointField initialPoints_
Initial positions of points on the patch.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
virtual void rmap(const pointPatchField< Type > &, const labelList &)
Reverse map the given PointPatchField onto.
virtual void rmap(const pointPatchField< vector > &, const labelList &)
Reverse map the given pointPatchField onto this pointPatchField.
Ostream & writeKeyword(const keyType &)
Write the keyword followed by an appropriate indentation.
const DimensionedField< Type, pointMesh > & dimensionedInternalField() const
Return dimensioned internal field reference.
const Type & lookupObject(const word &name) const
Lookup and return the object of the given Type.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
label timeIndex() const
Return current time index.
const point & centreOfRotation() const
Return the current centre of rotation.
word rhoName_
Name of density field, optional unless used for an.
virtual void write(Ostream &) const
Write.
bool add(entry *, bool mergeEntry=false)
Add a new entry.
label lookupGravity_
State of gravity lookup:
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
sixDoFRigidBodyDisplacementPointPatchVectorField(const pointPatch &, const DimensionedField< vector, pointMesh > &)
Construct from patch and internal field.