Tensor< 4 > syten::IPEPS::vert2_norm | ( | Vert2CTM const & | env, |
State const & | psi, | ||
Tensor< 4 > & | fq, | ||
Tensor< 3 > & | a, | ||
Tensor< 4 > & | bq, | ||
Tensor< 3 > & | b, | ||
bool | gauge_fix, | ||
bool | use_svd | ||
) |
Calculates a rank-4 norm tensor from a vertical two-site environment and the supplied left- and right QR'ed auxiliary tensors.
The tensor can be completed using a
and b
and their complex conjugates to form the squared norm of the state. The vertical environment may not straddle the remover tensor.
References syten::Basis::a(), syten::IPEPS::Vert2CTM::bsite, syten::IPEPS::Vert2CTM::cb, syten::IPEPS::Vert2CTM::cbb, syten::correct_cgc_tensors(), syten::IPEPS::Vert2CTM::ct, syten::IPEPS::Vert2CTM::ctb, gauge_fix(), syten::gM(), syten::insertIOSplitHalf(), syten::insertSwap(), syten::IPEPS::Vert2CTM::lb, syten::IPEPS::Vert2CTM::lbb, syten::IPEPS::Vert2CTM::lt, syten::IPEPS::Vert2CTM::ltb, std::move(), syten::norm(), syten::normalised(), syten::IPEPS::Vert2CTM::rb, syten::IPEPS::Vert2CTM::rbb, syten::restrict(), syten::IPEPS::Vert2CTM::rt, syten::IPEPS::Vert2CTM::rtb, sldlmap(), SYTEN_ASSERT_MSG, and syten::IPEPS::Vert2CTM::tsite.
Referenced by syten::IPEPS::FullUpdate::vertical().