DNDSR 0.1.0.dev1+gcd065ad
Distributed Numeric Data Structure for CFV
Loading...
Searching...
No Matches
DNDS::Geom::UnstructuredMesh Struct Reference

#include <Mesh.hpp>

Inheritance diagram for DNDS::Geom::UnstructuredMesh:
[legend]
Collaboration diagram for DNDS::Geom::UnstructuredMesh:
[legend]

Classes

struct  ElevationInfo
 
struct  HDF5OutSetting
 
struct  WallDistOptions
 

Public Types

template<DeviceBackend B>
using t_deviceView = UnstructuredMeshDeviceView< B >
 

Public Member Functions

auto device_array_list_primary ()
 
auto device_array_list_N2CB ()
 
auto device_array_list_facial ()
 
auto device_array_list_C2F ()
 
 UnstructuredMesh (const DNDS::MPIInfo &n_mpi, int n_dim)
 
int getDim () const
 
auto getCell2NodeIndexPbiRow (index iCell)
 
auto getBnd2NodeIndexPbiRow (index iBnd)
 
template<class TPair >
index IndexGlobal2Local (TPair &pair, DNDS::index iGlobal)
 Global-to-local conversion using father+son ghost mapping.
 
template<class TPair >
index IndexLocal2Global (TPair &pair, DNDS::index iLocal)
 Local-to-global conversion using father+son ghost mapping.
 
template<class TPair >
index IndexLocal2Global_NoSon (TPair &pair, index iLocal)
 Local-to-global conversion using only the father's global mapping (no son / ghost layer).
 
template<class TPair >
index IndexGlobal2Local_NoSon (TPair &pair, index iGlobal)
 Global-to-local conversion using only the father's global mapping (no son / ghost layer).
 
index NodeIndexGlobal2Local (DNDS::index i)
 
index NodeIndexLocal2Global (DNDS::index i)
 
index NodeIndexLocal2Global_NoSon (index i)
 
index NodeIndexGlobal2Local_NoSon (index i)
 
index CellIndexGlobal2Local (DNDS::index i)
 
index CellIndexLocal2Global (DNDS::index i)
 
index CellIndexLocal2Global_NoSon (index i)
 
index CellIndexGlobal2Local_NoSon (index i)
 
index BndIndexGlobal2Local (DNDS::index i)
 
index BndIndexLocal2Global (DNDS::index i)
 
index BndIndexLocal2Global_NoSon (index i)
 
index BndIndexGlobal2Local_NoSon (index i)
 
void SetPeriodicGeometry (const tPoint &translation1, const tPoint &rotationCenter1, const tPoint &eulerAngles1, const tPoint &translation2, const tPoint &rotationCenter2, const tPoint &eulerAngles2, const tPoint &translation3, const tPoint &rotationCenter3, const tPoint &eulerAngles3)
 
void RecoverNode2CellAndNode2Bnd ()
 only requires father part of cell2node, bnd2node and coords generates node2cell and node2bnd (father part)
 
void RecoverCell2CellAndBnd2Cell ()
 needs to use RecoverNode2CellAndNode2Bnd before doing this. Requires node2cell.father and builds a version of its son.
 
void BuildGhostPrimary ()
 building ghost (son) from primary (currently only cell2cell)
 
void AdjGlobal2LocalPrimary ()
 
void AdjLocal2GlobalPrimary ()
 
void AdjGlobal2LocalPrimaryForBnd ()
 
void AdjLocal2GlobalPrimaryForBnd ()
 
void AdjGlobal2LocalFacial ()
 
void AdjLocal2GlobalFacial ()
 
void AdjGlobal2LocalC2F ()
 
void AdjLocal2GlobalC2F ()
 
void BuildGhostN2CB ()
 
void AdjGlobal2LocalN2CB ()
 
void AdjLocal2GlobalN2CB ()
 
void AssertOnN2CB ()
 
void BuildCell2CellFace ()
 
void AdjGlobal2LocalC2CFace ()
 
void AdjLocal2GlobalC2CFace ()
 
void InterpolateFace ()
 
void AssertOnFaces ()
 
void ConstructBndMesh (UnstructuredMesh &bMesh)
 
tLocalMatStruct GetCell2CellFaceVLocal (bool onLocalPartition=false)
 
void ObtainLocalFactFillOrdering (Direct::SerialSymLUStructure &symLU, Direct::DirectPrecControl control)
 
void ObtainSymmetricSymbolicFactorization (Direct::SerialSymLUStructure &symLU, Direct::DirectPrecControl control) const
 
void ReorderLocalCells (int nParts=1, int nPartsInner=1)
 
int NLocalParts () const
 
index LocalPartStart (int iPart) const
 
index LocalPartEnd (int iPart) const
 
index NumNode () const
 
index NumCell () const
 
index NumFace () const
 
index NumBnd () const
 
index NumNodeGhost () const
 
index NumCellGhost () const
 
index NumFaceGhost () const
 
index NumBndGhost () const
 
index NumNodeProc () const
 
index NumCellProc () const
 
index NumFaceProc () const
 
index NumBndProc () const
 
index NumCellGlobal ()
 
index NumNodeGlobal ()
 
index NumFaceGlobal ()
 
index NumBndGlobal ()
 
Elem::Element GetCellElement (index iC)
 
Elem::Element GetFaceElement (index iF)
 
Elem::Element GetBndElement (index iB)
 
t_index GetCellZone (index iC)
 
t_index GetFaceZone (index iF)
 
t_index GetBndZone (index iB)
 
MPIInfogetMPI ()
 
void BuildO2FromO1Elevation (UnstructuredMesh &meshO1)
 
void ElevatedNodesGetBoundarySmooth (const std::function< bool(t_index)> &FiFBndIdNeedSmooth)
 
void ElevatedNodesSolveInternalSmooth ()
 
void ElevatedNodesSolveInternalSmoothV1Old ()
 
void ElevatedNodesSolveInternalSmoothV1 ()
 
void ElevatedNodesSolveInternalSmoothV2 ()
 
void BuildBisectO1FormO2 (UnstructuredMesh &meshO2)
 
bool IsO1 ()
 
bool IsO2 ()
 
template<class tC2n >
void __GetCoords (const tC2n &c2n, tSmallCoords &cs)
 directly load coords; gets faulty if isPeriodic!
 
template<class tC2n , class tCoordExt >
void __GetCoords (const tC2n &c2n, tSmallCoords &cs, tCoordExt &coo)
 directly load coords; gets faulty if isPeriodic!
 
template<class tC2n , class tC2nPbi >
void __GetCoordsOnElem (const tC2n &c2n, const tC2nPbi &c2nPbi, tSmallCoords &cs)
 specially for periodicity
 
template<class tC2n , class tC2nPbi , class tCoordExt >
void __GetCoordsOnElem (const tC2n &c2n, const tC2nPbi &c2nPbi, tSmallCoords &cs, tCoordExt &coo)
 specially for periodicity
 
void GetCoordsOnCell (index iCell, tSmallCoords &cs)
 
void GetCoordsOnCell (index iCell, tSmallCoords &cs, tCoordPair &coo)
 
void GetCoordsOnFace (index iFace, tSmallCoords &cs)
 
tPoint GetCoordNodeOnCell (index iCell, rowsize ic2n)
 
tPoint GetCoordNodeOnFace (index iFace, rowsize if2n)
 
tPoint GetCoordWallDistOnCell (index iCell, rowsize ic2n)
 
tPoint GetCoordWallDistOnFace (index iFace, rowsize if2n)
 
bool CellIsFaceBack (index iCell, index iFace) const
 
index CellFaceOther (index iCell, index iFace) const
 
template<class FA , class FB , class F0 = std::function<void(void)>>
auto CellOtherCellPeriodicHandle (index iFace, rowsize if2c, FA &&fA, FB &&fB, F0 &&f0=[]() {})
 fA executes when if2c points to the donor side; fB the main side
 
void WriteSerialize (Serializer::SerializerBaseSSP serializerP, const std::string &name)
 
void ReadSerialize (Serializer::SerializerBaseSSP serializerP, const std::string &name)
 
void ReadSerializeAndDistribute (Serializer::SerializerBaseSSP serializerP, const std::string &name, const PartitionOptions &partitionOptions)
 Reads mesh from an H5 serializer using even-split distribution, then repartitions via ParMetis for locality.
 
template<class TFTrans >
void TransformCoords (TFTrans &&FTrans)
 
void RecreatePeriodicNodes ()
 
void BuildVTKConnectivity ()
 
void PrintParallelVTKHDFDataArray (std::string fname, std::string seriesName, int arraySiz, int vecArraySiz, int arraySizPoint, int vecArraySizPoint, const tFGetName &names, const tFGetData &data, const tFGetName &vectorNames, const tFGetVecData &vectorData, const tFGetName &namesPoint, const tFGetData &dataPoint, const tFGetName &vectorNamesPoint, const tFGetVecData &vectorDataPoint, double t, MPI_Comm commDup)
 
void SetHDF5OutSetting (size_t chunkSiz, int deflateLevel, bool coll_on_data, bool coll_on_meta)
 
void PrintMeshCGNS (std::string fname, const t_FBCID_2_Name &fbcid2name, const std::vector< std::string > &allNames)
 
void BuildNodeWallDist (const std::function< bool(Geom::t_index)> &fBndIsWall, WallDistOptions options=WallDistOptions{})
 
template<class F >
void op_on_device_arrays (F &&f)
 
template<typename F >
void for_each_device_member (F &&f)
 
template<DeviceBackend B>
auto deviceView ()
 
index getArrayBytes ()
 
- Public Member Functions inherited from DNDS::DeviceTransferable< UnstructuredMesh >
void to_device (DeviceBackend B)
 Mirror every registered ArrayPair to the given device backend.
 
void to_host ()
 Pull every registered pair back to host memory.
 
DeviceBackend device ()
 Consistent device backend across all registered pairs.
 
index getDeviceArrayBytes ()
 Total footprint of every registered father+son pair in bytes.
 

Static Public Member Functions

template<class TAdj , class TFn >
static void ConvertAdjEntries (TAdj &adj, index nRows, TFn &&fn)
 Apply a conversion function to every entry of an adjacency array's first nRows rows.
 
template<class TPair , class TFn >
static void PermuteRows (TPair &pair, index nRows, TFn &&old2new)
 Permute the father rows of an ArrayPair according to a mapping function.
 

Public Attributes

MPI_int mRank {0}
 
DNDS::MPIInfo mpi
 
int dim
 
bool isPeriodic {false}
 
MeshAdjState adjPrimaryState {Adj_Unknown}
 
MeshAdjState adjFacialState {Adj_Unknown}
 
MeshAdjState adjC2FState {Adj_Unknown}
 
MeshAdjState adjN2CBState {Adj_Unknown}
 
MeshAdjState adjC2CFaceState {Adj_Unknown}
 
Periodicity periodicInfo
 
index nNodeO1 {-1}
 
MeshElevationState elevState = Elevation_Untouched
 
tCoordPair coords
 reader
 
tAdjPair cell2node
 
tAdjPair bnd2node
 
tAdj2Pair bnd2cell
 
tAdjPair cell2cell
 
tElemInfoArrayPair cellElemInfo
 
tElemInfoArrayPair bndElemInfo
 
tAdj1Pair cell2cellOrig
 
tAdj1Pair node2nodeOrig
 
tAdj1Pair bnd2bndOrig
 
tPbiPair cell2nodePbi
 periodic only, after reader
 
tPbiPair bnd2nodePbi
 
tAdjPair node2cell
 inverse relations
 
tAdjPair node2bnd
 
tAdjPair cell2face
 interpolated
 
tAdjPair face2node
 
tAdj2Pair face2cell
 
tElemInfoArrayPair faceElemInfo
 
tAdj1Pair bnd2face
 
tAdj1Pair face2bnd
 
std::vector< indexbnd2faceV
 
std::unordered_map< index, indexface2bndM
 
tPbiPair face2nodePbi
 periodic only, after interpolated
 
tAdjPair cell2cellFace
 constructed on demand
 
std::vector< indexnode2parentNode
 parent built
 
std::vector< indexnode2bndNode
 
std::vector< indexcell2parentCell
 
std::vector< indexvtkCell2nodeOffsets
 for parallel out
 
std::vector< uint8_tvtkCellType
 
std::vector< indexvtkCell2node
 
index vtkNodeOffset {-1}
 
index vtkCellOffset {-1}
 
index vtkCell2NodeGlobalSiz {-1}
 
index vtkNCellGlobal {-1}
 
index vtkNNodeGlobal {-1}
 
tAdjPair cell2nodePeriodicRecreated
 
tCoordPair coordsPeriodicRecreated
 
std::vector< indexnodeRecreated2nodeLocal
 
struct DNDS::Geom::UnstructuredMesh::HDF5OutSetting hdf5OutSetting
 
tCoordPair coordsElevDisp
 only elevation
 
index nTotalMoved {-1}
 
struct DNDS::Geom::UnstructuredMesh::ElevationInfo elevationInfo
 
tLocalMatStruct cell2cellFaceVLocalParts
 for cell local factorization
 
std::vector< indexlocalPartitionStarts
 
tCoordPair nodeWallDist
 wall dist:
 

Detailed Description

Definition at line 34 of file Mesh.hpp.

Member Typedef Documentation

◆ t_deviceView

Constructor & Destructor Documentation

◆ UnstructuredMesh()

DNDS::Geom::UnstructuredMesh::UnstructuredMesh ( const DNDS::MPIInfo n_mpi,
int  n_dim 
)
inline

Definition at line 176 of file Mesh.hpp.

Member Function Documentation

◆ __GetCoords() [1/2]

template<class tC2n >
void DNDS::Geom::UnstructuredMesh::__GetCoords ( const tC2n c2n,
tSmallCoords cs 
)
inline

directly load coords; gets faulty if isPeriodic!

Definition at line 506 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ __GetCoords() [2/2]

template<class tC2n , class tCoordExt >
void DNDS::Geom::UnstructuredMesh::__GetCoords ( const tC2n c2n,
tSmallCoords cs,
tCoordExt coo 
)
inline

directly load coords; gets faulty if isPeriodic!

Definition at line 522 of file Mesh.hpp.

Here is the call graph for this function:

◆ __GetCoordsOnElem() [1/2]

template<class tC2n , class tC2nPbi >
void DNDS::Geom::UnstructuredMesh::__GetCoordsOnElem ( const tC2n c2n,
const tC2nPbi c2nPbi,
tSmallCoords cs 
)
inline

specially for periodicity

Definition at line 538 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ __GetCoordsOnElem() [2/2]

void DNDS::Geom::UnstructuredMesh::__GetCoordsOnElem ( const tC2n c2n,
const tC2nPbi c2nPbi,
tSmallCoords cs,
tCoordExt coo 
)
inline

specially for periodicity

Definition at line 554 of file Mesh.hpp.

Here is the call graph for this function:

◆ AdjGlobal2LocalC2CFace()

void DNDS::Geom::UnstructuredMesh::AdjGlobal2LocalC2CFace ( )

Definition at line 1326 of file Mesh.cpp.

Here is the call graph for this function:

◆ AdjGlobal2LocalC2F()

void DNDS::Geom::UnstructuredMesh::AdjGlobal2LocalC2F ( )

Definition at line 1130 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AdjGlobal2LocalFacial()

void DNDS::Geom::UnstructuredMesh::AdjGlobal2LocalFacial ( )

Definition at line 1026 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AdjGlobal2LocalN2CB()

void DNDS::Geom::UnstructuredMesh::AdjGlobal2LocalN2CB ( )

Definition at line 1213 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AdjGlobal2LocalPrimary()

void DNDS::Geom::UnstructuredMesh::AdjGlobal2LocalPrimary ( )

Definition at line 948 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AdjGlobal2LocalPrimaryForBnd()

void DNDS::Geom::UnstructuredMesh::AdjGlobal2LocalPrimaryForBnd ( )

Definition at line 1001 of file Mesh.cpp.

Here is the call graph for this function:

◆ AdjLocal2GlobalC2CFace()

void DNDS::Geom::UnstructuredMesh::AdjLocal2GlobalC2CFace ( )

Definition at line 1312 of file Mesh.cpp.

Here is the call graph for this function:

◆ AdjLocal2GlobalC2F()

void DNDS::Geom::UnstructuredMesh::AdjLocal2GlobalC2F ( )

Definition at line 1093 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AdjLocal2GlobalFacial()

void DNDS::Geom::UnstructuredMesh::AdjLocal2GlobalFacial ( )

Definition at line 1063 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AdjLocal2GlobalN2CB()

void DNDS::Geom::UnstructuredMesh::AdjLocal2GlobalN2CB ( )

Definition at line 1187 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AdjLocal2GlobalPrimary()

void DNDS::Geom::UnstructuredMesh::AdjLocal2GlobalPrimary ( )

Definition at line 975 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AdjLocal2GlobalPrimaryForBnd()

void DNDS::Geom::UnstructuredMesh::AdjLocal2GlobalPrimaryForBnd ( )

Definition at line 1014 of file Mesh.cpp.

Here is the call graph for this function:

◆ AssertOnFaces()

void DNDS::Geom::UnstructuredMesh::AssertOnFaces ( )

Definition at line 1883 of file Mesh.cpp.

Here is the call graph for this function:

◆ AssertOnN2CB()

void DNDS::Geom::UnstructuredMesh::AssertOnN2CB ( )

Definition at line 1240 of file Mesh.cpp.

Here is the call graph for this function:

◆ BndIndexGlobal2Local()

index DNDS::Geom::UnstructuredMesh::BndIndexGlobal2Local ( DNDS::index  i)
inline

Definition at line 308 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BndIndexGlobal2Local_NoSon()

index DNDS::Geom::UnstructuredMesh::BndIndexGlobal2Local_NoSon ( index  i)
inline

Definition at line 311 of file Mesh.hpp.

Here is the call graph for this function:

◆ BndIndexLocal2Global()

index DNDS::Geom::UnstructuredMesh::BndIndexLocal2Global ( DNDS::index  i)
inline

Definition at line 309 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BndIndexLocal2Global_NoSon()

index DNDS::Geom::UnstructuredMesh::BndIndexLocal2Global_NoSon ( index  i)
inline

Definition at line 310 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildBisectO1FormO2()

void DNDS::Geom::UnstructuredMesh::BuildBisectO1FormO2 ( UnstructuredMesh meshO2)

cell2cellOrig uses new global size later, cell2cellOrigV discarded

cell2cellOrig uses new global size now

bnd2bndOrig uses new global size now

Definition at line 473 of file Mesh_Elevation.cpp.

Here is the call graph for this function:

◆ BuildCell2CellFace()

void DNDS::Geom::UnstructuredMesh::BuildCell2CellFace ( )

Definition at line 1285 of file Mesh.cpp.

Here is the call graph for this function:

◆ BuildGhostN2CB()

void DNDS::Geom::UnstructuredMesh::BuildGhostN2CB ( )

Definition at line 1169 of file Mesh.cpp.

Here is the call graph for this function:

◆ BuildGhostPrimary()

void DNDS::Geom::UnstructuredMesh::BuildGhostPrimary ( )

building ghost (son) from primary (currently only cell2cell)

the face and bnd parts are currently only local (no comm available) only builds comm data of cell and node cells: current-father and cell2cell neighbor (face or node neighbor) nodes: needed by all cells faces/bnds: needed by all father cells

Definition at line 801 of file Mesh.cpp.

Here is the call graph for this function:

◆ BuildNodeWallDist()

void DNDS::Geom::UnstructuredMesh::BuildNodeWallDist ( const std::function< bool(Geom::t_index)> &  fBndIsWall,
WallDistOptions  options = WallDistOptions{} 
)

TODO

Definition at line 12 of file Mesh_WallDist.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildO2FromO1Elevation()

void DNDS::Geom::UnstructuredMesh::BuildO2FromO1Elevation ( UnstructuredMesh meshO1)

now cell2cell, bnd2cell are lost

jumped because cell2cell, bnd2cell is to be recovered mandatorily

cannot use sorted

cannot use sorted

Definition at line 22 of file Mesh_Elevation.cpp.

Here is the call graph for this function:

◆ BuildVTKConnectivity()

void DNDS::Geom::UnstructuredMesh::BuildVTKConnectivity ( )

Definition at line 638 of file Mesh_Serial_BuildCell2Cell.cpp.

Here is the call graph for this function:

◆ CellFaceOther()

index DNDS::Geom::UnstructuredMesh::CellFaceOther ( index  iCell,
index  iFace 
) const
inline

Definition at line 624 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CellIndexGlobal2Local()

index DNDS::Geom::UnstructuredMesh::CellIndexGlobal2Local ( DNDS::index  i)
inline

Definition at line 300 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CellIndexGlobal2Local_NoSon()

index DNDS::Geom::UnstructuredMesh::CellIndexGlobal2Local_NoSon ( index  i)
inline

Definition at line 303 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CellIndexLocal2Global()

index DNDS::Geom::UnstructuredMesh::CellIndexLocal2Global ( DNDS::index  i)
inline

Definition at line 301 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CellIndexLocal2Global_NoSon()

index DNDS::Geom::UnstructuredMesh::CellIndexLocal2Global_NoSon ( index  i)
inline

Definition at line 302 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CellIsFaceBack()

bool DNDS::Geom::UnstructuredMesh::CellIsFaceBack ( index  iCell,
index  iFace 
) const
inline

Definition at line 618 of file Mesh.hpp.

Here is the caller graph for this function:

◆ CellOtherCellPeriodicHandle()

template<class FA , class FB , class F0 = std::function<void(void)>>
auto DNDS::Geom::UnstructuredMesh::CellOtherCellPeriodicHandle ( index  iFace,
rowsize  if2c,
FA &&  fA,
FB &&  fB,
F0 &&  f0 = []() {} 
)
inline

fA executes when if2c points to the donor side; fB the main side

Template Parameters
FA
FB
F0
Parameters
iFace
if2c
fA
fB
f0
Returns
auto

Definition at line 645 of file Mesh.hpp.

◆ ConstructBndMesh()

void DNDS::Geom::UnstructuredMesh::ConstructBndMesh ( UnstructuredMesh bMesh)

Definition at line 2061 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ConvertAdjEntries()

template<class TAdj , class TFn >
static void DNDS::Geom::UnstructuredMesh::ConvertAdjEntries ( TAdj adj,
index  nRows,
TFn &&  fn 
)
inlinestatic

Apply a conversion function to every entry of an adjacency array's first nRows rows.

Replaces the recurring nested-loop pattern:

for (index i = 0; i < nRows; i++)
for (rowsize j = 0; j < adj.RowSize(i); j++)
adj(i, j) = fn(adj(i, j));
int32_t rowsize
Row-width / per-row element-count type (signed 32-bit).
Definition Defines.hpp:109
int64_t index
Global row / DOF index type (signed 64-bit; handles multi-billion-cell meshes).
Definition Defines.hpp:107
UnstructuredMeshDeviceView< B > t_deviceView
Definition Mesh.hpp:777
auto adj
Template Parameters
TAdjAny type with RowSize(index) and operator()(index, rowsize).
TFnCallable index(index).

Definition at line 332 of file Mesh.hpp.

Here is the caller graph for this function:

◆ device_array_list_C2F()

auto DNDS::Geom::UnstructuredMesh::device_array_list_C2F ( )
inline

Definition at line 116 of file Mesh.hpp.

Here is the caller graph for this function:

◆ device_array_list_facial()

auto DNDS::Geom::UnstructuredMesh::device_array_list_facial ( )
inline

Definition at line 106 of file Mesh.hpp.

Here is the caller graph for this function:

◆ device_array_list_N2CB()

auto DNDS::Geom::UnstructuredMesh::device_array_list_N2CB ( )
inline

Definition at line 86 of file Mesh.hpp.

Here is the caller graph for this function:

◆ device_array_list_primary()

auto DNDS::Geom::UnstructuredMesh::device_array_list_primary ( )
inline

Definition at line 68 of file Mesh.hpp.

Here is the caller graph for this function:

◆ deviceView()

template<DeviceBackend B>
auto DNDS::Geom::UnstructuredMesh::deviceView ( )
inline

Definition at line 780 of file Mesh.hpp.

◆ ElevatedNodesGetBoundarySmooth()

void DNDS::Geom::UnstructuredMesh::ElevatedNodesGetBoundarySmooth ( const std::function< bool(t_index)> &  FiFBndIdNeedSmooth)

angle is here

Definition at line 693 of file Mesh_Elevation.cpp.

Here is the call graph for this function:

◆ ElevatedNodesSolveInternalSmooth()

void DNDS::Geom::UnstructuredMesh::ElevatedNodesSolveInternalSmooth ( )

Definition at line 94 of file Mesh_Elevation_SmoothSolver.cpp.

Here is the call graph for this function:

◆ ElevatedNodesSolveInternalSmoothV1()

void DNDS::Geom::UnstructuredMesh::ElevatedNodesSolveInternalSmoothV1 ( )

Definition at line 470 of file Mesh_Elevation_SmoothSolver.cpp.

Here is the call graph for this function:

◆ ElevatedNodesSolveInternalSmoothV1Old()

void DNDS::Geom::UnstructuredMesh::ElevatedNodesSolveInternalSmoothV1Old ( )

Definition at line 234 of file Mesh_Elevation_SmoothSolver.cpp.

Here is the call graph for this function:

◆ ElevatedNodesSolveInternalSmoothV2()

void DNDS::Geom::UnstructuredMesh::ElevatedNodesSolveInternalSmoothV2 ( )

Definition at line 919 of file Mesh_Elevation_SmoothSolver.cpp.

Here is the call graph for this function:

◆ for_each_device_member()

template<typename F >
void DNDS::Geom::UnstructuredMesh::for_each_device_member ( F &&  f)
inline

Definition at line 768 of file Mesh.hpp.

Here is the call graph for this function:

◆ getArrayBytes()

index DNDS::Geom::UnstructuredMesh::getArrayBytes ( )
inline

Definition at line 785 of file Mesh.hpp.

Here is the call graph for this function:

◆ getBnd2NodeIndexPbiRow()

auto DNDS::Geom::UnstructuredMesh::getBnd2NodeIndexPbiRow ( index  iBnd)
inline

Definition at line 193 of file Mesh.hpp.

◆ GetBndElement()

Elem::Element DNDS::Geom::UnstructuredMesh::GetBndElement ( index  iB)
inline

Definition at line 482 of file Mesh.hpp.

◆ GetBndZone()

t_index DNDS::Geom::UnstructuredMesh::GetBndZone ( index  iB)
inline

Definition at line 486 of file Mesh.hpp.

Here is the caller graph for this function:

◆ GetCell2CellFaceVLocal()

tLocalMatStruct DNDS::Geom::UnstructuredMesh::GetCell2CellFaceVLocal ( bool  onLocalPartition = false)
Returns
cell2cell for local mesh, which do not contain the diagonal part; should be a diag-less symmetric adjacency matrix

must be local not ghost ptrs

Definition at line 179 of file Mesh_Serial_Partition.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getCell2NodeIndexPbiRow()

auto DNDS::Geom::UnstructuredMesh::getCell2NodeIndexPbiRow ( index  iCell)
inline

Definition at line 181 of file Mesh.hpp.

Here is the caller graph for this function:

◆ GetCellElement()

Elem::Element DNDS::Geom::UnstructuredMesh::GetCellElement ( index  iC)
inline

Definition at line 480 of file Mesh.hpp.

Here is the caller graph for this function:

◆ GetCellZone()

t_index DNDS::Geom::UnstructuredMesh::GetCellZone ( index  iC)
inline

Definition at line 484 of file Mesh.hpp.

◆ GetCoordNodeOnCell()

tPoint DNDS::Geom::UnstructuredMesh::GetCoordNodeOnCell ( index  iCell,
rowsize  ic2n 
)
inline

Definition at line 590 of file Mesh.hpp.

Here is the call graph for this function:

◆ GetCoordNodeOnFace()

tPoint DNDS::Geom::UnstructuredMesh::GetCoordNodeOnFace ( index  iFace,
rowsize  if2n 
)
inline

Definition at line 597 of file Mesh.hpp.

Here is the call graph for this function:

◆ GetCoordsOnCell() [1/2]

void DNDS::Geom::UnstructuredMesh::GetCoordsOnCell ( index  iCell,
tSmallCoords cs 
)
inline

Definition at line 566 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCoordsOnCell() [2/2]

void DNDS::Geom::UnstructuredMesh::GetCoordsOnCell ( index  iCell,
tSmallCoords cs,
tCoordPair coo 
)
inline

Definition at line 574 of file Mesh.hpp.

Here is the call graph for this function:

◆ GetCoordsOnFace()

void DNDS::Geom::UnstructuredMesh::GetCoordsOnFace ( index  iFace,
tSmallCoords cs 
)
inline

Definition at line 582 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCoordWallDistOnCell()

tPoint DNDS::Geom::UnstructuredMesh::GetCoordWallDistOnCell ( index  iCell,
rowsize  ic2n 
)
inline

Definition at line 604 of file Mesh.hpp.

Here is the call graph for this function:

◆ GetCoordWallDistOnFace()

tPoint DNDS::Geom::UnstructuredMesh::GetCoordWallDistOnFace ( index  iFace,
rowsize  if2n 
)
inline

Definition at line 611 of file Mesh.hpp.

Here is the call graph for this function:

◆ getDim()

int DNDS::Geom::UnstructuredMesh::getDim ( ) const
inline

Definition at line 179 of file Mesh.hpp.

◆ GetFaceElement()

Elem::Element DNDS::Geom::UnstructuredMesh::GetFaceElement ( index  iF)
inline

Definition at line 481 of file Mesh.hpp.

Here is the caller graph for this function:

◆ GetFaceZone()

t_index DNDS::Geom::UnstructuredMesh::GetFaceZone ( index  iF)
inline

Definition at line 485 of file Mesh.hpp.

◆ getMPI()

MPIInfo & DNDS::Geom::UnstructuredMesh::getMPI ( )
inline

Definition at line 488 of file Mesh.hpp.

Here is the caller graph for this function:

◆ IndexGlobal2Local()

template<class TPair >
index DNDS::Geom::UnstructuredMesh::IndexGlobal2Local ( TPair pair,
DNDS::index  iGlobal 
)
inline

Global-to-local conversion using father+son ghost mapping.

Returns
local index, or (-1 - iGlobal) when not found in the pair. UnInitIndex passes through unchanged.

Definition at line 219 of file Mesh.hpp.

Here is the caller graph for this function:

◆ IndexGlobal2Local_NoSon()

template<class TPair >
index DNDS::Geom::UnstructuredMesh::IndexGlobal2Local_NoSon ( TPair pair,
index  iGlobal 
)
inline

Global-to-local conversion using only the father's global mapping (no son / ghost layer).

Returns
local index if the global maps to this rank, otherwise (-1 - iGlobal). UnInitIndex passes through.

Definition at line 276 of file Mesh.hpp.

Here is the caller graph for this function:

◆ IndexLocal2Global()

template<class TPair >
index DNDS::Geom::UnstructuredMesh::IndexLocal2Global ( TPair pair,
DNDS::index  iLocal 
)
inline

Local-to-global conversion using father+son ghost mapping.

Returns
global index, or the decoded global when the local is a negative "not-found" encoding. UnInitIndex passes through.

Definition at line 239 of file Mesh.hpp.

Here is the caller graph for this function:

◆ IndexLocal2Global_NoSon()

template<class TPair >
index DNDS::Geom::UnstructuredMesh::IndexLocal2Global_NoSon ( TPair pair,
index  iLocal 
)
inline

Local-to-global conversion using only the father's global mapping (no son / ghost layer).

Returns
global index. Asserts if iLocal exceeds father size. Negative "not-found" encoding and UnInitIndex pass through.

Definition at line 257 of file Mesh.hpp.

Here is the caller graph for this function:

◆ InterpolateFace()

void DNDS::Geom::UnstructuredMesh::InterpolateFace ( )
Todo:
//TODO: handle periodic cases

sync call!!!

Definition at line 1769 of file Mesh.cpp.

Here is the call graph for this function:

◆ IsO1()

bool DNDS::Geom::UnstructuredMesh::IsO1 ( )

Definition at line 287 of file Mesh.cpp.

Here is the call graph for this function:

◆ IsO2()

bool DNDS::Geom::UnstructuredMesh::IsO2 ( )

Definition at line 315 of file Mesh.cpp.

Here is the call graph for this function:

◆ LocalPartEnd()

index DNDS::Geom::UnstructuredMesh::LocalPartEnd ( int  iPart) const
inline

Definition at line 454 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LocalPartStart()

index DNDS::Geom::UnstructuredMesh::LocalPartStart ( int  iPart) const
inline

Definition at line 453 of file Mesh.hpp.

Here is the caller graph for this function:

◆ NLocalParts()

int DNDS::Geom::UnstructuredMesh::NLocalParts ( ) const
inline

Definition at line 452 of file Mesh.hpp.

Here is the caller graph for this function:

◆ NodeIndexGlobal2Local()

index DNDS::Geom::UnstructuredMesh::NodeIndexGlobal2Local ( DNDS::index  i)
inline

Definition at line 292 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ NodeIndexGlobal2Local_NoSon()

index DNDS::Geom::UnstructuredMesh::NodeIndexGlobal2Local_NoSon ( index  i)
inline

Definition at line 295 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ NodeIndexLocal2Global()

index DNDS::Geom::UnstructuredMesh::NodeIndexLocal2Global ( DNDS::index  i)
inline

Definition at line 293 of file Mesh.hpp.

Here is the call graph for this function:

◆ NodeIndexLocal2Global_NoSon()

index DNDS::Geom::UnstructuredMesh::NodeIndexLocal2Global_NoSon ( index  i)
inline

Definition at line 294 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ NumBnd()

index DNDS::Geom::UnstructuredMesh::NumBnd ( ) const
inline

Definition at line 459 of file Mesh.hpp.

Here is the caller graph for this function:

◆ NumBndGhost()

index DNDS::Geom::UnstructuredMesh::NumBndGhost ( ) const
inline

Definition at line 464 of file Mesh.hpp.

◆ NumBndGlobal()

index DNDS::Geom::UnstructuredMesh::NumBndGlobal ( )
inline
Warning
must collectively call

Definition at line 478 of file Mesh.hpp.

Here is the caller graph for this function:

◆ NumBndProc()

index DNDS::Geom::UnstructuredMesh::NumBndProc ( ) const
inline

Definition at line 469 of file Mesh.hpp.

Here is the call graph for this function:

◆ NumCell()

index DNDS::Geom::UnstructuredMesh::NumCell ( ) const
inline

Definition at line 457 of file Mesh.hpp.

Here is the caller graph for this function:

◆ NumCellGhost()

index DNDS::Geom::UnstructuredMesh::NumCellGhost ( ) const
inline

Definition at line 462 of file Mesh.hpp.

Here is the caller graph for this function:

◆ NumCellGlobal()

index DNDS::Geom::UnstructuredMesh::NumCellGlobal ( )
inline
Warning
must collectively call

Definition at line 472 of file Mesh.hpp.

Here is the caller graph for this function:

◆ NumCellProc()

index DNDS::Geom::UnstructuredMesh::NumCellProc ( ) const
inline

Definition at line 467 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ NumFace()

index DNDS::Geom::UnstructuredMesh::NumFace ( ) const
inline

Definition at line 458 of file Mesh.hpp.

Here is the caller graph for this function:

◆ NumFaceGhost()

index DNDS::Geom::UnstructuredMesh::NumFaceGhost ( ) const
inline

Definition at line 463 of file Mesh.hpp.

◆ NumFaceGlobal()

index DNDS::Geom::UnstructuredMesh::NumFaceGlobal ( )
inline
Warning
must collectively call

Definition at line 476 of file Mesh.hpp.

◆ NumFaceProc()

index DNDS::Geom::UnstructuredMesh::NumFaceProc ( ) const
inline

Definition at line 468 of file Mesh.hpp.

Here is the call graph for this function:

◆ NumNode()

index DNDS::Geom::UnstructuredMesh::NumNode ( ) const
inline

Definition at line 456 of file Mesh.hpp.

Here is the caller graph for this function:

◆ NumNodeGhost()

index DNDS::Geom::UnstructuredMesh::NumNodeGhost ( ) const
inline

Definition at line 461 of file Mesh.hpp.

Here is the caller graph for this function:

◆ NumNodeGlobal()

index DNDS::Geom::UnstructuredMesh::NumNodeGlobal ( )
inline
Warning
must collectively call

Definition at line 474 of file Mesh.hpp.

Here is the caller graph for this function:

◆ NumNodeProc()

index DNDS::Geom::UnstructuredMesh::NumNodeProc ( ) const
inline

Definition at line 466 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ObtainLocalFactFillOrdering()

void DNDS::Geom::UnstructuredMesh::ObtainLocalFactFillOrdering ( Direct::SerialSymLUStructure symLU,
Direct::DirectPrecControl  control 
)

Definition at line 314 of file Mesh_Serial_Partition.cpp.

Here is the call graph for this function:

◆ ObtainSymmetricSymbolicFactorization()

void DNDS::Geom::UnstructuredMesh::ObtainSymmetricSymbolicFactorization ( Direct::SerialSymLUStructure symLU,
Direct::DirectPrecControl  control 
) const

Definition at line 2231 of file Mesh.cpp.

Here is the call graph for this function:

◆ op_on_device_arrays()

template<class F >
void DNDS::Geom::UnstructuredMesh::op_on_device_arrays ( F &&  f)
inline

Definition at line 756 of file Mesh.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ PermuteRows()

template<class TPair , class TFn >
static void DNDS::Geom::UnstructuredMesh::PermuteRows ( TPair pair,
index  nRows,
TFn &&  old2new 
)
inlinestatic

Permute the father rows of an ArrayPair according to a mapping function.

For each old row index i in [0, nRows), the row is moved to position old2new(i). Works with both CSR (variable-row-size) and fixed-row-size array pairs: CSR pairs are Decompressed before and Compressed after the permutation; fixed-size pairs are copied directly.

Template Parameters
TPairAn ArrayPair-like type with father/son, IsCSR().
TFnCallable index(index) returning the new row index.

Definition at line 357 of file Mesh.hpp.

Here is the caller graph for this function:

◆ PrintMeshCGNS()

void DNDS::Geom::UnstructuredMesh::PrintMeshCGNS ( std::string  fname,
const t_FBCID_2_Name fbcid2name,
const std::vector< std::string > &  allNames 
)

Definition at line 1558 of file Mesh_Plts.cpp.

Here is the call graph for this function:

◆ PrintParallelVTKHDFDataArray()

void DNDS::Geom::UnstructuredMesh::PrintParallelVTKHDFDataArray ( std::string  fname,
std::string  seriesName,
int  arraySiz,
int  vecArraySiz,
int  arraySizPoint,
int  vecArraySizPoint,
const tFGetName names,
const tFGetData data,
const tFGetName vectorNames,
const tFGetVecData vectorData,
const tFGetName namesPoint,
const tFGetData dataPoint,
const tFGetName vectorNamesPoint,
const tFGetVecData vectorDataPoint,
double  t,
MPI_Comm  commDup 
)

Definition at line 1342 of file Mesh_Plts.cpp.

Here is the call graph for this function:

◆ ReadSerialize()

void DNDS::Geom::UnstructuredMesh::ReadSerialize ( Serializer::SerializerBaseSSP  serializerP,
const std::string &  name 
)

Definition at line 1969 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ReadSerializeAndDistribute()

void DNDS::Geom::UnstructuredMesh::ReadSerializeAndDistribute ( Serializer::SerializerBaseSSP  serializerP,
const std::string &  name,
const PartitionOptions partitionOptions 
)

Reads mesh from an H5 serializer using even-split distribution, then repartitions via ParMetis for locality.

This method enables reading a mesh written with any number of MPI ranks into any number of MPI ranks, without requiring the original partition.

Flow:

  1. Even-split read of all primary arrays (coords, cell2node, cellElemInfo, bnd2node, bndElemInfo, cell2nodePbi, bnd2nodePbi, origIndex arrays).
  2. Build distributed node2cell and cell2cell (node-neighbor) using existing RecoverNode2CellAndNode2Bnd() + RecoverCell2CellAndBnd2Cell().
  3. Filter cell2cell to facial neighbors only (shared O1 vertices >= dim).
  4. Call ParMETIS_V3_PartKway on the distributed facial graph.
  5. Redistribute cells, nodes, and boundaries to the new partition via ArrayTransformer push-based transfer.
  6. Set adjPrimaryState = Adj_PointToGlobal.

After return, the caller should proceed with the standard rebuild sequence: RecoverNode2CellAndNode2Bnd -> RecoverCell2CellAndBnd2Cell -> BuildGhostPrimary -> AdjGlobal2LocalPrimary -> ...

Parameters
serializerPH5 serializer (must be collective / non-per-rank)
namePath name in the serializer hierarchy
partitionOptionsParMetis partitioning options

Definition at line 42 of file Mesh_ReadSerializeDistributed.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RecoverCell2CellAndBnd2Cell()

void DNDS::Geom::UnstructuredMesh::RecoverCell2CellAndBnd2Cell ( )

needs to use RecoverNode2CellAndNode2Bnd before doing this. Requires node2cell.father and builds a version of its son.

warning, this is not actual final official trans, just needed temporarily

warning, this is not actual final official trans, just needed temporarily

warning, this is not actual final official trans, just needed temporarily

Definition at line 542 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RecoverNode2CellAndNode2Bnd()

void DNDS::Geom::UnstructuredMesh::RecoverNode2CellAndNode2Bnd ( )

only requires father part of cell2node, bnd2node and coords generates node2cell and node2bnd (father part)

Definition at line 488 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RecreatePeriodicNodes()

void DNDS::Geom::UnstructuredMesh::RecreatePeriodicNodes ( )

Definition at line 523 of file Mesh_Serial_BuildCell2Cell.cpp.

Here is the call graph for this function:

◆ ReorderLocalCells()

void DNDS::Geom::UnstructuredMesh::ReorderLocalCells ( int  nParts = 1,
int  nPartsInner = 1 
)
Warning
RecreatePeriodicNodes and BuildVTKConnectivity results are invalid after this;
bnd mesh's cell2parentCell is invalid after this

Definition at line 2405 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetHDF5OutSetting()

void DNDS::Geom::UnstructuredMesh::SetHDF5OutSetting ( size_t  chunkSiz,
int  deflateLevel,
bool  coll_on_data,
bool  coll_on_meta 
)
inline

Definition at line 720 of file Mesh.hpp.

◆ SetPeriodicGeometry()

void DNDS::Geom::UnstructuredMesh::SetPeriodicGeometry ( const tPoint translation1,
const tPoint rotationCenter1,
const tPoint eulerAngles1,
const tPoint translation2,
const tPoint rotationCenter2,
const tPoint eulerAngles2,
const tPoint translation3,
const tPoint rotationCenter3,
const tPoint eulerAngles3 
)

Definition at line 457 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ TransformCoords()

template<class TFTrans >
void DNDS::Geom::UnstructuredMesh::TransformCoords ( TFTrans &&  FTrans)
inline

Definition at line 697 of file Mesh.hpp.

Here is the call graph for this function:

◆ WriteSerialize()

void DNDS::Geom::UnstructuredMesh::WriteSerialize ( Serializer::SerializerBaseSSP  serializerP,
const std::string &  name 
)

Definition at line 1932 of file Mesh.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ adjC2CFaceState

MeshAdjState DNDS::Geom::UnstructuredMesh::adjC2CFaceState {Adj_Unknown}

Definition at line 49 of file Mesh.hpp.

◆ adjC2FState

MeshAdjState DNDS::Geom::UnstructuredMesh::adjC2FState {Adj_Unknown}

Definition at line 45 of file Mesh.hpp.

◆ adjFacialState

MeshAdjState DNDS::Geom::UnstructuredMesh::adjFacialState {Adj_Unknown}

Definition at line 43 of file Mesh.hpp.

◆ adjN2CBState

MeshAdjState DNDS::Geom::UnstructuredMesh::adjN2CBState {Adj_Unknown}

Definition at line 47 of file Mesh.hpp.

◆ adjPrimaryState

MeshAdjState DNDS::Geom::UnstructuredMesh::adjPrimaryState {Adj_Unknown}

Definition at line 41 of file Mesh.hpp.

◆ bnd2bndOrig

tAdj1Pair DNDS::Geom::UnstructuredMesh::bnd2bndOrig

Definition at line 63 of file Mesh.hpp.

◆ bnd2cell

tAdj2Pair DNDS::Geom::UnstructuredMesh::bnd2cell

Definition at line 57 of file Mesh.hpp.

◆ bnd2face

tAdj1Pair DNDS::Geom::UnstructuredMesh::bnd2face

Definition at line 98 of file Mesh.hpp.

◆ bnd2faceV

std::vector<index> DNDS::Geom::UnstructuredMesh::bnd2faceV

Definition at line 101 of file Mesh.hpp.

◆ bnd2node

tAdjPair DNDS::Geom::UnstructuredMesh::bnd2node

Definition at line 56 of file Mesh.hpp.

◆ bnd2nodePbi

tPbiPair DNDS::Geom::UnstructuredMesh::bnd2nodePbi

Definition at line 66 of file Mesh.hpp.

◆ bndElemInfo

tElemInfoArrayPair DNDS::Geom::UnstructuredMesh::bndElemInfo

Definition at line 60 of file Mesh.hpp.

◆ cell2cell

tAdjPair DNDS::Geom::UnstructuredMesh::cell2cell

Definition at line 58 of file Mesh.hpp.

◆ cell2cellFace

tAdjPair DNDS::Geom::UnstructuredMesh::cell2cellFace

constructed on demand

Definition at line 124 of file Mesh.hpp.

◆ cell2cellFaceVLocalParts

tLocalMatStruct DNDS::Geom::UnstructuredMesh::cell2cellFaceVLocalParts

for cell local factorization

Definition at line 169 of file Mesh.hpp.

◆ cell2cellOrig

tAdj1Pair DNDS::Geom::UnstructuredMesh::cell2cellOrig

Definition at line 61 of file Mesh.hpp.

◆ cell2face

tAdjPair DNDS::Geom::UnstructuredMesh::cell2face

interpolated

Definition at line 94 of file Mesh.hpp.

◆ cell2node

tAdjPair DNDS::Geom::UnstructuredMesh::cell2node

Definition at line 55 of file Mesh.hpp.

◆ cell2nodePbi

tPbiPair DNDS::Geom::UnstructuredMesh::cell2nodePbi

periodic only, after reader

Definition at line 65 of file Mesh.hpp.

◆ cell2nodePeriodicRecreated

tAdjPair DNDS::Geom::UnstructuredMesh::cell2nodePeriodicRecreated

Definition at line 140 of file Mesh.hpp.

◆ cell2parentCell

std::vector<index> DNDS::Geom::UnstructuredMesh::cell2parentCell

Definition at line 129 of file Mesh.hpp.

◆ cellElemInfo

tElemInfoArrayPair DNDS::Geom::UnstructuredMesh::cellElemInfo

Definition at line 59 of file Mesh.hpp.

◆ coords

tCoordPair DNDS::Geom::UnstructuredMesh::coords

reader

Definition at line 54 of file Mesh.hpp.

◆ coordsElevDisp

tCoordPair DNDS::Geom::UnstructuredMesh::coordsElevDisp

only elevation

Definition at line 153 of file Mesh.hpp.

◆ coordsPeriodicRecreated

tCoordPair DNDS::Geom::UnstructuredMesh::coordsPeriodicRecreated

Definition at line 141 of file Mesh.hpp.

◆ dim

int DNDS::Geom::UnstructuredMesh::dim

Definition at line 38 of file Mesh.hpp.

◆ elevationInfo

struct DNDS::Geom::UnstructuredMesh::ElevationInfo DNDS::Geom::UnstructuredMesh::elevationInfo

◆ elevState

MeshElevationState DNDS::Geom::UnstructuredMesh::elevState = Elevation_Untouched

Definition at line 52 of file Mesh.hpp.

◆ face2bnd

tAdj1Pair DNDS::Geom::UnstructuredMesh::face2bnd

Definition at line 99 of file Mesh.hpp.

◆ face2bndM

std::unordered_map<index, index> DNDS::Geom::UnstructuredMesh::face2bndM

Definition at line 102 of file Mesh.hpp.

◆ face2cell

tAdj2Pair DNDS::Geom::UnstructuredMesh::face2cell

Definition at line 96 of file Mesh.hpp.

◆ face2node

tAdjPair DNDS::Geom::UnstructuredMesh::face2node

Definition at line 95 of file Mesh.hpp.

◆ face2nodePbi

tPbiPair DNDS::Geom::UnstructuredMesh::face2nodePbi

periodic only, after interpolated

Definition at line 104 of file Mesh.hpp.

◆ faceElemInfo

tElemInfoArrayPair DNDS::Geom::UnstructuredMesh::faceElemInfo

Definition at line 97 of file Mesh.hpp.

◆ hdf5OutSetting

struct DNDS::Geom::UnstructuredMesh::HDF5OutSetting DNDS::Geom::UnstructuredMesh::hdf5OutSetting

◆ isPeriodic

bool DNDS::Geom::UnstructuredMesh::isPeriodic {false}

Definition at line 39 of file Mesh.hpp.

◆ localPartitionStarts

std::vector<index> DNDS::Geom::UnstructuredMesh::localPartitionStarts

Definition at line 171 of file Mesh.hpp.

◆ mpi

DNDS::MPIInfo DNDS::Geom::UnstructuredMesh::mpi

Definition at line 37 of file Mesh.hpp.

◆ mRank

MPI_int DNDS::Geom::UnstructuredMesh::mRank {0}

Definition at line 36 of file Mesh.hpp.

◆ nNodeO1

index DNDS::Geom::UnstructuredMesh::nNodeO1 {-1}

Definition at line 51 of file Mesh.hpp.

◆ node2bnd

tAdjPair DNDS::Geom::UnstructuredMesh::node2bnd

Definition at line 84 of file Mesh.hpp.

◆ node2bndNode

std::vector<index> DNDS::Geom::UnstructuredMesh::node2bndNode

Definition at line 128 of file Mesh.hpp.

◆ node2cell

tAdjPair DNDS::Geom::UnstructuredMesh::node2cell

inverse relations

Definition at line 83 of file Mesh.hpp.

◆ node2nodeOrig

tAdj1Pair DNDS::Geom::UnstructuredMesh::node2nodeOrig

Definition at line 62 of file Mesh.hpp.

◆ node2parentNode

std::vector<index> DNDS::Geom::UnstructuredMesh::node2parentNode

parent built

Definition at line 127 of file Mesh.hpp.

◆ nodeRecreated2nodeLocal

std::vector<index> DNDS::Geom::UnstructuredMesh::nodeRecreated2nodeLocal

Definition at line 142 of file Mesh.hpp.

◆ nodeWallDist

tCoordPair DNDS::Geom::UnstructuredMesh::nodeWallDist

wall dist:

Definition at line 174 of file Mesh.hpp.

◆ nTotalMoved

index DNDS::Geom::UnstructuredMesh::nTotalMoved {-1}

Definition at line 154 of file Mesh.hpp.

◆ periodicInfo

Periodicity DNDS::Geom::UnstructuredMesh::periodicInfo

Definition at line 50 of file Mesh.hpp.

◆ vtkCell2node

std::vector<index> DNDS::Geom::UnstructuredMesh::vtkCell2node

Definition at line 134 of file Mesh.hpp.

◆ vtkCell2NodeGlobalSiz

index DNDS::Geom::UnstructuredMesh::vtkCell2NodeGlobalSiz {-1}

Definition at line 137 of file Mesh.hpp.

◆ vtkCell2nodeOffsets

std::vector<index> DNDS::Geom::UnstructuredMesh::vtkCell2nodeOffsets

for parallel out

Definition at line 132 of file Mesh.hpp.

◆ vtkCellOffset

index DNDS::Geom::UnstructuredMesh::vtkCellOffset {-1}

Definition at line 136 of file Mesh.hpp.

◆ vtkCellType

std::vector<uint8_t> DNDS::Geom::UnstructuredMesh::vtkCellType

Definition at line 133 of file Mesh.hpp.

◆ vtkNCellGlobal

index DNDS::Geom::UnstructuredMesh::vtkNCellGlobal {-1}

Definition at line 138 of file Mesh.hpp.

◆ vtkNNodeGlobal

index DNDS::Geom::UnstructuredMesh::vtkNNodeGlobal {-1}

Definition at line 139 of file Mesh.hpp.

◆ vtkNodeOffset

index DNDS::Geom::UnstructuredMesh::vtkNodeOffset {-1}

Definition at line 135 of file Mesh.hpp.


The documentation for this struct was generated from the following files: