Virtual base class for mesh motion solver. More...
Classes | |
class | iNew |
Class used for the construction of PtrLists of motionSolvers. More... | |
Public Member Functions | |
TypeName ("motionSolver") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, motionSolver, dictionary,(const polyMesh &mesh, const dictionary &dict),(mesh, dict)) | |
motionSolver (const polyMesh &mesh, const dictionary &, const word &type) | |
Construct from polyMesh and dictionary and type. More... | |
virtual autoPtr< motionSolver > | clone () const |
Clone function. More... | |
virtual | ~motionSolver () |
Destructor. More... | |
const polyMesh & | mesh () const |
Return reference to mesh. More... | |
const dictionary & | coeffDict () const |
Const access to the coefficients dictionary. More... | |
virtual tmp< pointField > | newPoints () |
Provide new points for motion. Solves for motion. More... | |
virtual tmp< pointField > | curPoints () const =0 |
Provide current points for motion. Uses current motion field. More... | |
virtual void | twoDCorrectPoints (pointField &) const |
virtual void | solve ()=0 |
Solve for motion. More... | |
virtual void | movePoints (const pointField &)=0 |
Update local data for geometry changes. More... | |
virtual void | updateMesh (const mapPolyMesh &)=0 |
Update local data for topology changes. More... | |
virtual bool | write () const |
Optionally write motion state information for restart. More... | |
Static Public Member Functions | |
static autoPtr< motionSolver > | New (const polyMesh &, const dictionary &) |
Select constructed from polyMesh and dictionary. More... | |
Virtual base class for mesh motion solver.
Definition at line 55 of file motionSolver.H.
motionSolver | ( | const polyMesh & | mesh, |
const dictionary & | dict, | ||
const word & | type | ||
) |
Construct from polyMesh and dictionary and type.
Definition at line 41 of file motionSolver.C.
|
virtual |
Destructor.
Definition at line 128 of file motionSolver.C.
TypeName | ( | "motionSolver" | ) |
Runtime type information.
declareRunTimeSelectionTable | ( | autoPtr | , |
motionSolver | , | ||
dictionary | , | ||
(const polyMesh &mesh, const dictionary &dict) | , | ||
(mesh, dict) | |||
) |
|
static |
Select constructed from polyMesh and dictionary.
Definition at line 62 of file motionSolver.C.
References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, dictionary::found(), Foam::Info, Foam::libs, dictionary::lookup(), mesh, Foam::nl, and dlLibraryTable::open().
Referenced by motionSolver::clone(), and motionSolver::iNew::operator()().
|
virtual |
Clone function.
Definition at line 52 of file motionSolver.C.
References motionSolver::New(), and NotImplemented.
|
inline |
Return reference to mesh.
Definition at line 123 of file motionSolver.H.
Referenced by rigidBodyMeshMotionSolver::solve(), rigidBodyMeshMotion::solve(), rigidBodyMeshMotionSolver::write(), and rigidBodyMeshMotion::write().
|
inline |
Const access to the coefficients dictionary.
Definition at line 129 of file motionSolver.H.
References motionSolver::curPoints(), motionSolver::movePoints(), motionSolver::newPoints(), motionSolver::solve(), motionSolver::twoDCorrectPoints(), motionSolver::updateMesh(), and motionSolver::write().
Referenced by rigidBodyMeshMotion::rigidBodyMeshMotion(), rigidBodyMeshMotionSolver::rigidBodyMeshMotionSolver(), rigidBodyMeshMotionSolver::solve(), and rigidBodyMeshMotion::solve().
|
virtual |
Provide new points for motion. Solves for motion.
Definition at line 134 of file motionSolver.C.
References motionSolver::curPoints(), and motionSolver::solve().
Referenced by motionSolver::coeffDict().
|
pure virtual |
Provide current points for motion. Uses current motion field.
Implemented in rigidBodyMeshMotion, rigidBodyMeshMotionSolver, displacementLayeredMotionMotionSolver, sixDoFRigidBodyMotionSolver, displacementLinearMotionMotionSolver, displacementLaplacianFvMotionSolver, displacementComponentLaplacianFvMotionSolver, displacementSBRStressFvMotionSolver, velocityLaplacianFvMotionSolver, interpolatingSolidBodyMotionSolver, velocityComponentLaplacianFvMotionSolver, multiSolidBodyMotionSolver, solidBodyMotionSolver, displacementMeshMoverMotionSolver, and motionSolverList.
Referenced by motionSolver::coeffDict(), and motionSolver::newPoints().
|
virtual |
Definition at line 141 of file motionSolver.C.
References twoDPointCorrector::correctPoints(), and MeshObject< polyMesh, UpdateableMeshObject, twoDPointCorrector >::New().
Referenced by motionSolver::coeffDict().
|
pure virtual |
Solve for motion.
Implemented in rigidBodyMeshMotion, rigidBodyMeshMotionSolver, displacementLayeredMotionMotionSolver, sixDoFRigidBodyMotionSolver, displacementLinearMotionMotionSolver, displacementLaplacianFvMotionSolver, displacementComponentLaplacianFvMotionSolver, displacementSBRStressFvMotionSolver, velocityLaplacianFvMotionSolver, interpolatingSolidBodyMotionSolver, velocityComponentLaplacianFvMotionSolver, multiSolidBodyMotionSolver, solidBodyMotionSolver, displacementMeshMoverMotionSolver, and motionSolverList.
Referenced by motionSolver::coeffDict(), and motionSolver::newPoints().
|
pure virtual |
Update local data for geometry changes.
Implemented in rigidBodyMeshMotionSolver, componentDisplacementMotionSolver, componentVelocityMotionSolver, velocityMotionSolver, points0MotionSolver, displacementMeshMoverMotionSolver, and motionSolverList.
Referenced by motionSolver::coeffDict().
|
pure virtual |
Update local data for topology changes.
Implemented in rigidBodyMeshMotionSolver, displacementLayeredMotionMotionSolver, componentDisplacementMotionSolver, displacementLaplacianFvMotionSolver, displacementComponentLaplacianFvMotionSolver, componentVelocityMotionSolver, displacementSBRStressFvMotionSolver, velocityLaplacianFvMotionSolver, velocityMotionSolver, velocityComponentLaplacianFvMotionSolver, points0MotionSolver, displacementMeshMoverMotionSolver, and motionSolverList.
Definition at line 147 of file motionSolver.C.
Referenced by motionSolver::coeffDict(), points0MotionSolver::updateMesh(), velocityMotionSolver::updateMesh(), componentVelocityMotionSolver::updateMesh(), and componentDisplacementMotionSolver::updateMesh().
|
virtual |
Optionally write motion state information for restart.
Reimplemented in rigidBodyMeshMotion, rigidBodyMeshMotionSolver, and sixDoFRigidBodyMotionSolver.
Definition at line 151 of file motionSolver.C.
Referenced by motionSolver::coeffDict(), sixDoFRigidBodyMotionSolver::write(), rigidBodyMeshMotionSolver::write(), and rigidBodyMeshMotion::write().