Xped
Loading...
Searching...
No Matches
Xped::Mps< Scalar_, Symmetry_ > Class Template Reference

#include <Mps.hpp>

Collaboration diagram for Xped::Mps< Scalar_, Symmetry_ >:

Public Types

typedef Symmetry_ Symmetry
 
typedef Scalar_ Scalar
 
typedef ScalarTraits< Scalar >::Real RealScalar
 
typedef Symmetry::qType qType
 
typedef Tensor< Scalar, 2, 1, SymmetryALType
 
typedef ALType::TensorType TensorType
 
typedef ALType::MatrixType MatrixType
 
typedef ALType::VectorType VectorType
 
typedef Tensor< Scalar, 1, 2, SymmetryARType
 

Public Member Functions

 Mps ()
 
 Mps (std::size_t L)
 
 Mps (std::size_t L, const std::vector< Qbasis< Symmetry, 1 > > &qloc_in, const qType &Qtarget_in=Symmetry::qvacuum(), std::size_t Mmax_in=10, std::size_t Nqmax_in=10, std::size_t seed=0ul)
 
std::size_t length () const
 
Qbasis< Symmetry, 1 > inBasis (std::size_t l) const
 
Qbasis< Symmetry, 1 > outBasis (std::size_t l) const
 
Qbasis< Symmetry, 1 > locBasis (std::size_t l) const
 
Qbasis< Symmetry, 1 > auxBasis (std::size_t l) const
 
void leftSweepStep (const std::size_t loc, const DMRG::BROOM &broom, const bool DISCARD_U=false)
 
void rightSweepStep (const std::size_t loc, const DMRG::BROOM &broom, const bool DISCARD_V=false)
 
void gen_maxBasis ()
 
void gen_auxBasis (const std::size_t Mmax, const std::size_t Nqmax)
 
void resizeArrays ()
 

Public Attributes

std::size_t N_sites
 
std::vector< qTypeQtarget
 
GaugeTriple< std::vector< ALType >, std::vector< ARType >, std::vector< ALType > > A
 
std::vector< Qbasis< Symmetry, 1 > > qaux
 
std::vector< Qbasis< Symmetry, 1 > > qloc
 
std::vector< Qbasis< Symmetry, 1 > > maxBasis
 
std::size_t max_Nsv = 10000
 
std::size_t min_Nsv = 0
 
RealScalar eps_svd = 1.e-10
 
std::vector< std::map< qType, VectorType > > SVspec
 
std::vector< RealScalartruncWeight
 
std::vector< RealScalarS
 

Static Public Attributes

static constexpr std::size_t Nq = Symmetry::Nq
 

Member Typedef Documentation

◆ ALType

template<typename Scalar_ , typename Symmetry_ >
typedef Tensor<Scalar, 2, 1, Symmetry> Xped::Mps< Scalar_, Symmetry_ >::ALType

◆ ARType

template<typename Scalar_ , typename Symmetry_ >
typedef Tensor<Scalar, 1, 2, Symmetry> Xped::Mps< Scalar_, Symmetry_ >::ARType

◆ MatrixType

template<typename Scalar_ , typename Symmetry_ >
typedef ALType::MatrixType Xped::Mps< Scalar_, Symmetry_ >::MatrixType

◆ qType

template<typename Scalar_ , typename Symmetry_ >
typedef Symmetry::qType Xped::Mps< Scalar_, Symmetry_ >::qType

◆ RealScalar

template<typename Scalar_ , typename Symmetry_ >
typedef ScalarTraits<Scalar>::Real Xped::Mps< Scalar_, Symmetry_ >::RealScalar

◆ Scalar

template<typename Scalar_ , typename Symmetry_ >
typedef Scalar_ Xped::Mps< Scalar_, Symmetry_ >::Scalar

◆ Symmetry

template<typename Scalar_ , typename Symmetry_ >
typedef Symmetry_ Xped::Mps< Scalar_, Symmetry_ >::Symmetry

◆ TensorType

template<typename Scalar_ , typename Symmetry_ >
typedef ALType::TensorType Xped::Mps< Scalar_, Symmetry_ >::TensorType

◆ VectorType

template<typename Scalar_ , typename Symmetry_ >
typedef ALType::VectorType Xped::Mps< Scalar_, Symmetry_ >::VectorType

Constructor & Destructor Documentation

◆ Mps() [1/3]

template<typename Scalar_ , typename Symmetry_ >
Xped::Mps< Scalar_, Symmetry_ >::Mps ( )
inline

◆ Mps() [2/3]

template<typename Scalar_ , typename Symmetry_ >
Xped::Mps< Scalar_, Symmetry_ >::Mps ( std::size_t  L)
Here is the call graph for this function:

◆ Mps() [3/3]

template<typename Scalar_ , typename Symmetry_ >
Xped::Mps< Scalar_, Symmetry_ >::Mps ( std::size_t  L,
const std::vector< Qbasis< Symmetry, 1 > > &  qloc_in,
const qType Qtarget_in = Symmetry::qvacuum(),
std::size_t  Mmax_in = 10,
std::size_t  Nqmax_in = 10,
std::size_t  seed = 0ul 
)
Here is the call graph for this function:

Member Function Documentation

◆ auxBasis()

template<typename Scalar_ , typename Symmetry_ >
Qbasis< Symmetry, 1 > Xped::Mps< Scalar_, Symmetry_ >::auxBasis ( std::size_t  l) const
inline
Here is the caller graph for this function:

◆ gen_auxBasis()

template<typename Scalar_ , typename Symmetry_ >
void Xped::Mps< Scalar_, Symmetry_ >::gen_auxBasis ( const std::size_t  Mmax,
const std::size_t  Nqmax 
)
Here is the caller graph for this function:

◆ gen_maxBasis()

template<typename Scalar_ , typename Symmetry_ >
void Xped::Mps< Scalar_, Symmetry_ >::gen_maxBasis
Here is the caller graph for this function:

◆ inBasis()

template<typename Scalar_ , typename Symmetry_ >
Qbasis< Symmetry, 1 > Xped::Mps< Scalar_, Symmetry_ >::inBasis ( std::size_t  l) const
inline
Here is the caller graph for this function:

◆ leftSweepStep()

template<typename Scalar_ , typename Symmetry_ >
void Xped::Mps< Scalar_, Symmetry_ >::leftSweepStep ( const std::size_t  loc,
const DMRG::BROOM broom,
const bool  DISCARD_U = false 
)
Here is the caller graph for this function:

◆ length()

template<typename Scalar_ , typename Symmetry_ >
std::size_t Xped::Mps< Scalar_, Symmetry_ >::length ( ) const
inline

◆ locBasis()

template<typename Scalar_ , typename Symmetry_ >
Qbasis< Symmetry, 1 > Xped::Mps< Scalar_, Symmetry_ >::locBasis ( std::size_t  l) const
inline
Here is the caller graph for this function:

◆ outBasis()

template<typename Scalar_ , typename Symmetry_ >
Qbasis< Symmetry, 1 > Xped::Mps< Scalar_, Symmetry_ >::outBasis ( std::size_t  l) const
inline
Here is the caller graph for this function:

◆ resizeArrays()

template<typename Scalar_ , typename Symmetry_ >
void Xped::Mps< Scalar_, Symmetry_ >::resizeArrays
Here is the caller graph for this function:

◆ rightSweepStep()

template<typename Scalar_ , typename Symmetry_ >
void Xped::Mps< Scalar_, Symmetry_ >::rightSweepStep ( const std::size_t  loc,
const DMRG::BROOM broom,
const bool  DISCARD_V = false 
)
Here is the caller graph for this function:

Member Data Documentation

◆ A

template<typename Scalar_ , typename Symmetry_ >
GaugeTriple<std::vector<ALType>, std::vector<ARType>, std::vector<ALType> > Xped::Mps< Scalar_, Symmetry_ >::A

◆ eps_svd

template<typename Scalar_ , typename Symmetry_ >
RealScalar Xped::Mps< Scalar_, Symmetry_ >::eps_svd = 1.e-10

◆ max_Nsv

template<typename Scalar_ , typename Symmetry_ >
std::size_t Xped::Mps< Scalar_, Symmetry_ >::max_Nsv = 10000

◆ maxBasis

template<typename Scalar_ , typename Symmetry_ >
std::vector<Qbasis<Symmetry, 1> > Xped::Mps< Scalar_, Symmetry_ >::maxBasis

◆ min_Nsv

template<typename Scalar_ , typename Symmetry_ >
std::size_t Xped::Mps< Scalar_, Symmetry_ >::min_Nsv = 0

◆ N_sites

template<typename Scalar_ , typename Symmetry_ >
std::size_t Xped::Mps< Scalar_, Symmetry_ >::N_sites

◆ Nq

template<typename Scalar_ , typename Symmetry_ >
constexpr std::size_t Xped::Mps< Scalar_, Symmetry_ >::Nq = Symmetry::Nq
staticconstexpr

◆ qaux

template<typename Scalar_ , typename Symmetry_ >
std::vector<Qbasis<Symmetry, 1> > Xped::Mps< Scalar_, Symmetry_ >::qaux

◆ qloc

template<typename Scalar_ , typename Symmetry_ >
std::vector<Qbasis<Symmetry, 1> > Xped::Mps< Scalar_, Symmetry_ >::qloc

◆ Qtarget

template<typename Scalar_ , typename Symmetry_ >
std::vector<qType> Xped::Mps< Scalar_, Symmetry_ >::Qtarget

◆ S

template<typename Scalar_ , typename Symmetry_ >
std::vector<RealScalar> Xped::Mps< Scalar_, Symmetry_ >::S

entropy

◆ SVspec

template<typename Scalar_ , typename Symmetry_ >
std::vector<std::map<qType, VectorType> > Xped::Mps< Scalar_, Symmetry_ >::SVspec

◆ truncWeight

template<typename Scalar_ , typename Symmetry_ >
std::vector<RealScalar> Xped::Mps< Scalar_, Symmetry_ >::truncWeight

truncated weight


The documentation for this class was generated from the following files: