motionSolver Class Referenceabstract

Virtual base class for mesh motion solver. More...

Inheritance diagram for motionSolver:

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< motionSolverclone () const
 Clone function. More...
 
virtual ~motionSolver ()
 Destructor. More...
 
const wordname () const
 Return name. More...
 
const wordkeyword () const
 Return keyword. More...
 
const polyMeshmesh () const
 Return reference to mesh. More...
 
const dictionarycoeffDict () const
 Const access to the coefficients dictionary. More...
 
virtual tmp< pointFieldnewPoints ()
 Provide new points for motion. Solves for motion. More...
 
virtual tmp< pointFieldcurPoints () const =0
 Provide current points for motion. Uses current motion field. More...
 
virtual void twoDCorrectPoints (pointField &) const
 Correct point field for reduced-dimensionality cases. More...
 
virtual bool solidBody () const
 Is the motion solid body? I.e., are the volumes and area magnitudes. More...
 
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< motionSolverNew (const word &name, const polyMesh &, const dictionary &)
 Select constructed from polyMesh and dictionary. More...
 

Detailed Description

Virtual base class for mesh motion solver.

Source files

Definition at line 56 of file motionSolver.H.

Constructor & Destructor Documentation

◆ motionSolver()

motionSolver ( const word name,
const polyMesh mesh,
const dictionary dict,
const word type 
)

Construct from polyMesh and dictionary and type.

Definition at line 42 of file motionSolver.C.

◆ ~motionSolver()

~motionSolver ( )
virtual

Destructor.

Definition at line 109 of file motionSolver.C.

Member Function Documentation

◆ TypeName()

TypeName ( "motionSolver"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
motionSolver  ,
dictionary  ,
(const word &name, const polyMesh &mesh, const dictionary &dict ,
(name, mesh, dict  
)

◆ New()

Foam::autoPtr< Foam::motionSolver > New ( const word name,
const polyMesh mesh,
const dictionary solverDict 
)
static

Select constructed from polyMesh and dictionary.

Definition at line 65 of file motionSolver.C.

References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::Info, Foam::libs, dictionary::lookup(), Foam::name(), Foam::nl, and dlLibraryTable::open().

Referenced by motionSolverList::motionSolverList().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ clone()

Foam::autoPtr< Foam::motionSolver > clone ( ) const
virtual

Clone function.

Definition at line 56 of file motionSolver.C.

References NotImplemented.

◆ name()

const word& name ( ) const
inline

Return name.

Definition at line 125 of file motionSolver.H.

Referenced by motionSolver::keyword(), and motionSolverList::motionSolverList().

Here is the caller graph for this function:

◆ keyword()

const word& keyword ( ) const
inline

Return keyword.

Definition at line 131 of file motionSolver.H.

References motionSolver::name().

Referenced by multiSolidBodyMotionSolver::multiSolidBodyMotionSolver(), rigidBodyMeshMotion::rigidBodyMeshMotion(), and rigidBodyMeshMotionSolver::rigidBodyMeshMotionSolver().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mesh()

◆ coeffDict()

const dictionary& coeffDict ( ) const
inline

◆ newPoints()

Foam::tmp< Foam::pointField > newPoints ( )
virtual

Provide new points for motion. Solves for motion.

Definition at line 115 of file motionSolver.C.

References Foam::solve().

Here is the call graph for this function:

◆ curPoints()

◆ twoDCorrectPoints()

void twoDCorrectPoints ( pointField p) const
virtual

Correct point field for reduced-dimensionality cases.

Definition at line 122 of file motionSolver.C.

References twoDPointCorrector::correctPoints(), DemandDrivenMeshObject< polyMesh, TopoChangeableMeshObject, twoDPointCorrector >::New(), and p.

Here is the call graph for this function:

◆ solidBody()

virtual bool solidBody ( ) const
inlinevirtual

Is the motion solid body? I.e., are the volumes and area magnitudes.

unchanged? Defaults to false. Set to true by motionSolvers::solidBody.

Reimplemented in solidBodyMotionSolver, and multiSolidBodyMotionSolver.

Definition at line 160 of file motionSolver.H.

◆ solve()

◆ movePoints()

virtual void movePoints ( const pointField )
pure virtual

◆ topoChange()

◆ distribute()

virtual void distribute ( const polyDistributionMap )
pure virtual

◆ mapMesh()

◆ write()

bool write ( ) const
virtual

Optionally write motion state information for restart.

Reimplemented in sixDoFRigidBodyMotionSolver, rigidBodyMeshMotionSolver, rigidBodyMeshMotion, and points0MotionSolver.

Definition at line 128 of file motionSolver.C.

Referenced by points0MotionSolver::write(), and rigidBodyMeshMotionSolver::write().

Here is the caller graph for this function:

The documentation for this class was generated from the following files: