56 using EntityIdSet = std::set<std::pair<int64_t, int64_t>>;
58 using SideSetMap = std::map<std::string, const std::string, std::less<const std::string>>;
62 bool operator()(
const std::pair<std::string, const Ioss::ElementTopology *> &lhs,
63 const std::pair<std::string, const Ioss::ElementTopology *> &rhs)
const 65 assert(lhs.second !=
nullptr);
66 assert(rhs.second !=
nullptr);
67 return lhs.first < rhs.first ||
68 (!(rhs.first < lhs.first) && lhs.second->name() < rhs.second->name());
81 bool type_match(
const std::string &type,
const char *substring);
82 int64_t
extract_id(
const std::string &name_id);
86 const std::string &
name);
89 void exodus_error(
int exoid,
int lineno,
const char *
function,
const char *filename,
90 const std::string &extra = {});
99 std::string *disp_name);
101 std::string
get_entity_name(
int exoid, ex_entity_type type, int64_t
id,
102 const std::string &basename,
int length,
bool &db_has_name);
108 const std::vector<unsigned char> &node_connectivity_status);
110 template <
typename T>
112 const std::vector<int64_t> &active_node_index)
114 for (
size_t i = 0; i < active_node_index.size(); i++) {
115 data[i] = dbvals[active_node_index[i]];
126 const std::string & surface_name);
std::vector< std::string > NameList
Definition: Ioss_CodeTypes.h:44
bool find_displacement_field(Ioss::NameList &fields, const Ioss::GroupingEntity *block, int ndim, std::string *disp_name)
Definition: Ioex_Utils.C:382
bool operator()(const std::pair< std::string, const Ioss::ElementTopology *> &lhs, const std::pair< std::string, const Ioss::ElementTopology *> &rhs) const
Definition: Ioex_Utils.h:62
std::map< std::string, const std::string, std::less< const std::string > > SideSetMap
Definition: Ioex_Utils.h:58
int64_t extract_id(const std::string &name_id)
Definition: Ioex_Utils.C:300
The main namespace for the Ioss library.
Definition: Iocgns_DatabaseIO.h:50
std::vector< CoordinateFrame > CoordinateFrameContainer
Definition: Ioex_Utils.h:52
int64_t get_id(const Ioss::GroupingEntity *entity, ex_entity_type type, Ioex::EntityIdSet *idset)
Definition: Ioex_Utils.C:319
Base class for all 'grouping' entities. The following derived classes are typical: ...
Definition: Ioss_GroupingEntity.h:93
void filter_node_list(T *data, std::vector< T > &dbvals, const std::vector< int64_t > &active_node_index)
Definition: Ioex_Utils.h:111
void separate_surface_element_sides(Ioss::Int64Vector &element, Ioss::Int64Vector &sides, Ioss::Region *region, Ioex::TopologyMap &topo_map, Ioex::TopologyMap &side_map, Ioss::SurfaceSplitType split_type, const std::string &surface_name)
Definition: Ioex_Utils.C:609
bool type_match(const std::string &type, const char *substring)
Definition: Ioex_Utils.C:216
void write_coordinate_frames(int exoid, const Ioss::CoordinateFrameContainer &frames)
Definition: Ioex_Utils.C:526
int add_map_fields(int exoid, Ioss::ElementBlock *block, int64_t my_element_count, size_t name_length)
Definition: Ioex_Utils.C:492
std::set< std::pair< int64_t, int64_t > > EntityIdSet
Definition: Ioex_DatabaseIO.h:94
std::string get_entity_name(int exoid, ex_entity_type type, int64_t id, const std::string &basename, int length, bool &db_has_name)
Definition: Ioex_Utils.C:431
A collection of elements having the same topology.
Definition: Ioss_ElementBlock.h:48
std::map< std::pair< std::string, const Ioss::ElementTopology * >, int, TopologyMapCompare > TopologyMap
Definition: Ioex_Utils.h:73
bool set_id(const Ioss::GroupingEntity *entity, ex_entity_type type, Ioex::EntityIdSet *idset)
Definition: Ioex_Utils.C:271
void fix_bad_name(char *name)
Definition: Ioex_Utils.C:415
const char * Version()
Definition: Iodw_DatabaseIO.C:66
A namespace for the exodus database format.
Definition: Ioex_IOFactory.C:61
void filter_element_list(Ioss::Region *region, Ioss::Int64Vector &elements, Ioss::Int64Vector &sides, bool remove_omitted_elements)
Definition: Ioex_Utils.C:572
std::vector< int64_t > Int64Vector
Definition: Ioss_CodeTypes.h:43
void add_coordinate_frames(int exoid, Ioss::Region *region)
Definition: Ioex_Utils.C:536
A grouping entity that contains other grouping entities.
Definition: Ioss_Region.h:98
SurfaceSplitType
Method used to split sidesets into homogenous blocks.
Definition: Ioss_SurfaceSplit.h:38
bool check_processor_info(int exodusFilePtr, int processor_count, int processor_id)
Definition: Ioex_Utils.C:169
std::string name(Ioss::GroupingEntity *entity)
Definition: io_info.C:71
void exodus_error(int exoid, int lineno, const char *function, const char *filename, const std::string &extra)
Definition: Ioex_Utils.C:469
Definition: Ioex_Utils.h:60
std::set< std::string > SideSetSet
Definition: Ioex_Utils.h:57
void decode_surface_name(Ioex::SideSetMap &fs_map, Ioex::SideSetSet &fs_set, const std::string &name)
Definition: Ioex_Utils.C:233
bool read_last_time_attribute(int exodusFilePtr, double *value)
Definition: Ioex_Utils.C:138
std::vector< char > data
Definition: Ioss_Utils.C:78
void update_last_time_attribute(int exodusFilePtr, double value)
Definition: Ioex_Utils.C:119