SIRIUS 7.5.0
Electronic structure library and applications
|
Inherits sirius::splindex< basic_index_t< int > >.
Public Types | |
using | value_type = typename splindex< Index_t >::value_type |
Public Types inherited from sirius::splindex< basic_index_t< int > > | |
using | value_type = typename Index_t::value_type |
Public Member Functions | |
splindex_block_cyclic (value_type size__, n_blocks n_blocks__, block_id block_id__, value_type block_size__) | |
Constructor. More... | |
value_type | local_size (block_id block_id__) const |
Return local size of the split index for a given block. More... | |
splindex< Index_t >::location_t | location (typename Index_t::global idx__) const |
Return "local index, rank" pair for a global index. More... | |
Index_t::global | global_index (typename Index_t::local idxloc__, block_id block_id__) const |
Return global index of an element by local index and block id. More... | |
Public Member Functions inherited from sirius::splindex< basic_index_t< int > > | |
splindex () | |
Default constructor. More... | |
splindex (value_type size__, n_blocks n_blocks__, block_id block_id__) | |
Constructor. More... | |
virtual value_type | local_size (block_id block_id__) const=0 |
Return local size of the split index for a given block. More... | |
value_type | local_size () const |
Return local size for the current block. More... | |
virtual location_t | location (typename Index_t::global idx__) const=0 |
Return location (block_id and local offset) of the global index. More... | |
virtual Index_t::global | global_index (typename Index_t::local idxloc__, block_id block_id__) const=0 |
Return global index by block id and local index. More... | |
auto | global_index (typename splindex< basic_index_t< int > >::location_t loc__) const |
Return global index of an element by local index and block id. More... | |
auto | global_index (typename Index_t::local idxloc__) const |
auto | size () const noexcept |
Return total length of the index (global number of elements). More... | |
Private Attributes | |
value_type | block_size_ |
Cyclic block size. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from sirius::splindex< basic_index_t< int > > | |
static auto | block_size (value_type size__, n_blocks n_blocks__) |
Compute size of the block from global index size and number of blocks. More... | |
Protected Attributes inherited from sirius::splindex< basic_index_t< int > > | |
n_blocks | n_blocks_ |
Number of blocks over which the global index is distributed. More... | |
block_id | block_id_ |
Index of the block with local fraction of the global index. More... | |
value_type | size_ |
Size (aka length) of the global index. More... | |
Definition at line 366 of file splindex.hpp.
using sirius::splindex_block_cyclic< Index_t >::value_type = typename splindex<Index_t>::value_type |
Definition at line 369 of file splindex.hpp.
|
inline |
Definition at line 374 of file splindex.hpp.
|
inline |
Constructor.
Definition at line 378 of file splindex.hpp.
|
inlinevirtual |
Return local size of the split index for a given block.
Implements sirius::splindex< basic_index_t< int > >.
Definition at line 387 of file splindex.hpp.
|
inlinevirtual |
Return "local index, rank" pair for a global index.
Implements sirius::splindex< basic_index_t< int > >.
Definition at line 409 of file splindex.hpp.
|
inlinevirtual |
Return global index of an element by local index and block id.
Implements sirius::splindex< basic_index_t< int > >.
Definition at line 428 of file splindex.hpp.
|
private |
Cyclic block size.
Definition at line 372 of file splindex.hpp.