A class for the sparse matrix type. Uses vector of maps as data structure for higher performance and lower memory usage. Uses similar interface as ublas::compressed_matrix. Can deal with transposed of matrix internally: Creation, Storage, Iterators, etc. More...
#include <amg_base.hpp>
Public Types | |
typedef NumericT | value_type |
typedef AdapterType::iterator1 | iterator1 |
typedef AdapterType::iterator2 | iterator2 |
typedef ConstAdapterType::const_iterator1 | const_iterator1 |
typedef ConstAdapterType::const_iterator2 | const_iterator2 |
Public Member Functions | |
amg_sparsematrix () | |
Standard constructor. More... | |
amg_sparsematrix (unsigned int i, unsigned int j) | |
Constructor. Builds matrix of size (i,j). More... | |
amg_sparsematrix (std::vector< std::map< unsigned int, NumericT > > const &mat) | |
Constructor. Builds matrix via std::vector<std::map> by copying memory (Only necessary feature of this other matrix type is to have const iterators) More... | |
template<typename MatrixT > | |
amg_sparsematrix (MatrixT const &mat) | |
Constructor. Builds matrix via another matrix type. (Only necessary feature of this other matrix type is to have const iterators) More... | |
void | do_trans () |
void | set_trans (bool mode) |
bool | get_trans () const |
bool | isnonzero (unsigned int i, unsigned int j) const |
void | add (unsigned int i, unsigned int j, NumericT s) |
template<typename IteratorT > | |
void | addscalar (IteratorT &iter, unsigned int i, unsigned int j, NumericT s) |
template<typename IteratorT > | |
void | removescalar (IteratorT &iter, unsigned int i) |
NonzeroScalarType | operator() (unsigned int i, unsigned int j) |
NumericT | operator() (unsigned int i, unsigned int j) const |
void | resize (unsigned int i, unsigned int j, bool preserve=true) |
void | clear () |
vcl_size_t | size1 () |
vcl_size_t | size1 () const |
vcl_size_t | size2 () |
vcl_size_t | size2 () const |
iterator1 | begin1 (bool trans=false) |
iterator1 | end1 (bool trans=false) |
iterator2 | begin2 (bool trans=false) |
iterator2 | end2 (bool trans=false) |
const_iterator1 | begin1 () const |
const_iterator1 | end1 (bool trans=false) const |
const_iterator2 | begin2 (bool trans=false) const |
const_iterator2 | end2 (bool trans=false) const |
std::vector< std::map < unsigned int, NumericT > > * | get_internal_pointer () |
operator boost::numeric::ublas::compressed_matrix< NumericT > (void) | |
operator boost::numeric::ublas::matrix< NumericT > (void) | |
A class for the sparse matrix type. Uses vector of maps as data structure for higher performance and lower memory usage. Uses similar interface as ublas::compressed_matrix. Can deal with transposed of matrix internally: Creation, Storage, Iterators, etc.
Definition at line 385 of file amg_base.hpp.
typedef ConstAdapterType::const_iterator1 viennacl::linalg::detail::amg::amg_sparsematrix< NumericT >::const_iterator1 |
Definition at line 417 of file amg_base.hpp.
typedef ConstAdapterType::const_iterator2 viennacl::linalg::detail::amg::amg_sparsematrix< NumericT >::const_iterator2 |
Definition at line 418 of file amg_base.hpp.
typedef AdapterType::iterator1 viennacl::linalg::detail::amg::amg_sparsematrix< NumericT >::iterator1 |
Definition at line 415 of file amg_base.hpp.
typedef AdapterType::iterator2 viennacl::linalg::detail::amg::amg_sparsematrix< NumericT >::iterator2 |
Definition at line 416 of file amg_base.hpp.
typedef NumericT viennacl::linalg::detail::amg::amg_sparsematrix< NumericT >::value_type |
Definition at line 388 of file amg_base.hpp.
|
inline |
Standard constructor.
Definition at line 421 of file amg_base.hpp.
|
inline |
Constructor. Builds matrix of size (i,j).
i | Size of first dimension |
j | Size of second dimension |
Definition at line 431 of file amg_base.hpp.
|
inline |
Constructor. Builds matrix via std::vector<std::map> by copying memory (Only necessary feature of this other matrix type is to have const iterators)
mat | Vector of maps |
Definition at line 449 of file amg_base.hpp.
|
inline |
Constructor. Builds matrix via another matrix type. (Only necessary feature of this other matrix type is to have const iterators)
mat | Matrix |
Definition at line 468 of file amg_base.hpp.
|
inline |
Definition at line 551 of file amg_base.hpp.
|
inline |
Definition at line 575 of file amg_base.hpp.
|
inline |
Definition at line 695 of file amg_base.hpp.
|
inline |
Definition at line 755 of file amg_base.hpp.
|
inline |
Definition at line 725 of file amg_base.hpp.
|
inline |
Definition at line 770 of file amg_base.hpp.
|
inline |
Definition at line 653 of file amg_base.hpp.
|
inline |
Definition at line 497 of file amg_base.hpp.
|
inline |
Definition at line 710 of file amg_base.hpp.
|
inline |
Definition at line 763 of file amg_base.hpp.
|
inline |
Definition at line 740 of file amg_base.hpp.
|
inline |
Definition at line 777 of file amg_base.hpp.
|
inline |
Definition at line 785 of file amg_base.hpp.
|
inline |
Definition at line 529 of file amg_base.hpp.
|
inline |
Definition at line 532 of file amg_base.hpp.
|
inline |
Definition at line 795 of file amg_base.hpp.
|
inline |
Definition at line 808 of file amg_base.hpp.
|
inline |
Definition at line 598 of file amg_base.hpp.
|
inline |
Definition at line 621 of file amg_base.hpp.
|
inline |
Definition at line 591 of file amg_base.hpp.
|
inline |
Definition at line 643 of file amg_base.hpp.
|
inline |
Definition at line 522 of file amg_base.hpp.
|
inline |
Definition at line 662 of file amg_base.hpp.
|
inline |
Definition at line 670 of file amg_base.hpp.
|
inline |
Definition at line 679 of file amg_base.hpp.
|
inline |
Definition at line 687 of file amg_base.hpp.