#include <DistributedMatrix.hpp>


Public Member Functions | |
| DistributedMatrixWrapper (DistributedMatrix< scalar_t > &A) | |
| DistributedMatrixWrapper (const DistributedMatrixWrapper< scalar_t > &A) | |
| DistributedMatrixWrapper (DistributedMatrixWrapper< scalar_t > &&A) | |
| DistributedMatrixWrapper (std::size_t m, std::size_t n, DistributedMatrix< scalar_t > &A, std::size_t i, std::size_t j) | |
| DistributedMatrixWrapper (const BLACSGrid *g, std::size_t m, std::size_t n, scalar_t *A) | |
| DistributedMatrixWrapper (const BLACSGrid *g, std::size_t m, std::size_t n, int MB, int NB, scalar_t *A) | |
| DistributedMatrixWrapper (const BLACSGrid *g, std::size_t m, std::size_t n, DenseMatrix< scalar_t > &A) | |
| DistributedMatrixWrapper< scalar_t > & | operator= (const DistributedMatrixWrapper< scalar_t > &A) |
| DistributedMatrixWrapper< scalar_t > & | operator= (DistributedMatrixWrapper< scalar_t > &&A) |
| int | rows () const override |
| int | cols () const override |
| int | I () const override |
| int | J () const override |
| void | lranges (int &rlo, int &rhi, int &clo, int &chi) const override |
| void | resize (std::size_t m, std::size_t n) override |
| void | hconcat (const DistributedMatrix< scalar_t > &b) override |
| void | clear () |
| std::size_t | memory () const override |
| std::size_t | total_memory () const override |
| std::size_t | nonzeros () const override |
| std::size_t | total_nonzeros () const override |
| DenseMatrix< scalar_t > | dense_and_clear ()=delete |
| DenseMatrixWrapper< scalar_t > | dense_wrapper ()=delete |
| DistributedMatrixWrapper< scalar_t > & | operator= (const DistributedMatrix< scalar_t > &)=delete |
| DistributedMatrixWrapper< scalar_t > & | operator= (DistributedMatrix< scalar_t > &&)=delete |
Public Member Functions inherited from strumpack::DistributedMatrix< scalar_t > | |
| DistributedMatrix (const BLACSGrid *g, int M, int N) | |
| DistributedMatrix (const BLACSGrid *g, int M, int N, const std::function< scalar_t(std::size_t, std::size_t)> &A) | |
| DistributedMatrix (const BLACSGrid *g, const DenseMatrix< scalar_t > &m) | |
| DistributedMatrix (const BLACSGrid *g, DenseMatrix< scalar_t > &&m) | |
| DistributedMatrix (const BLACSGrid *g, DenseMatrixWrapper< scalar_t > &&m) | |
| DistributedMatrix (const BLACSGrid *g, int M, int N, const DistributedMatrix< scalar_t > &m, int context_all) | |
| DistributedMatrix (const BLACSGrid *g, int M, int N, int MB, int NB) | |
| DistributedMatrix (const BLACSGrid *g, int desc[9]) | |
| DistributedMatrix (const DistributedMatrix< scalar_t > &m) | |
| DistributedMatrix (DistributedMatrix< scalar_t > &&m) | |
| DistributedMatrix< scalar_t > & | operator= (const DistributedMatrix< scalar_t > &m) |
| DistributedMatrix< scalar_t > & | operator= (DistributedMatrix< scalar_t > &&m) |
| const int * | desc () const |
| int * | desc () |
| bool | active () const |
| const BLACSGrid * | grid () const |
| const MPIComm & | Comm () const |
| MPI_Comm | comm () const |
| int | ctxt () const |
| int | ctxt_all () const |
| int | lrows () const |
| int | lcols () const |
| int | ld () const |
| int | MB () const |
| int | NB () const |
| int | rowblocks () const |
| int | colblocks () const |
| const scalar_t * | data () const |
| scalar_t * | data () |
| const scalar_t & | operator() (int r, int c) const |
| scalar_t & | operator() (int r, int c) |
| int | prow () const |
| int | pcol () const |
| int | nprows () const |
| int | npcols () const |
| int | npactives () const |
| bool | is_master () const |
| int | rowl2g (int row) const |
| int | coll2g (int col) const |
| int | rowg2l (int row) const |
| int | colg2l (int col) const |
| int | rowg2p (int row) const |
| int | colg2p (int col) const |
| int | rank (int r, int c) const |
| bool | is_local (int r, int c) const |
| bool | fixed () const |
| int | rowl2g_fixed (int row) const |
| int | coll2g_fixed (int col) const |
| int | rowg2l_fixed (int row) const |
| int | colg2l_fixed (int col) const |
| int | rowg2p_fixed (int row) const |
| int | colg2p_fixed (int col) const |
| int | rank_fixed (int r, int c) const |
| bool | is_local_fixed (int r, int c) const |
| const scalar_t & | global (int r, int c) const |
| scalar_t & | global (int r, int c) |
| scalar_t & | global_fixed (int r, int c) |
| void | global (int r, int c, scalar_t v) |
| scalar_t | all_global (int r, int c) const |
| void | print () const |
| void | print (std::string name, int precision=15) const |
| void | print_to_file (std::string name, std::string filename, int width=8) const |
| void | print_to_files (std::string name, int precision=16) const |
| void | random () |
| void | random (random::RandomGeneratorBase< typename RealType< scalar_t >::value_type > &rgen) |
| void | zero () |
| void | fill (scalar_t a) |
| void | fill (const std::function< scalar_t(std::size_t, std::size_t)> &A) |
| void | eye () |
| void | shift (scalar_t sigma) |
| void | clear () |
| DistributedMatrix< scalar_t > | transpose () const |
| void | mult (Trans op, const DistributedMatrix< scalar_t > &X, DistributedMatrix< scalar_t > &Y) const |
| void | laswp (const std::vector< int > &P, bool fwd) |
| DistributedMatrix< scalar_t > | extract_rows (const std::vector< std::size_t > &Ir) const |
| DistributedMatrix< scalar_t > | extract_cols (const std::vector< std::size_t > &Ic) const |
| DistributedMatrix< scalar_t > | extract (const std::vector< std::size_t > &I, const std::vector< std::size_t > &J) const |
| DistributedMatrix< scalar_t > & | add (const DistributedMatrix< scalar_t > &B) |
| DistributedMatrix< scalar_t > & | scaled_add (scalar_t alpha, const DistributedMatrix< scalar_t > &B) |
| DistributedMatrix< scalar_t > & | scale_and_add (scalar_t alpha, const DistributedMatrix< scalar_t > &B) |
| real_t | norm () const |
| real_t | normF () const |
| real_t | norm1 () const |
| real_t | normI () const |
| void | scatter (const DenseMatrix< scalar_t > &a) |
| DenseMatrix< scalar_t > | gather () const |
| DenseMatrix< scalar_t > | all_gather () const |
| DenseMatrix< scalar_t > | dense_and_clear () |
| DenseMatrix< scalar_t > | dense () const |
| DenseMatrixWrapper< scalar_t > | dense_wrapper () |
| std::vector< int > | LU () |
| int | LU (std::vector< int > &) |
| DistributedMatrix< scalar_t > | solve (const DistributedMatrix< scalar_t > &b, const std::vector< int > &piv) const |
| void | LQ (DistributedMatrix< scalar_t > &L, DistributedMatrix< scalar_t > &Q) const |
| void | orthogonalize (scalar_t &r_max, scalar_t &r_min) |
| void | ID_column (DistributedMatrix< scalar_t > &X, std::vector< int > &piv, std::vector< std::size_t > &ind, real_t rel_tol, real_t abs_tol, int max_rank) |
| void | ID_row (DistributedMatrix< scalar_t > &X, std::vector< int > &piv, std::vector< std::size_t > &ind, real_t rel_tol, real_t abs_tol, int max_rank, const BLACSGrid *grid_T) |
Additional Inherited Members | |
Static Public Attributes inherited from strumpack::DistributedMatrix< scalar_t > | |
| static const int | default_MB = STRUMPACK_PBLAS_BLOCKSIZE |
| static const int | default_NB = STRUMPACK_PBLAS_BLOCKSIZE |
Wrapper class does exactly the same as a regular DistributedMatrix, but it is initialized with existing memory, so it does not allocate, own or delete the memory