SyTen

◆ apply_op_itrunc()

SRDef syten::BTT::apply_op_itrunc ( State a,
Operator const &  op,
Truncation const &  trunc 
)

Applies the operator op in-place to the state a.

Immediately truncates according to a relaxed version of the conditions specified in trunc. After the operator is applied everywhere, it truncates according to the original specifications of trunc. Essentially a BTT-version of Stoudenmire’s zip-up algorithm.

References syten::BTT::State::aIdx, apply_operator_itrunc_rec(), syten::BTT::State::bIdx, syten::genCombinator(), syten::Truncation::maxBlocksize, syten::Truncation::maxStates, syten::BTT::State::pIdx, syten::BTT::State::pleaseCache, syten::BinaryTree::Tree< T >::r, syten::BTT::State::rIdx, syten::BTT::State::rnorm(), syten::Truncation::threshold, syten::BTT::State::truncateKeepNorm(), and syten::BinaryTree::Node< T >::v.

Referenced by apply_op_naive(), syten::do_apply_op(), and syten::Krylov::OperatorWrapper< syten::MPS::Operator >::operator()().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: