ECOGEN 4.0
Evolutive, Compressible, Open, Genuine, Easy, N-phase
Loading...
Searching...
No Matches
decomposition::Decomposition Class Reference

#include <decomposition.hpp>

Public Types

using key_type = Key< Dim >
 

Public Member Functions

 Decomposition ()=default
 
 Decomposition (const Decomposition &)=default
 
 Decomposition (Decomposition &&)=default
 
Decompositionoperator= (const Decomposition &) &=default
 
Decompositionoperator= (Decomposition &&) &=default
 
 ~Decomposition ()=default
 
 Decomposition (std::array< int, Dim > _nCells)
 
void printDomainDecomposition (std::ofstream &fileStream) const noexcept
 
void readDomainDecomposition (std::ifstream &fileStream) noexcept
 
void updatePhysicalDomainSizes (std::array< int, Dim > _nCells) noexcept
 
std::vector< key_typeinitialize (int nProcs, int _rank, int restartSimulation) noexcept
 
bool areConsecutive (key_type _key0, key_type _key1)
 
int get_rank (const key_type &_key)
 
bool is_valid (const key_type &_key) const noexcept
 
template<class Coord >
bool is_inside (const Coord &_coord)
 
void recombineStarts ()
 
void communicateMaps (int _nCpu, std::vector< typename key_type::value_type > &localKeys, std::vector< int > &localRanks)
 

Static Public Attributes

static constexpr int Dim =3
 

Private Attributes

std::array< int, DimnCells_global_
 
std::map< key_type, int > key_rank_map_
 

Member Typedef Documentation

◆ key_type

Constructor & Destructor Documentation

◆ Decomposition() [1/4]

decomposition::Decomposition::Decomposition ( )
default

◆ Decomposition() [2/4]

decomposition::Decomposition::Decomposition ( const Decomposition )
default

◆ Decomposition() [3/4]

decomposition::Decomposition::Decomposition ( Decomposition &&  )
default

◆ ~Decomposition()

decomposition::Decomposition::~Decomposition ( )
default

◆ Decomposition() [4/4]

decomposition::Decomposition::Decomposition ( std::array< int, Dim _nCells)
inline

Member Function Documentation

◆ areConsecutive()

bool decomposition::Decomposition::areConsecutive ( key_type  _key0,
key_type  _key1 
)
inline

◆ communicateMaps()

void decomposition::Decomposition::communicateMaps ( int  _nCpu,
std::vector< typename key_type::value_type > &  localKeys,
std::vector< int > &  localRanks 
)
inline

◆ get_rank()

int decomposition::Decomposition::get_rank ( const key_type _key)
inline

◆ initialize()

std::vector< key_type > decomposition::Decomposition::initialize ( int  nProcs,
int  _rank,
int  restartSimulation 
)
inlinenoexcept

◆ is_inside()

template<class Coord >
bool decomposition::Decomposition::is_inside ( const Coord _coord)
inline

◆ is_valid()

bool decomposition::Decomposition::is_valid ( const key_type _key) const
inlinenoexcept

◆ operator=() [1/2]

Decomposition & decomposition::Decomposition::operator= ( const Decomposition ) &
default

◆ operator=() [2/2]

Decomposition & decomposition::Decomposition::operator= ( Decomposition &&  ) &
default

◆ printDomainDecomposition()

void decomposition::Decomposition::printDomainDecomposition ( std::ofstream &  fileStream) const
inlinenoexcept

◆ readDomainDecomposition()

void decomposition::Decomposition::readDomainDecomposition ( std::ifstream &  fileStream)
inlinenoexcept

◆ recombineStarts()

void decomposition::Decomposition::recombineStarts ( )
inline

◆ updatePhysicalDomainSizes()

void decomposition::Decomposition::updatePhysicalDomainSizes ( std::array< int, Dim _nCells)
inlinenoexcept

Member Data Documentation

◆ Dim

constexpr int decomposition::Decomposition::Dim =3
staticconstexpr

◆ key_rank_map_

std::map<key_type, int> decomposition::Decomposition::key_rank_map_
private

◆ nCells_global_

std::array<int,Dim> decomposition::Decomposition::nCells_global_
private

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