@brief Base type for SCF converger results
@detail It is used by main SCF convergence driver scf_conv
The extending type should provide the following interfaces:
init : preliminary initialization of internal subconverger data
clean : destructor
setup : setting-up of the sub-converger equations, taking into the account the new data
added in main SCF driver
run : solving the equations, returns scf_conv_result
datatype. Multiple subsequent calls to
this procedure without re-running setup
should not change internal state and have to give same results
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public | :: | ierr | = | 5 | ||
real(kind=dp), | public | :: | error | = | 1.0e99_dp | ||
type(converger_data), | public, | pointer | :: | dat | => | null() | |
character(len=conv_name_maxlen), | public | :: | active_converger_name | = | '' |
@brief Form the new Fock matrix
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(scf_conv_result), | intent(in) | :: | self | |||
real(kind=dp), | intent(inout) | :: | matrix(:,:) | |||
integer, | intent(out) | :: | istat |
@brief Form the new density matrix
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(scf_conv_result), | intent(in) | :: | self | |||
real(kind=dp), | intent(inout) | :: | matrix(:,:) | |||
integer, | intent(out) | :: | istat |