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);
Describes dimensions of matrix and its blocks on all levels.
Definition: SizesAndBlocks.h:45
~SizesAndBlocks()
Definition: SizesAndBlocks.h:85
int nBlocks
This is the number of blocks in the current block.
Definition: SizesAndBlocks.h:95
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
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
bool is_empty() const
Definition: SizesAndBlocks.h:71
void setup(std::vector< int > const &blockSizesInp)
Definition: SizesAndBlocks.cc:92
int nTotalScalars
Total number of scalars in entire system.
Definition: SizesAndBlocks.h:102
int const & getNScalars() const
Definition: SizesAndBlocks.h:73
SizesAndBlocks()
Default constructor.
Definition: SizesAndBlocks.h:48
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 getNTotalScalars() const
Definition: SizesAndBlocks.h:84
void getBlockSizeVector(std::vector< int > &blockSizesCopy) const
Definition: SizesAndBlocks.cc:87
SizesAndBlocks(std::vector< int > const &blockSizesInp, int const nScalarsInp, int const offsetInp, int const nTotalScalarsInp)
Definition: SizesAndBlocks.h:104
int getOffset() const
Definition: SizesAndBlocks.h:83
int nScalars
Number of scalars in the current block.
Definition: SizesAndBlocks.h:100
int offset
Offset in entire system.
Definition: SizesAndBlocks.h:101
bool operator==(SizesAndBlocks const &other) const
Definition: SizesAndBlocks.cc:56
SizesAndBlocks getSizesAndBlocksForLowerLevel(int const blockNumber) const
Definition: SizesAndBlocks.cc:71
Copyright(c) Emanuel Rubensson 2006.
Definition: allocate.cc:39