SyTen
switching.h File Reference

Functions generating MPOs and MPO components used to switch around the ordering of two sites. More...

#include <vector>
#include "inc/util/pair.h"
#include "inc/tensor/basis.h"
#include "inc/tensor/tensor.h"
#include "inc/mps/operator.h"
+ Include dependency graph for switching.h:
+ This graph shows which files directly or indirectly include this file:

Namespaces

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

Functions

MPS::Operator syten::MPS::build_exchange_mpo_above (std::vector< Basis > const &lop_basis, Index const sa, Index const sb, Basis const &vac, std::vector< Pair< Index, Index > > const &fermions)
 Constructs a MPO acting from above which switches the two neighbouring sites sa and sb. More...
 
MPS::Operator syten::MPS::build_exchange_mpo_below (std::vector< Basis > const &uop_basis, Index const sa, Index const sb, Basis const &vac, std::vector< Pair< Index, Index > > const &fermions)
 Behaves the same as build_exchange_mpo_above(), except that it constructs the MPO for application from below; hence also needs an outgoing basis vector to be supplied. More...
 
Pair< Tensor< 4 >, Tensor< 4 > > syten::MPS::build_exchange_tensors_above (Basis const &a, Basis const &b, Basis const &vac, std::vector< Pair< Index, Index > > const &fermions)
 Given two incoming physical bases (upper indices of MPS or MPO), builds two active site tensors switching them around. More...
 
Pair< Tensor< 4 >, Tensor< 4 > > syten::MPS::build_exchange_tensors_below (Basis const &a, Basis const &b, Basis const &vac, std::vector< Pair< Index, Index > > const &fermions)
 Behaves the same as build_exchange_tensors_above(), except that it constructs the tensors for application from below; hence also requires outgoing bases a, b to be supplied. More...
 
void syten::MPS::switch_sites (MPS::Operator &op, Index const sa, Index const sb, std::vector< Pair< Index, Index > > const &fermions)
 Given an MPO op, switches neighbouring sites sa and sb with fermionic sectors as specified by fermions where sa+1 == sb. More...
 

Detailed Description

Functions generating MPOs and MPO components used to switch around the ordering of two sites.