36 #ifndef MAT_SIZESANDBLOCKS
37 #define MAT_SIZESANDBLOCKS
57 int const nScalarsInp)
105 int const nScalarsInp,
107 int const nTotalScalarsInp)
111 setup(blockSizesInp);
114 void setup(std::vector<int>
const & blockSizesInp);
int whichBlock(int const globalIndex) const
Returns the blocknumber (between 0 and nBlocks-1) that contains elements with the given global index...
Definition: SizesAndBlocks.h:79
SizesAndBlocks getSizesAndBlocksForLowerLevel(int const blockNumber) const
Definition: SizesAndBlocks.cc:71
void getBlockSizeVector(std::vector< int > &blockSizesCopy) const
Definition: SizesAndBlocks.cc:87
int getOffset() const
Definition: SizesAndBlocks.h:83
int getNTotalScalars() const
Definition: SizesAndBlocks.h:84
int nScalars
Number of scalars in the current block.
Definition: SizesAndBlocks.h:100
~SizesAndBlocks()
Definition: SizesAndBlocks.h:85
int offset
Offset in entire system.
Definition: SizesAndBlocks.h:101
Describes dimensions of matrix and its blocks on all levels.
Definition: SizesAndBlocks.h:45
bool operator==(SizesAndBlocks const &other) const
Definition: SizesAndBlocks.cc:56
void setup(std::vector< int > const &blockSizesInp)
Definition: SizesAndBlocks.cc:92
bool is_empty() const
Definition: SizesAndBlocks.h:71
int const & getNScalars() const
Definition: SizesAndBlocks.h:73
std::vector< int > blockSizes
This is the number of scalars in each block, (not the number of blocks in each block) for each level ...
Definition: SizesAndBlocks.h:87
int nBlocks
This is the number of blocks in the current block.
Definition: SizesAndBlocks.h:95
int nTotalScalars
Total number of scalars in entire system.
Definition: SizesAndBlocks.h:102
SizesAndBlocks(std::vector< int > const &blockSizesInp, int const nScalarsInp, int const offsetInp, int const nTotalScalarsInp)
Definition: SizesAndBlocks.h:104
SizesAndBlocks()
Default constructor.
Definition: SizesAndBlocks.h:48
Copyright(c) Emanuel Rubensson 2006.
int const & getNBlocks() const
Definition: SizesAndBlocks.h:72
SizesAndBlocks(std::vector< int > const &blockSizesInp, int const nScalarsInp)
Constructor used for explicit calls.
Definition: SizesAndBlocks.h:56