ALPS MPS Codes
Reference documentation.
|
#include <mpstensor.h>
Public Types | |
typedef maquis::traits::scalar_type < Matrix >::type | scalar_type |
typedef maquis::traits::real_type < Matrix >::type | real_type |
typedef Matrix::value_type | value_type |
typedef double | magnitude_type |
typedef std::size_t | size_type |
Public Member Functions | |
MPSTensor (Index< SymmGroup > const &sd=Index< SymmGroup >(), Index< SymmGroup > const &ld=Index< SymmGroup >(), Index< SymmGroup > const &rd=Index< SymmGroup >(), bool fillrand=true, value_type val=0) | |
MPSTensor (Index< SymmGroup > const &sd, Index< SymmGroup > const &ld, Index< SymmGroup > const &rd, block_matrix< Matrix, SymmGroup > const &block, MPSStorageLayout layout) | |
Index< SymmGroup > const & | site_dim () const |
Index< SymmGroup > const & | row_dim () const |
Index< SymmGroup > const & | col_dim () const |
bool | isobccompatible (Indicator) const |
std::size_t | num_elements () const |
void | replace_right_paired (block_matrix< Matrix, SymmGroup > const &, Indicator=Unorm) |
void | replace_left_paired (block_matrix< Matrix, SymmGroup > const &, Indicator=Unorm) |
bool | isleftnormalized (bool test=false) const |
bool | isrightnormalized (bool test=false) const |
bool | isnormalized (bool test=false) const |
block_matrix< Matrix, SymmGroup > | normalize_left (DecompMethod method=DefaultSolver(), bool multiplied=true, double truncation=0, Index< SymmGroup > bond_dim=Index< SymmGroup >()) |
block_matrix< Matrix, SymmGroup > | normalize_right (DecompMethod method=DefaultSolver(), bool multiplied=true, double truncation=0, Index< SymmGroup > bond_dim=Index< SymmGroup >()) |
void | shift_aux_charges (typename SymmGroup::charge) |
void | multiply_from_left (block_matrix< Matrix, SymmGroup > const &) |
void | multiply_from_right (block_matrix< Matrix, SymmGroup > const &) |
void | multiply_by_scalar (const scalar_type &) |
void | divide_by_scalar (const scalar_type &) |
scalar_type | scalar_overlap (MPSTensor const &) const |
real_type | scalar_norm () const |
MPSTensor | copy () const |
block_matrix< Matrix, SymmGroup > & | data () |
block_matrix< Matrix, SymmGroup > const & | data () const |
block_matrix< Matrix, SymmGroup > const & | const_data () const |
std::vector< block_matrix < Matrix, SymmGroup > > | to_list () const |
MPSTensor const & | operator*= (const scalar_type &) |
MPSTensor const & | operator/= (const scalar_type &) |
MPSTensor const & | operator+= (MPSTensor const &) |
MPSTensor const & | operator-= (MPSTensor const &) |
void | make_left_paired () const |
void | make_right_paired () const |
void | conjugate_inplace () |
void | swap_with (MPSTensor &b) |
template<class Archive > | |
void | load (Archive &ar) |
template<class Archive > | |
void | save (Archive &ar) const |
void | check_equal (MPSTensor< Matrix, SymmGroup > const &) const |
bool | reasonable () const |
bool | num_check () const |
Public Attributes | |
Index< SymmGroup > | phys_i |
Index< SymmGroup > | left_i |
Index< SymmGroup > | right_i |
Friends | |
template<class Matrix_ , class SymmGroup_ > | |
std::ostream & | operator<< (std::ostream &, MPSTensor< Matrix_, SymmGroup_ > const &) |
void | swap (MPSTensor &a, MPSTensor &b) |
template<class Matrix_ , class SymmGroup_ > | |
MPSTensor< Matrix_, SymmGroup_ > | join (MPSTensor< Matrix_, SymmGroup_ > const &, MPSTensor< Matrix_, SymmGroup_ > const &, boundary_flag_t) |
Definition at line 49 of file mpstensor.h.
typedef double MPSTensor< Matrix, SymmGroup >::magnitude_type |
Definition at line 55 of file mpstensor.h.
typedef maquis::traits::real_type<Matrix>::type MPSTensor< Matrix, SymmGroup >::real_type |
Definition at line 53 of file mpstensor.h.
typedef maquis::traits::scalar_type<Matrix>::type MPSTensor< Matrix, SymmGroup >::scalar_type |
Definition at line 52 of file mpstensor.h.
typedef std::size_t MPSTensor< Matrix, SymmGroup >::size_type |
Definition at line 56 of file mpstensor.h.
typedef Matrix::value_type MPSTensor< Matrix, SymmGroup >::value_type |
Definition at line 54 of file mpstensor.h.
MPSTensor< Matrix, SymmGroup >::MPSTensor | ( | Index< SymmGroup > const & | sd = Index<SymmGroup>() , |
Index< SymmGroup > const & | ld = Index<SymmGroup>() , |
||
Index< SymmGroup > const & | rd = Index<SymmGroup>() , |
||
bool | fillrand = true , |
||
typename Matrix::value_type | val = 0 |
||
) |
Definition at line 43 of file mpstensor.hpp.
MPSTensor< Matrix, SymmGroup >::MPSTensor | ( | Index< SymmGroup > const & | sd, |
Index< SymmGroup > const & | ld, | ||
Index< SymmGroup > const & | rd, | ||
block_matrix< Matrix, SymmGroup > const & | block, | ||
MPSStorageLayout | layout | ||
) |
Definition at line 79 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::check_equal | ( | MPSTensor< Matrix, SymmGroup > const & | rhs | ) | const |
Index< SymmGroup > const & MPSTensor< Matrix, SymmGroup >::col_dim | ( | ) | const |
Definition at line 161 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::conjugate_inplace | ( | ) |
Definition at line 332 of file mpstensor.hpp.
block_matrix< Matrix, SymmGroup > const & MPSTensor< Matrix, SymmGroup >::const_data | ( | ) | const |
Definition at line 438 of file mpstensor.hpp.
block_matrix< Matrix, SymmGroup > & MPSTensor< Matrix, SymmGroup >::data | ( | ) |
Definition at line 423 of file mpstensor.hpp.
block_matrix< Matrix, SymmGroup > const & MPSTensor< Matrix, SymmGroup >::data | ( | ) | const |
Definition at line 431 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::divide_by_scalar | ( | const scalar_type & | s | ) |
Definition at line 324 of file mpstensor.hpp.
bool MPSTensor< Matrix, SymmGroup >::isleftnormalized | ( | bool | test = false | ) | const |
Definition at line 395 of file mpstensor.hpp.
bool MPSTensor< Matrix, SymmGroup >::isnormalized | ( | bool | test = false | ) | const |
Definition at line 413 of file mpstensor.hpp.
bool MPSTensor< Matrix, SymmGroup >::isobccompatible | ( | Indicator | i | ) | const |
Definition at line 167 of file mpstensor.hpp.
bool MPSTensor< Matrix, SymmGroup >::isrightnormalized | ( | bool | test = false | ) | const |
Definition at line 404 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::load | ( | Archive & | ar | ) |
Definition at line 524 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::make_left_paired | ( | ) | const |
Definition at line 173 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::make_right_paired | ( | ) | const |
Definition at line 188 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::multiply_by_scalar | ( | const scalar_type & | s | ) |
Definition at line 316 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::multiply_from_left | ( | block_matrix< Matrix, SymmGroup > const & | N | ) |
Definition at line 305 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::multiply_from_right | ( | block_matrix< Matrix, SymmGroup > const & | N | ) |
Definition at line 294 of file mpstensor.hpp.
block_matrix< Matrix, SymmGroup > MPSTensor< Matrix, SymmGroup >::normalize_left | ( | DecompMethod | method = DefaultSolver() , |
bool | multiplied = true , |
||
double | truncation = 0 , |
||
Index< SymmGroup > | bond_dim = Index<SymmGroup>() |
||
) |
Definition at line 204 of file mpstensor.hpp.
block_matrix< Matrix, SymmGroup > MPSTensor< Matrix, SymmGroup >::normalize_right | ( | DecompMethod | method = DefaultSolver() , |
bool | multiplied = true , |
||
double | truncation = 0 , |
||
Index< SymmGroup > | bond_dim = Index<SymmGroup>() |
||
) |
Definition at line 245 of file mpstensor.hpp.
bool MPSTensor< Matrix, SymmGroup >::num_check | ( | ) | const |
Definition at line 579 of file mpstensor.hpp.
std::size_t MPSTensor< Matrix, SymmGroup >::num_elements | ( | ) | const |
Definition at line 639 of file mpstensor.hpp.
MPSTensor< Matrix, SymmGroup > const & MPSTensor< Matrix, SymmGroup >::operator*= | ( | const scalar_type & | t | ) |
Definition at line 446 of file mpstensor.hpp.
MPSTensor< Matrix, SymmGroup > const & MPSTensor< Matrix, SymmGroup >::operator+= | ( | MPSTensor< Matrix, SymmGroup > const & | rhs | ) |
Definition at line 462 of file mpstensor.hpp.
MPSTensor< Matrix, SymmGroup > const & MPSTensor< Matrix, SymmGroup >::operator-= | ( | MPSTensor< Matrix, SymmGroup > const & | rhs | ) |
Definition at line 488 of file mpstensor.hpp.
MPSTensor< Matrix, SymmGroup > const & MPSTensor< Matrix, SymmGroup >::operator/= | ( | const scalar_type & | t | ) |
Definition at line 454 of file mpstensor.hpp.
bool MPSTensor< Matrix, SymmGroup >::reasonable | ( | ) | const |
Definition at line 547 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::replace_left_paired | ( | block_matrix< Matrix, SymmGroup > const & | rhs, |
Indicator | normalization = Unorm |
||
) |
Definition at line 113 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::replace_right_paired | ( | block_matrix< Matrix, SymmGroup > const & | rhs, |
Indicator | normalization = Unorm |
||
) |
Definition at line 131 of file mpstensor.hpp.
Index< SymmGroup > const & MPSTensor< Matrix, SymmGroup >::row_dim | ( | ) | const |
Definition at line 155 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::save | ( | Archive & | ar | ) | const |
Definition at line 537 of file mpstensor.hpp.
MPSTensor< Matrix, SymmGroup >::real_type MPSTensor< Matrix, SymmGroup >::scalar_norm | ( | ) | const |
Definition at line 339 of file mpstensor.hpp.
MPSTensor< Matrix, SymmGroup >::scalar_type MPSTensor< Matrix, SymmGroup >::scalar_overlap | ( | MPSTensor< Matrix, SymmGroup > const & | rhs | ) | const |
Definition at line 356 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::shift_aux_charges | ( | typename SymmGroup::charge | diff | ) |
Definition at line 285 of file mpstensor.hpp.
Index< SymmGroup > const & MPSTensor< Matrix, SymmGroup >::site_dim | ( | ) | const |
Definition at line 149 of file mpstensor.hpp.
void MPSTensor< Matrix, SymmGroup >::swap_with | ( | MPSTensor< Matrix, SymmGroup > & | b | ) |
Definition at line 511 of file mpstensor.hpp.
std::vector<block_matrix<Matrix, SymmGroup> > MPSTensor< Matrix, SymmGroup >::to_list | ( | ) | const |
|
friend |
|
friend |
|
friend |
Definition at line 128 of file mpstensor.h.
Definition at line 141 of file mpstensor.h.
Definition at line 141 of file mpstensor.h.
Definition at line 141 of file mpstensor.h.