SRDef syten::MPS::apply_op_itrunc | ( | LBOState & | a, |
Operator const & | op, | ||
Truncation const & | trunc, | ||
bool const | relax = true , |
||
bool const | final_rightnorm = true |
||
) |
Applies the operator op
to the state a
using a variant of the zip-up algorithm by Stoudenmire et. al.
If relax
is true, relaxes truncation criteria during the initial zip-up. If final_rightnorm
is false, does not do a final right-normalisation of the state.
References syten::MPS::LBOState::dropUnmatched(), syten::Basis::flipped(), syten::genCombinator(), syten::genFuse(), syten::Tensor< rank >::getBasis(), syten::MPS::LBOState::m(), syten::Truncation::maxBlocksize, syten::Truncation::maxStates, syten::MPS::LBOState::rightnorm(), syten::MPS::LBOState::size(), SYTEN_ASSERT_DEBUG, syten::Truncation::threshold, and syten::MPS::LBOState::v().
Referenced by apply_op_itrunc_fit(), syten::do_apply_op(), syten::MPS::TEBD::doTEBD_serial(), syten::MPS::TDVP::Worker::gse_build_krylov_vectors(), syten::MPS::DMRG::Worker::gse_build_krylov_vectors(), and syten::Krylov::OperatorWrapper< Op >::operator()().