File ScfConvergenceAccelerator.h

Copyright

This code is licensed under the 3-clause BSD license.

Copyright ETH Zurich, Laboratory for Physical Chemistry, Reiher Group.

See LICENSE.txt for details.

namespace Scine

This header file contains functions that allow for common notation for common things that can be done at a different degree of derivatives.

This header contains alias definitions defining which classes to use for the different degrees of derivatives.

namespace Utils
class ScfConvergenceAccelerator
#include <ScfConvergenceAccelerator.h>

This class sets up the convergence acceleration for a SCF method.

Public Functions

ScfConvergenceAccelerator(SCFMethod &method)
~ScfConvergenceAccelerator()
void setScfMixer(scf_mixer_t mixer)
scf_mixer_t getScfMixer() const

Private Functions

void removeCurrentMixer()
void setMixer(scf_mixer_t mixer)

Private Members

SCFMethod &method_
scf_mixer_t currentScheme_
std::shared_ptr<SCFModifier> activeScfMixer_