45 template<
class Matrix,
class SymmGroup>
48 template<
class Matrix,
class SymmGroup>
86 bool multiplied =
true,
87 double truncation = 0,
90 bool multiplied =
true,
91 double truncation = 0,
111 std::vector<block_matrix<Matrix, SymmGroup> >
to_list()
const;
113 template<
class Matrix_,
class SymmGroup_>
114 friend std::ostream& operator<<(std::ostream&, MPSTensor<Matrix_, SymmGroup_>
const &);
131 template<
class Matrix_,
class SymmGroup_>
134 template<
class Archive>
void load(Archive & ar);
135 template<
class Archive>
void save(Archive & ar)
const;
149 template<
class Matrix,
class SymmGroup>
156 template<
class Matrix,
class SymmGroup>
163 template<
class Matrix,
class SymmGroup>
171 template<
class Matrix,
class SymmGroup>
178 template<
class Matrix,
class SymmGroup>
186 template<
class Matrix,
class SymmGroup>
194 template<
class Matrix,
class SymmGroup>
definition of the MPSTensor class
block_matrix< Matrix, SymmGroup > normalize_right(DecompMethod method=DefaultSolver(), bool multiplied=true, double truncation=0, Index< SymmGroup > bond_dim=Index< SymmGroup >())
void multiply_by_scalar(const scalar_type &)
real_type scalar_norm() const
void make_left_paired() const
bool isrightnormalized(bool test=false) const
Matrix::value_type value_type
Index< SymmGroup > const & col_dim() const
friend MPSTensor< Matrix_, SymmGroup_ > join(MPSTensor< Matrix_, SymmGroup_ > const &, MPSTensor< Matrix_, SymmGroup_ > const &, boundary_flag_t)
bool isobccompatible(Indicator) const
MPSTensor const & operator/=(const scalar_type &)
MPSTensor< Matrix, SymmGroup > operator-(MPSTensor< Matrix, SymmGroup > m, MPSTensor< Matrix, SymmGroup > const &m2)
maquis::traits::scalar_type< Matrix >::type scalar_type
void make_right_paired() const
void check_equal(MPSTensor< Matrix, SymmGroup > const &) const
scalar_type scalar_overlap(MPSTensor const &) const
declaration of block_matrix class
Index< SymmGroup > const & row_dim() const
std::size_t size_of(MPSTensor< Matrix, SymmGroup > const &m)
MPSTensor< Matrix, SymmGroup > operator/(MPSTensor< Matrix, SymmGroup > m, const typename MPSTensor< Matrix, SymmGroup >::scalar_type &t)
void save(Archive &ar) const
MPSTensor< Matrix, SymmGroup > operator+(MPSTensor< Matrix, SymmGroup > m, MPSTensor< Matrix, SymmGroup > const &m2)
void multiply_from_left(block_matrix< Matrix, SymmGroup > const &)
include one of the Index class definitions
block_matrix< Matrix, SymmGroup > normalize_left(DecompMethod method=DefaultSolver(), bool multiplied=true, double truncation=0, Index< SymmGroup > bond_dim=Index< SymmGroup >())
bool isnormalized(bool test=false) const
Index< SymmGroup > phys_i
void replace_left_paired(block_matrix< Matrix, SymmGroup > const &, Indicator=Unorm)
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)
real_type< typename T::value_type >::type type
void shift_aux_charges(typename SymmGroup::charge)
block_matrix< Matrix, SymmGroup > const & const_data() const
std::vector< block_matrix< Matrix, SymmGroup > > to_list() const
bool isleftnormalized(bool test=false) const
void multiply_from_right(block_matrix< Matrix, SymmGroup > const &)
std::size_t num_elements() const
Index< SymmGroup > const & site_dim() const
MPSTensor< Matrix, SymmGroup > operator*(const typename MPSTensor< Matrix, SymmGroup >::scalar_type &t, MPSTensor< Matrix, SymmGroup > m)
Index< SymmGroup > left_i
friend void swap(MPSTensor &a, MPSTensor &b)
MPSTensor const & operator+=(MPSTensor const &)
void swap_with(MPSTensor &b)
Index< SymmGroup > right_i
block_matrix< Matrix, SymmGroup > & data()
void replace_right_paired(block_matrix< Matrix, SymmGroup > const &, Indicator=Unorm)
MPSTensor const & operator*=(const scalar_type &)
maquis::traits::real_type< Matrix >::type real_type
void divide_by_scalar(const scalar_type &)
MPSTensor const & operator-=(MPSTensor const &)