displacementMethod Class Referenceabstract

Abstract base class for displacement methods, which are a set or wrapper classes allowing to change the driving force of mesh motion solvers. More...

Inheritance diagram for displacementMethod:
Collaboration diagram for displacementMethod:

Public Member Functions

 TypeName ("displacementMethod")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, displacementMethod, dictionary,(fvMesh &mesh, const labelList &patchIDs),(mesh, patchIDs))
 
 displacementMethod (fvMesh &mesh, const labelList &patchIDs)
 Construct from components. More...
 
virtual ~displacementMethod ()=default
 Destructor. More...
 
virtual bool preferPointField () const
 Whether the motion solver prefers a point of a vol field as input. More...
 
virtual void setMotionField (const pointVectorField &pointMovement)=0
 Set motion filed related to model based on given motion. More...
 
virtual void setMotionField (const volVectorField &cellMovement)=0
 Set motion filed related to model based on given motion. More...
 
virtual void setControlField (const vectorField &controlField)=0
 Set control field as a vectorField. For methods working with parameters (RBF etc) More...
 
virtual void setControlField (const scalarField &controlField)=0
 Set control field as a vectorField. For methods working with parameters (RBF etc) More...
 
virtual void boundControlField (vectorField &controlField)
 Bound control field in certain directions etc. For methods working with parameters (RBF etc) does nothing by default. More...
 
autoPtr< motionSolver > & getMotionSolver ()
 Get access to motionSolver. More...
 
scalar getMaxDisplacement () const
 Get max displacement. More...
 
void setPatchIDs (const labelList &patchIDs)
 Set parametertised patch IDs. More...
 
void update ()
 Update mesh. More...
 

Static Public Member Functions

static autoPtr< displacementMethodNew (fvMesh &mesh, const labelList &patchIDs)
 Return a reference to the selected turbulence model. More...
 

Protected Attributes

fvMeshmesh_
 
labelList patchIDs_
 IDs of the patches to be moved. More...
 
autoPtr< motionSolvermotionPtr_
 
scalar maxDisplacement_
 
bool preferPointField_
 Whether the motion solver prefers a point of a vol field as input. More...
 

Detailed Description

Abstract base class for displacement methods, which are a set or wrapper classes allowing to change the driving force of mesh motion solvers.

Source files

Definition at line 55 of file displacementMethod.H.

Constructor & Destructor Documentation

◆ displacementMethod()

displacementMethod ( fvMesh mesh,
const labelList patchIDs 
)

Construct from components.

Definition at line 37 of file displacementMethod.C.

◆ ~displacementMethod()

virtual ~displacementMethod ( )
virtualdefault

Destructor.

Member Function Documentation

◆ TypeName()

TypeName ( "displacementMethod"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
displacementMethod  ,
dictionary  ,
(fvMesh &mesh, const labelList &patchIDs ,
(mesh, patchIDs  
)

◆ New()

Foam::autoPtr< Foam::displacementMethod > New ( fvMesh mesh,
const labelList patchIDs 
)
static

Return a reference to the selected turbulence model.

Definition at line 52 of file displacementMethod.C.

References Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInLookup, dictionary::get(), Foam::Info, mesh, and patchIDs().

Here is the call graph for this function:

◆ preferPointField()

bool preferPointField ( ) const
virtual

Whether the motion solver prefers a point of a vol field as input.

Reimplemented in displacementMethodelasticityMotionSolver, displacementMethodpLaplacianMotionSolver, and displacementMethodlaplacianMotionSolver.

Definition at line 93 of file displacementMethod.C.

◆ setMotionField() [1/2]

◆ setMotionField() [2/2]

◆ setControlField() [1/2]

virtual void setControlField ( const vectorField controlField)
pure virtual

◆ setControlField() [2/2]

virtual void setControlField ( const scalarField controlField)
pure virtual

◆ boundControlField()

void boundControlField ( vectorField controlField)
virtual

Bound control field in certain directions etc. For methods working with parameters (RBF etc) does nothing by default.

Reimplemented in displacementMethodvolumetricBSplinesMotionSolver.

Definition at line 99 of file displacementMethod.C.

◆ getMotionSolver()

Foam::autoPtr< Foam::motionSolver > & getMotionSolver ( )

Get access to motionSolver.

Definition at line 105 of file displacementMethod.C.

◆ getMaxDisplacement()

Foam::scalar getMaxDisplacement ( ) const

Get max displacement.

Definition at line 111 of file displacementMethod.C.

◆ setPatchIDs()

void setPatchIDs ( const labelList patchIDs)
inline

Set parametertised patch IDs.

Definition at line 194 of file displacementMethod.H.

References patchIDs(), and displacementMethod::patchIDs_.

Here is the call graph for this function:

◆ update()

void update ( )

Update mesh.

Definition at line 117 of file displacementMethod.C.

References Foam::endl(), Foam::gMax(), Foam::Info, and Foam::mag().

Here is the call graph for this function:

Member Data Documentation

◆ mesh_

fvMesh& mesh_
protected

Definition at line 61 of file displacementMethod.H.

◆ patchIDs_

labelList patchIDs_
protected

IDs of the patches to be moved.

Definition at line 66 of file displacementMethod.H.

Referenced by displacementMethod::setPatchIDs().

◆ motionPtr_

autoPtr<motionSolver> motionPtr_
protected

Definition at line 68 of file displacementMethod.H.

◆ maxDisplacement_

scalar maxDisplacement_
protected

Definition at line 70 of file displacementMethod.H.

◆ preferPointField_

bool preferPointField_
protected

Whether the motion solver prefers a point of a vol field as input.

Definition at line 75 of file displacementMethod.H.


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