15#ifndef dealii_grid_construction_utilities_h
16#define dealii_grid_construction_utilities_h
34 template <
typename Number,
typename MemorySpace>
77template <
int structdim>
159 CellData(
const unsigned int n_vertices =
160 ReferenceCells::get_hypercube<structdim>().n_vertices());
173 template <
class Archive>
177 static_assert(structdim > 0,
178 "The class CellData can only be used for structdim>0.");
277template <
int structdim>
278template <
class Archive>
351 template <
class Archive>
386 std::array<types::manifold_id, GeometryInfo<dim>::lines_per_cell>
412 template <
int dim,
int spacedim = dim>
425 template <
class Archive>
573 template <
int dim,
int spacedim = dim>
576 const ::Triangulation<dim, spacedim> &tria,
611 template <
int dim,
int spacedim>
627 template <
int dim,
int spacedim>
696 template <
int dim,
int spacedim = dim>
717 : subdomain_id(
numbers::invalid_subdomain_id)
718 , level_subdomain_id(
numbers::invalid_subdomain_id)
719 , manifold_id(
numbers::flat_manifold_id)
733 template <
class Archive>
739 ar &level_subdomain_id;
742 ar &manifold_line_ids;
744 ar &manifold_quad_ids;
750 template <
int dim,
int spacedim>
754 , smoothing(
Triangulation<dim, spacedim>::MeshSmoothing::none)
759 template <
int dim,
int spacedim>
760 template <
class Archive>
779 if (this->
id != other.id)
781 if (this->subdomain_id !=
other.subdomain_id)
783 if (this->level_subdomain_id !=
other.level_subdomain_id)
785 if (this->manifold_id !=
other.manifold_id)
787 if (dim >= 2 && this->manifold_line_ids !=
other.manifold_line_ids)
789 if (dim >= 3 && this->manifold_quad_ids !=
other.manifold_quad_ids)
791 if (this->boundary_ids !=
other.boundary_ids)
799 template <
int dim,
int spacedim>
809 other.coarse_cell_index_to_coarse_cell_id)
813 if (this->settings !=
other.settings)
815 if (this->smoothing !=
other.smoothing)
std::array< unsigned int, 4 > binary_type
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
Description< dim, spacedim > create_description_from_triangulation(const ::Triangulation< dim, spacedim > &tria, const MPI_Comm comm, const TriangulationDescription::Settings settings=TriangulationDescription::Settings::default_setting, const unsigned int my_rank_in=numbers::invalid_unsigned_int)
Description< dim, spacedim > create_description_from_triangulation_in_groups(const std::function< void(::Triangulation< dim, spacedim > &)> &serial_grid_generator, const std::function< void(::Triangulation< dim, spacedim > &, const MPI_Comm, const unsigned int)> &serial_grid_partitioner, const MPI_Comm comm, const int group_size=1, const typename Triangulation< dim, spacedim >::MeshSmoothing smoothing=::Triangulation< dim, spacedim >::none, const TriangulationDescription::Settings setting=TriangulationDescription::Settings::default_setting)
@ construct_multigrid_hierarchy
static const unsigned int invalid_unsigned_int
const types::manifold_id flat_manifold_id
*braid_SplitCommworld & comm
std::vector< unsigned int > vertices
bool operator==(const CellData< structdim > &other) const
types::manifold_id manifold_id
types::material_id material_id
types::boundary_id boundary_id
void serialize(Archive &ar, const unsigned int version)
std::vector< CellData< 2 > > boundary_quads
bool check_consistency(const unsigned int dim) const
std::vector< CellData< 1 > > boundary_lines
types::subdomain_id subdomain_id
std::array< types::manifold_id, dim==1 ? 1 :GeometryInfo< 3 >::quads_per_cell > manifold_quad_ids
types::manifold_id manifold_id
std::array< types::manifold_id, GeometryInfo< dim >::lines_per_cell > manifold_line_ids
types::subdomain_id level_subdomain_id
void serialize(Archive &ar, const unsigned int)
std::vector< std::pair< unsigned int, types::boundary_id > > boundary_ids
bool operator==(const CellData< dim > &other) const
std::vector< std::vector< CellData< dim > > > cell_infos
Triangulation< dim, spacedim >::MeshSmoothing smoothing
void serialize(Archive &ar, const unsigned int)
std::vector<::CellData< dim > > coarse_cells
bool operator==(const Description< dim, spacedim > &other) const
std::vector< Point< spacedim > > coarse_cell_vertices
std::vector< types::coarse_cell_id > coarse_cell_index_to_coarse_cell_id
std::vector< std::pair< unsigned int, Point< spacedim > > > coarse_cell_vertices
std::vector< types::coarse_cell_id > coarse_cell_index_to_coarse_cell_id
std::vector< std::vector< CellData< dim > > > cell_infos
std::vector<::CellData< dim > > coarse_cells