ALPS MPS Codes
Reference documentation.
|
#include <block_matrix.h>
Public Types | |
typedef Matrix::size_type | size_type |
typedef Matrix::value_type | value_type |
typedef maquis::traits::scalar_type < Matrix >::type | scalar_type |
typedef maquis::traits::real_type < Matrix >::type | real_type |
Public Member Functions | |
block_matrix () | |
block_matrix (Index< SymmGroup > rows, Index< SymmGroup > cols) | |
block_matrix (block_matrix const &) | |
template<class OtherMatrix > | |
block_matrix (block_matrix< OtherMatrix, SymmGroup > const &) | |
block_matrix & | operator= (block_matrix rhs) |
template<class OtherMatrix > | |
block_matrix & | operator= (const block_matrix< OtherMatrix, SymmGroup > &rhs) |
Index< SymmGroup > const & | left_basis () const |
Index< SymmGroup > const & | right_basis () const |
void | shift_basis (charge diff) |
std::string | description () const |
std::size_t | num_elements () const |
Matrix & | operator[] (size_type c) |
Matrix const & | operator[] (size_type c) const |
value_type & | operator() (std::pair< charge, size_type > const &r, std::pair< charge, size_type > const &c) |
value_type const & | operator() (std::pair< charge, size_type > const &r, std::pair< charge, size_type > const &c) const |
block_matrix & | operator+= (block_matrix const &rhs) |
block_matrix & | operator-= (block_matrix const &rhs) |
block_matrix const & | operator*= (const scalar_type &v) |
block_matrix const & | operator/= (const scalar_type &v) |
size_type | n_blocks () const |
size_type | find_block (charge r, charge c) const |
bool | has_block (charge r, charge c) const |
bool | has_block (std::pair< charge, size_type > const &r, std::pair< charge, size_type > const &c) const |
size_type | insert_block (Matrix const &, charge, charge) |
size_type | insert_block (Matrix *, charge, charge) |
void | remove_block (charge r, charge c) |
void | remove_block (std::size_t which) |
scalar_type | trace () const |
real_type | norm () const |
void | transpose_inplace () |
void | conjugate_inplace () |
void | adjoint_inplace () |
void | clear () |
template<class Generator > | |
void | generate (Generator g) |
void | match_and_add_block (Matrix const &, charge, charge) |
void | reserve (charge, charge, std::size_t, std::size_t) |
void | reserve_pos (charge, charge, std::size_t, std::size_t) |
void | allocate_blocks () |
void | resize_block (charge r, charge c, size_type new_r, size_type new_c, bool pretend=false) |
Matrix const & | operator() (charge r, charge c) const |
Matrix & | operator() (charge r, charge c) |
template<class Archive > | |
void | load (Archive &ar) |
template<class Archive > | |
void | save (Archive &ar) const |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
bool | reasonable () const |
template<class OtherMatrix > | |
block_matrix< Matrix, SymmGroup > & | operator= (const block_matrix< OtherMatrix, SymmGroup > &rhs) |
Friends | |
class | block_matrix< typename storage::constrained< Matrix >::type, SymmGroup > |
void | swap (block_matrix &x, block_matrix &y) |
Definition at line 44 of file block_matrix.h.
typedef maquis::traits::real_type<Matrix>::type block_matrix< Matrix, SymmGroup >::real_type |
Definition at line 53 of file block_matrix.h.
typedef maquis::traits::scalar_type<Matrix>::type block_matrix< Matrix, SymmGroup >::scalar_type |
Definition at line 52 of file block_matrix.h.
typedef Matrix::size_type block_matrix< Matrix, SymmGroup >::size_type |
Definition at line 50 of file block_matrix.h.
typedef Matrix::value_type block_matrix< Matrix, SymmGroup >::value_type |
Definition at line 51 of file block_matrix.h.
block_matrix< Matrix, SymmGroup >::block_matrix | ( | ) |
Definition at line 38 of file block_matrix.hpp.
block_matrix< Matrix, SymmGroup >::block_matrix | ( | Index< SymmGroup > | rows, |
Index< SymmGroup > | cols | ||
) |
Definition at line 43 of file block_matrix.hpp.
block_matrix< Matrix, SymmGroup >::block_matrix | ( | block_matrix< Matrix, SymmGroup > const & | rhs | ) |
Definition at line 54 of file block_matrix.hpp.
block_matrix< Matrix, SymmGroup >::block_matrix | ( | block_matrix< OtherMatrix, SymmGroup > const & | rhs | ) |
Definition at line 62 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::adjoint_inplace | ( | ) |
Definition at line 302 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::allocate_blocks | ( | ) |
Definition at line 481 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::clear | ( | ) |
Definition at line 323 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::conjugate_inplace | ( | ) |
Definition at line 296 of file block_matrix.hpp.
std::string block_matrix< Matrix, SymmGroup >::description | ( | ) | const |
Definition at line 177 of file block_matrix.hpp.
block_matrix< Matrix, SymmGroup >::size_type block_matrix< Matrix, SymmGroup >::find_block | ( | charge | r, |
charge | c | ||
) | const |
Definition at line 198 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::generate | ( | Generator | g | ) |
Definition at line 317 of file block_matrix.hpp.
bool block_matrix< Matrix, SymmGroup >::has_block | ( | charge | r, |
charge | c | ||
) | const |
Definition at line 208 of file block_matrix.hpp.
bool block_matrix< Matrix, SymmGroup >::has_block | ( | std::pair< charge, size_type > const & | r, |
std::pair< charge, size_type > const & | c | ||
) | const |
Definition at line 218 of file block_matrix.hpp.
block_matrix< Matrix, SymmGroup >::size_type block_matrix< Matrix, SymmGroup >::insert_block | ( | Matrix const & | mtx, |
charge | c1, | ||
charge | c2 | ||
) |
Definition at line 132 of file block_matrix.hpp.
block_matrix< Matrix, SymmGroup >::size_type block_matrix< Matrix, SymmGroup >::insert_block | ( | Matrix * | mtx, |
charge | c1, | ||
charge | c2 | ||
) |
Definition at line 152 of file block_matrix.hpp.
Index< SymmGroup > const & block_matrix< Matrix, SymmGroup >::left_basis | ( | ) | const |
Definition at line 168 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::load | ( | Archive & | ar | ) |
Definition at line 407 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::match_and_add_block | ( | Matrix const & | mtx, |
charge | c1, | ||
charge | c2 | ||
) |
Definition at line 342 of file block_matrix.hpp.
Matrix::size_type block_matrix< Matrix, SymmGroup >::n_blocks | ( | ) | const |
Definition at line 174 of file block_matrix.hpp.
block_matrix< Matrix, SymmGroup >::real_type block_matrix< Matrix, SymmGroup >::norm | ( | ) | const |
Definition at line 281 of file block_matrix.hpp.
std::size_t block_matrix< Matrix, SymmGroup >::num_elements | ( | ) | const |
Definition at line 497 of file block_matrix.hpp.
Matrix::value_type & block_matrix< Matrix, SymmGroup >::operator() | ( | std::pair< charge, size_type > const & | r, |
std::pair< charge, size_type > const & | c | ||
) |
Definition at line 225 of file block_matrix.hpp.
Matrix::value_type const & block_matrix< Matrix, SymmGroup >::operator() | ( | std::pair< charge, size_type > const & | r, |
std::pair< charge, size_type > const & | c | ||
) | const |
Definition at line 233 of file block_matrix.hpp.
|
inline |
Definition at line 132 of file block_matrix.h.
|
inline |
Definition at line 139 of file block_matrix.h.
block_matrix< Matrix, SymmGroup > const & block_matrix< Matrix, SymmGroup >::operator*= | ( | const scalar_type & | v | ) |
Definition at line 256 of file block_matrix.hpp.
block_matrix< Matrix, SymmGroup > & block_matrix< Matrix, SymmGroup >::operator+= | ( | block_matrix< Matrix, SymmGroup > const & | rhs | ) |
Definition at line 102 of file block_matrix.hpp.
block_matrix< Matrix, SymmGroup > & block_matrix< Matrix, SymmGroup >::operator-= | ( | block_matrix< Matrix, SymmGroup > const & | rhs | ) |
Definition at line 117 of file block_matrix.hpp.
block_matrix< Matrix, SymmGroup > const & block_matrix< Matrix, SymmGroup >::operator/= | ( | const scalar_type & | v | ) |
Definition at line 264 of file block_matrix.hpp.
block_matrix< Matrix, SymmGroup > & block_matrix< Matrix, SymmGroup >::operator= | ( | block_matrix< Matrix, SymmGroup > | rhs | ) |
Definition at line 72 of file block_matrix.hpp.
block_matrix& block_matrix< Matrix, SymmGroup >::operator= | ( | const block_matrix< OtherMatrix, SymmGroup > & | rhs | ) |
block_matrix<Matrix, SymmGroup>& block_matrix< Matrix, SymmGroup >::operator= | ( | const block_matrix< OtherMatrix, SymmGroup > & | rhs | ) |
Definition at line 80 of file block_matrix.hpp.
Matrix & block_matrix< Matrix, SymmGroup >::operator[] | ( | size_type | c | ) |
Definition at line 192 of file block_matrix.hpp.
Matrix const & block_matrix< Matrix, SymmGroup >::operator[] | ( | size_type | c | ) | const |
Definition at line 195 of file block_matrix.hpp.
bool block_matrix< Matrix, SymmGroup >::reasonable | ( | ) | const |
Definition at line 488 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::remove_block | ( | charge | r, |
charge | c | ||
) |
Definition at line 384 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::remove_block | ( | std::size_t | which | ) |
Definition at line 396 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::reserve | ( | charge | c1, |
charge | c2, | ||
std::size_t | r, | ||
std::size_t | c | ||
) |
Definition at line 448 of file block_matrix.hpp.
|
inline |
Definition at line 475 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::resize_block | ( | charge | r, |
charge | c, | ||
size_type | new_r, | ||
size_type | new_c, | ||
bool | pretend = false |
||
) |
Definition at line 373 of file block_matrix.hpp.
Index< SymmGroup > const & block_matrix< Matrix, SymmGroup >::right_basis | ( | ) | const |
Definition at line 171 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::save | ( | Archive & | ar | ) | const |
Definition at line 431 of file block_matrix.hpp.
|
inline |
Definition at line 442 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::shift_basis | ( | charge | diff | ) |
Definition at line 185 of file block_matrix.hpp.
block_matrix< Matrix, SymmGroup >::scalar_type block_matrix< Matrix, SymmGroup >::trace | ( | ) | const |
Definition at line 273 of file block_matrix.hpp.
void block_matrix< Matrix, SymmGroup >::transpose_inplace | ( | ) |
Definition at line 289 of file block_matrix.hpp.
|
friend |
Definition at line 46 of file block_matrix.h.
|
friend |
Definition at line 125 of file block_matrix.h.