52 if (
dict.registerObject())
57 io.registerObject(
true);
72 mesh.time().constant(),
91 coeffDict_(
dict.optionalSubDict(
type +
"Coeffs"))
112 const word solverName
114 solverDict.
getCompat<
word>(
"motionSolver", {{
"solver", -1612}})
117 Info<<
"Selecting motion solver: " << solverName <<
nl;
123 dictionaryConstructorTablePtr_
126 if (!dictionaryConstructorTablePtr_)
129 <<
"solver table is empty" 133 auto* ctorPtr = dictionaryConstructorTable(solverName);
142 *dictionaryConstructorTablePtr_
152 IOdictionary solverDict
188 dictEntry.name() +
":meshSolver",
220 const bool writeOnProc
virtual bool writeObject(IOstreamOption streamOpt, const bool writeOnProc) const
Write state using stream options.
dlLibraryTable & libs() const noexcept
Mutable access to the loaded dynamic libraries.
errorManipArg< error, int > exit(error &err, const int errNo=1)
virtual tmp< pointField > newPoints()
Provide new points for motion. Solves for motion.
virtual bool read()
Read object.
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
A list of keyword definitions, which are a keyword followed by a number of values (eg...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
static const twoDPointCorrector & New(const polyMesh &mesh, Args &&... args)
Get existing or create MeshObject registered with typeName.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
constexpr char nl
The newline '\n' character (0x0a)
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tf1, const word &name, const dimensionSet &dimensions, const bool initCopy=false)
Global function forwards to reuseTmpDimensionedField::New.
Virtual base class for mesh motion solver.
static autoPtr< motionSolver > New(const polyMesh &)
Select constructed from polyMesh.
A simple container for options an IOstream can normally have.
const Time & time() const
Return the top-level database.
A keyword and a list of tokens is a 'dictionaryEntry'.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
void correctPoints(pointField &p) const
Correct motion points.
const dictionary & optionalSubDict(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Find and return a sub-dictionary, otherwise return this dictionary.
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
virtual void updateMesh(const mapPolyMesh &)=0
Update local data for topology changes.
iNew(const polyMesh &mesh)
A class for handling words, derived from Foam::string.
const Time & time() const noexcept
Return time registry.
motionSolver(const polyMesh &mesh)
Construct from polyMesh.
static IOobject stealRegistration(const IOdictionary &dict)
De-register object if registered and assign to current.
static const dictionary null
An empty dictionary, which is also the parent for all dictionaries.
virtual void solve()=0
Solve for motion.
virtual bool read()
Read dynamicMeshDict dictionary.
bool checkOut()
Remove object from registry, and remove all file watches.
const word & constant() const noexcept
Return constant name.
defineRunTimeSelectionTable(reactionRateFlameArea, dictionary)
defineTypeNameAndDebug(combustionModel, 0)
T getCompat(const word &keyword, std::initializer_list< std::pair< const char *, int >> compat, enum keyType::option matchOpt=keyType::REGEX) const
Find and return a T using any compatibility names if needed. FatalIOError if not found, or if there are excess tokens.
virtual tmp< pointField > curPoints() const =0
Provide current points for motion. Uses current motion field.
Automatically write from objectRegistry::writeObject()
messageStream Info
Information stream (stdout output on master, null elsewhere)
Mesh consisting of general polyhedral cells.
IOobject io("surfaceFilmProperties", mesh.time().constant(), mesh, IOobject::READ_IF_PRESENT, IOobject::NO_WRITE, IOobject::NO_REGISTER)
A class for managing temporary objects.
bool open(bool verbose=true)
Open named, but unopened libraries. These names will normally have been added with push_back()...
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
virtual autoPtr< motionSolver > clone() const
Clone function.
Defines the attributes of an object for which implicit objectRegistry management is supported...
virtual void twoDCorrectPoints(pointField &) const
#define FatalIOErrorInLookup(ios, lookupTag, lookupName, lookupTable)
Report an error message using Foam::FatalIOError.
IOerror FatalIOError
Error stream (stdout output on all processes), with additional 'FOAM FATAL IO ERROR' header text and ...