|
template<typename scalar_t > |
using | strumpack::structured::extract_t = std::function< scalar_t(std::size_t i, std::size_t j)> |
|
template<typename scalar_t > |
using | strumpack::structured::extract_block_t = std::function< void(const std::vector< std::size_t > &I, const std::vector< std::size_t > &J, DenseMatrix< scalar_t > &B)> |
|
template<typename scalar_t > |
using | strumpack::structured::mult_t = std::function< void(Trans op, const DenseMatrix< scalar_t > &R, DenseMatrix< scalar_t > &S)> |
|
template<typename scalar_t > |
using | strumpack::structured::extract_dist_block_t = std::function< void(const std::vector< std::size_t > &I, const std::vector< std::size_t > &J, DistributedMatrix< scalar_t > &B)> |
|
template<typename scalar_t > |
using | strumpack::structured::mult_2d_t = std::function< void(Trans op, const DistributedMatrix< scalar_t > &R, DistributedMatrix< scalar_t > &S)> |
|
template<typename scalar_t > |
using | strumpack::structured::mult_1d_t = std::function< void(Trans op, const DenseMatrix< scalar_t > &R, DenseMatrix< scalar_t > &S, const std::vector< int > &rdist, const std::vector< int > &cdist)> |
|
using | strumpack::structured::admissibility_t = DenseMatrix< bool > |
|
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_from_dense (const DenseMatrix< scalar_t > &A, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_from_dense (int rows, int cols, const scalar_t *A, int ldA, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_from_elements (int rows, int cols, const extract_t< scalar_t > &A, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_from_elements (int rows, int cols, const extract_block_t< scalar_t > &A, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_matrix_free (int rows, int cols, const mult_t< scalar_t > &Amult, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_partially_matrix_free (int rows, int cols, const mult_t< scalar_t > &Amult, const extract_block_t< scalar_t > &Aelem, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_partially_matrix_free (int rows, int cols, const mult_t< scalar_t > &Amult, const extract_t< scalar_t > &Aelem, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_from_dense (const DistributedMatrix< scalar_t > &A, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_from_elements (const MPIComm &comm, const BLACSGrid *grid, int rows, int cols, const extract_t< scalar_t > &A, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_from_elements (const MPIComm &comm, const BLACSGrid *grid, int rows, int cols, const extract_dist_block_t< scalar_t > &A, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_matrix_free (const MPIComm &comm, const BLACSGrid *g, int rows, int cols, const mult_2d_t< scalar_t > &Amult, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_matrix_free (const MPIComm &comm, int rows, int cols, const mult_1d_t< scalar_t > &Amult, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
template<typename scalar_t > |
std::unique_ptr< StructuredMatrix< scalar_t > > | strumpack::structured::construct_partially_matrix_free (const BLACSGrid *grid, int rows, int cols, const mult_2d_t< scalar_t > &Amult, const extract_dist_block_t< scalar_t > &Aelem, const StructuredOptions< scalar_t > &opts, const structured::ClusterTree *row_tree=nullptr, const structured::ClusterTree *col_tree=nullptr) |
|
Contains the structured matrix interfaces.