67 std::vector<localIdx>
offset,
223 const std::vector<localIdx>&
offset()
const;
336 std::vector<localIdx> offset_;
348 std::vector<localIdx> neighbourRank_;
352 std::vector<localIdx> rowSortPerm_;
354 void computeRowOrderWriteIndex();
Represents boundaries of an unstructured mesh.
const vectorVector & ownerCellCenters() const
Get the field of centers of owner cells of boundary faces.
View< const label > faceOwners(const localIdx i) const
Get a view of labels of owner cells for a specific boundary face.
View< const scalar > faceAreas(const localIdx i) const
Get a view of face areas for a specific boundary face.
View< const scalar > weights(const localIdx i) const
Get a view of weights for a specific boundary face.
const std::vector< localIdx > & offset() const
Get the offset of the boundary faces.
const vectorVector & faceUnitNormals() const
Get the field of face unit normal vectors.
const scalarVector & deltaCoeffs() const
Get the field of delta coefficients.
const std::vector< localIdx > & neighbourRank() const
Get the offset of the boundary faces.
View< const Vec3 > faceUnitNormals(const localIdx i) const
Get a view of face unit normal vectors for a specific boundary face.
View< const scalar > deltaCoeffs(const localIdx i) const
Get a view of delta coefficients for a specific boundary face.
localIdx nProcBoundaryPatches() const
number of proc boundary patches
localIdx neighbourRank(const localIdx i) const
Given a patchId the corresponding neighbour Rank gets returned.
View< const Vec3 > faceNormals(const localIdx i) const
Get a view of face areas normals for a specific boundary face.
View< const Vec3 > delta(const localIdx i) const
Get a view of delta vectors for a specific boundary face.
localIdx nBoundaries() const
Get the number of the boundaries.
const labelVector & faceOwners() const
Get the list of labels of owner cells of boundary faces.
const Vector< localIdx > & getRowOrderWriteIndex() const
bool isDistributed() const
Return whether this local mesh is a part of a global distributed mesh.
const vectorVector & faceNormals() const
Get the field of face areas normals.
localIdx neighbourRankForRange(std::pair< localIdx, localIdx > range) const
Returns the neighbour rank for the processor patch whose face range matches the given range.
const vectorVector & faceCenters() const
Get the field of face centers.
localIdx nBoundaryFaces() const
Get the number of the boundary faces.
const std::vector< localIdx > & getRowSortPerm() const
View< const Vec3 > ownerCellCenters(const localIdx i) const
Get a view of owner cell centers for a specific boundary face.
BoundaryMesh(const Executor &exec, labelVector faceOwners, vectorVector faceCenters, vectorVector ownerCellCenters, vectorVector faceNormals, scalarVector faceAreas, vectorVector faceUnitNormals, vectorVector delta, scalarVector weights, scalarVector deltaCoeffs, std::vector< localIdx > offset, localIdx procBoundaryPatches, std::vector< localIdx > neighbourRank)
Constructor for the BoundaryMesh class.
localIdx nProcBoundaryFaces() const
Get the number of the processor boundary faces.
const scalarVector & faceAreas() const
Get the field of face areas.
const vectorVector & delta() const
Get the field of delta vectors.
const scalarVector & weights() const
Get the field of weights.
View< const Vec3 > faceCenters(const localIdx i) const
Get a view of face centers for a specific boundary face.
localIdx size() const
Gets the size of the field.
Integer types used throughout NeoN.
std::variant< SerialExecutor, CPUExecutor, GPUExecutor > Executor