Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
optMeshMovementVolumetricBSplinesExternalMotionSolver Class Reference

Converts NURBS volume control points update to actual mesh movement. Internal points are moved based on a motionSolver other than volumetricBSplinesExternalMotionSolver. More...

Inheritance diagram for optMeshMovementVolumetricBSplinesExternalMotionSolver:
Inheritance graph
[legend]
Collaboration diagram for optMeshMovementVolumetricBSplinesExternalMotionSolver:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("volumetricBSplinesExternalMotionSolver")
 Runtime type information. More...
 
 optMeshMovementVolumetricBSplinesExternalMotionSolver (fvMesh &mesh, const dictionary &dict, const labelList &patchIDs)
 Construct from components. More...
 
virtual ~optMeshMovementVolumetricBSplinesExternalMotionSolver ()=default
 Destructor. More...
 
void moveMesh ()
 Calculates surface mesh movement. More...
 
virtual scalar computeEta (const scalarField &correction)
 Compute eta value based on max displacement. More...
 
virtual labelList getActiveDesignVariables () const
 Return active design variables. More...
 
- Public Member Functions inherited from optMeshMovement
 TypeName ("optMeshMovement")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, optMeshMovement, dictionary,(fvMesh &mesh, const dictionary &dict, const labelList &patchIDs),(mesh, dict, patchIDs))
 
 optMeshMovement (fvMesh &mesh, const dictionary &dict, const labelList &patchIDs)
 Construct from components. More...
 
virtual ~optMeshMovement ()=default
 Destructor. More...
 
void setCorrection (const scalarField &correction)
 Set design variable correction. More...
 
autoPtr< displacementMethod > & returnDisplacementMethod ()
 Return displacementMethod. More...
 
const labelListgetPatchIDs ()
 Return patchIDs. More...
 
void writeMeshQualityMetrics ()
 Write mesh quality metrics. More...
 
virtual void storeDesignVariables ()
 Store design variables and mesh, to act as the starting point of line search. More...
 
virtual void resetDesignVariables ()
 Reset to starting point of line search. More...
 
bool maxAllowedDisplacementSet () const
 Whether maxAllowedDisplacement has been set. More...
 

Protected Member Functions

void computeBoundaryMovement (const scalarField &correction)
 
- Protected Member Functions inherited from optMeshMovement
scalar getMaxAllowedDisplacement () const
 Get maxAllowedDisplacement, is set. More...
 

Protected Attributes

volBSplinesBasevolBSplinesBase_
 Reference to underlaying volumetric B-Splines morpher. More...
 
pointVectorField dx_
 Boundary movement due to change of NURBS control points. More...
 
vectorField cpMovement_
 Movement of control points. More...
 
- Protected Attributes inherited from optMeshMovement
fvMeshmesh_
 
const dictionarydict_
 
scalarField correction_
 Correction of design variables. More...
 
labelList patchIDs_
 IDs of patches to be moved. More...
 
vectorField pointsInit_
 Fall back points in case line-search is used. More...
 
autoPtr< displacementMethoddisplMethodPtr_
 Mesh movement engine and interface for applying mesh movement boundary conditions. More...
 
bool writeMeshQualityMetrics_
 Whether to write the mesh quality metrics to files each time the mesh is updated. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from optMeshMovement
static autoPtr< optMeshMovementNew (fvMesh &mesh, const dictionary &dict, const labelList &patchIDs)
 

Detailed Description

Converts NURBS volume control points update to actual mesh movement. Internal points are moved based on a motionSolver other than volumetricBSplinesExternalMotionSolver.

Source files

Definition at line 51 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.H.

Constructor & Destructor Documentation

◆ optMeshMovementVolumetricBSplinesExternalMotionSolver()

optMeshMovementVolumetricBSplinesExternalMotionSolver ( fvMesh mesh,
const dictionary dict,
const labelList patchIDs 
)

Construct from components.

Definition at line 102 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.C.

◆ ~optMeshMovementVolumetricBSplinesExternalMotionSolver()

Destructor.

Member Function Documentation

◆ computeBoundaryMovement()

void computeBoundaryMovement ( const scalarField correction)
protected

Definition at line 49 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.C.

References Foam::correction(), forAll, and UPtrList< T >::size().

Referenced by optMeshMovementVolumetricBSplinesExternalMotionSolver::moveMesh().

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

◆ TypeName()

TypeName ( "volumetricBSplinesExternalMotionSolver"  )

Runtime type information.

◆ moveMesh()

void moveMesh ( )
virtual

◆ computeEta()

Foam::scalar computeEta ( const scalarField correction)
virtual

Compute eta value based on max displacement.

Implements optMeshMovement.

Definition at line 156 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.C.

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

Here is the call graph for this function:

◆ getActiveDesignVariables()

Foam::labelList getActiveDesignVariables ( ) const
virtual

Return active design variables.

Reimplemented from optMeshMovement.

Definition at line 176 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.C.

Member Data Documentation

◆ volBSplinesBase_

volBSplinesBase& volBSplinesBase_
protected

Reference to underlaying volumetric B-Splines morpher.

Definition at line 62 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.H.

Referenced by optMeshMovementVolumetricBSplinesExternalMotionSolver::moveMesh().

◆ dx_

pointVectorField dx_
protected

Boundary movement due to change of NURBS control points.

Definition at line 67 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.H.

Referenced by optMeshMovementVolumetricBSplinesExternalMotionSolver::moveMesh().

◆ cpMovement_

vectorField cpMovement_
protected

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