21template <
int dim,
int spacedim>
27template <
int dim,
int spacedim>
33 std::vector<Point<spacedim>> points;
36 if (cell->is_locally_owned())
37 points.push_back(cell->center());
44 const auto point_ranks =
61 tria->global_active_cell_index_partitioner().lock());
65 if (cell->is_locally_owned())
std::atomic< unsigned int > counter
A class implementing a repartitioning policy for immersed triangulations.
ImmersedRepartitioner(const Triangulation< spacedim > &tria_background)
Constructor for the ImmersedRepartitioner class.
const MappingQ1< spacedim > mapping
A mapping object for the background triangulation.
virtual LinearAlgebra::distributed::Vector< double > partition(const Triangulation< dim, spacedim > &tria_immersed) const override
Repartition the given immersed triangulation.
const Triangulation< spacedim > & tria_background
A reference to the background triangulation used for repartitioning.
IteratorRange< active_cell_iterator > active_cell_iterators() const
#define Assert(cond, exc)
unsigned int this_mpi_process(const MPI_Comm mpi_communicator)