SyTen
lbo_state.h File Reference

A MPS class including a LBO. More...

+ Include dependency graph for lbo_state.h:
+ This graph shows which files directly or indirectly include this file:

Classes

class  syten::MPS::LBOState
 Matrix-product state with local basis optimisation (see Florian Dorfner's thesis). More...
 
struct  syten::MPS::LBOState::Local
 Flagged enum denoting which of the current site tensors is of relevance. More...
 

Namespaces

namespace  syten
 Syten namespace.
 
namespace  syten::MPS
 The namespace containing all MPS-related tools, classes and objects.
 

Functions

void syten::MPS::addScaled (LBOState &a, LBOState const &b, SDef const &s)
 Adds b, scaled by s, to a. More...
 
SRDef syten::MPS::apply_op_itrunc (LBOState &a, Operator const &op, Truncation const &trunc, bool const relax=true, bool const final_rightnorm=true)
 Applies the operator op to the state a using a variant of the zip-up algorithm by Stoudenmire et. al. More...
 
SRDef syten::MPS::apply_op_naive (LBOState &a, Operator const &op)
 Naively applies the operator op to the state a. More...
 
bool syten::MPS::expand_to_left_lbo (Tensor< 3 > const &right, Tensor< 4 > const &op, LBOState &target, Index const position, SRDef const alpha=0.1, Index const max_blocksize=15, SRDef const ratio=1., Index const min_blocksize=5)
 Expands the LBO leftwards from site position. More...
 
bool syten::MPS::expand_to_right_lbo (Tensor< 3 > const &left, Tensor< 4 > const &op, LBOState &target, Index const position, SRDef const alpha=0.1, Index const max_blocksize=15, SRDef const ratio=1., Index const min_blocksize=5)
 Expands the LBO rightwards from site position. More...
 
bool syten::MPS::expand_to_top (Tensor< 3 > const &left, Tensor< 3 > const &right, Tensor< 4 > const &op, LBOState &target, Index const position, SRDef const alpha=0.1, Index const max_blocksize=15, SRDef const ratio=1., Index const min_blocksize=5)
 Expands the LBO topwards from site position. More...
 
SDef syten::MPS::expectation (LBOState const &a, Operator const &op)
 Calculates the expectation value \(\langle a | \left(\hat O | a \rangle\right)\). More...
 
SDef syten::MPS::expectation (LBOState const &a, Operator const &op, LBOState const &b)
 Calculates the expectation value \(\langle b | \left(\hat O | a \rangle\right)\). More...
 
Tensor< 3 > syten::MPS::lbo_lbo_mps_cmp (Tensor< 3 > const &m, Tensor< 2 > const &v_lower, Tensor< 2 > const &v_upper)
 Contracts the physical indices of the MPS m component with the physical indices of v_lower and the full physical index of herm(v_upper), resulting in a new MPS component in the optimised space. More...
 
Tensor< 4 > syten::MPS::lboify_mpo_cmp (Tensor< 4 > const &w, Tensor< 2 > const &v_lower, Tensor< 2 > const &v_upper)
 Contracts the physical indices of the MPO component w with the LBO tensors v_lower and herm(v_upper) to result in a new MPO component in the LBO space. More...
 
SRDef syten::MPS::norm (LBOState const &a)
 Calculates the norm of a state. More...
 
SRDef syten::MPS::normSqd (LBOState const &a)
 Calculates the norm of a state. More...
 
LBOState syten::MPS::operator+ (LBOState const &a, LBOState const &b)
 Adds two states a and b together. More...
 
std::ostreamsyten::MPS::operator<< (std::ostream &out, LBOState const &s)
 Prints the state to the output stream out More...
 
SDef syten::MPS::overlap (LBOState const &b, LBOState const &a)
 Calculates the overlap of two states. More...
 

Detailed Description

A MPS class including a LBO.