Base class for building matrices implementing basic management and parallel construction.
#include <TMatBuilder.hh>
|
| TMatBuilder (const bool coarsening=CFG::Arith::coarsen_build) |
|
void | set_coarsening (const bool b) |
| (de-) activate coarsening with standard accuracy (default: off)
|
|
void | set_coarsening (const TTruncAcc &acc) |
| activate coarsening with accuracy acc
|
|
void | set_build_ghosts (const bool b) |
|
virtual std::unique_ptr< TMatrix > | build (const TBlockClusterTree *bct, const TTruncAcc &acc, TProgressBar *progress=nullptr) const |
| build the H-matrix with block-wise accuracy defined by acc
|
|
virtual std::unique_ptr< TMatrix > | build (const TBlockCluster *bc, const TTruncAcc &acc, TProgressBar *progress=nullptr) const |
|
virtual std::unique_ptr< TMatrix > | build (const TBlockClusterTree *cluster, const matform_t matformat, const TTruncAcc &acc, TProgressBar *progress=nullptr) const |
| same as More...
|
|
virtual std::unique_ptr< TMatrix > | build (const TBlockCluster *cluster, const matform_t matformat, const TTruncAcc &acc, TProgressBar *progress=nullptr) const |
| same as More...
|
|
virtual std::unique_ptr< TBlockMatrix > | build_blocked (const TBlockCluster *bc) const |
| build blocked matrix
|
|
virtual std::unique_ptr< TMatrix > | build_leaf (const TBlockCluster *bc, const matform_t matformat, const TTruncAcc &acc) const =0 |
| build matrix corresponding to leaves in the block cluster tree
|
|
virtual std::unique_ptr< TMatrix > | build_ghost (const TBlockCluster *bc) const =0 |
| build placeholder matrix for remote blocks
|
|
virtual matform_t | matrix_format () const =0 |
| return matrix format
|
|
const stat_t & | statistics () const |
| return statistics information
|
|
◆ TMatBuilder()
TMatBuilder |
( |
const bool |
coarsening = CFG::Arith::coarsen_build | ) |
|
construct matrix construction object with standard coarsening, e.g. same precision as in block construction
◆ build() [1/3]
same as standard
- See also
- build, but build block matrices for given block cluster without permutations etc.
◆ build() [2/3]
virtual std::unique_ptr< TMatrix > build |
( |
const TBlockClusterTree * |
cluster, |
|
|
const matform_t |
matformat, |
|
|
const TTruncAcc & |
acc, |
|
|
TProgressBar * |
progress = nullptr |
|
) |
| const |
|
virtual |
- See also
- build but with user defined matrix format matformat
◆ build() [3/3]
virtual std::unique_ptr< TMatrix > build |
( |
const TBlockCluster * |
cluster, |
|
|
const matform_t |
matformat, |
|
|
const TTruncAcc & |
acc, |
|
|
TProgressBar * |
progress = nullptr |
|
) |
| const |
|
virtual |
- See also
- build but with user defined matrix format matformat
◆ set_build_ghosts()
void set_build_ghosts |
( |
const bool |
b | ) |
|
|
inline |
activate/deactivate construction of ghost matrices for non-local matrix blocks (default: off)