67 #ifndef displacementSmartPointSmoothingMotionSolver_H 68 #define displacementSmartPointSmoothingMotionSolver_H 83 class displacementSmartPointSmoothingMotionSolver
85 public displacementMotionSolver
149 TypeName(
"displacementSmartPointSmoothing");
181 virtual void solve();
virtual tmp< pointField > curPoints() const
Return point location obtained from the current motion field.
pointField relaxedPoints_
Relaxed point field.
A list of keyword definitions, which are a keyword followed by a number of values (eg...
autoPtr< pointSmoother > pointSmoother_
Point smoothing method.
virtual ~displacementSmartPointSmoothingMotionSolver()=default
Destructor.
pointVectorField & pointDisplacement() noexcept
Return reference to the point motion displacement field.
dictionary meshQualityDict_
Mesh quality dictionary.
virtual void setFacesToMove(const dictionary &)
Set all the faces to be moved.
const scalar minQ_
Minimum allowed quality.
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
autoPtr< pointSmoother > pointUntangler_
Point untangler method.
virtual void solve()
Solve for motion.
void emptyCorrectPoints(pointVectorField &pointDisplacement)
Handle 2D & empty bcs. Assume in both cases the starting mesh.
const scalar untangleQ_
Minimum allowed quality.
bool relax()
Relax the points.
const label nPointSmootherIter_
Number of point smoother iterations per timestep.
void markAffectedFaces(const labelHashSet &changedFaces, labelHashSet &affectedFaces)
Mark affected faces.
TypeName("displacementSmartPointSmoothing")
Runtime type information.
displacementSmartPointSmoothingMotionSolver(const polyMesh &, const IOdictionary &)
Construct from a polyMesh and an IOdictionary.
pointField & points0() noexcept
Return reference to the reference ('0') pointField.
Mesh consisting of general polyhedral cells.
const polyMesh & mesh() const
Return reference to mesh.
labelHashSet facesToMove_
Set of the faces which are to be moved.
A class for managing temporary objects.
scalarList relaxationFactors_
Relaxation factors to use in each iteration.
A primitive field of type <T> with automated input and output.
polyMeshGeometry meshGeometry_
Part-updatable mesh geometry.