iPEPSv2 lattice, storing one-site operators as well as sum and product operators and generating applied operators on-the-fly. More...
#include <lattice.h>
Public Member Functions | |
void | add (std::string const &name, OneOp op) |
Adds a single-site operator to the lattice. More... | |
void | add (std::string const &name, ProdOp op) |
Adds a product operator to the lattice. More... | |
void | add (std::string const &name, SumOp op) |
Adds a sum operator to the lattice. More... | |
Index | c2i (Coord coord) const |
Returns the 0-indexed offset associated to coordinate coord . More... | |
SBasis const & | d (Coord const &loc) const |
Returns the effective physical basis on site loc (potentially merged with target basis). More... | |
SBasis const & | d_orig (Coord const &loc) const |
Returns the original physical basis on site loc (not merged with target basis). More... | |
ATwoOp | get (std::string const &name, Coord const &active, Coord const &secondary) const |
Returns a two-site operator representation of the single-site operator acting on site active and an identity on site secondary . More... | |
AOneOp | get (std::string const &name, Coord const &loc) const |
Returns a single-site operator acting on site loc . More... | |
OneOp & | getOne (std::string const &name) |
Returns an unapplied one-site operator reference. More... | |
OneOp const & | getOne (std::string const &name) const |
Returns an unapplied one-site operator constant reference. More... | |
ProdOp & | getProd (std::string const &name) |
Returns a ProdOp reference. More... | |
ProdOp const & | getProd (std::string const &name) const |
Returns a constant ProdOp reference. More... | |
SumOp & | getSum (std::string const &name) |
Returns a SumOp reference. More... | |
SumOp const & | getSum (std::string const &name) const |
Returns a constant SumOp reference. More... | |
bool | is_00_coord (Coord const coord) const |
Returns true if coord is equivalent to the 0,0-site. More... | |
Lattice ()=default | |
Default ctor. More... | |
Lattice (std::string desc, int width, int depth, SBasis vacuum_basis, SBasis target_basis, Vec< SBasis > orig_phys_bases) | |
Standard ctor. More... | |
Public Attributes | |
int | depth |
Depth of the unit cell (vertical/backwards-forwards). More... | |
std::string | description |
A brief description of the lattice. More... | |
SBasis | target_basis |
Outgoing target bases to merge with first site physical basis. More... | |
SBasis | vacuum_basis |
Incoming vacuum basis. More... | |
int | width |
Width of the unit cell (horizontal/left-right). More... | |
Private Attributes | |
std::map< std::string, OneOp > | one_ops |
defined single-site operators. More... | |
SBasis | orig_00_basis |
original site basis on site 0,0 (not merged with target basis) More... | |
Vec< SBasis > | phys_bases |
effective physical bases with the target basis and first site basis merged More... | |
std::map< std::string, ProdOp > | prod_ops |
defined product operators More... | |
std::map< std::string, SumOp > | sum_ops |
defined sum operators More... | |
Friends | |
std::ostream & | operator<< (std::ostream &out, Lattice const &lat) |
Output for iPEPSv2 lattices. More... | |
Boost serialisation support | |
static constexpr unsigned int | version = 1 |
Boost serialisation version. More... | |
static const std::string | uuid = "1f4420d2-c662-11e8-bca0-1b140d5f5071" |
Identifier for iPEPSv2 lattice files. More... | |
template<typename Archive > | |
void | serialize (Archive &ar, const unsigned int in_version) |
Boost serialisation. More... | |
iPEPSv2 lattice, storing one-site operators as well as sum and product operators and generating applied operators on-the-fly.