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 |