39 #ifndef meshToMeshData_H 40 #define meshToMeshData_H 55 Istream&
operator>>(Istream&, meshToMeshData&);
56 Ostream&
operator<<(Ostream&,
const meshToMeshData&);
115 template<
class TrackingData>
116 inline bool valid(TrackingData&)
const;
119 template<
class TrackingData>
130 template<
class TrackingData>
135 const label patchFacei,
136 const point& faceCentre,
141 template<
class TrackingData>
146 const label patchFacei,
147 const point& faceCentre,
152 template<
class TrackingData>
161 template<
class TrackingData>
165 const label thisCelli,
166 const label neighbourFacei,
173 template<
class TrackingData>
177 const label thisFacei,
178 const label neighbourCelli,
185 template<
class TrackingData>
189 const label thisFacei,
196 template<
class TrackingData>
223 template<>
struct is_contiguous<meshToMeshData> : std::true_type {};
226 template<>
struct is_contiguous_label<meshToMeshData> : std::true_type {};
friend Ostream & operator<<(Ostream &, const meshToMeshData &)
bool updateFace(const polyMesh &, const label thisFacei, const label neighbourCelli, const meshToMeshData &neighbourInfo, const scalar tol, TrackingData &)
Influence of neighbouring cell.
void enterDomain(const polyMesh &, const polyPatch &, const label patchFacei, const point &faceCentre, TrackingData &)
Reverse of leaveDomain.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
trackData(const polyMesh &tgtMesh)
bool sameGeometry(const polyMesh &, const meshToMeshData &, const scalar, TrackingData &) const
Check for identical geometrical data (eg, cyclics checking)
void leaveDomain(const polyMesh &, const polyPatch &, const label patchFacei, const point &faceCentre, TrackingData &)
Convert absolute coordinates into relative to (patch)face centre.
friend Istream & operator>>(Istream &, meshToMeshData &)
bool operator==(const meshToMeshData &) const
Test for equality.
bool valid(TrackingData &) const
Changed or contains original (invalid) value.
bool equal(const meshToMeshData &, TrackingData &) const
Test for equality, with TrackingData.
Istream & operator>>(Istream &, directionInfo &)
meshToMeshData()
Default construct.
bool updateCell(const polyMesh &, const label thisCelli, const label neighbourFacei, const meshToMeshData &neighbourInfo, const scalar tol, TrackingData &)
Influence of neighbouring face.
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...
Class used to pass non-cell data to the update function.
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces)
Transfers refinement levels such that slow transition between levels is maintained. Used in FaceCellWave.
const polyMesh & tgtMesh_
void transform(const polyMesh &, const tensor &, TrackingData &)
Apply rotation matrix to any coordinates.
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>.
bool operator!=(const meshToMeshData &) const
Test for inequality.