interpolatingSolidBodyMotionSolver Class Reference

Solid-body motion of the mesh specified by a run-time selectable motion function. Applies SLERP interpolation of movement as function of distance to the object surface to move the mesh points. More...

Inheritance diagram for interpolatingSolidBodyMotionSolver:
Collaboration diagram for interpolatingSolidBodyMotionSolver:

Public Member Functions

 TypeName ("interpolatingSolidBody")
 Runtime type information. More...
 
 interpolatingSolidBodyMotionSolver (const word &name, const polyMesh &, const dictionary &dict)
 Construct from polyMesh and dictionary. More...
 
 interpolatingSolidBodyMotionSolver (const interpolatingSolidBodyMotionSolver &)
 Disallow default bitwise copy construction. More...
 
 ~interpolatingSolidBodyMotionSolver ()
 Destructor. More...
 
virtual tmp< pointFieldcurPoints () const
 Return point location obtained from the current motion field. More...
 
virtual void solve ()
 Solve for motion. More...
 
virtual void topoChange (const polyTopoChangeMap &)
 Update local data for topology changes. More...
 
virtual void mapMesh (const polyMeshMap &)
 Update from another mesh using the given map. More...
 
void operator= (const interpolatingSolidBodyMotionSolver &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from points0MotionSolver
 TypeName ("points0MotionSolver")
 Runtime type information. More...
 
 points0MotionSolver (const word &name, const polyMesh &, const dictionary &, const word &type)
 Construct from mesh and dictionary. More...
 
 points0MotionSolver (const points0MotionSolver &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~points0MotionSolver ()
 Destructor. More...
 
pointFieldpoints0 ()
 Return reference to the reference field. More...
 
const pointFieldpoints0 () const
 Return reference to the reference field. More...
 
virtual void movePoints (const pointField &)
 Update local data for geometry changes. More...
 
virtual void distribute (const polyDistributionMap &)
 Update corresponding to the given distribution map. More...
 
virtual bool write () const
 Write points0 if the mesh topology changed. More...
 
void operator= (const points0MotionSolver &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from motionSolver
 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 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...
 

Additional Inherited Members

- Static Public Member Functions inherited from points0MotionSolver
static pointVectorField readPoints0 (const polyMesh &mesh)
 
- Static Public Member Functions inherited from motionSolver
static autoPtr< motionSolverNew (const word &name, const polyMesh &, const dictionary &)
 Select constructed from polyMesh and dictionary. More...
 
- Protected Attributes inherited from points0MotionSolver
pointVectorField points0_
 Starting points. More...
 

Detailed Description

Solid-body motion of the mesh specified by a run-time selectable motion function. Applies SLERP interpolation of movement as function of distance to the object surface to move the mesh points.

Source files

Definition at line 51 of file interpolatingSolidBodyMotionSolver.H.

Constructor & Destructor Documentation

◆ interpolatingSolidBodyMotionSolver() [1/2]

interpolatingSolidBodyMotionSolver ( const word name,
const polyMesh mesh,
const dictionary dict 
)

Construct from polyMesh and dictionary.

Definition at line 88 of file interpolatingSolidBodyMotionSolver.C.

◆ interpolatingSolidBodyMotionSolver() [2/2]

Disallow default bitwise copy construction.

◆ ~interpolatingSolidBodyMotionSolver()

Destructor.

Definition at line 123 of file interpolatingSolidBodyMotionSolver.C.

Member Function Documentation

◆ TypeName()

TypeName ( "interpolatingSolidBody"  )

Runtime type information.

◆ curPoints()

Foam::tmp< Foam::pointField > curPoints ( ) const
virtual

Return point location obtained from the current motion field.

Implements motionSolver.

Definition at line 130 of file interpolatingSolidBodyMotionSolver.C.

References forAll, septernion::I, points, tmp< T >::ref(), s(), Foam::slerp(), and septernion::transformPoint().

Here is the call graph for this function:

◆ solve()

virtual void solve ( )
inlinevirtual

Solve for motion.

Implements motionSolver.

Definition at line 113 of file interpolatingSolidBodyMotionSolver.H.

◆ topoChange()

void topoChange ( const polyTopoChangeMap map)
virtual

Update local data for topology changes.

Reimplemented from points0MotionSolver.

Definition at line 164 of file interpolatingSolidBodyMotionSolver.C.

References NotImplemented.

◆ mapMesh()

void mapMesh ( const polyMeshMap map)
virtual

Update from another mesh using the given map.

Reimplemented from points0MotionSolver.

Definition at line 174 of file interpolatingSolidBodyMotionSolver.C.

References points0MotionSolver::mapMesh(), and Foam::Zero.

Here is the call graph for this function:

◆ operator=()

void operator= ( const interpolatingSolidBodyMotionSolver )
delete

Disallow default bitwise assignment.


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