Class for cutting a face, faceI, of an fvMesh, mesh_, at its intersection with an isosurface defined by the mesh point values f_ and the isovalue, isoValue_. More...
Public Member Functions | |
isoCutFace (const fvMesh &mesh, scalarField &f) | |
Construct from fvMesh and a scalarField. More... | |
label | calcSubFace (const label faceI, const scalar isoValue) |
Calculate cut points along edges of faceI. More... | |
label | calcSubFace (const pointField &points, const scalarField &f, const scalar isoValue) |
Calculate cut points along edges of face with values f. More... | |
const point & | subFaceCentre () |
const vector & | subFaceArea () |
const DynamicList< point > & | subFacePoints () const |
const DynamicList< point > & | surfacePoints () const |
void | clearStorage () |
scalar | timeIntegratedFaceFlux (const label facei, const vector &x0, const vector &n0, const scalar Un0, const scalar f0, const scalar dt, const scalar phi, const scalar magSf) |
Calculate volumetric face transport during dt given the isoFace. More... | |
scalar | timeIntegratedArea (const pointField &fPts, const scalarField &pTimes, const scalar dt, const scalar magSf, const scalar Un0) |
Calculate time integrated area for a face. More... | |
void | cutPoints (const pointField &pts, const scalarField &f, const scalar f0, DynamicList< point > &cutPoints) |
void | quadAreaCoeffs (const DynamicList< point > &pf0, const DynamicList< point > &pf1, scalar &alpha, scalar &beta) const |
Static Public Attributes | |
static int | debug = 0 |
Class for cutting a face, faceI, of an fvMesh, mesh_, at its intersection with an isosurface defined by the mesh point values f_ and the isovalue, isoValue_.
Roenby, J., Bredmose, H. and Jasak, H. (2016). A computational method for sharp interface advection Royal Society Open Science, 3 doi 10.1098/rsos.160405
Original code supplied by Johan Roenby, DHI (2016)
Definition at line 64 of file isoCutFace.H.
isoCutFace | ( | const fvMesh & | mesh, |
scalarField & | f | ||
) |
Construct from fvMesh and a scalarField.
Length of scalarField should equal number of mesh points
Definition at line 39 of file isoCutFace.C.
Foam::label calcSubFace | ( | const label | faceI, |
const scalar | isoValue | ||
) |
Calculate cut points along edges of faceI.
Definition at line 269 of file isoCutFace.C.
References points.
Foam::label calcSubFace | ( | const pointField & | points, |
const scalarField & | f, | ||
const scalar | isoValue | ||
) |
Calculate cut points along edges of face with values f.
Definition at line 282 of file isoCutFace.C.
References f(), Foam::identity(), and points.
const Foam::point & subFaceCentre | ( | ) |
Definition at line 294 of file isoCutFace.C.
const Foam::vector & subFaceArea | ( | ) |
Definition at line 304 of file isoCutFace.C.
const Foam::DynamicList< Foam::point > & subFacePoints | ( | ) | const |
Definition at line 314 of file isoCutFace.C.
const Foam::DynamicList< Foam::point > & surfacePoints | ( | ) | const |
Definition at line 320 of file isoCutFace.C.
void clearStorage | ( | ) |
Definition at line 326 of file isoCutFace.C.
References VectorSpace< Vector< scalar >, scalar, 3 >::zero.
Foam::scalar timeIntegratedFaceFlux | ( | const label | facei, |
const vector & | x0, | ||
const vector & | n0, | ||
const scalar | Un0, | ||
const scalar | f0, | ||
const scalar | dt, | ||
const scalar | phi, | ||
const scalar | magSf | ||
) |
Calculate volumetric face transport during dt given the isoFace.
data provided as input for face facei
Definition at line 341 of file isoCutFace.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), f(), forAll, Foam::mag(), nPoints, phi, Foam::constant::mathematical::pi(), Foam::sign(), and WarningInFunction.
Foam::scalar timeIntegratedArea | ( | const pointField & | fPts, |
const scalarField & | pTimes, | ||
const scalar | dt, | ||
const scalar | magSf, | ||
const scalar | Un0 | ||
) |
Calculate time integrated area for a face.
Definition at line 487 of file isoCutFace.C.
References Foam::constant::atomic::alpha, beta(), Foam::constant::electromagnetic::e, forAll, Foam::mag(), Foam::max(), Foam::pos0(), Foam::sign(), and Foam::sortedOrder().
void cutPoints | ( | const pointField & | pts, |
const scalarField & | f, | ||
const scalar | f0, | ||
DynamicList< point > & | cutPoints | ||
) |
Definition at line 625 of file isoCutFace.C.
References DynamicList< T, SizeMin >::append(), Foam::endl(), f(), forAll, Foam::mag(), nPoints, Foam::constant::mathematical::pi(), s, and WarningInFunction.
void quadAreaCoeffs | ( | const DynamicList< point > & | pf0, |
const DynamicList< point > & | pf1, | ||
scalar & | alpha, | ||
scalar & | beta | ||
) | const |
Definition at line 673 of file isoCutFace.C.
References A, Foam::constant::atomic::alpha, B, beta(), C, D, Foam::endl(), Foam::mag(), Foam::normalised(), WarningInFunction, and Foam::Zero.
|
static |
Definition at line 137 of file isoCutFace.H.