5.3.6. band_minimizer.pccg¶
- eminus.band_minimizer.pccg(scf, W, Nit, cost=scf_step_occ, grad=get_grad_occ, condition=check_convergence, betat=3e-5, cgform=1, precondition=True)[source]¶
Preconditioned conjugate-gradient minimization algorithm for a fixed Hamiltonian.
- Parameters:
scf – SCF object.
W – Expansion coefficients of unconstrained wave functions in reciprocal space.
Nit – Maximum number of SCF steps.
- Keyword Arguments:
cost – Function that will run every SCF step.
grad – Function that calculates the respective gradient.
condition – Function to check and log the convergence condition.
betat – Step size.
cgform – Conjugate gradient form.
precondition – Whether to use a preconditioner.
- Returns:
Band energies per SCF cycle and optimized expansion coefficients.