Transfers refinement levels such that slow transition between levels is maintained. Used in FaceCellWave. More...
Public Member Functions | |
refinementDistanceData () | |
Construct null. More... | |
refinementDistanceData (const scalar level0Size, const point &origin, const label level) | |
Construct from count. More... | |
scalar | level0Size () const |
scalar & | level0Size () |
const point & | origin () const |
point & | origin () |
label | originLevel () const |
label & | originLevel () |
label | wantedLevel (const point &pt) const |
Calculates the wanted level at a given point. Walks out from. More... | |
template<class TrackingData > | |
bool | valid (TrackingData &) const |
Check whether origin has been changed at all or. More... | |
template<class TrackingData > | |
bool | sameGeometry (const polyMesh &, const refinementDistanceData &, const scalar, TrackingData &) const |
Check for identical geometrical data. Used for cyclics checking. More... | |
template<class TrackingData > | |
void | leaveDomain (const polyMesh &, const polyPatch &, const label patchFaceI, const point &faceCentre, TrackingData &) |
Convert any absolute coordinates into relative to (patch)face. More... | |
template<class TrackingData > | |
void | enterDomain (const polyMesh &, const polyPatch &, const label patchFaceI, const point &faceCentre, TrackingData &) |
Reverse of leaveDomain. More... | |
template<class TrackingData > | |
void | transform (const polyMesh &, const tensor &, TrackingData &) |
Apply rotation matrix to any coordinates. More... | |
template<class TrackingData > | |
bool | updateCell (const polyMesh &, const label thisCellI, const label neighbourFaceI, const refinementDistanceData &neighbourInfo, const scalar tol, TrackingData &) |
Influence of neighbouring face. More... | |
template<class TrackingData > | |
bool | updateFace (const polyMesh &, const label thisFaceI, const label neighbourCellI, const refinementDistanceData &neighbourInfo, const scalar tol, TrackingData &) |
Influence of neighbouring cell. More... | |
template<class TrackingData > | |
bool | updateFace (const polyMesh &, const label thisFaceI, const refinementDistanceData &neighbourInfo, const scalar tol, TrackingData &) |
Influence of different value on same face. More... | |
template<class TrackingData > | |
bool | equal (const refinementDistanceData &, TrackingData &) const |
Same (like operator==) More... | |
bool | operator== (const refinementDistanceData &) const |
bool | operator!= (const refinementDistanceData &) const |
Private Member Functions | |
template<class TrackingData > | |
bool | update (const point &, const refinementDistanceData &neighbourInfo, const scalar tol, TrackingData &) |
Updates with neighbouring data. Returns true if something changed. More... | |
Private Attributes | |
scalar | level0Size_ |
Unrefined (level0) buffer size (nBufferLayers*level0Size) More... | |
point | origin_ |
Nearest point with highest level. More... | |
label | originLevel_ |
Friends | |
Ostream & | operator<< (Ostream &, const refinementDistanceData &) |
Istream & | operator>> (Istream &, refinementDistanceData &) |
Transfers refinement levels such that slow transition between levels is maintained. Used in FaceCellWave.
Definition at line 54 of file refinementDistanceData.H.
|
inline |
Construct null.
Definition at line 125 of file refinementDistanceDataI.H.
|
inline |
Construct from count.
Definition at line 133 of file refinementDistanceDataI.H.
|
inlineprivate |
Updates with neighbouring data. Returns true if something changed.
Definition at line 62 of file refinementDistanceDataI.H.
References Foam::abort(), Foam::diff(), Foam::FatalError, FatalErrorInFunction, Foam::magSqr(), refinementDistanceData::origin(), Foam::pos(), refinementDistanceData::valid(), and refinementDistanceData::wantedLevel().
|
inline |
Definition at line 99 of file refinementDistanceData.H.
References refinementDistanceData::level0Size_.
|
inline |
Definition at line 104 of file refinementDistanceData.H.
References refinementDistanceData::level0Size_.
|
inline |
Definition at line 109 of file refinementDistanceData.H.
References refinementDistanceData::origin_.
Referenced by refinementDistanceData::update().
|
inline |
Definition at line 114 of file refinementDistanceData.H.
References refinementDistanceData::origin_.
|
inline |
Definition at line 119 of file refinementDistanceData.H.
References refinementDistanceData::originLevel_.
|
inline |
Definition at line 124 of file refinementDistanceData.H.
References refinementDistanceData::originLevel_.
|
inline |
Calculates the wanted level at a given point. Walks out from.
the origin.
Definition at line 32 of file refinementDistanceDataI.H.
References refinementDistanceData::level0Size_, Foam::magSqr(), refinementDistanceData::origin_, refinementDistanceData::originLevel_, and Foam::sqr().
Referenced by refinementDistanceData::update().
|
inline |
Check whether origin has been changed at all or.
still contains original (invalid) value.
Definition at line 148 of file refinementDistanceDataI.H.
Referenced by refinementDistanceData::equal(), and refinementDistanceData::update().
|
inline |
Check for identical geometrical data. Used for cyclics checking.
Definition at line 157 of file refinementDistanceDataI.H.
|
inline |
Convert any absolute coordinates into relative to (patch)face.
centre
Definition at line 170 of file refinementDistanceDataI.H.
|
inline |
Reverse of leaveDomain.
Definition at line 197 of file refinementDistanceDataI.H.
Apply rotation matrix to any coordinates.
Definition at line 184 of file refinementDistanceDataI.H.
References Foam::transform().
|
inline |
Influence of neighbouring face.
Definition at line 213 of file refinementDistanceDataI.H.
References primitiveMesh::cellCentres(), mesh, and Foam::pos().
|
inline |
Influence of neighbouring cell.
Definition at line 231 of file refinementDistanceDataI.H.
References primitiveMesh::faceCentres(), mesh, and Foam::pos().
|
inline |
Influence of different value on same face.
Definition at line 249 of file refinementDistanceDataI.H.
References primitiveMesh::faceCentres(), mesh, and Foam::pos().
|
inline |
Same (like operator==)
Definition at line 265 of file refinementDistanceDataI.H.
References Foam::operator==(), and refinementDistanceData::valid().
|
inline |
Definition at line 291 of file refinementDistanceDataI.H.
References refinementDistanceData::level0Size_, refinementDistanceData::origin_, and refinementDistanceData::originLevel_.
|
inline |
Definition at line 304 of file refinementDistanceDataI.H.
|
friend |
|
friend |
|
private |
Unrefined (level0) buffer size (nBufferLayers*level0Size)
Definition at line 60 of file refinementDistanceData.H.
Referenced by refinementDistanceData::level0Size(), refinementDistanceData::operator==(), and refinementDistanceData::wantedLevel().
|
private |
Nearest point with highest level.
Definition at line 63 of file refinementDistanceData.H.
Referenced by refinementDistanceData::operator==(), refinementDistanceData::origin(), and refinementDistanceData::wantedLevel().
|
private |
Definition at line 64 of file refinementDistanceData.H.
Referenced by refinementDistanceData::operator==(), refinementDistanceData::originLevel(), and refinementDistanceData::wantedLevel().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.