SyTen

◆ expand_to_left()

void syten::MPS::expand_to_left ( Tensor< 3 > const &  right,
Tensor< 3 > const &  source,
Tensor< 4 > const &  op,
State target,
Index const  position,
SRDef const  alpha = 0.1,
Index const  max_blocksize = 15,
SRDef const  ratio = 1.,
Index const  min_blocksize = 1 
)

Calculates an expansion term according to DMRG3S pointing to the left.

Parameters
rightthe right-contraction to the right of the active site
sourcethe local mps component
opthe local mpo component
targetthe target MPS state
positionthe position in the target state, sites position and position-1 will be affected.
alphathe mixing factor.
max_blocksizemaximal blocksize of the expander
ratiothe ratio of kept to discarded states
min_blocksizeminimal blocksize of the expander

References syten::MPS::Operator::dIdx, syten::MPS::State::dropUnmatched(), syten::expansion(), syten::genFuse(), syten::MPS::Operator::lIdx, syten::MPS::State::lIdx, norm(), syten::overThreshold(), syten::MPS::Operator::rIdx, syten::MPS::State::rIdx, SYTEN_ZNORM_THRESHOLD, syten::MPS::Operator::uIdx, syten::MPS::State::uIdx, syten::underThreshold(), and syten::zeroExpand().

Referenced by apply_op_orthogonalise_fit(), syten::MPS::DMRG::Worker::sweepLeft(), and syten::MPS::DMRG::Worker::sync().

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