Go to the documentation of this file.
133 <<
" differs from number of points " << points0_.size()
134 <<
" read from file "
162 IOobject(pointDisplacement,
"pointDisplacement"),
171 <<
" differs from number of points " << points0_.size()
172 <<
" read from file " << points0.
filePath()
183 const word& solverTypeName,
192 Info<<
"Selecting motion solver: " << solverTypeName <<
endl;
198 displacementConstructorTablePtr_
201 if (!displacementConstructorTablePtr_)
204 <<
"solver table is empty"
208 displacementConstructorTable::iterator cstrIter =
209 displacementConstructorTablePtr_->find(solverTypeName);
211 if (cstrIter == displacementConstructorTablePtr_->end())
214 <<
"Unknown solver type "
215 << solverTypeName <<
nl <<
nl
216 <<
"Valid solver types are:" <<
endl
217 << displacementConstructorTablePtr_->sortedToc()
274 forAll(newPoints0, pointI)
282 if (masterPointI == pointI)
284 newPoints0[pointI] = points0_[oldPointI];
299 <<
"Cannot determine co-ordinates of introduced vertices."
300 <<
" New vertex " << pointI <<
" at co-ordinate "
305 twoDCorrectPoints(newPoints0);
307 points0_.transfer(newPoints0);
310 points0_.rename(
"points0");
312 points0_.instance() = time().timeName();
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
virtual const pointField & points() const
Return raw points.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
fileName filePath() const
Return complete path + object name if the file exists.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
static autoPtr< displacementMotionSolver > New(const word &solverTypeName, const polyMesh &, const IOdictionary &, const pointVectorField &pointDisplacement, const pointIOField &points0)
Select constructed from polyMesh, dictionary and components.
A class for handling words, derived from string.
dimensioned< Type > cmptMultiply(const dimensioned< Type > &, const dimensioned< Type > &)
#define forAll(list, i)
Loop across all elements in list.
defineRunTimeSelectionTable(reactionRateFlameArea, dictionary)
const Time & time() const
Return time.
virtual void updateMesh(const mapPolyMesh &)
Update local data for topology changes.
Ostream & endl(Ostream &os)
Add newline and flush stream.
const pointField & preMotionPoints() const
Pre-motion point positions.
const fileName & instance() const
Mesh consisting of general polyhedral cells.
static const pointMesh & New(const polyMesh &mesh)
Constant dispersed-phase particle diameter model.
vector span() const
The bounding box span (from minimum to maximum)
bool headerOk()
Read and check header info.
virtual ~displacementMotionSolver()
Destructor.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
vectorIOField pointIOField
pointIOField is a vectorIOField.
Pre-declare SubField and related Field type.
word findInstance(const fileName &dir, const word &name=word::null, const IOobject::readOption rOpt=IOobject::MUST_READ, const word &stopInstance=word::null) const
Return the location of "dir" containing the file "name".
fileName meshDir() const
Return the local mesh directory (dbDir()/meshSubDir)
errorManipArg< error, int > exit(error &err, const int errNo=1)
dimensioned< Type > cmptDivide(const dimensioned< Type > &, const dimensioned< Type > &)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Virtual base class for mesh motion solver.
virtual void movePoints(const pointField &)
Update local data for geometry changes.
const labelList & reversePointMap() const
Reverse point map.
IOobject(const word &name, const fileName &instance, const objectRegistry ®istry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true)
Construct from name, instance, registry, io options.
const labelList & pointMap() const
Old point map.
const word & constant() const
Return constant name.
virtual void updateMesh(const mapPolyMesh &)=0
Update local data for topology changes.
displacementMotionSolver(const displacementMotionSolver &)
Disallow default bitwise copy construct.
const polyMesh & mesh() const
Return reference to mesh.
A bounding box defined in terms of the points at its extremities.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
bool hasMotionPoints() const
Has valid preMotionPoints?
const Time & time() const
Return the top-level database.
static IOobject points0IO(const polyMesh &mesh)
Return IO object for points0.
void size(const label)
Override size to be inconsistent with allocated storage.
fileName::Type type(const fileName &)
Return the file type: DIRECTORY or FILE.
Generic GeometricField class.
defineTypeNameAndDebug(combustionModel, 0)