32 template<
class TrackingData>
33 inline bool Foam::cellInfo::update
36 const label thisFacei,
37 const label thisCelli,
38 const label neighbourFacei,
39 const label neighbourCelli,
50 <<
"Problem: trying to propagate NOTSET or CUT type:" << w2.type()
51 <<
" into cell/face with type:" <<
type() <<
endl 52 <<
"thisFacei:" << thisFacei
53 <<
" thisCelli:" << thisCelli
54 <<
" neighbourFacei:" << neighbourFacei
55 <<
" neighbourCelli:" << neighbourCelli
73 if (
type() == w2.type())
81 <<
"Problem: trying to propagate conflicting types:" << w2.type()
82 <<
" into cell/face with type:" <<
type() <<
endl 83 <<
"thisFacei:" << thisFacei
84 <<
" thisCelli:" << thisCelli
85 <<
" neighbourFacei:" << neighbourFacei
86 <<
" neighbourCelli:" << neighbourCelli
109 template<
class TrackingData>
116 template<
class TrackingData>
130 template<
class TrackingData>
135 const label patchFacei,
136 const point& faceCentre,
142 template<
class TrackingData>
152 template<
class TrackingData>
157 const label patchFacei,
158 const point& faceCentre,
164 template<
class TrackingData>
168 const label thisCelli,
169 const label neighbourFacei,
187 template<
class TrackingData>
191 const label thisFacei,
192 const label neighbourCelli,
210 template<
class TrackingData>
214 const label thisFacei,
232 template<
class TrackingData>
253 return !(*
this == rhs);
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
cellInfo()
Construct null.
Ostream & endl(Ostream &os)
Add newline and flush stream.
Holds information regarding type of cell. Used in inside/outside determination in cellClassification...
void enterDomain(const polyMesh &, const polyPatch &patch, const label patchFacei, const point &faceCentre, TrackingData &td)
Reverse of leaveDomain.
bool equal(const cellInfo &, TrackingData &td) const
Same (like operator==)
bool operator==(const cellInfo &) const
'Cuts' a mesh with a surface.
bool operator!=(const cellInfo &) const
bool valid(TrackingData &td) const
Check whether origin has been changed at all or.
bool updateCell(const polyMesh &, const label thisCelli, const label neighbourFacei, const cellInfo &neighbourInfo, const scalar tol, TrackingData &td)
Influence of neighbouring face.
errorManip< error > abort(error &err)
void leaveDomain(const polyMesh &, const polyPatch &patch, const label patchFacei, const point &faceCentre, TrackingData &td)
Convert any absolute coordinates into relative to (patch)face.
bool sameGeometry(const polyMesh &, const cellInfo &, const scalar, TrackingData &td) const
Check for identical geometrical data. Used for cyclics checking.
void transform(const polyMesh &, const tensor &rotTensor, TrackingData &td)
Apply rotation matrix to any coordinates.
bool updateFace(const polyMesh &, const label thisFacei, const label neighbourCelli, const cellInfo &neighbourInfo, const scalar tol, TrackingData &td)
Influence of neighbouring cell.
Mesh consisting of general polyhedral cells.
A patch is a list of labels that address the faces in the global face list.