55 template<
class TrackingData>
63 template<
class TrackingData>
77 template<
class TrackingData>
82 const label patchFacei,
83 const point& faceCentre,
93 template<
class TrackingData>
98 const label patchFacei,
99 const point& faceCentre,
113 template<
class TrackingData>
124 template<
class TrackingData>
128 const label thisCelli,
129 const label neighbourFacei,
145 if (neighbourInfo.
index() == -2)
150 else if (neighbourInfo.
index() == -1)
185 label v0 =
f[neighbourInfo.
index()];
186 label v1 =
f[(neighbourInfo.
index() + 1) %
f.
size()];
198 n_ = neighbourInfo.
n();
205 template<
class TrackingData>
209 const label thisFacei,
210 const label neighbourCelli,
227 if (neighbourInfo.
index() >= 0)
237 neighbourInfo.
index()
246 n_ = neighbourInfo.
n();
253 template<
class TrackingData>
270 index_ = neighbourInfo.
index();
272 n_ = neighbourInfo.
n();
279 template<
class TrackingData>
282 const directionInfo& rhs,
292 inline bool Foam::directionInfo::operator==
297 return index_ == rhs.index_ && n_ == rhs.n_;
301 inline bool Foam::directionInfo::operator!=
306 return !(*
this == rhs);
bool sameGeometry(const polyMesh &, const directionInfo &, const scalar, TrackingData &td) const
Check for identical geometrical data (eg, cyclics checking)
void size(const label n)
Older name for setAddressableSize.
A face is a list of labels corresponding to mesh vertices.
bool equal(const directionInfo &, TrackingData &td) const
Test for equality, with TrackingData.
const labelListList & faceEdges() const
void leaveDomain(const polyMesh &, const polyPatch &, const label patchFacei, const point &faceCentre, TrackingData &td)
Convert any absolute coordinates into relative to (patch)face.
static bool test(const UList< face > &faces)
Test if given list of faces satisfies criteria for HEX. (6 quad)
bool updateCell(const polyMesh &, const label thisCelli, const label neighbourFacei, const directionInfo &neighbourInfo, const scalar tol, TrackingData &td)
Influence of neighbouring face.
const dimensionedScalar e
Elementary charge.
bool valid(TrackingData &td) const
Changed or contains original (invalid) value.
void enterDomain(const polyMesh &, const polyPatch &, const label patchFacei, const point &faceCentre, TrackingData &td)
Reverse of leaveDomain.
virtual const faceList & faces() const
Return raw faces.
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
Holds direction in which to split cell (in fact a local coordinate axes). Information is a label and ...
directionInfo()
Default construct, index=-1, vector::zero.
const edgeList & edges() const
Return mesh edges. Uses calcEdges.
void transform(const polyMesh &, const tensor &, TrackingData &td)
Apply rotation matrix to any coordinates.
bool updateFace(const polyMesh &, const label thisFacei, const label neighbourCelli, const directionInfo &neighbourInfo, const scalar tol, TrackingData &td)
Influence of neighbouring cell.
const std::string patch
OpenFOAM patch number as a std::string.
Mesh consisting of general polyhedral cells.
tmp< faMatrix< Type > > operator==(const faMatrix< Type > &, const faMatrix< Type > &)
A patch is a list of labels that address the faces in the global face list.
static constexpr const zero Zero
Global zero (0)