SyTen
dmrg.h File Reference

General data structures for DMRG algorithms. More...

#include <unordered_map>
#include "inc/util/boost_versioning.h"
#include "inc/util/pair.h"
#include "inc/alg/iterative.h"
#include "inc/tensor/truncation.h"
#include "basis-trafo.h"
#include "gse_config.h"
+ Include dependency graph for dmrg.h:
+ This graph shows which files directly or indirectly include this file:

Classes

struct  syten::DMRG::DMRGConfig
 Configuration for an entire DMRG run. More...
 
struct  syten::DMRG::DMRGStage
 Configuration for a single DMRG stage. More...
 

Namespaces

namespace  syten
 Syten namespace.
 
namespace  syten::DMRG
 General DMRG-related classes for both MPS and BTT.
 

Enumerations

enum class  syten::DMRG::ContractSeq { Default , LWMR , LMWR , LMWWR }
 Contraction sequence in the internal solver of MPS-DMRG. More...
 
enum class  syten::DMRG::DMRGMode {
  DMRG3S , DMRG3SRND , ThreeHalfSite , TwoNode ,
  TwoSite , TwoSite_mt , TwoSiteVariance
}
 Specific DMRG::DMRG algorithm. More...
 
enum class  syten::DMRG::LBOContractSeq { Default , Heff , Sep }
 Contraction sequence in the internal solver of MPS-LBO DMRG on LBO matrices. More...
 
enum class  syten::DMRG::SweepDirection { Left , Right }
 Sweep direction for 1D-DMRG and similar algorithms. More...
 

Functions

std::ostreamsyten::DMRG::operator<< (std::ostream &out, ContractSeq const &s)
 Output operator for a MPS-DMRG contraction sequence, reversible. More...
 
std::ostreamsyten::DMRG::operator<< (std::ostream &out, DMRGMode const &m)
 Output operator for a DMRG mode, reversible. More...
 
std::ostreamsyten::DMRG::operator<< (std::ostream &out, DMRGStage const &stage)
 Output operator for a DMRGStage with abbreviations, reversible. More...
 
std::ostreamsyten::DMRG::operator<< (std::ostream &out, LBOContractSeq const &s)
 Output operator for a LBO-MPS-DMRG contraction sequence, reversible. More...
 
std::ostreamsyten::DMRG::operator<< (std::ostream &out, Verbose< DMRGStage > const &stage)
 Output operator for a DMRGStage with verbose keys, reversible. More...
 
std::istreamsyten::DMRG::operator>> (std::istream &in, ContractSeq &s)
 Input/parsing operator for a MPS-DMRG contraction sequence, reversible. More...
 
std::istreamsyten::DMRG::operator>> (std::istream &in, DMRGMode &m)
 Input/parsing operator for a DMRG mode, reversible. More...
 
std::istreamsyten::DMRG::operator>> (std::istream &in, DMRGStage &stage)
 Input/parsing operator for a DMRGStage, reversible. More...
 
std::istreamsyten::DMRG::operator>> (std::istream &in, LBOContractSeq &s)
 Input/parsing operator for a LBO-MPS-DMRG contraction sequence, reversible. More...
 
std::istreamsyten::DMRG::operator>> (std::istream &in, std::vector< DMRGStage > &v)
 Input/parsing operator for a vector of DMRGStage structs. More...
 

Detailed Description

General data structures for DMRG algorithms.

This file is intended to be included by structure-specific DMRG implementations, i.e. BTT::DMRG and MPS::DMRG and only provides classes common to all such implementations, but not an implementation itself.