21#include "iogn_export.h"
43 throw std::exception();
70 ExodusData(std::vector<double> coords, std::vector<std::vector<int>> elemBlockConnectivity,
71 std::vector<int> globalNumOfElemsInBlock, std::vector<int> localNumOfElemsInBlock,
72 std::vector<Topology> blockTopoData,
int globalNumNodes,
73 std::vector<int> globalIdsOfLocalElems, std::vector<int> globalIdsLocalNodes,
74 std::vector<std::vector<int>> sidesetConn = std::vector<std::vector<int>>(),
75 std::vector<Ioss::NameList> sidesetBlocks = std::vector<Ioss::NameList>())
107 std::vector<int> connectivity2)
147 IOSS_NODISCARD int64_t element_count(int64_t surfaceNumber)
const override;
149 IOSS_NODISCARD int64_t element_count_proc(int64_t block_number)
const override;
154 IOSS_NODISCARD int64_t nodeset_node_count_proc(int64_t
id)
const override;
157 IOSS_NODISCARD int64_t sideset_side_count_proc(int64_t
id)
const override;
159 IOSS_NODISCARD int64_t communication_node_count_proc()
const override;
161 void coordinates(
double *coord)
const override;
162 void coordinates(std::vector<double> &coord)
const override;
163 void coordinates(
int component, std::vector<double> &xyz)
const override;
164 void coordinates(
int component,
double *xyz)
const override;
165 void coordinates(std::vector<double> &x, std::vector<double> &y,
166 std::vector<double> &z)
const override;
168 void connectivity(int64_t block_number,
int *connect)
const override;
170 IOSS_NODISCARD std::pair<std::string, int> topology_type(int64_t block_number)
const override;
172 void sideset_elem_sides(int64_t setId, std::vector<int64_t> &elem_sides)
const override;
174 void nodeset_nodes(int64_t nset_id, std::vector<int64_t> &nodes)
const override;
176 void node_communication_map(std::vector<int64_t> &map, std::vector<int> &proc)
override;
178 void node_map(std::vector<int> &map)
const override;
179 void node_map(std::vector<int64_t> &map)
const override;
181 void element_map(int64_t block_number, std::vector<int> &map)
const override;
182 void element_map(int64_t block_number, std::vector<int64_t> &map)
const override;
183 void element_map(std::vector<int64_t> &map)
const override;
184 void element_map(std::vector<int> &map)
const override;
187 std::string get_sideset_topology()
const override;
216 void coordinates(std::vector<double> &coord)
const override;
217 void coordinates(
int component, std::vector<double> &xyz)
const override;
218 void coordinates(
int component,
double *xyz)
const override;
219 void coordinates(std::vector<double> &x, std::vector<double> &y,
220 std::vector<double> &z)
const override;
222 void connectivity(int64_t blockNumber,
int *connectivityForBlock)
const override;
226 void sideset_elem_sides(int64_t setId, std::vector<int64_t> &elem_sides)
const override;
230 void nodeset_nodes(int64_t nset_id, std::vector<int64_t> &nodes)
const override;
234 void node_map(std::vector<int> &map)
const override;
235 void node_map(std::vector<int64_t> &map)
const override;
237 void element_map(int64_t blockNumber, std::vector<int> &map)
const override;
238 void element_map(int64_t blockNumber, std::vector<int64_t> &map)
const override;
239 void element_map(std::vector<int64_t> &map)
const override;
240 void element_map(std::vector<int> &map)
const override;
#define IOSS_NODISCARD
Definition Ioss_CodeTypes.h:55
DashSurfaceMesh(DashSurfaceData &dashSurfaceData)
Definition Iogn_DashSurfaceMesh.h:139
DashSurfaceData mDashSurfaceData
Definition Iogn_DashSurfaceMesh.h:189
void element_map(int64_t blockNumber, std::vector< int > &map) const override
Definition Iogn_DashSurfaceMesh.C:388
ExodusMesh(const ExodusData &exodusData)
Definition Iogn_DashSurfaceMesh.C:237
void nodeset_nodes(int64_t nset_id, std::vector< int64_t > &nodes) const override
Definition Iogn_DashSurfaceMesh.C:358
Ioss::NameList sideset_touching_blocks(int64_t setId) const override
Definition Iogn_DashSurfaceMesh.C:353
int64_t mLocalNumberOfElements
Definition Iogn_DashSurfaceMesh.h:246
IOSS_NODISCARD int64_t nodeset_node_count_proc(int64_t id) const override
Definition Iogn_DashSurfaceMesh.C:292
int64_t mGlobalNumberOfElements
Definition Iogn_DashSurfaceMesh.h:245
IOSS_NODISCARD int64_t node_count() const override
Definition Iogn_DashSurfaceMesh.C:259
IOSS_NODISCARD int64_t element_count() const override
Definition Iogn_DashSurfaceMesh.C:266
void node_map(std::vector< int > &map) const override
Definition Iogn_DashSurfaceMesh.C:368
std::string get_sideset_topology() const override
Definition Iogn_DashSurfaceMesh.C:341
IOSS_NODISCARD int64_t sideset_side_count_proc(int64_t id) const override
Definition Iogn_DashSurfaceMesh.C:294
IOSS_NODISCARD int64_t node_count_proc() const override
Definition Iogn_DashSurfaceMesh.C:261
IOSS_NODISCARD int64_t element_count_proc() const override
Definition Iogn_DashSurfaceMesh.C:285
IOSS_NODISCARD int block_count() const override
Definition Iogn_DashSurfaceMesh.C:273
std::vector< int64_t > mElementOffsetForBlock
Definition Iogn_DashSurfaceMesh.h:249
void node_communication_map(std::vector< int64_t > &map, std::vector< int > &proc) override
Definition Iogn_DashSurfaceMesh.C:360
const ExodusData & mExodusData
Definition Iogn_DashSurfaceMesh.h:248
IOSS_NODISCARD std::pair< std::string, int > topology_type(int64_t blockNumber) const override
Definition Iogn_DashSurfaceMesh.C:335
void connectivity(int64_t blockNumber, int *connectivityForBlock) const override
Definition Iogn_DashSurfaceMesh.C:327
IOSS_NODISCARD int sideset_count() const override
Definition Iogn_DashSurfaceMesh.C:280
IOSS_NODISCARD int nodeset_count() const override
Definition Iogn_DashSurfaceMesh.C:278
void coordinates(double *coord) const override
Definition Iogn_DashSurfaceMesh.C:304
void sideset_elem_sides(int64_t setId, std::vector< int64_t > &elem_sides) const override
Definition Iogn_DashSurfaceMesh.C:343
IOSS_NODISCARD int64_t communication_node_count_proc() const override
Definition Iogn_DashSurfaceMesh.C:299
GeneratedMesh(const std::string ¶meters, int proc_count=1, int my_proc=0)
Definition Iogn_GeneratedMesh.C:59
static const char * name
Definition Ioss_Beam2.h:19
static const char * name
Definition Ioss_Hex8.h:19
static const char * name
Definition Ioss_Shell4.h:19
A namespace for the generated database format.
Definition Iogn_DashSurfaceMesh.C:12
Topology
Definition Iogn_DashSurfaceMesh.h:34
@ Hex8
Definition Iogn_DashSurfaceMesh.h:34
@ Beam2
Definition Iogn_DashSurfaceMesh.h:34
@ Shell4
Definition Iogn_DashSurfaceMesh.h:34
@ NUMBER_OF_SURFACES
Definition Iogn_DashSurfaceMesh.h:25
@ NUM_NODES_PER_QUAD_FACE
Definition Iogn_DashSurfaceMesh.h:25
@ SPATIAL_DIMENSION
Definition Iogn_DashSurfaceMesh.h:25
@ INVALID
Definition Iogn_DashSurfaceMesh.h:25
IOSS_NODISCARD std::string getTopologyName(Topology topology)
Definition Iogn_DashSurfaceMesh.h:36
Ioss::NameList NameList
Definition Ioss_ChangeSetFactory.h:25
Definition Iogn_DashSurfaceMesh.h:90
std::vector< int > globalIdsOfLocalElements
Definition Iogn_DashSurfaceMesh.h:101
DashSurfaceData(std::vector< double > coords, std::vector< int > connectivity1, std::vector< int > connectivity2)
Definition Iogn_DashSurfaceMesh.h:106
int globalNumberOfElementsSurface2
Definition Iogn_DashSurfaceMesh.h:99
int globalNumberOfElements
Definition Iogn_DashSurfaceMesh.h:96
int globalNumberOfNodes
Definition Iogn_DashSurfaceMesh.h:95
void setSerialDefaults()
Definition Iogn_DashSurfaceMesh.h:115
const std::vector< int > surfaceBConnectivity
Definition Iogn_DashSurfaceMesh.h:93
const std::vector< double > coordinates
Definition Iogn_DashSurfaceMesh.h:91
std::vector< SharedNode > sharedNodes
Definition Iogn_DashSurfaceMesh.h:104
const std::vector< int > surfaceAConnectivity
Definition Iogn_DashSurfaceMesh.h:92
std::vector< int > globalIdsOfLocalNodes
Definition Iogn_DashSurfaceMesh.h:102
int globalNumberOfElementsSurface1
Definition Iogn_DashSurfaceMesh.h:98
Definition Iogn_DashSurfaceMesh.h:47
std::vector< Ioss::NameList > sidesetTouchingBlocks
Definition Iogn_DashSurfaceMesh.h:67
std::vector< SharedNode > sharedNodes
Definition Iogn_DashSurfaceMesh.h:59
const std::vector< int > globalIdsOfLocalElements
Definition Iogn_DashSurfaceMesh.h:56
std::vector< std::vector< int > > sidesetConnectivity
Definition Iogn_DashSurfaceMesh.h:66
ExodusData(std::vector< double > coords, std::vector< std::vector< int > > elemBlockConnectivity, std::vector< int > globalNumOfElemsInBlock, std::vector< int > localNumOfElemsInBlock, std::vector< Topology > blockTopoData, int globalNumNodes, std::vector< int > globalIdsOfLocalElems, std::vector< int > globalIdsLocalNodes, std::vector< std::vector< int > > sidesetConn=std::vector< std::vector< int > >(), std::vector< Ioss::NameList > sidesetBlocks=std::vector< Ioss::NameList >())
Definition Iogn_DashSurfaceMesh.h:70
const std::vector< int > globalNumberOfElementsInBlock
Definition Iogn_DashSurfaceMesh.h:50
std::vector< double > coordinates
Definition Iogn_DashSurfaceMesh.h:48
const int globalNumberOfNodes
Definition Iogn_DashSurfaceMesh.h:54
const std::vector< Topology > blockTopologicalData
Definition Iogn_DashSurfaceMesh.h:52
const std::vector< int > localNumberOfElementsInBlock
Definition Iogn_DashSurfaceMesh.h:51
const std::vector< int > globalIdsOfLocalNodes
Definition Iogn_DashSurfaceMesh.h:57
const std::vector< std::vector< int > > elementBlockConnectivity
Definition Iogn_DashSurfaceMesh.h:49
int procId
Definition Iogn_DashSurfaceMesh.h:31
int nodeId
Definition Iogn_DashSurfaceMesh.h:30