Reference documentation for deal.II version 9.4.1
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
RepartitioningPolicyTools::FirstChildPolicy< dim, spacedim > Class Template Reference

#include <deal.II/distributed/repartitioning_policy_tools.h>

Inheritance diagram for RepartitioningPolicyTools::FirstChildPolicy< dim, spacedim >:
[legend]

Public Member Functions

 FirstChildPolicy (const Triangulation< dim, spacedim > &tria_fine)
 
virtual LinearAlgebra::distributed::Vector< double > partition (const Triangulation< dim, spacedim > &tria_coarse_in) const override
 

Private Attributes

const unsigned int n_coarse_cells
 
const unsigned int n_global_levels
 
IndexSet is_level_partitions
 

Subscriptor functionality

Classes derived from Subscriptor provide a facility to subscribe to this object. This is mostly used by the SmartPointer class.

std::atomic< unsigned intcounter
 
std::map< std::string, unsigned intcounter_map
 
std::vector< std::atomic< bool > * > validity_pointers
 
const std::type_info * object_info
 
void subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
 
void unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
 
unsigned int n_subscriptions () const
 
template<typename StreamType >
void list_subscribers (StreamType &stream) const
 
void list_subscribers () const
 
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 
using map_value_type = decltype(counter_map)::value_type
 
using map_iterator = decltype(counter_map)::iterator
 
static std::mutex mutex
 
static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
 
static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
 
void check_no_subscribers () const noexcept
 

Detailed Description

template<int dim, int spacedim = dim>
class RepartitioningPolicyTools::FirstChildPolicy< dim, spacedim >

A policy that partitions coarse grids based on a base triangulation according to a first-child policy. The triangulation to be partitioned should be able to be obtained by a sequence of (global) coarsening steps.

Definition at line 96 of file repartitioning_policy_tools.h.

Constructor & Destructor Documentation

◆ FirstChildPolicy()

template<int dim, int spacedim>
RepartitioningPolicyTools::FirstChildPolicy< dim, spacedim >::FirstChildPolicy ( const Triangulation< dim, spacedim > &  tria_fine)

Constructor taking the base (fine) triangulation.

Definition at line 109 of file repartitioning_policy_tools.cc.

Member Function Documentation

◆ partition()

template<int dim, int spacedim>
LinearAlgebra::distributed::Vector< double > RepartitioningPolicyTools::FirstChildPolicy< dim, spacedim >::partition ( const Triangulation< dim, spacedim > &  tria_coarse_in) const
overridevirtual

Return a vector of the new owners of the active locally owned and ghost cells.

Implements RepartitioningPolicyTools::Base< dim, spacedim >.

Definition at line 134 of file repartitioning_policy_tools.cc.

Member Data Documentation

◆ n_coarse_cells

template<int dim, int spacedim = dim>
const unsigned int RepartitioningPolicyTools::FirstChildPolicy< dim, spacedim >::n_coarse_cells
private

Number of coarse cells.

Definition at line 112 of file repartitioning_policy_tools.h.

◆ n_global_levels

template<int dim, int spacedim = dim>
const unsigned int RepartitioningPolicyTools::FirstChildPolicy< dim, spacedim >::n_global_levels
private

Number of global levels.

Definition at line 117 of file repartitioning_policy_tools.h.

◆ is_level_partitions

template<int dim, int spacedim = dim>
IndexSet RepartitioningPolicyTools::FirstChildPolicy< dim, spacedim >::is_level_partitions
private

Index set constructed from the triangulation passed to the constructor. It contains all the cells that would be owned by the current process if the levels would be partitioned according to a first-child policy.

Definition at line 124 of file repartitioning_policy_tools.h.


The documentation for this class was generated from the following files: