Public Member Functions | Private Member Functions | Private Attributes
displacementMotionSolverMeshMover Class Reference

Quality-based under-relaxation wrapped around generic displacementMotionSolver. More...

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

Public Member Functions

 TypeName ("displacementMotionSolver")
 Runtime type information. More...
 
 displacementMotionSolverMeshMover (const dictionary &dict, const List< labelPair > &baffles, pointVectorField &pointDisplacemen)
 Construct from a polyMesh and an IOdictionary. More...
 
virtual ~displacementMotionSolverMeshMover ()
 Destructor. More...
 
virtual bool move (const dictionary &, const label nAllowableErrors, labelList &checkFaces)
 Move mesh using current pointDisplacement boundary values. More...
 
virtual void movePoints (const pointField &)
 Update local data for geometry changes. More...
 
virtual void updateMesh (const mapPolyMesh &)
 Update local data for topology changes. More...
 
- Public Member Functions inherited from externalDisplacementMeshMover
 TypeName ("externalDisplacementMeshMover")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, externalDisplacementMeshMover, dictionary,(const dictionary &dict, const List< labelPair > &baffles, pointVectorField &pointDisplacement),(dict, baffles, pointDisplacement))
 
 externalDisplacementMeshMover (const dictionary &dict, const List< labelPair > &baffles, pointVectorField &pointDisplacement)
 Construct from dictionary and displacement field. Dictionary is. More...
 
virtual ~externalDisplacementMeshMover ()
 Destructor. More...
 
pointVectorFieldpointDisplacement ()
 Return reference to the point motion displacement field. More...
 
const pointVectorFieldpointDisplacement () const
 Return const reference to the point motion displacement field. More...
 
const pointMeshpMesh () const
 
const polyMeshmesh () const
 

Private Member Functions

bool moveMesh (const dictionary &moveDict, const label nAllowableErrors, labelList &checkFaces)
 Apply the mesh mover algorithm. More...
 

Private Attributes

autoPtr< displacementMotionSolversolverPtr_
 Mesh motion solver. More...
 
const labelList adaptPatchIDs_
 IDs of fixedValue patches that we can modify. More...
 
autoPtr< indirectPrimitivePatchadaptPatchPtr_
 Combined indirect fixedValue patches that we can modify. More...
 
pointScalarField scale_
 Scale factor for displacemen. More...
 
pointField oldPoints_
 Old point field. More...
 
motionSmootherAlgo meshMover_
 Mesh mover algorithm. More...
 
fieldSmoother fieldSmoother_
 Field smoothing. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from externalDisplacementMeshMover
static autoPtr< externalDisplacementMeshMoverNew (const word &type, const dictionary &dict, const List< labelPair > &baffles, pointVectorField &pointDisplacement)
 Return a reference to the selected meshMover model. More...
 
- Static Protected Member Functions inherited from externalDisplacementMeshMover
static labelList getFixedValueBCs (const pointVectorField &)
 Extract fixed-value patchfields. More...
 
static autoPtr< indirectPrimitivePatchgetPatch (const polyMesh &, const labelList &)
 Construct patch on selected patches. More...
 
- Protected Attributes inherited from externalDisplacementMeshMover
List< labelPairbaffles_
 Baffles in the mesh. More...
 
pointVectorFieldpointDisplacement_
 Reference to point motion field. More...
 

Detailed Description

Quality-based under-relaxation wrapped around generic displacementMotionSolver.

Example of use in layer settings in snappyHexMeshDict:

meshShrinker displacementMotionSolver;
solver displacementLaplacian;
displacementLaplacianCoeffs
{
    diffusivity quadratic inverseDistance 1(wall);
}
Source files

Definition at line 62 of file displacementMotionSolverMeshMover.H.

Constructor & Destructor Documentation

◆ displacementMotionSolverMeshMover()

displacementMotionSolverMeshMover ( const dictionary dict,
const List< labelPair > &  baffles,
pointVectorField pointDisplacemen 
)

Construct from a polyMesh and an IOdictionary.

Definition at line 109 of file displacementMotionSolverMeshMover.C.

◆ ~displacementMotionSolverMeshMover()

Destructor.

Definition at line 190 of file displacementMotionSolverMeshMover.C.

Member Function Documentation

◆ moveMesh()

bool moveMesh ( const dictionary moveDict,
const label  nAllowableErrors,
labelList checkFaces 
)
private

Apply the mesh mover algorithm.

Definition at line 48 of file displacementMotionSolverMeshMover.C.

References Foam::endl(), Foam::Info, dictionary::lookup(), and Foam::readLabel().

Here is the call graph for this function:

◆ TypeName()

TypeName ( "displacementMotionSolver"  )

Runtime type information.

◆ move()

bool move ( const dictionary moveDict,
const label  nAllowableErrors,
labelList checkFaces 
)
virtual

Move mesh using current pointDisplacement boundary values.

Return true if succesful (errors on checkFaces less than allowable). Updates pointDisplacement.

Implements externalDisplacementMeshMover.

Definition at line 197 of file displacementMotionSolverMeshMover.C.

References forAll, meshRefinement::getMasterEdges(), meshRefinement::getMasterPoints(), internalField(), dictionary::lookup(), objectRegistry::lookupObject(), Foam::mag(), mesh, nPoints, and Foam::readLabel().

Here is the call graph for this function:

◆ movePoints()

void movePoints ( const pointField p)
virtual

Update local data for geometry changes.

Reimplemented from externalDisplacementMeshMover.

Definition at line 298 of file displacementMotionSolverMeshMover.C.

References externalDisplacementMeshMover::movePoints(), and p.

Here is the call graph for this function:

◆ updateMesh()

virtual void updateMesh ( const mapPolyMesh )
inlinevirtual

Update local data for topology changes.

Reimplemented from externalDisplacementMeshMover.

Definition at line 138 of file displacementMotionSolverMeshMover.H.

References NotImplemented.

Field Documentation

◆ solverPtr_

autoPtr<displacementMotionSolver> solverPtr_
private

Mesh motion solver.

Definition at line 69 of file displacementMotionSolverMeshMover.H.

◆ adaptPatchIDs_

const labelList adaptPatchIDs_
private

IDs of fixedValue patches that we can modify.

Definition at line 72 of file displacementMotionSolverMeshMover.H.

◆ adaptPatchPtr_

autoPtr<indirectPrimitivePatch> adaptPatchPtr_
private

Combined indirect fixedValue patches that we can modify.

Definition at line 75 of file displacementMotionSolverMeshMover.H.

◆ scale_

pointScalarField scale_
private

Scale factor for displacemen.

Definition at line 78 of file displacementMotionSolverMeshMover.H.

◆ oldPoints_

pointField oldPoints_
private

Old point field.

Definition at line 81 of file displacementMotionSolverMeshMover.H.

◆ meshMover_

motionSmootherAlgo meshMover_
private

Mesh mover algorithm.

Definition at line 84 of file displacementMotionSolverMeshMover.H.

◆ fieldSmoother_

fieldSmoother fieldSmoother_
private

Field smoothing.

Definition at line 87 of file displacementMotionSolverMeshMover.H.


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