| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| real(kind=dp), | public | :: | scale_down_exch_singles | = | 1._dp | ||
| type(PropVec_PCHB_SinglesOptions_vals_t), | private, | parameter | :: | option_vals | = | PropVec_PCHB_SinglesOptions_vals_t() |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public | :: | val | ||||
| character(len=9), | public | :: | str |
| generic, public :: operator(==) => eq_EnumBase_t | |
| generic, public :: operator(/=) => neq_EnumBase_t | |
| procedure, public :: to_str => to_str_algorithm |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(PropVec_PCHB_SinglesAlgorithm_t), | public | :: | UNIF_UNIF | = | PropVec_PCHB_SinglesAlgorithm_t(1, 'UNIF:UNIF') | ||
| type(PropVec_PCHB_SinglesAlgorithm_t), | public | :: | FULL_FULL | = | PropVec_PCHB_SinglesAlgorithm_t(2, 'FULL:FULL') | ||
| type(PropVec_PCHB_SinglesAlgorithm_t), | public | :: | UNIF_FULL | = | PropVec_PCHB_SinglesAlgorithm_t(3, 'UNIF:FULL') | ||
| type(PropVec_PCHB_SinglesAlgorithm_t), | public | :: | UNIF_XNEW | = | PropVec_PCHB_SinglesAlgorithm_t(4, 'UNIF:XNEW') |
| procedure, public, nopass :: from_str => alg_from_str |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(PropVec_PCHB_SinglesAlgorithm_t), | public | :: | algorithm | ||||
| type(PropVec_PCHB_SinglesWeighting_t), | public | :: | weighting |
| procedure, public :: is_valid | |
| procedure, public :: to_str => to_str_singles |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(PropVec_PCHB_SinglesAlgorithm_vals_t), | public | :: | algorithm | = | PropVec_PCHB_SinglesAlgorithm_vals_t() | ||
| type(PropVec_PCHB_SinglesWeighting_vals_t), | public | :: | weighting | = | PropVec_PCHB_SinglesWeighting_vals_t() |
The precomputed PropVec uniform excitation generator
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| class(AlsoGUGA_PropertyIndexer_t), | private, | allocatable | :: | indexer | |||
| logical, | public | :: | use_lookup | = | .false. |
Use a lookup for the prop_vec index in global_det_data. |
|
| logical, | public | :: | create_lookup | = | .false. |
Create and manage! the prop_vec index lookup in global_det_data. |
|
| integer(kind=n_int), | private, | allocatable | :: | allowed_holes(:,:,:) |
Bitmask for the allowed holes for a single excitation |
||
| integer, | private | :: | L_spat_bits | = | -1 |
The number of integer(n_int) numbers to store information about spatial orbitals as bitmask |
| procedure, public :: init => init_PropVec_UniformExcGenerator_t | |
| procedure, public :: finalize => PropVec_singles_uniform_finalize | |
| procedure, private :: get_valid_orbs | |
| procedure, public :: calc_pgen => calc_pgen_uniform_singles | |
| procedure, public :: pickOrbitals => pickOrbitals_single |
The precomputed PropVec uniform excitation generator
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| class(AlsoGUGA_PropertyIndexer_t), | private, | allocatable | :: | indexer | |||
| logical, | public | :: | use_lookup | = | .false. |
Use a lookup for the prop_vec index in global_det_data. |
|
| logical, | public | :: | create_lookup | = | .false. |
Create and manage! the prop_vec index lookup in global_det_data. |
|
| type(AliasSampler_1D_t), | private | :: | I_sampler |
The shape is (n_prop_vec) -> 2 * nSpatOrbs |
|||
| type(AliasSampler_2D_t), | private | :: | A_sampler |
The shape is (nSpatOrbs, n_prop_vec) -> 2 * nSpatOrbs |
|||
| procedure(get_weight_t), | private, | pointer, nopass | :: | get_weight | => | null() | |
| type(UnoccupiedGetter_t), | private | :: | unoccupied |
| procedure(SinglesPickOrbitals_t), public, deferred :: pickOrbitals | |
| procedure(SinglesCalcPgen_t), public, deferred :: calc_pgen | |
| procedure, public :: init => init_PropVec_Weighted_t | |
| procedure, public :: finalize => finalize_PropVec_Weighted_t |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| logical, | public | :: | use_lookup | = | .false. |
Use a lookup for the prop_vec index in global_det_data. |
|
| logical, | public | :: | create_lookup | = | .false. |
Create and manage! the prop_vec index lookup in global_det_data. |
| procedure, public :: init => init_PropVec_Weighted_t | |
| procedure, public :: finalize => finalize_PropVec_Weighted_t | |
| procedure, public :: calc_pgen => calc_pgen_FullFull | |
| procedure, public :: pickOrbitals => pickOrbitals_FullFull |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| logical, | public | :: | use_lookup | = | .false. |
Use a lookup for the prop_vec index in global_det_data. |
|
| logical, | public | :: | create_lookup | = | .false. |
Create and manage! the prop_vec index lookup in global_det_data. |
| procedure, public :: init => init_PropVec_Weighted_t | |
| procedure, public :: finalize => finalize_PropVec_Weighted_t | |
| procedure, public :: calc_pgen => calc_pgen_UnifFull | |
| procedure, public :: pickOrbitals => pickOrbitals_UnifFull |
The precomputed PropVec uniform excitation generator
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| class(AlsoGUGA_PropertyIndexer_t), | private, | allocatable | :: | indexer | |||
| logical, | public | :: | use_lookup | = | .false. | ||
| logical, | public | :: | create_lookup | = | .false. | ||
| type(AliasSampler_3D_t), | private | :: | A_sampler |
The shape is (nSpatOrbs: i, stepvector: i, n_prop_vec: i_sg) -> 2 * nSpatOrbs |
|||
| procedure(get_weight_t), | private, | pointer, nopass | :: | get_weight | => | null() | |
| type(UnoccupiedGetter_t), | private | :: | unoccupied |
| procedure, public :: init => init_UnifXnew_t | |
| procedure, public :: finalize => finalize_UnifXnew_t | |
| procedure, public :: pickOrbitals => pickOrbitals_UnifXnew_t | |
| procedure, public :: calc_pgen => calc_pgen_UnifXnew_t |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(PropVec_PCHB_SinglesOptions_t), | intent(in) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(Excite_1_t), | intent(in) | :: | exc |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(PropVec_UniformExcGenerator_t), | intent(in) | :: | this | |||
| type(CSF_Info_t), | intent(in) | :: | csf_i | |||
| integer, | intent(in) | :: | src_orb |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(PropVec_UniformExcGenerator_t), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | nI(nel) | |||
| integer(kind=n_int), | intent(in) | :: | ilutI(0:GugaBits%len_tot) | |||
| type(CSF_Info_t), | intent(in) | :: | csf_i | |||
| type(ExcitationInformation_t), | intent(in) | :: | excitInfo |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | str |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(SinglesPropVec_FullFull_t), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | nI(nel) | |||
| integer(kind=n_int), | intent(in) | :: | ilutI(0:GugaBits%len_tot) | |||
| type(CSF_Info_t), | intent(in) | :: | csf_i | |||
| type(ExcitationInformation_t), | intent(in) | :: | excitInfo |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(SinglesPropVec_UnifFull_t), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | nI(nel) | |||
| integer(kind=n_int), | intent(in) | :: | ilutI(0:GugaBits%len_tot) | |||
| type(CSF_Info_t), | intent(in) | :: | csf_i | |||
| type(ExcitationInformation_t), | intent(in) | :: | excitInfo |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(UnifXnew_t), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | nI(nel) | |||
| integer(kind=n_int), | intent(in) | :: | ilutI(0:GugaBits%len_tot) | |||
| type(CSF_Info_t), | intent(in) | :: | csf_i | |||
| type(ExcitationInformation_t), | intent(in) | :: | excitInfo |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(PropVec_PCHB_SinglesAlgorithm_t), | intent(in) | :: | algorithm |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(PropVec_PCHB_SinglesOptions_t), | intent(in) | :: | singles_options |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(AlsoGUGA_PropertyIndexer_t), | intent(in) | :: | indexer | |||
| type(PropVec_PCHB_SinglesOptions_t), | intent(in) | :: | options | |||
| logical, | intent(in) | :: | use_lookup | |||
| logical, | intent(in) | :: | create_lookup | |||
| class(SinglesGUGABase_t), | intent(inout), | allocatable | :: | generator |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(PropVec_UniformExcGenerator_t), | intent(inout) | :: | this | |||
| class(AlsoGUGA_PropertyIndexer_t), | intent(in) | :: | indexer | |||
| logical, | intent(in) | :: | use_lookup | |||
| logical, | intent(in) | :: | create_lookup |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(PropVec_UniformExcGenerator_t), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(PropVec_UniformExcGenerator_t), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | nI(nel) | |||
| integer(kind=n_int), | intent(in) | :: | ilut(0:GugaBits%len_tot) | |||
| type(CSF_Info_t), | intent(in) | :: | csf_i | |||
| type(ExcitationInformation_t), | intent(out) | :: | excitInfo | |||
| real(kind=dp), | intent(out) | :: | pgen |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(PropVec_Weighted_t), | intent(inout) | :: | this | |||
| type(PropVec_PCHB_SinglesWeighting_t), | intent(in) | :: | weighting | |||
| class(AlsoGUGA_PropertyIndexer_t), | intent(in) | :: | indexer | |||
| logical, | intent(in) | :: | use_lookup | |||
| logical, | intent(in) | :: | create_lookup |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(PropVec_Weighted_t), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(SinglesPropVec_FullFull_t), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | nI(nel) | |||
| integer(kind=n_int), | intent(in) | :: | ilut(0:GugaBits%len_tot) | |||
| type(CSF_Info_t), | intent(in) | :: | csf_i | |||
| type(ExcitationInformation_t), | intent(out) | :: | excitInfo | |||
| real(kind=dp), | intent(out) | :: | pgen |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(SinglesPropVec_UnifFull_t), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | nI(nel) | |||
| integer(kind=n_int), | intent(in) | :: | ilut(0:GugaBits%len_tot) | |||
| type(CSF_Info_t), | intent(in) | :: | csf_i | |||
| type(ExcitationInformation_t), | intent(out) | :: | excitInfo | |||
| real(kind=dp), | intent(out) | :: | pgen |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(UnifXnew_t), | intent(inout) | :: | this | |||
| type(PropVec_PCHB_SinglesWeighting_t), | intent(in) | :: | weighting | |||
| class(AlsoGUGA_PropertyIndexer_t), | intent(in) | :: | indexer | |||
| logical, | intent(in) | :: | use_lookup | |||
| logical, | intent(in) | :: | create_lookup | |||
| real(kind=dp), | intent(in) | :: | scale_down |
Scale down the “exchange” single excitations |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(UnifXnew_t), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(UnifXnew_t), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | nI(nel) | |||
| integer(kind=n_int), | intent(in) | :: | ilut(0:GugaBits%len_tot) | |||
| type(CSF_Info_t), | intent(in) | :: | csf_i | |||
| type(ExcitationInformation_t), | intent(out) | :: | excitInfo | |||
| real(kind=dp), | intent(out) | :: | pgen |