13#include "Ioss_Region.h"
30 std::map<std::string, std::vector<int64_t>>
m_faces;
35 for (
const auto &faces :
m_faces) {
36 count += faces.second.size();
45 explicit UnitCell(std::shared_ptr<Ioss::Region> region);
55 std::vector<int>
categorize_nodes(
bool neighbor_i,
bool neighbor_j,
bool all_faces =
false)
const;
57 std::shared_ptr<Ioss::Region>
m_region{
nullptr};
103using UnitCellMap = std::map<std::string, std::shared_ptr<UnitCell>>;
Bnd
Definition UnitCell.h:17
std::map< std::string, std::shared_ptr< UnitCell > > UnitCellMap
Definition UnitCell.h:103
Flg
Definition UnitCell.h:18
std::array< GeneratedSideBlock, 6 > boundary_blocks
Definition UnitCell.h:87
UnitCell(const UnitCell &)=delete
std::vector< int64_t > max_I_face
Definition UnitCell.h:69
std::vector< int64_t > max_J_face
Definition UnitCell.h:71
size_t cell_KK
Definition UnitCell.h:99
size_t cell_JJ
Definition UnitCell.h:98
std::vector< int > categorize_nodes(bool neighbor_i, bool neighbor_j, bool all_faces=false) const
Definition UnitCell.C:197
std::pair< double, double > minmax_y
Definition UnitCell.h:79
std::pair< double, double > minmax_x
Definition UnitCell.h:78
std::vector< int64_t > min_J_face
Definition UnitCell.h:70
void categorize_z_nodes(std::vector< int > &categorized_nodes)
Used by generate_boundary_faces() to categorize nodes on the +/- Z faces of unit cell.
Definition UnitCell.C:232
std::shared_ptr< Ioss::Region > m_region
Definition UnitCell.h:57
void generate_boundary_faces(unsigned int which_faces)
Definition UnitCell.C:254
std::vector< int64_t > min_I_face
Definition UnitCell.h:68
size_t cell_II
Definition UnitCell.h:97
size_t size() const
Definition UnitCell.h:32
GeneratedSideBlock()=default
GeneratedSideBlock(const GeneratedSideBlock &)=delete
std::map< std::string, std::vector< int64_t > > m_faces
Definition UnitCell.h:30