FEAT 3
Finite Element Analysis Toolbox
Loading...
Searching...
No Matches
FEAT::Geometry::Partition Class Reference

Partition class. More...

#include <partition_set.hpp>

Public Member Functions

 Partition ()
 default construcotr More...
 
 Partition (Adjacency::Graph &&graph_, const String &name_, int prio_=0, int level_=0)
 Constructor. More...
 
 Partition (const Adjacency::DynamicGraph &graph_, const String &name_, int prio_=0, int level_=0)
 Constructor. More...
 
 Partition (Partition &&other)
 move constructor More...
 
virtual ~Partition ()
 destructor More...
 
int get_level () const
 
String get_name () const
 
Index get_num_elements () const
 
Index get_num_patches () const
 
const Adjacency::Graphget_patches () const
 
int get_priority () const
 
Partitionoperator= (Partition &&other)
 move-assign operator More...
 
void permute (const Adjacency::Permutation &inv_perm)
 Permutes the element indices. More...
 
Index size () const
 

Protected Attributes

int _level
 the level that this partitioning refers to More...
 
String _name
 the name of this partitioning More...
 
Adjacency::Graph _patches
 our actual partitioning More...
 
int _prio
 the priority for automatic choice More...
 

Detailed Description

Partition class.

This class represents a (manual) partitioning of a mesh, which consists of an adjacency graph storing the elements for each rank as well as a few additional entities as the name, the priority and the overlap.

Author
Peter Zajac

Definition at line 29 of file partition_set.hpp.

Constructor & Destructor Documentation

◆ Partition() [1/4]

FEAT::Geometry::Partition::Partition ( )
inline

default construcotr

Definition at line 44 of file partition_set.hpp.

◆ Partition() [2/4]

FEAT::Geometry::Partition::Partition ( Adjacency::Graph &&  graph_,
const String name_,
int  prio_ = 0,
int  level_ = 0 
)
inlineexplicit

Constructor.

Parameters
[in]graph_The elements-at-rank graph defining the partition.
[in]name_The name of the partition. May be an empty string
[in]prio_The priority of the partition.
[in]level_The refinement level that the partition is defined on.

Definition at line 65 of file partition_set.hpp.

◆ Partition() [3/4]

FEAT::Geometry::Partition::Partition ( const Adjacency::DynamicGraph graph_,
const String name_,
int  prio_ = 0,
int  level_ = 0 
)
inlineexplicit

Constructor.

Parameters
[in]graph_The elements-at-rank graph defining the partition.
[in]name_The name of the partition. May be an empty string
[in]prio_The priority of the partition.
[in]level_The refinement level that the partition is defined on.

Definition at line 89 of file partition_set.hpp.

◆ Partition() [4/4]

FEAT::Geometry::Partition::Partition ( Partition &&  other)
inline

move constructor

Definition at line 98 of file partition_set.hpp.

◆ ~Partition()

virtual FEAT::Geometry::Partition::~Partition ( )
inlinevirtual

destructor

Definition at line 119 of file partition_set.hpp.

Member Function Documentation

◆ get_level()

int FEAT::Geometry::Partition::get_level ( ) const
inline

◆ get_name()

◆ get_num_elements()

Index FEAT::Geometry::Partition::get_num_elements ( ) const
inline

◆ get_num_patches()

Index FEAT::Geometry::Partition::get_num_patches ( ) const
inline

◆ get_patches()

◆ get_priority()

int FEAT::Geometry::Partition::get_priority ( ) const
inline

◆ operator=()

Partition & FEAT::Geometry::Partition::operator= ( Partition &&  other)
inline

move-assign operator

Definition at line 107 of file partition_set.hpp.

References _level, _name, _patches, _prio, and FEAT::Geometry::other.

◆ permute()

void FEAT::Geometry::Partition::permute ( const Adjacency::Permutation inv_perm)
inline

Permutes the element indices.

Parameters
[in]inv_permThe inverse element permutation to be applied.

Definition at line 171 of file partition_set.hpp.

References _patches, and FEAT::Adjacency::Graph::permute_indices().

◆ size()

Index FEAT::Geometry::Partition::size ( ) const
inline
Returns
the number of ranks/patches in the partition.

Definition at line 124 of file partition_set.hpp.

References _patches.

Member Data Documentation

◆ _level

int FEAT::Geometry::Partition::_level
protected

the level that this partitioning refers to

Definition at line 37 of file partition_set.hpp.

Referenced by get_level(), and operator=().

◆ _name

String FEAT::Geometry::Partition::_name
protected

the name of this partitioning

Definition at line 33 of file partition_set.hpp.

Referenced by get_name(), and operator=().

◆ _patches

Adjacency::Graph FEAT::Geometry::Partition::_patches
protected

our actual partitioning

Definition at line 40 of file partition_set.hpp.

Referenced by get_num_elements(), get_num_patches(), get_patches(), operator=(), permute(), and size().

◆ _prio

int FEAT::Geometry::Partition::_prio
protected

the priority for automatic choice

Definition at line 35 of file partition_set.hpp.

Referenced by get_priority(), and operator=().


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