| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(GeneratorType_Values_t), | public, | parameter | :: | gen_type | = | GeneratorType_Values_t() | |
| integer, | public, | parameter | :: | n_excit_type_bits | = | 5 | |
| integer, | public, | parameter | :: | n_excit_lvl_bits | = | 2 | |
| integer, | public, | parameter | :: | n_excit_info_bits | = | n_excit_type_bits+n_excit_lvl_bits | |
| integer, | public, | parameter | :: | pos_excit_type_bits | = | int(bit_size(1_int_rdm))-n_excit_type_bits | |
| integer, | public, | parameter | :: | pos_excit_lvl_bits | = | int(bit_size(1_int_rdm))-n_excit_info_bits | |
| integer, | private | :: | i_ | ||||
| integer(kind=int_rdm), | private, | parameter | :: | excitLvl_bitmask | = | ishft(int(sum([(2**i_, i_=0, n_excit_lvl_bits-1)]), int_rdm), pos_excit_lvl_bits) | |
| integer(kind=int_rdm), | private, | parameter | :: | excitType_bitmask | = | ishft(int(sum([(2**i_, i_=0, n_excit_type_bits-1)]), int_rdm), pos_excit_type_bits) | |
| integer(kind=int_rdm), | private, | parameter | :: | excitInfo_bitmask | = | ior(excitLvl_bitmask, excitType_bitmask) | |
| integer(kind=int_rdm), | public, | parameter | :: | rdm_ind_bitmask | = | not(excitInfo_bitmask) | |
| integer, | public, | parameter | :: | n_excit_index_bits | = | 8 | |
| type(ExcitationTypeValues_t), | public, | parameter | :: | excit_type | = | ExcitationTypeValues_t() | |
| type(ExcitationType_t), | public, | parameter | :: | excit_type_arr(0:25) | = | [excit_type%invalid, excit_type%weight, excit_type%single, excit_type%raising, excit_type%lowering, excit_type%non_overlap, excit_type%single_overlap_lowering, excit_type%single_overlap_raising, excit_type%single_overlap_L_to_R, excit_type%single_overlap_R_to_L, excit_type%double_lowering, excit_type%double_raising, excit_type%double_L_to_R_to_L, excit_type%double_R_to_L_to_R, excit_type%double_L_to_R, excit_type%double_R_to_L, excit_type%fullstop_lowering, excit_type%fullstop_raising, excit_type%fullstop_L_to_R, excit_type%fullstop_R_to_L, excit_type%fullstart_lowering, excit_type%fullstart_raising, excit_type%fullstart_L_to_R, excit_type%fullstart_R_to_L, excit_type%fullstart_stop_alike, excit_type%fullstart_stop_mixed] | |
| type(ExcitationType_t), | public, | parameter | :: | valid_excit_type_arr(1:25) | = | excit_type_arr(1:25) | |
| type(ExcitationType_t), | public, | parameter | :: | non_trivial_double_excit_type_arr(8:25) | = | excit_type_arr(8:25) | |
| type(DistinctDoubleTypeVals_t), | public, | parameter | :: | distinct_doubles | = | DistinctDoubleTypeVals_t() | |
| type(DistinctDoubleType_t), | public, | parameter | :: | distinct_doubles_arr(0:19) | = | [distinct_doubles%invalid, distinct_doubles%jijk, distinct_doubles%ijkj, distinct_doubles%ikjk, distinct_doubles%kikj, distinct_doubles%jikk, distinct_doubles%ijkk, distinct_doubles%ijik, distinct_doubles%jiki, distinct_doubles%iikj, distinct_doubles%iijk, distinct_doubles%ijij, distinct_doubles%jiji, distinct_doubles%iijj, distinct_doubles%ikjl, distinct_doubles%kilj, distinct_doubles%ijkl, distinct_doubles%jilk, distinct_doubles%ijlk, distinct_doubles%jikl] | |
| logical, | public | :: | tGUGACore | = | .false. | ||
| integer(kind=TagIntType), | public | :: | tag_excitations | = | 0 | ||
| integer(kind=TagIntType), | public | :: | tag_tmp_excits | = | 0 | ||
| integer(kind=TagIntType), | public | :: | tag_proje_list | = | 0 | ||
| type(ProcedurePtrArray_t), | private | :: | singleMatElesGUGA(15) | ||||
| integer, | private, | dimension(0:3,0:3,-1:2) | :: | indArrOne | = | reshape((/2, 2, 2, -1, 2, 10, 14, 5, 2, -1, 3, 7, -1, 7, 5, 3, 2, 2, 2, -1, 2, 3, 12, 6, 2, -1, 11, 8, -1, 5, 7, 3, 2, 2, 2, -1, 2, 3, -1, 5, 2, 13, 10, 7, -1, 7, 5, 3, 2, 2, 2, -1, 2, 9, -1, 6, 2, 15, 3, 8, -1, 5, 7, 3/), (/4, 4, 4/)) | |
| type(ProcedurePtrArray_t), | private | :: | doubleMatEleX1GUGA(45) | ||||
| integer, | private, | dimension(0:3,0:3,-7:7) | :: | indArrTwoX1 | = | reshape((/2, -1, 2, -1, -1, 34, 32, 18, -1, -1, 2, -1, -1, -1, -1, 2, 2, -1, 2, -1, 2, 39, 43, 23, -1, -1, 39, -1, -1, -1, 15, 2, 2, -1, -1, -1, 2, 2, 33, -1, -1, -1, 45, -1, -1, -1, 3, 2, -1, -1, -1, -1, 16, -1, -1, -1, 2, -1, -1, -1, -1, 3, 7, -1, 1, 38, 7, 1, 12, 12, 40, 17, 38, 38, 7, 23, 1, 4, 20, 1, -1, 2, 21, -1, -1, -1, -1, 12, -1, -1, -1, 22, -1, -1, -1, -1, 2, 21, 16, 1, -1, 31, 33, 28, -1, 32, 35, 26, 1, -1, -1, 2, 2, 7, 12, -1, 28, 30, 44, 10, 26, 42, 34, 6, -1, 20, 17, 2, 2, -1, -1, 1, 11, 31, 37, -1, 5, 29, 35, -1, 1, 7, 12, 2, -1, -1, -1, -1, 2, -1, -1, -1, 21, -1, -1, -1, -1, 12, 8, -1, -1, 12, 40, -1, 40, -1, -1, 25, 7, -1, -1, 20, -1, 17, 9, -1, -1, 16, 2, -1, -1, -1, -1, 24, -1, -1, -1, 7, -1, -1, -1, -1, 2, 2, -1, -1, -1, 2, -1, -1, -1, 33, 30, 14, -1, -1, -1, 2, 2, 2, -1, -1, -1, 41, -1, -1, 2, 43, 41, 25, -1, 19, -1, 2, 2, -1, -1, -1, -1, 36, -1, -1, 2, 32, 2, -1, -1, 8, -1, 2/), (/4, 4, 15/)) | |
| type(ProcedurePtrArray_t), | private | :: | doubleMatEleX0GUGA(17) | ||||
| integer, | private, | dimension(0:3,0:3,-7:7) | :: | indArrTwoX0 | = | reshape((/1, -1, 1, -1, -1, 1, 1, 1, -1, -1, 1, -1, -1, -1, -1, 1, 1, -1, 1, -1, 1, 1, 1, 1, -1, -1, 1, -1, -1, -1, 1, 1, 1, -1, -1, -1, 1, 1, 1, -1, 1, -1, 1, -1, -1, -1, 1, 1, 1, -1, -1, -1, 14, 1, 2, -1, 1, -1, 2, -1, -1, 1, 7, 2, 1, 1, 7, 10, 7, 7, 1, 15, 1, 1, 7, 1, 11, 1, 17, 5, 1, 1, 16, -1, -1, 2, 2, 7, -1, -1, 1, 1, -1, -1, -1, 2, 2, 16, 14, 4, -1, 3, 1, 7, -1, 1, 3, 7, 4, -1, -1, 2, 2, 6, 6, -1, 6, 2, 1, 13, 6, 1, 2, 12, -1, 16, 14, 2, 2, -1, -1, 4, 13, 3, 1, -1, 12, 1, 3, -1, 4, 7, 7, 2, 1, -1, -1, -1, 1, 2, -1, -1, 16, 2, 1, -1, -1, 7, 1, 2, -1, 7, 1, 9, 1, -1, -1, 1, 7, -1, -1, 17, 8, 15, 1, -1, 1, 14, 1, -1, -1, 1, -1, 1, -1, 2, 2, 7, -1, -1, -1, 2, 1, 1, -1, -1, -1, 1, -1, -1, -1, 1, 1, 1, -1, -1, -1, 1, 1, 1, -1, -1, -1, 1, -1, -1, 1, 1, 1, 1, -1, 1, -1, 1, 1, -1, -1, -1, -1, 1, -1, -1, 1, 1, 1, -1, -1, 1, -1, 1/), (/4, 4, 15/)) | |
| type(ProcPtrArrTwo_t), | private | :: | mixedGenFullStopMatEle(5) | ||||
| integer, | private, | dimension(0:3, 0:3, -1:1) | :: | indArrEnd | = | reshape([-1, -1, -1, -1, -1, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, 2, -1, -1, -1, -1, 3, -1, -1, -1, -1, 4, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5, -1, -1, -1, -1, -1, -1], [4, 4, 3]) | |
| type(ProcedurePtrArray_t), | private | :: | doubleContribution(7) | ||||
| integer, | private, | dimension(0:3,0:3,-1:2) | :: | indContr | = | reshape([1, -1, -1, -1, -1, 1, 7, -1, -1, -1, 3, -1, -1, -1, -1, 3, 1, -1, -1, -1, -1, 3, 5, -1, -1, -1, 1, -1, -1, -1, -1, 3, 1, -1, -1, -1, -1, 3, -1, -1, -1, 6, 1, -1, -1, -1, -1, 3, 1, -1, -1, -1, -1, 1, -1, -1, -1, 4, 3, -1, -1, -1, -1, 3], [4, 4, 4]) | |
| type(ProjE_t), | public, | allocatable | :: | projE_replica(:) | |||
| integer, | public, | allocatable | :: | orbitalIndex(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | n |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ijkl_Index_t), | intent(in) | :: | idx |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ijab_Index_t), | intent(in) | :: | idx |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ijkl_Index_t), | intent(in) | :: | idx |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ijab_Index_t), | intent(in) | :: | idx |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | bValue |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | bValue | |||
| real(kind=dp), | intent(out), | optional | :: | x0 | ||
| real(kind=dp), | intent(out), | optional | :: | x1 |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| real(kind=dp), | public | :: | F | = | 0.0_dp | ||
| real(kind=dp), | public | :: | G | = | 0.0_dp | ||
| real(kind=dp), | public | :: | minus | = | 0.0_dp | ||
| real(kind=dp), | public | :: | plus | = | 0.0_dp | ||
| real(kind=dp), | public | :: | zero | = | 0.0_dp |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public | :: | R | = | 1 | ||
| integer, | public | :: | L | = | -1 | ||
| integer, | public | :: | W | = | 0 |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public | :: | val | ||||
| character(len=30), | public | :: | str |
| private elemental function construct_ExcitationType_t (n) |
| generic, public :: operator(==) => eq_EnumBase_t | |
| generic, public :: operator(/=) => neq_EnumBase_t |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(ExcitationType_t), | public | :: | invalid | = | ExcitationType_t(0, 'invalid') | ||
| type(ExcitationType_t), | public | :: | weight | = | ExcitationType_t(1, 'Weight') | ||
| type(ExcitationType_t), | public | :: | single | = | ExcitationType_t(2, 'Single') | ||
| type(ExcitationType_t), | public | :: | raising | = | ExcitationType_t(3, 'Weight + Raising') | ||
| type(ExcitationType_t), | public | :: | lowering | = | ExcitationType_t(4, 'Weight + Lowering') | ||
| type(ExcitationType_t), | public | :: | non_overlap | = | ExcitationType_t(5, 'Non Overlap') | ||
| type(ExcitationType_t), | public | :: | single_overlap_lowering | = | ExcitationType_t(6, 'Single Overlap Lowering') | ||
| type(ExcitationType_t), | public | :: | single_overlap_raising | = | ExcitationType_t(7, 'Single Overlap Raising') | ||
| type(ExcitationType_t), | public | :: | single_overlap_L_to_R | = | ExcitationType_t(8, 'Single Overlap L to R') | ||
| type(ExcitationType_t), | public | :: | single_overlap_R_to_L | = | ExcitationType_t(9, 'Single Overlap R to L') | ||
| type(ExcitationType_t), | public | :: | double_lowering | = | ExcitationType_t(10, 'Double Lowering') | ||
| type(ExcitationType_t), | public | :: | double_raising | = | ExcitationType_t(11, 'Double Raising') | ||
| type(ExcitationType_t), | public | :: | double_L_to_R_to_L | = | ExcitationType_t(12, 'Double L to R to L') | ||
| type(ExcitationType_t), | public | :: | double_R_to_L_to_R | = | ExcitationType_t(13, 'Double R to L to R') | ||
| type(ExcitationType_t), | public | :: | double_L_to_R | = | ExcitationType_t(14, 'Double L to R') | ||
| type(ExcitationType_t), | public | :: | double_R_to_L | = | ExcitationType_t(15, 'Double R to L') | ||
| type(ExcitationType_t), | public | :: | fullstop_lowering | = | ExcitationType_t(16, 'Fullstop Lowering') | ||
| type(ExcitationType_t), | public | :: | fullstop_raising | = | ExcitationType_t(17, 'Fullstop Raising') | ||
| type(ExcitationType_t), | public | :: | fullstop_L_to_R | = | ExcitationType_t(18, 'Fullstop L to R') | ||
| type(ExcitationType_t), | public | :: | fullstop_R_to_L | = | ExcitationType_t(19, 'Fullstop R to L') | ||
| type(ExcitationType_t), | public | :: | fullstart_lowering | = | ExcitationType_t(20, 'Fullstart Lowering') | ||
| type(ExcitationType_t), | public | :: | fullstart_raising | = | ExcitationType_t(21, 'Fullstart Raising') | ||
| type(ExcitationType_t), | public | :: | fullstart_L_to_R | = | ExcitationType_t(22, 'Fullstart L to R') | ||
| type(ExcitationType_t), | public | :: | fullstart_R_to_L | = | ExcitationType_t(23, 'Fullstart R to L') | ||
| type(ExcitationType_t), | public | :: | fullstart_stop_alike | = | ExcitationType_t(24, 'Fullstart to Fullstop Alike') | ||
| type(ExcitationType_t), | public | :: | fullstart_stop_mixed | = | ExcitationType_t(25, 'Fullstart to Fullstop Mixed') |
This represents a distinct double excitation (compare Table 4.3 of [@DobrautzThesis2019]) A distinct double excitation consists of the two double excitations which are connected by exchange .
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public | :: | val | ||||
| type(ExcitationType_t), | public | :: | repr |
The two subtypes usually do not differ.
If the two subtypes differ, then it is always a pairing with |
|||
| type(ExcitationType_t), | public | :: | other |
The other Excitation that is not the representative |
|||
| character(len=2), | public | :: | label |
The label in Table 4.3 of [@DobrautzThesis2019] |
|||
| integer, | public | :: | idx_for_repr(4) | = | [1, 2, 3, 4] |
Store the permutation for outputting the representation index |
| private elemental function construct_DistinctDoubleType_t_ijkl (idx) | |
| private elemental function construct_DistinctDoubleType_t_ijab (idx) |
| generic, public :: operator(==) => eq_EnumBase_t | |
| generic, public :: operator(/=) => neq_EnumBase_t |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(DistinctDoubleType_t), | public | :: | invalid | = | DistinctDoubleType_t(0, excit_type%invalid, excit_type%invalid, '') | ||
| type(DistinctDoubleType_t), | public | :: | jijk | = | DistinctDoubleType_t(1, excit_type%single_overlap_L_to_R, excit_type%single_overlap_L_to_R, '1a') | ||
| type(DistinctDoubleType_t), | public | :: | ijkj | = | DistinctDoubleType_t(2, excit_type%single_overlap_R_to_L, excit_type%single_overlap_R_to_L, '1b') | ||
| type(DistinctDoubleType_t), | public | :: | ikjk | = | DistinctDoubleType_t(3, excit_type%fullstop_raising, excit_type%fullstop_raising, '1c') | ||
| type(DistinctDoubleType_t), | public | :: | kikj | = | DistinctDoubleType_t(4, excit_type%fullstop_lowering, excit_type%fullstop_lowering, '1d') | ||
| type(DistinctDoubleType_t), | public | :: | jikk | = | DistinctDoubleType_t(5, excit_type%fullstop_L_to_R, excit_type%non_overlap, '1e', [1, 4, 3, 2]) | ||
| type(DistinctDoubleType_t), | public | :: | ijkk | = | DistinctDoubleType_t(6, excit_type%fullstop_R_to_L, excit_type%non_overlap, '1f', [1, 4, 3, 2]) | ||
| type(DistinctDoubleType_t), | public | :: | ijik | = | DistinctDoubleType_t(7, excit_type%fullstart_raising, excit_type%fullstart_raising, '1g') | ||
| type(DistinctDoubleType_t), | public | :: | jiki | = | DistinctDoubleType_t(8, excit_type%fullstart_lowering, excit_type%fullstart_lowering, '1h') | ||
| type(DistinctDoubleType_t), | public | :: | iikj | = | DistinctDoubleType_t(9, excit_type%fullstart_R_to_L, excit_type%non_overlap, '1i', [1, 4, 3, 2]) | ||
| type(DistinctDoubleType_t), | public | :: | iijk | = | DistinctDoubleType_t(10, excit_type%fullstart_L_to_R, excit_type%non_overlap, '1j', [1, 4, 3, 2]) | ||
| type(DistinctDoubleType_t), | public | :: | ijij | = | DistinctDoubleType_t(11, excit_type%fullstart_stop_alike, excit_type%fullstart_stop_alike, '2a') | ||
| type(DistinctDoubleType_t), | public | :: | jiji | = | DistinctDoubleType_t(12, excit_type%fullstart_stop_alike, excit_type%fullstart_stop_alike, '2b') | ||
| type(DistinctDoubleType_t), | public | :: | iijj | = | DistinctDoubleType_t(13, excit_type%fullstart_stop_mixed, excit_type%non_overlap, '2c', [1, 4, 3, 2]) | ||
| type(DistinctDoubleType_t), | public | :: | ikjl | = | DistinctDoubleType_t(14, excit_type%double_raising, excit_type%double_raising, '3a', [3, 4, 1, 2]) | ||
| type(DistinctDoubleType_t), | public | :: | kilj | = | DistinctDoubleType_t(15, excit_type%double_lowering, excit_type%double_lowering, '3b') | ||
| type(DistinctDoubleType_t), | public | :: | ijkl | = | DistinctDoubleType_t(16, excit_type%double_R_to_L_to_R, excit_type%non_overlap, '3c', [1, 4, 3, 2]) | ||
| type(DistinctDoubleType_t), | public | :: | jilk | = | DistinctDoubleType_t(17, excit_type%double_L_to_R_to_L, excit_type%non_overlap, '3d', [1, 4, 3, 2]) | ||
| type(DistinctDoubleType_t), | public | :: | ijlk | = | DistinctDoubleType_t(18, excit_type%double_R_to_L, excit_type%non_overlap, '3e', [1, 4, 3, 2]) | ||
| type(DistinctDoubleType_t), | public | :: | jikl | = | DistinctDoubleType_t(19, excit_type%double_L_to_R, excit_type%non_overlap, '3f', [1, 4, 3, 2]) |
An index in the format of the Shavit papers [@Hinze1981]
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public | :: | val(4) |
| procedure, public :: extract_ijkl => extract_ijkl_Index_t | |
| procedure, public :: convert => convert_ijkl_Index_t | |
| procedure, public :: normalize => normalize_ijkl_Index_t | |
| procedure, public :: is_normalized => is_normalized_ijkl_Index_t | |
| procedure, public :: fuse => fuse_ijkl_Index_t |
An index in the format of the rest of NECI
[i, j, a, b] corresponds to
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public | :: | val(4) |
| procedure, public :: extract_ijab => extract_ijab_Index_t | |
| procedure, public :: convert => convert_ijab_Index_t | |
| procedure, public :: normalize => normalize_ijab_Index_t | |
| procedure, public :: is_normalized => is_normalized_ijab_Index_t | |
| procedure, public :: fuse => fuse_ijab_Index_t |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(ijkl_Index_t), | public | :: | idx | ||||
| type(DistinctDoubleType_t), | public | :: | typ |
| private elemental function construct_DistinctDouble_t_ijkl (idx) | |
| private elemental function construct_DistinctDouble_t_ijab (idx) |
| procedure, public :: get_repr_excit_info | |
| procedure, public :: get_repr_index | |
| procedure, public :: fuse => fuse_DistinctDouble_t |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(ExcitationType_t), | public | :: | typ | = | excit_type%invalid | ||
| integer, | public | :: | i | = | -1 | ||
| integer, | public | :: | j | = | -1 | ||
| integer, | public | :: | k | = | -1 | ||
| integer, | public | :: | l | = | -1 | ||
| integer, | public | :: | fullStart | = | -1 | ||
| integer, | public | :: | fullEnd | = | -1 | ||
| integer, | public | :: | secondStart | = | -1 | ||
| integer, | public | :: | firstEnd | = | -1 | ||
| integer, | public | :: | weight | = | -1 | ||
| integer, | public | :: | overlap | = | -1 | ||
| integer, | public | :: | gen1 | = | -2 | ||
| integer, | public | :: | gen2 | = | -2 | ||
| integer, | public | :: | firstGen | = | -2 | ||
| integer, | public | :: | lastGen | = | -2 | ||
| integer, | public | :: | currentGen | = | -2 | ||
| integer, | public | :: | excitLvl | = | -1 | ||
| real(kind=dp), | public | :: | order | = | 0.0_dp | ||
| real(kind=dp), | public | :: | order1 | = | 0.0_dp | ||
| logical, | public | :: | valid | = | .false. | ||
| logical, | public | :: | spin_change | = | .false. | ||
| integer, | public | :: | i_sg_start | = | -1 |
The supergroup from which the excitation starts. Only relevant for PropVec. |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| procedure(dummyFunction), | public, | pointer, nopass | :: | ptr | => | null() |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| procedure(dummySubroutine), | public, | pointer, nopass | :: | ptr | => | null() |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer(kind=n_int), | public, | allocatable | :: | projE_ilut_list(:,:) | |||
| real(kind=dp), | public, | allocatable | :: | projE_hel_list(:) | |||
| integer, | public, | allocatable | :: | exlevel(:) | |||
| integer, | public | :: | num_entries |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer(kind=n_int), | public, | allocatable | :: | ilut_list(:,:) | |||
| real(kind=dp), | public, | allocatable | :: | rdm_contrib(:) | |||
| integer(kind=int_rdm), | public, | allocatable | :: | rdm_ind(:) | |||
| integer, | public, | allocatable | :: | repeat_count(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | step1 | |||
| integer, | intent(in) | :: | step2 | |||
| integer, | intent(in) | :: | deltaB | |||
| integer, | intent(in) | :: | genFlag | |||
| real(kind=dp), | intent(in) | :: | bValue |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | step1 | |||
| integer, | intent(in) | :: | step2 | |||
| integer, | intent(in) | :: | deltaB | |||
| integer, | intent(in) | :: | genFlag | |||
| real(kind=dp), | intent(in) | :: | bValue |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b | |||
| real(kind=dp), | intent(in) | :: | x | |||
| real(kind=dp), | intent(in) | :: | y |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b | |||
| real(kind=dp), | intent(in) | :: | x | |||
| real(kind=dp), | intent(in) | :: | y |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b | |||
| real(kind=dp), | intent(in) | :: | x |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b | |||
| real(kind=dp), | intent(in) | :: | x |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b | |||
| real(kind=dp), | intent(in) | :: | x |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | n |
Return the index for the representation.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(DistinctDouble_t), | intent(in) | :: | this |
Return the index for the representation.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(DistinctDouble_t), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | i_sg_start |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ijkl_Index_t), | intent(in) | :: | idx |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ijab_Index_t), | intent(in) | :: | idx |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ijkl_Index_t), | intent(in) | :: | idx |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ijab_Index_t), | intent(in) | :: | idx |
Normalize such that i <= j and a <= b
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ijab_Index_t), | intent(in) | :: | this |
Normalize such that i <= k and j <= l
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ijkl_Index_t), | intent(in) | :: | this |
Convert to the ijab_Index_t
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ijkl_Index_t), | intent(in) | :: | this |
Convert to the ijkl_Index_t
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ijab_Index_t), | intent(in) | :: | this |
Check if index is normalized
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ijab_Index_t), | intent(in) | :: | this |
Check if index is normalized
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ijkl_Index_t), | intent(in) | :: | this |
Fuse a normalized index i <= k and j <= l.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ijkl_Index_t), | intent(in) | :: | this |
Fuse a normalized index i <= j and a <= b.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ijab_Index_t), | intent(in) | :: | this |
Return a normalized index from a fused integer index
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int64), | intent(in) | :: | ijkl |
Return a normalized index from a fused integer index
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int64), | intent(in) | :: | ijab |
Fuse a Distinct Double excitation
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(DistinctDouble_t), | intent(in) | :: | this |
Return a Distinct Double excitation from a fused integer index
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int64), | intent(in) | :: | n |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | step1 | |||
| integer, | intent(in) | :: | step2 | |||
| integer, | intent(in) | :: | deltaB | |||
| real(kind=dp), | intent(in) | :: | bValue | |||
| real(kind=dp), | intent(out), | optional | :: | x0_element | ||
| real(kind=dp), | intent(out), | optional | :: | x1_element |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | step1 | |||
| integer, | intent(in) | :: | step2 | |||
| integer, | intent(in) | :: | deltaB | |||
| integer, | intent(in) | :: | genFlag1 | |||
| integer, | intent(in) | :: | genFlag2 | |||
| real(kind=dp), | intent(in) | :: | bValue | |||
| real(kind=dp), | intent(in) | :: | order | |||
| real(kind=dp), | intent(out), | optional | :: | x0_element | ||
| real(kind=dp), | intent(out), | optional | :: | x1_element |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b | |||
| real(kind=dp), | intent(out), | optional | :: | x0 | ||
| real(kind=dp), | intent(out), | optional | :: | x1 |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b | |||
| real(kind=dp), | intent(out), | optional | :: | x0 | ||
| real(kind=dp), | intent(out), | optional | :: | x1 |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b | |||
| real(kind=dp), | intent(out), | optional | :: | x0 | ||
| real(kind=dp), | intent(out), | optional | :: | x1 |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b | |||
| real(kind=dp), | intent(out), | optional | :: | x0 | ||
| real(kind=dp), | intent(out), | optional | :: | x1 |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | b | |||
| real(kind=dp), | intent(out), | optional | :: | x0 | ||
| real(kind=dp), | intent(out), | optional | :: | x1 |
Extract the values as integers
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ijab_Index_t), | intent(in) | :: | this | |||
| integer, | intent(out) | :: | i | |||
| integer, | intent(out) | :: | j | |||
| integer, | intent(out) | :: | a | |||
| integer, | intent(out) | :: | b |
Extract the values as integers
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ijkl_Index_t), | intent(in) | :: | this | |||
| integer, | intent(out) | :: | i | |||
| integer, | intent(out) | :: | j | |||
| integer, | intent(out) | :: | k | |||
| integer, | intent(out) | :: | l |