diis_unrestricted Subroutine

public subroutine diis_unrestricted(p, b, f, niter)

Feb.25.2015 : K.H : (1) Half of operation (w.r. i and j ) can be skipped using symmetry. (2) You do not need full matrix multiplication (dimension=B%N_basis) since we just need the trace this amounts to ~10 sec gain per iteration for 180 atom (660basis) calculations

Arguments

Type IntentOptional Attributes Name
type(param), intent(in) :: p
type(basis), intent(in) :: b
type(wf_data), intent(inout) :: f
integer, intent(in) :: niter