SyTen

◆ adaptAlpha()

void syten::MPS::DMRG::Worker::adaptAlpha ( SRDef const  preTrunc,
SRDef const  postTrunc 
)

Adapt the mixing factor alpha based on energy gain.

Parameters
preTruncenergy prior to truncation, after solution
postTruncenergy after truncation

Also uses conf.lastEnergy for the energy before the truncation.

The idea is that we want to keep the energy loss during truncation at some 30% of the energy gain during optimisation and adapt conf.alpha accordingly, as it controls the strength of the perturbation.

References syten::abs(), std::isnan(), std::max(), and std::min().

+ Here is the call graph for this function: