35template<
class TrackingData>
36inline bool Foam::cellInfo::update
39 const label thisFacei,
40 const label thisCelli,
41 const label neighbourFacei,
42 const label neighbourCelli,
53 <<
"Problem: trying to propagate NOTSET or CUT type:" <<
w2.type()
54 <<
" into cell/face with type:" <<
type() <<
endl
55 <<
"thisFacei:" << thisFacei
56 <<
" thisCelli:" << thisCelli
57 <<
" neighbourFacei:" << neighbourFacei
58 <<
" neighbourCelli:" << neighbourCelli
84 <<
"Problem: trying to propagate conflicting types:" <<
w2.type()
85 <<
" into cell/face with type:" <<
type() <<
endl
86 <<
"thisFacei:" << thisFacei
87 <<
" thisCelli:" << thisCelli
88 <<
" neighbourFacei:" << neighbourFacei
89 <<
" neighbourCelli:" << neighbourCelli
112template<
class TrackingData>
120template<
class TrackingData>
134template<
class TrackingData>
139 const label patchFacei,
140 const point& faceCentre,
147template<
class TrackingData>
158template<
class TrackingData>
163 const label patchFacei,
164 const point& faceCentre,
171template<
class TrackingData>
175 const label thisCelli,
176 const label neighbourFacei,
195template<
class TrackingData>
199 const label thisFacei,
200 const label neighbourCelli,
219template<
class TrackingData>
223 const label thisFacei,
241template<
class TrackingData>
252template<
class TrackingData>
268 return update(f1, -1, -1, -1, -1,
td);
279inline bool Foam::cellInfo::operator==
284 return type_ ==
rhs.type_;
288inline bool Foam::cellInfo::operator!=
293 return !(*
this ==
rhs);
'Cuts' a mesh with a surface.
Holds information regarding type of cell. Used in inside/outside determination in cellClassification.
void transform(const polyMesh &, const tensor &rotTensor, TrackingData &td)
Apply rotation matrix to any coordinates.
bool interpolate(const polyMesh &, const point &pt, const label i0, const cellInfo &f0, const label i1, const cellInfo &f1, const scalar weight, const scalar tol, TrackingData &td)
Interpolate between two values (lerp). Returns true if causes changes. Not sure if needs to be specia...
bool updateCell(const polyMesh &, const label thisCelli, const label neighbourFacei, const cellInfo &neighbourInfo, const scalar tol, TrackingData &td)
Influence of neighbouring face.
bool equal(const cellInfo &, TrackingData &td) const
Test for equality, with TrackingData.
cellInfo()
Default construct - as cellClassification::NOTSET.
bool updateFace(const polyMesh &, const label thisFacei, const label neighbourCelli, const cellInfo &neighbourInfo, const scalar tol, TrackingData &td)
Influence of neighbouring cell.
bool valid(TrackingData &td) const
Changed or contains original (invalid) value.
void enterDomain(const polyMesh &, const polyPatch &patch, const label patchFacei, const point &faceCentre, TrackingData &td)
Reverse of leaveDomain.
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 (eg, cyclics checking).
Mesh consisting of general polyhedral cells.
A patch is a list of labels that address the faces in the global face list.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
wallPoints::trackData td(isBlockedFace, regionToBlockSize)
Ostream & endl(Ostream &os)
Add newline and flush stream.
tmp< faMatrix< Type > > operator==(const faMatrix< Type > &, const faMatrix< Type > &)
errorManip< error > abort(error &err)
vector point
Point is a vector.
void rhs(fvMatrix< typename Expr::value_type > &m, const Expr &expression)
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...