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:
[legend]
Collaboration diagram for optMeshMovementVolumetricBSplinesExternalMotionSolver:
[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...
 
virtual void moveMesh ()
 
autoPtr< displacementMethod > & returnDisplacementMethod ()
 Return displacementMethod. More...
 
const labelListgetPatchIDs ()
 Return patchIDs. More...
 
void writeMeshQualityMetrics ()
 Write mesh quality metrics. More...
 
virtual void storeDesignVariables ()
 
virtual void resetDesignVariables ()
 Reset to starting point of line search. More...
 
virtual scalar computeEta (const scalarField &correction)=0
 Compute eta value based on max displacement. More...
 
bool maxAllowedDisplacementSet () const
 Whether maxAllowedDisplacement has been set. More...
 
virtual labelList getActiveDesignVariables () const
 Return active design variables. 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_
 
bool writeMeshQualityMetrics_
 

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 55 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.H.

Constructor & Destructor Documentation

◆ optMeshMovementVolumetricBSplinesExternalMotionSolver()

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

Construct from components.

Definition at line 107 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.C.

◆ ~optMeshMovementVolumetricBSplinesExternalMotionSolver()

Destructor.

Member Function Documentation

◆ computeBoundaryMovement()

◆ TypeName()

TypeName ( "volumetricBSplinesExternalMotionSolver"  )

Runtime type information.

◆ moveMesh()

void moveMesh ( )
virtual

Calculates surface mesh movement.

Reimplemented from optMeshMovement.

Definition at line 140 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.C.

References optMeshMovement::moveMesh().

Here is the call graph for this function:

◆ computeEta()

Foam::scalar computeEta ( const scalarField correction)
virtual

Compute eta value based on max displacement.

Implements optMeshMovement.

Definition at line 162 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 183 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.C.

Member Data Documentation

◆ volBSplinesBase_

volBSplinesBase& volBSplinesBase_
protected

Reference to underlaying volumetric B-Splines morpher.

Definition at line 64 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.H.

Referenced by optMeshMovementVolumetricBSplinesExternalMotionSolver::computeBoundaryMovement().

◆ dx_

pointVectorField dx_
protected

Boundary movement due to change of NURBS control points.

Definition at line 67 of file optMeshMovementVolumetricBSplinesExternalMotionSolver.H.

Referenced by optMeshMovementVolumetricBSplinesExternalMotionSolver::computeBoundaryMovement().

◆ cpMovement_


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