scf_procedure Subroutine

public subroutine scf_procedure(p, a, g, b, f)

main SCF prodedure if( .NOT. (P%yes_soscf .and. iter>3 .and. ( iSOSCF>0 .or. F%d_rho < P%SOSCF_start(2) )) ) then << this is wrong : we have to check if SOSCF is actually started (see return value of soscf_driver) if( allocated(F%apply_looser_threshold) )then; if( F%apply_looser_threshold(j,i) .and. iter>=acceptable_convergenceAt_old(j,i)-1 .and. iter<acceptable_convergenceAt_old(j,i)+6 )then; write(*,'(a,i4,2f12.6,a,2es12.4,a,2i2)')"#SCF:apply_lower check convergence around expected point:",iter, dE, F%d_rho,"/",eTHR,dTHR,":",j,i endif; endif --- minimal print option for MC ---

Arguments

Type IntentOptional Attributes Name
type(param), intent(in) :: p
type(atom_set), intent(in) :: a(:)
type(grid3d), intent(in) :: g
type(basis), intent(in) :: b
type(wf_data), intent(inout) :: f