44 stabilisedFvGeometryScheme,
97 (nextPoint - thisPoint)^(fCentre - thisPoint);
107 solveScalar sumAn = 0.0;
117 (nextPoint - thisPoint)^(fCentre - thisPoint);
119 const scalar an = a & sumAHat;
128 if (sumAn > ROOTVSMALL)
130 fCtrs[facei] = (1.0/3.0)*sumAnc/sumAn;
134 fCtrs[facei] = fCentre;
136 fAreas[facei] = 0.5*sumA;
144 Foam::stabilisedFvGeometryScheme::stabilisedFvGeometryScheme
147 const dictionary&
dict 165 Pout<<
"stabilisedFvGeometryScheme::movePoints() : " 166 <<
"recalculating primitiveMesh centres" <<
endl;
171 !mesh_.hasCellCentres()
172 && !mesh_.hasFaceCentres()
173 && !mesh_.hasCellVolumes()
174 && !mesh_.hasFaceAreas()
180 makeFaceCentresAndAreas
202 std::move(faceCentres),
203 std::move(faceAreas),
204 std::move(cellCentres),
205 std::move(cellVolumes)
Ostream & endl(Ostream &os)
Add newline and flush stream.
quaternion normalised(const quaternion &q)
Return the normalised (unit) quaternion of the given quaternion.
Macros for easy insertion into run-time selection tables.
#define forAll(list, i)
Loop across all elements in list.
Vector< solveScalar > solveVector
void resetGeometry(pointField &&faceCentres, pointField &&faceAreas, pointField &&cellCentres, scalarField &&cellVolumes)
Reset the local geometry.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Point centre() const
Return centre (centroid)
constexpr scalar pi(M_PI)
virtual const faceList & faces() const
Return raw faces.
virtual void movePoints()
Do what is necessary if the mesh has moved.
const fvMesh & mesh() const
Return mesh reference.
int debug
Static debugging option.
defineTypeNameAndDebug(combustionModel, 0)
const dimensionedScalar c
Speed of light in a vacuum.
virtual void movePoints()
Update basic geometric properties from provided points.
Field< vector > vectorField
Specialisation of Field<T> for vector.
Mesh consisting of general polyhedral cells.
static void makeFaceCentresAndAreas(const polyMesh &mesh, const pointField &p, vectorField &fCtrs, vectorField &fAreas)
Calculate face area and centre weighted using pyramid height.
prefixOSstream Pout
OSstream wrapped stdout (std::cout) with parallel prefix.
addToRunTimeSelectionTable(functionObject, pointHistory, dictionary)
vector areaNormal() const
The area normal - with magnitude equal to area of triangle.
static constexpr const zero Zero
Global zero (0)