58 Ostream&
operator<<(Ostream&,
const cellInfo&);
76 template<
class TrackingData>
80 const label thisFacei,
81 const label thisCelli,
82 const label neighbourFacei,
83 const label neighbourCelli,
96 inline explicit cellInfo(
const label ctype);
116 template<
class TrackingData>
117 inline bool valid(TrackingData& td)
const;
120 template<
class TrackingData>
131 template<
class TrackingData>
136 const label patchFacei,
137 const point& faceCentre,
142 template<
class TrackingData>
147 const label patchFacei,
148 const point& faceCentre,
153 template<
class TrackingData>
162 template<
class TrackingData>
166 const label thisCelli,
167 const label neighbourFacei,
174 template<
class TrackingData>
178 const label thisFacei,
179 const label neighbourCelli,
186 template<
class TrackingData>
190 const label thisFacei,
197 template<
class TrackingData>
220 template<>
struct is_contiguous<cellInfo> : std::true_type {};
223 template<>
struct is_contiguous_label<cellInfo> : std::true_type {};
cellInfo()
Default construct - as cellClassification::NOTSET.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
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
Test for equality, with TrackingData.
bool operator==(const cellInfo &) const
Test for equality.
friend Ostream & operator<<(Ostream &, const cellInfo &)
bool operator!=(const cellInfo &) const
Test for inequality.
Istream & operator>>(Istream &, directionInfo &)
bool valid(TrackingData &td) const
Changed or contains original (invalid) value.
bool updateCell(const polyMesh &, const label thisCelli, const label neighbourFacei, const cellInfo &neighbourInfo, const scalar tol, TrackingData &td)
Influence of neighbouring face.
friend Istream & operator>>(Istream &, cellInfo &)
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)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
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.
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces)
const std::string patch
OpenFOAM patch number as a std::string.
Mesh consisting of general polyhedral cells.
A patch is a list of labels that address the faces in the global face list.
Tensor of scalars, i.e. Tensor<scalar>.