Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | private, | parameter | :: | idx_alpha | = | 1 | |
integer, | private, | parameter | :: | idx_beta | = | 2 | |
integer(kind=n_int), | private, | parameter | :: | oddBits | = | 6148914691236517205_n_int |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | GAS_list(:) | |||
integer, | intent(in) | :: | nI(nel) | |||
type(Excite_1_t), | intent(in) | :: | incomplete_exc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | GAS_list(:) | |||
integer, | intent(in) | :: | nI(nel) | |||
type(Excite_2_t), | intent(in) | :: | incomplete_exc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nEl) | |||
type(Excite_1_t), | intent(in) | :: | exc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nEl) | |||
type(Excite_2_t), | intent(in) | :: | exc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GASSpec_t), | intent(in) | :: | GAS_spec |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
class(GASSpec_t), | private, | allocatable | :: | GAS_spec | |||
integer(kind=n_int), | private, | allocatable | :: | GAS_orbs(:,:) |
Bitmasks containing the active spaces (stored in the same format as an ilut) also have spin-resolved bitmasks The index of GAS_orbs is [0:NIfD, 1:nGAS] Spin resolved version of GAS_orbs. The index is [0:NIfD, 1:nGAS, {idx_alpha, idx_beta}] |
||
integer(kind=n_int), | private, | allocatable | :: | GAS_spin_orbs(:,:,:) |
Bitmasks containing the active spaces (stored in the same format as an ilut) also have spin-resolved bitmasks The index of GAS_orbs is [0:NIfD, 1:nGAS] Spin resolved version of GAS_orbs. The index is [0:NIfD, 1:nGAS, {idx_alpha, idx_beta}] |
||
integer, | private, | allocatable | :: | GAS_spin_orb_list(:,:,:) |
Integer list of spin-orbitals for each GAS space, that contains in continous order the occupied orbitals. The index is [i-th occupied orbital in given GAS space, 1:nGAS, {idx_alpha, idx_beta}]. Note that a meaningful index is only [1:GAS_size(iGAS), iGAS, :] Number of orbitals in each GAS space. Lookup table containing the GAS space for each orbital. |
||
integer, | private, | allocatable | :: | GAS_size(:) |
Integer list of spin-orbitals for each GAS space, that contains in continous order the occupied orbitals. The index is [i-th occupied orbital in given GAS space, 1:nGAS, {idx_alpha, idx_beta}]. Note that a meaningful index is only [1:GAS_size(iGAS), iGAS, :] Number of orbitals in each GAS space. Lookup table containing the GAS space for each orbital. |
||
integer, | private, | allocatable | :: | GAS_table(:) |
Integer list of spin-orbitals for each GAS space, that contains in continous order the occupied orbitals. The index is [i-th occupied orbital in given GAS space, 1:nGAS, {idx_alpha, idx_beta}]. Note that a meaningful index is only [1:GAS_size(iGAS), iGAS, :] Number of orbitals in each GAS space. Lookup table containing the GAS space for each orbital. |
private pure function construct_GAS_disc_ExcGenerator_t (GAS_spec) |
procedure , public :: finalize => GAS_disc_finalize Subroutine | |
procedure , public :: gen_exc => GAS_disc_gen_exc Subroutine | |
procedure , public :: get_pgen => GAS_disc_get_pgen Function | |
procedure , public :: gen_all_excits => GAS_disc_gen_all_excits Subroutine | |
procedure , public :: generate_nGAS_single Subroutine | |
procedure , public :: generate_nGAS_double Subroutine | |
procedure , private , :: pick_hole_from_active_space Function | |
procedure , private , :: get_pgen_pick_weighted_hole Function | |
procedure , private , :: get_pgen_pick_hole_from_active_space Function | |
procedure , private , :: pick_weighted_hole_Excite_1_t Function | |
generic, private , :: pick_weighted_hole => pick_weighted_hole_Excite_1_t | |
procedure , private , :: calc_pgen_Excite_1_t Function | |
generic, private , :: calc_pgen => calc_pgen_Excite_1_t | |
procedure , private , :: pick_weighted_hole_Excite_2_t Function | |
generic, private , :: pick_weighted_hole => pick_weighted_hole_Excite_2_t | |
procedure , private , :: calc_pgen_Excite_2_t Function | |
generic, private , :: calc_pgen => calc_pgen_Excite_2_t |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GASSpec_t), | intent(in) | :: | GAS_spec |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_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) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_t), | intent(in) | :: | this | |||
integer, | intent(in) | :: | nI(nel) | |||
type(Excite_2_t), | intent(in) | :: | exc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_t), | intent(in) | :: | this | |||
integer(kind=n_int), | intent(in) | :: | ilut(0:NIfD) | |||
integer, | intent(in) | :: | srcGASInd | |||
integer, | intent(in) | :: | spin_idx |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | GAS_list(:) | |||
integer, | intent(in) | :: | nI(nel) | |||
type(Excite_1_t), | intent(in) | :: | incomplete_exc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | GAS_list(:) | |||
integer, | intent(in) | :: | nI(nel) | |||
type(Excite_2_t), | intent(in) | :: | incomplete_exc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nEl) | |||
type(Excite_1_t), | intent(in) | :: | exc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nEl) | |||
type(Excite_2_t), | intent(in) | :: | exc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_t), | intent(in) | :: | this | |||
integer, | intent(in) | :: | nI(nel) | |||
type(Excite_1_t), | intent(in) | :: | exc | |||
integer, | intent(in) | :: | spin_idx | |||
integer, | intent(in) | :: | iGAS | |||
real(kind=dp), | intent(inout) | :: | pgen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_t), | intent(in) | :: | this | |||
integer, | intent(in) | :: | nI(nel) | |||
type(Excite_2_t), | intent(in) | :: | exc | |||
integer, | intent(in) | :: | spin_idx | |||
integer, | intent(in) | :: | iGAS | |||
real(kind=dp), | intent(inout) | :: | pgen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_t), | intent(in) | :: | this | |||
integer(kind=n_int), | intent(in) | :: | ilutI(0:NIfD) | |||
integer, | intent(in) | :: | nI(nel) | |||
integer, | intent(in) | :: | iGAS | |||
integer, | intent(in) | :: | ms | |||
real(kind=dp), | intent(in) | :: | r | |||
real(kind=dp), | intent(out) | :: | pgen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_t), | intent(in) | :: | this | |||
type(SpinOrbIdx_t), | intent(in) | :: | det_I | |||
integer(kind=n_int), | intent(in) | :: | ilutI(0:NIfTot) | |||
type(Excite_1_t), | intent(in) | :: | exc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_t), | intent(in) | :: | this | |||
type(SpinOrbIdx_t), | intent(in) | :: | det_I | |||
integer(kind=n_int), | intent(in) | :: | ilutI(0:NIfTot) | |||
type(Excite_2_t), | intent(in) | :: | exc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_t), | intent(inout) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_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 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_t), | intent(in) | :: | this | |||
integer, | intent(in) | :: | nI(nEl) | |||
integer, | intent(out) | :: | n_excits | |||
integer(kind=n_int), | intent(out), | allocatable | :: | det_list(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_t), | intent(in) | :: | 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(out) | :: | ex(2,2) | |||
logical, | intent(out) | :: | par | |||
real(kind=dp), | intent(out) | :: | pgen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GAS_disc_ExcGenerator_t), | intent(in) | :: | 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(out) | :: | ex(2,2) | |||
logical, | intent(out) | :: | par | |||
real(kind=dp), | intent(out) | :: | pgen |