VMPS++
|
Definition at line 12 of file HeisenbergObservables.h.
#include <HeisenbergObservables.h>
Public Member Functions | |
template<typename Dummy = Symmetry> | |
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, complex< double > > >::type | S_ky (vector< complex< double > > phases) const |
template<typename Dummy = Symmetry> | |
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, complex< double > > >::type | Sdag_ky (vector< complex< double > > phases, double factor=sqrt(3.)) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, complex< double > > >::type | Sa_ky (SPINOP_LABEL Sa, vector< complex< double > > phases) const |
std::vector< Mpo< Symmetry, Scalar > > | make_spinPermutation (const Permutation &permutations) const |
MpoTerms< Symmetry, double > | spin_swap_operator_D2 (const std::size_t locx1, const std::size_t locx2, const std::size_t locy1=0ul, const std::size_t locy2=0ul) const |
MpoTerms< Symmetry, double > | Psinglet (const std::size_t locx1, const std::size_t locx2, const std::size_t locy1=0ul, const std::size_t locy2=0ul) const |
MpoTerms< Symmetry, double > | spin_swap_operator_D3 (const std::size_t locx1, const std::size_t locx2, const std::size_t locy1=0ul, const std::size_t locy2=0ul) const |
HeisenbergObservables () | |
HeisenbergObservables (const size_t &L) | |
HeisenbergObservables (const size_t &L, const vector< Param > ¶ms, const std::map< string, std::any > &defaults) | |
template<typename Dummy = Symmetry> | |
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | S (size_t locx, size_t locy=0, double factor=1.) const |
template<typename Dummy = Symmetry> | |
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | Sdag (size_t locx, size_t locy=0, double factor=std::sqrt(3.)) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | Scomp (SPINOP_LABEL Sa, size_t locx, size_t locy=0, double factor=1.) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | Qcomp (SPINOP_LABEL Sa, size_t locx, size_t locy=0, double factor=1.) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | Sz (size_t locx, size_t locy=0) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | Sx (size_t locx, size_t locy=0) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | iSy (size_t locx, size_t locy=0) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | Sp (size_t locx, size_t locy=0) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | Sm (size_t locx, size_t locy=0) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, complex< double > > >::type | exp_ipiSz (size_t locx, size_t locy=0, double factor=1.) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | ScompScomp (SPINOP_LABEL Sa1, SPINOP_LABEL Sa2, size_t locx1, size_t locx2, size_t locy1=0, size_t locy2=0, double fac=1.) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | QcompQcomp (SPINOP_LABEL Sa1, SPINOP_LABEL Sa2, size_t locx1, size_t locx2, size_t locy1=0, size_t locy2=0, double fac=1.) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | SpSm (size_t locx1, size_t locx2, size_t locy1=0, size_t locy2=0, double fac=1.) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | SmSp (size_t locx1, size_t locx2, size_t locy1=0, size_t locy2=0, double fac=1.) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | SzSz (size_t locx1, size_t locx2, size_t locy1=0, size_t locy2=0) const |
template<typename Dummy = Symmetry> | |
std::enable_if< Dummy::NO_SPIN_SYM(), Mpo< Symmetry, Scalar > >::type | SxSx (size_t locx1, size_t locx2, size_t locy1=0, size_t locy2=0) const |
template<typename Dummy = Symmetry> | |
std::conditional< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar >, vector< Mpo< Symmetry, Scalar > > >::type | SdagS (size_t locx1, size_t locx2, size_t locy1=0, size_t locy2=0, double factor=1.) const |
template<typename Dummy = Symmetry> | |
std::conditional< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar >, vector< Mpo< Symmetry, Scalar > > >::type | QdagQ (size_t locx1, size_t locx2, size_t locy1=0, size_t locy2=0) const |
template<typename Dummy = Symmetry> | |
std::conditional< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar >, vector< Mpo< Symmetry, Scalar > > >::type | SdagSxS (size_t locx1, size_t locx2, size_t locx3, size_t locy1=0, size_t locy2=0, size_t locy3=0) const |
template<typename Dummy = Symmetry> | |
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | Stot (size_t locy1=0, double factor=1., int dLphys=1) const |
template<typename Dummy = Symmetry> | |
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | Sdagtot (size_t locy1=0, double factor=std::sqrt(3.), int dLphys=1) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | Scomptot (SPINOP_LABEL Sa, size_t locy1=0, double factor=1., int dLphys=1) const |
template<typename Dummy = Symmetry> | |
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | Q (size_t locx, size_t locy=0, double factor=1.) const |
template<typename Dummy = Symmetry> | |
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | Qdag (size_t locx, size_t locy=0, double factor=std::sqrt(5.)) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, complex< double > > >::type | Rcomp (SPINOP_LABEL Sa, size_t locx, size_t locy=0) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | String (STRING STR, size_t locx, size_t locy=0) const |
template<typename Dummy = Symmetry> | |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type | StringCorr (STRING STR, size_t locx1, size_t locx2, size_t locy1=0, size_t locy2=0) const |
Protected Member Functions | |
Mpo< Symmetry, Scalar > | make_local (size_t locx, size_t locy, const OperatorType &Op, double factor=1., bool HERMITIAN=false, STRING STR=NOSTRING) const |
Mpo< Symmetry, Scalar > | make_localSum (const vector< OperatorType > &Op, vector< Scalar > factor, bool HERMITIAN) const |
Mpo< Symmetry, Scalar > | make_corr (size_t locx1, size_t locx2, size_t locy1, size_t locy2, const OperatorType &Op1, const OperatorType &Op2, qarray< Symmetry::Nq > Qtot, double factor, bool HERMITIAN, STRING STR=NOSTRING) const |
Mpo< Symmetry, complex< double > > | make_FourierYSum (string name, const vector< OperatorType > &Ops, double factor, bool HERMITIAN, const vector< complex< double > > &phases) const |
Protected Attributes | |
vector< SpinBase< Symmetry > > | B |
Private Types | |
typedef SiteOperatorQ< Symmetry, Eigen::Matrix< Scalar, Dynamic, Dynamic > > | OperatorType |
|
private |
Definition at line 14 of file HeisenbergObservables.h.
|
inline |
Definition at line 19 of file HeisenbergObservables.h.
HeisenbergObservables< Symmetry, Scalar >::HeisenbergObservables | ( | const size_t & | L | ) |
Definition at line 163 of file HeisenbergObservables.h.
HeisenbergObservables< Symmetry, Scalar >::HeisenbergObservables | ( | const size_t & | L, |
const vector< Param > & | params, | ||
const std::map< string, std::any > & | defaults | ||
) |
Definition at line 170 of file HeisenbergObservables.h.
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, complex< double > > >::type HeisenbergObservables< Symmetry, Scalar >::exp_ipiSz | ( | size_t | locx, |
size_t | locy = 0 , |
||
double | factor = 1. |
||
) | const |
Definition at line 436 of file HeisenbergObservables.h.
|
inline |
Definition at line 38 of file HeisenbergObservables.h.
|
protected |
Definition at line 231 of file HeisenbergObservables.h.
|
protected |
Definition at line 293 of file HeisenbergObservables.h.
|
protected |
Definition at line 184 of file HeisenbergObservables.h.
|
protected |
Definition at line 210 of file HeisenbergObservables.h.
std::vector< Mpo< Symmetry, Scalar > > HeisenbergObservables< Symmetry, Scalar >::make_spinPermutation | ( | const Permutation & | permutations | ) | const |
Definition at line 746 of file HeisenbergObservables.h.
MpoTerms< Symmetry, double > HeisenbergObservables< Symmetry, Scalar >::Psinglet | ( | const std::size_t | locx1, |
const std::size_t | locx2, | ||
const std::size_t | locy1 = 0ul , |
||
const std::size_t | locy2 = 0ul |
||
) | const |
Definition at line 872 of file HeisenbergObservables.h.
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::Q | ( | size_t | locx, |
size_t | locy = 0 , |
||
double | factor = 1. |
||
) | const |
Definition at line 412 of file HeisenbergObservables.h.
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::Qcomp | ( | SPINOP_LABEL | Sa, |
size_t | locx, | ||
size_t | locy = 0 , |
||
double | factor = 1. |
||
) | const |
Definition at line 340 of file HeisenbergObservables.h.
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::QcompQcomp | ( | SPINOP_LABEL | Sa1, |
SPINOP_LABEL | Sa2, | ||
size_t | locx1, | ||
size_t | locx2, | ||
size_t | locy1 = 0 , |
||
size_t | locy2 = 0 , |
||
double | fac = 1. |
||
) | const |
Definition at line 385 of file HeisenbergObservables.h.
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::Qdag | ( | size_t | locx, |
size_t | locy = 0 , |
||
double | factor = std::sqrt(5.) |
||
) | const |
Definition at line 420 of file HeisenbergObservables.h.
std::conditional< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar >, vector< Mpo< Symmetry, Scalar > > >::type HeisenbergObservables< Symmetry, Scalar >::QdagQ | ( | size_t | locx1, |
size_t | locx2, | ||
size_t | locy1 = 0 , |
||
size_t | locy2 = 0 |
||
) | const |
Definition at line 533 of file HeisenbergObservables.h.
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, complex< double > > >::type HeisenbergObservables< Symmetry, Scalar >::Rcomp | ( | SPINOP_LABEL | Sa, |
size_t | locx, | ||
size_t | locy = 0 |
||
) | const |
Definition at line 349 of file HeisenbergObservables.h.
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::S | ( | size_t | locx, |
size_t | locy = 0 , |
||
double | factor = 1. |
||
) | const |
Definition at line 396 of file HeisenbergObservables.h.
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, complex< double > > >::type HeisenbergObservables< Symmetry, Scalar >::S_ky | ( | vector< complex< double > > | phases | ) | const |
Definition at line 610 of file HeisenbergObservables.h.
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, complex< double > > >::type HeisenbergObservables< Symmetry, Scalar >::Sa_ky | ( | SPINOP_LABEL | Sa, |
vector< complex< double > > | phases | ||
) | const |
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::Scomp | ( | SPINOP_LABEL | Sa, |
size_t | locx, | ||
size_t | locy = 0 , |
||
double | factor = 1. |
||
) | const |
Definition at line 331 of file HeisenbergObservables.h.
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::ScompScomp | ( | SPINOP_LABEL | Sa1, |
SPINOP_LABEL | Sa2, | ||
size_t | locx1, | ||
size_t | locx2, | ||
size_t | locy1 = 0 , |
||
size_t | locy2 = 0 , |
||
double | fac = 1. |
||
) | const |
Definition at line 374 of file HeisenbergObservables.h.
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::Scomptot | ( | SPINOP_LABEL | Sa, |
size_t | locy1 = 0 , |
||
double | factor = 1. , |
||
int | dLphys = 1 |
||
) | const |
Definition at line 457 of file HeisenbergObservables.h.
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::Sdag | ( | size_t | locx, |
size_t | locy = 0 , |
||
double | factor = std::sqrt(3.) |
||
) | const |
Definition at line 404 of file HeisenbergObservables.h.
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, complex< double > > >::type HeisenbergObservables< Symmetry, Scalar >::Sdag_ky | ( | vector< complex< double > > | phases, |
double | factor = sqrt(3.) |
||
) | const |
Definition at line 623 of file HeisenbergObservables.h.
std::conditional< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar >, vector< Mpo< Symmetry, Scalar > > >::type HeisenbergObservables< Symmetry, Scalar >::SdagS | ( | size_t | locx1, |
size_t | locx2, | ||
size_t | locy1 = 0 , |
||
size_t | locy2 = 0 , |
||
double | factor = 1. |
||
) | const |
Definition at line 514 of file HeisenbergObservables.h.
std::conditional< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar >, vector< Mpo< Symmetry, Scalar > > >::type HeisenbergObservables< Symmetry, Scalar >::SdagSxS | ( | size_t | locx1, |
size_t | locx2, | ||
size_t | locx3, | ||
size_t | locy1 = 0 , |
||
size_t | locy2 = 0 , |
||
size_t | locy3 = 0 |
||
) | const |
Definition at line 554 of file HeisenbergObservables.h.
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::Sdagtot | ( | size_t | locy1 = 0 , |
double | factor = std::sqrt(3.) , |
||
int | dLphys = 1 |
||
) | const |
Definition at line 495 of file HeisenbergObservables.h.
|
inline |
Definition at line 42 of file HeisenbergObservables.h.
|
inline |
Definition at line 52 of file HeisenbergObservables.h.
|
inline |
Definition at line 40 of file HeisenbergObservables.h.
MpoTerms< Symmetry, double > HeisenbergObservables< Symmetry, Scalar >::spin_swap_operator_D2 | ( | const std::size_t | locx1, |
const std::size_t | locx2, | ||
const std::size_t | locy1 = 0ul , |
||
const std::size_t | locy2 = 0ul |
||
) | const |
Definition at line 803 of file HeisenbergObservables.h.
MpoTerms< Symmetry, double > HeisenbergObservables< Symmetry, Scalar >::spin_swap_operator_D3 | ( | const std::size_t | locx1, |
const std::size_t | locx2, | ||
const std::size_t | locy1 = 0ul , |
||
const std::size_t | locy2 = 0ul |
||
) | const |
Definition at line 941 of file HeisenbergObservables.h.
|
inline |
Definition at line 50 of file HeisenbergObservables.h.
std::enable_if< Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::Stot | ( | size_t | locy1 = 0 , |
double | factor = 1. , |
||
int | dLphys = 1 |
||
) | const |
Definition at line 476 of file HeisenbergObservables.h.
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::String | ( | STRING | STR, |
size_t | locx, | ||
size_t | locy = 0 |
||
) | const |
Definition at line 636 of file HeisenbergObservables.h.
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::StringCorr | ( | STRING | STR, |
size_t | locx1, | ||
size_t | locx2, | ||
size_t | locy1 = 0 , |
||
size_t | locy2 = 0 |
||
) | const |
Definition at line 644 of file HeisenbergObservables.h.
|
inline |
Definition at line 36 of file HeisenbergObservables.h.
|
inline |
Definition at line 56 of file HeisenbergObservables.h.
std::enable_if<!Dummy::IS_SPIN_SU2(), Mpo< Symmetry, Scalar > >::type HeisenbergObservables< Symmetry, Scalar >::Sz | ( | size_t | locx, |
size_t | locy = 0 |
||
) | const |
Definition at line 428 of file HeisenbergObservables.h.
|
inline |
Definition at line 54 of file HeisenbergObservables.h.
|
protected |
Definition at line 159 of file HeisenbergObservables.h.