ECOGEN 6.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
Decomposition & operator= (const Decomposition &) &=default
Decomposition & operator= (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_type > initialize (int nProcs, int _rank, int resumeSimulation) 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, Dim > nCells_global_
std::map< key_type, int > key_rank_map_

Member Typedef Documentation

◆ key_type

Constructor & Destructor Documentation

◆ Decomposition() [1/4]

decomposition::Decomposition::Decomposition ( )
default
Here is the caller graph for this function:

◆ Decomposition() [2/4]

decomposition::Decomposition::Decomposition ( const Decomposition & )
default
Here is the call graph for this function:

◆ Decomposition() [3/4]

decomposition::Decomposition::Decomposition ( Decomposition && )
default
Here is the call graph for this function:

◆ ~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
Here is the call graph for this function:

◆ 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 resumeSimulation )
inlinenoexcept
Here is the call graph for this function:

◆ 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
Here is the caller graph for this function:

◆ operator=() [1/2]

Decomposition & decomposition::Decomposition::operator= ( const Decomposition & ) &
default
Here is the call graph for this function:

◆ operator=() [2/2]

Decomposition & decomposition::Decomposition::operator= ( Decomposition && ) &
default
Here is the call graph for this function:

◆ 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

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: