Virtual base class for mesh motion solver. More...
Public Member Functions | |
TypeName ("motionSolver") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, motionSolver, dictionary,(const word &name, const polyMesh &mesh, const dictionary &dict),(name, mesh, dict)) | |
motionSolver (const word &name, 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 word & | name () const |
Return name. More... | |
const word & | keyword () const |
Return keyword. 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 | topoChange (const polyTopoChangeMap &)=0 |
Update local data for topology changes. More... | |
virtual void | distribute (const polyDistributionMap &)=0 |
Update corresponding to the given distribution map. More... | |
virtual void | mapMesh (const polyMeshMap &)=0 |
Update from another mesh using the given map. More... | |
virtual bool | write () const |
Optionally write motion state information for restart. More... | |
Static Public Member Functions | |
static autoPtr< motionSolver > | New (const word &name, const polyMesh &, const dictionary &) |
Select constructed from polyMesh and dictionary. More... | |
Virtual base class for mesh motion solver.
Definition at line 56 of file motionSolver.H.
motionSolver | ( | const word & | name, |
const polyMesh & | mesh, | ||
const dictionary & | dict, | ||
const word & | type | ||
) |
Construct from polyMesh and dictionary and type.
Definition at line 43 of file motionSolver.C.
|
virtual |
Destructor.
Definition at line 109 of file motionSolver.C.
TypeName | ( | "motionSolver" | ) |
Runtime type information.
declareRunTimeSelectionTable | ( | autoPtr | , |
motionSolver | , | ||
dictionary | , | ||
(const word &name, const polyMesh &mesh, const dictionary &dict) | , | ||
(name, mesh, dict) | |||
) |
|
static |
Select constructed from polyMesh and dictionary.
Definition at line 66 of file motionSolver.C.
References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::Info, Foam::libs, dictionary::lookup(), mesh, Foam::name(), Foam::nl, and dlLibraryTable::open().
Referenced by motionSolver::clone(), and motionSolverList::motionSolverList().
|
virtual |
Clone function.
Definition at line 56 of file motionSolver.C.
References motionSolver::New(), and NotImplemented.
|
inline |
Return name.
Definition at line 125 of file motionSolver.H.
Referenced by motionSolver::keyword().
|
inline |
Return keyword.
Definition at line 131 of file motionSolver.H.
References motionSolver::name().
Referenced by rigidBodyMeshMotion::rigidBodyMeshMotion(), and rigidBodyMeshMotionSolver::rigidBodyMeshMotionSolver().
|
inline |
Return reference to mesh.
Definition at line 137 of file motionSolver.H.
Referenced by rigidBodyMeshMotionSolver::solve(), rigidBodyMeshMotion::solve(), rigidBodyMeshMotion::topoChange(), rigidBodyMeshMotionSolver::write(), and rigidBodyMeshMotion::write().
|
inline |
Const access to the coefficients dictionary.
Definition at line 143 of file motionSolver.H.
References motionSolver::curPoints(), motionSolver::distribute(), motionSolver::mapMesh(), motionSolver::movePoints(), motionSolver::newPoints(), motionSolver::solve(), motionSolver::topoChange(), motionSolver::twoDCorrectPoints(), 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 115 of file motionSolver.C.
References Foam::solve().
Referenced by motionSolver::coeffDict(), and motionSolver::update().
|
pure virtual |
Provide current points for motion. Uses current motion field.
Implemented in rigidBodyMeshMotion, rigidBodyMeshMotionSolver, displacementLayeredMotionMotionSolver, sixDoFRigidBodyMotionSolver, displacementLinearMotionMotionSolver, displacementLaplacianFvMotionSolver, displacementComponentLaplacianFvMotionSolver, displacementSBRStressFvMotionSolver, velocityLaplacianFvMotionSolver, interpolatingSolidBodyMotionSolver, velocityComponentLaplacianFvMotionSolver, solidBodyMotionSolver, multiSolidBodyMotionSolver, displacementMeshMoverMotionSolver, and motionSolverList.
Referenced by motionSolver::coeffDict().
|
virtual |
Definition at line 122 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, solidBodyMotionSolver, multiSolidBodyMotionSolver, displacementMeshMoverMotionSolver, and motionSolverList.
Referenced by motionSolver::coeffDict().
|
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 rigidBodyMeshMotion, rigidBodyMeshMotionSolver, displacementLayeredMotionMotionSolver, componentDisplacementMotionSolver, displacementLaplacianFvMotionSolver, displacementComponentLaplacianFvMotionSolver, componentVelocityMotionSolver, displacementSBRStressFvMotionSolver, velocityLaplacianFvMotionSolver, velocityMotionSolver, velocityComponentLaplacianFvMotionSolver, points0MotionSolver, solidBodyMotionSolver, displacementMeshMoverMotionSolver, and motionSolverList.
Referenced by motionSolver::coeffDict(), and motionSolver::topoChange().
|
pure virtual |
Update corresponding to the given distribution map.
Implemented in rigidBodyMeshMotionSolver, componentDisplacementMotionSolver, componentVelocityMotionSolver, velocityMotionSolver, points0MotionSolver, and motionSolverList.
Referenced by motionSolver::coeffDict(), and motionSolver::distribute().
|
pure virtual |
Update from another mesh using the given map.
Implemented in rigidBodyMeshMotionSolver, componentDisplacementMotionSolver, displacementLaplacianFvMotionSolver, displacementComponentLaplacianFvMotionSolver, componentVelocityMotionSolver, displacementSBRStressFvMotionSolver, velocityLaplacianFvMotionSolver, velocityMotionSolver, velocityComponentLaplacianFvMotionSolver, points0MotionSolver, displacementMotionSolver, and motionSolverList.
Referenced by motionSolver::coeffDict(), and motionSolver::mapMesh().
|
virtual |
Optionally write motion state information for restart.
Reimplemented in rigidBodyMeshMotion, rigidBodyMeshMotionSolver, sixDoFRigidBodyMotionSolver, and points0MotionSolver.
Definition at line 128 of file motionSolver.C.
Referenced by motionSolver::coeffDict(), motionSolver::write(), points0MotionSolver::write(), and rigidBodyMeshMotionSolver::write().