67 if (solverDict.
found(
"solvers"))
73 const word solverTypeName
75 solverDict.
found(
"motionSolver")
76 ? solverDict.
lookup(
"motionSolver")
77 : solverDict.
lookup(
"solver")
80 Info<<
"Selecting motion solver: " << solverTypeName <<
endl;
86 dictionaryConstructorTablePtr_
89 if (!dictionaryConstructorTablePtr_)
92 <<
"solver table is empty" 96 dictionaryConstructorTable::iterator cstrIter =
97 dictionaryConstructorTablePtr_->find(solverTypeName);
99 if (cstrIter == dictionaryConstructorTablePtr_->end())
102 <<
"Unknown solver type " 103 << solverTypeName <<
nl <<
nl 104 <<
"Valid solver types are:" << endl
105 << dictionaryConstructorTablePtr_->sortedToc()
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
errorManipArg< error, int > exit(error &err, const int errNo=1)
virtual tmp< pointField > newPoints()
Provide new points for motion. Solves for motion.
A list of keyword definitions, which are a keyword followed by any number of values (e...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
static const dictionary null
Null dictionary.
Ostream & endl(Ostream &os)
Add newline and flush stream.
virtual bool write() const
Optionally write motion state information for restart.
static autoPtr< motionSolver > New(const polyMesh &, const dictionary &)
Select constructed from polyMesh and dictionary.
A keyword and a list of tokens is a 'dictionaryEntry'.
Motion of the mesh specified as a list of motion solvers.
dlLibraryTable libs
Table of loaded dynamic libraries.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
static const twoDPointCorrector & New(const polyMesh &mesh)
void correctPoints(pointField &p) const
Correct motion points.
virtual void updateMesh(const mapPolyMesh &)=0
Update local data for topology changes.
iNew(const polyMesh &mesh)
const dictionary & optionalSubDict(const word &) const
Find and return a sub-dictionary if found.
A class for handling words, derived from string.
virtual ~motionSolver()
Destructor.
virtual void solve()=0
Solve for motion.
defineRunTimeSelectionTable(reactionRateFlameArea, dictionary)
defineTypeNameAndDebug(combustionModel, 0)
bool open(const fileName &libName, const bool verbose=true)
Open the named library, optionally with warnings if problems occur.
virtual tmp< pointField > curPoints() const =0
Provide current points for motion. Uses current motion field.
Mesh consisting of general polyhedral cells.
A class for managing temporary objects.
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
virtual autoPtr< motionSolver > clone() const
Clone function.
motionSolver(const polyMesh &mesh, const dictionary &, const word &type)
Construct from polyMesh and dictionary and type.
virtual void twoDCorrectPoints(pointField &) const
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.