bool syten::MPS::LBOState::dropUnmatchedM | ( | Index const | site, |
bool const | left = true , |
||
bool const | right = true , |
||
bool const | up = true |
||
) |
Compares the blocks of the rank-3 MPS tensor on the specified site against its neighbouring tensors (if the relevant boolean is true) and removes them if no corresponding quantum number sector exists there.
References dIdx, syten::Tensor< rank >::getBasisMap(), syten::BasisMap::hasSymmetry(), lIdx, syten::MPS::LBOState::Local::M, m(), maybeCache(), std::move(), rIdx, size(), syten::Tensor< rank >::size(), uIdx, syten::MPS::LBOState::Local::V, and v().
Referenced by dropUnmatched(), syten::MPS::expand_to_left_lbo(), syten::MPS::expand_to_right_lbo(), syten::MPS::expand_to_top(), leftnormM(), physnormM(), physnormV(), and rightnormM().