type, public, abstract, extends(ExcitationGenerator_t) :: ClassicAbInitExcitationGenerator_t
this abstract excitation generator covers all ab initio Hamiltonians
in the typical sense (i.e. up to double excitations)
Type-Bound Procedures
-
private subroutine abinit_gen_exc(this, nI, ilutI, nJ, ilutJ, exFlag, ic, ex, tParity, pGen, hel, store, part_type)
Arguments
Type |
Intent | Optional | Attributes |
|
Name |
|
class(ClassicAbInitExcitationGenerator_t),
|
intent(inout) |
|
|
:: |
this |
|
integer,
|
intent(in) |
|
|
:: |
nI(nel) |
|
integer(kind=n_int),
|
intent(in) |
|
|
:: |
ilutI(0:NIfTot) |
|
integer,
|
intent(out) |
|
|
:: |
nJ(nel) |
|
integer(kind=n_int),
|
intent(out) |
|
|
:: |
ilutJ(0:NifTot) |
|
integer,
|
intent(in) |
|
|
:: |
exFlag |
|
integer,
|
intent(out) |
|
|
:: |
ic |
|
integer,
|
intent(out) |
|
|
:: |
ex(2,maxExcit) |
|
logical,
|
intent(out) |
|
|
:: |
tParity |
|
real(kind=dp),
|
intent(out) |
|
|
:: |
pGen |
|
real(kind=dp),
|
intent(out) |
|
|
:: |
hel |
|
type(excit_gen_store_type),
|
intent(inout), |
|
target
|
:: |
store |
|
integer,
|
intent(in), |
optional |
|
:: |
part_type |
|
-
private function abinit_get_pgen(this, nI, ilutI, ex, ic, ClassCount2, ClassCountUnocc2) result(pgen)
Arguments
Type |
Intent | Optional | Attributes |
|
Name |
|
class(ClassicAbInitExcitationGenerator_t),
|
intent(inout) |
|
|
:: |
this |
|
integer,
|
intent(in) |
|
|
:: |
nI(nel) |
|
integer(kind=n_int),
|
intent(in) |
|
|
:: |
ilutI(0:NIfTot) |
|
integer,
|
intent(in) |
|
|
:: |
ex(2,maxExcit) |
|
integer,
|
intent(in) |
|
|
:: |
ic |
|
integer,
|
intent(in) |
|
|
:: |
ClassCount2(ScratchSize) |
|
integer,
|
intent(in) |
|
|
:: |
ClassCountUnocc2(ScratchSize) |
|
Return Value
real(kind=dp)
-
private subroutine abinit_gen_all_excits(this, nI, n_excits, det_list)
Arguments
Type |
Intent | Optional | Attributes |
|
Name |
|
class(ClassicAbInitExcitationGenerator_t),
|
intent(in) |
|
|
:: |
this |
|
integer,
|
intent(in) |
|
|
:: |
nI(nEl) |
|
integer,
|
intent(out) |
|
|
:: |
n_excits |
|
integer(kind=n_int),
|
intent(out), |
|
allocatable
|
:: |
det_list(:,:) |
|