45 #ifndef Foam_twoDPointCorrector_H 46 #define Foam_twoDPointCorrector_H 67 public MeshObject<polyMesh, UpdateableMeshObject, twoDPointCorrector>
85 mutable bool isWedge_;
88 mutable std::unique_ptr<vector> planeNormalPtr_;
91 mutable std::unique_ptr<labelList> normalEdgeIndicesPtr_;
97 mutable scalar wedgeAngle_;
110 void calcAddressing()
const;
113 void clearAddressing()
const;
122 static const scalar edgeOrthogonalityTol;
void updateMesh(const mapPolyMesh &)
Update topology.
const labelList & normalEdgeIndices() const
Return indices of normal edges.
ClassName("twoDPointCorrector")
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
void correctPoints(pointField &p) const
Correct motion points.
Templated abstract base-class for optional mesh objects used to automate their allocation to the mesh...
void correctDisplacement(const pointField &p, vectorField &disp) const
Correct motion displacements.
bool required() const
Is 2D correction required, i.e. is the mesh a wedge or slab.
Class applies a two-dimensional correction to mesh motion point field.
const polyMesh & mesh() const noexcept
Reference to the mesh.
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
const vector & planeNormal() const
Return plane normal.
bool movePoints()
Correct weighting factors for moving mesh.
direction normalDir() const
Return direction normal to plane.
Mesh consisting of general polyhedral cells.
~twoDPointCorrector()
Destructor.
static const Foam::dimensionedScalar A("", Foam::dimPressure, 611.21)
UpdateableMeshObject(const word &objName, const objectRegistry &obr)
Construct from name and instance on registry.