# 3.7.14. horton.meanfield.scf – Basic Self-Consistent Field (SCF) algorithm.¶

class horton.meanfield.scf.PlainSCFSolver(threshold=1e-08, maxiter=128, skip_energy=False, level_shift=0.0)

Bases: object

Initialize a PlainSCFSolver.

Parameters: threshold (float) – The convergence threshold for the wavefunction. maxiter (int) – The maximum number of iterations. When set to None, the SCF loop will go one until convergence is reached. skip_energy (bool) – When set to True, the final energy is not computed. level_shift (float) – When set to non-zero, level-shifting is applied and the value of the argument controls the magnitude of the level shift. This argument cannot be negative.
__call__(**kwargs)

Find a self-consistent set of orbitals.

Parameters: ham (EffHam) – An effective Hamiltonian. lf (LinalgFactor) – The linalg factory to be used. overlap (TwoIndex) – The overlap operator. occ_model (OccModel) – Model for the orbital occupations. exp2, .. (exp1,) – The initial orbitals. The number of dms must match ham.ndm.
__init__(threshold=1e-08, maxiter=128, skip_energy=False, level_shift=0.0)

Initialize a PlainSCFSolver.

Parameters: threshold (float) – The convergence threshold for the wavefunction. maxiter (int) – The maximum number of iterations. When set to None, the SCF loop will go one until convergence is reached. skip_energy (bool) – When set to True, the final energy is not computed. level_shift (float) – When set to non-zero, level-shifting is applied and the value of the argument controls the magnitude of the level shift. This argument cannot be negative.
error(ham, lf, overlap, *exps)
kind = 'exp'