Implements coarsening, e.g. agglomeration of blocked matrices into dense or low-rank matrices if the later use less memory.
#include <TCoarsen.hh>
Protected Member Functions |
size_t | byte_size (const TMatrix *A) const |
| return "corrected" bytesizes, e.g. in symmetric case, of matrices for internal use
|
Protected Attributes |
bool | _recompress_lr |
| recompress low-rank blocks if true
|
size_t | _max_block_size |
| maximal size of block-matrices, still worth to try coarsening
|
size_t | _max_dense_size |
| maximal size of dense matrices, still worth to try coarsening
|
bool | _only_offdiag_lr |
| do not convert diagonal blocks to low-rank if true
|
Member Function Documentation
coarsen matrix A without recursion, e.g. coarsening of subblocks.
- Parameters
-
A | matrix to coarsen |
acc | accuracy to mantain during coarsening |
coarsen matrix A with recursion, e.g. first try to coarsen subblocks.
- Parameters
-
nprocs | number of threads to use |
A | matrix to coarsen |
acc | accuracy to mantain during coarsening |
progress | progress bar |