Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=dp), | public, | parameter | :: | same_spin_perm | = | 6.0_dp | |
real(kind=dp), | public, | parameter | :: | opp_spin_perm | = | 2.0_dp |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nel) | |||
integer, | intent(in) | :: | ex(2,3) |
Determine the symmetry of the third orbital @param[in] tgt array of size 3, the first two entries are two orbitals to excite to @param[in] src array of size 3, the three orbitals excited from @return sym symmetry of the last orbital to excite to
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | tgt(3) | |||
integer, | intent(in) | :: | src(3) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nel) | |||
integer(kind=n_int), | intent(in) | :: | ilut(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) | :: | ExcitMat(2,maxExcit) | |||
logical, | intent(out) | :: | tParity | |||
real(kind=dp), | intent(out) | :: | pGen | |||
real(kind=dp), | intent(out) | :: | HElGen | |||
type(excit_gen_store_type), | intent(inout), | target | :: | store | ||
integer, | intent(in), | optional | :: | part_type |
Calculates the probability of picking three orbitals with total spin ms without symmetry @param[in] ms total spin of the picked orbitals @param[inout] pgen on call, the probability of picking the electrons, on return, the total probability
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | ms | |||
real(kind=dp), | intent(inout) | :: | pgen |
Calculates the probability of picking three orbitals with total spin ms with symmetry @param[in] nI determinant the excitation was made from @param[in] ex the excitation matrix (2x3 array) @param[in] ms total spin of the picked orbitals @param[inout] pgen on call, the probability of picking the electrons, on return, the total probability
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nel) | |||
integer, | intent(in) | :: | ex(2,3) | |||
integer, | intent(in) | :: | ms | |||
real(kind=dp), | intent(inout) | :: | pgen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
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) | :: | ExcitMat(2,maxExcit) | |||
logical, | intent(out) | :: | tParity | |||
real(kind=dp), | intent(out) | :: | pGen | |||
real(kind=dp), | intent(out) | :: | HElGen | |||
type(excit_gen_store_type), | intent(inout), | target | :: | store |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nel) | |||
integer, | intent(out) | :: | elecs(3) | |||
integer, | intent(out) | :: | src(3) | |||
integer, | intent(out) | :: | sym_prod | |||
real(kind=dp), | intent(out) | :: | pgen | |||
integer, | intent(out) | :: | ms |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nel) | |||
integer, | intent(inout) | :: | elecs(3) | |||
integer, | intent(in) | :: | nOcc | |||
integer, | intent(in) | :: | nPicked | |||
logical, | intent(in) | :: | tAlpha | |||
real(kind=dp), | intent(inout) | :: | pgen |
picks three random unoccupied orbitals, given the occupied orbitals, ignoring symmetry This is a more efficient version of pick_three_orbs_sym for the case that point-group symmetry is not used
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nel) | |||
integer, | intent(out) | :: | tgt(3) | |||
real(kind=dp), | intent(inout) | :: | pgen | |||
integer, | intent(in) | :: | ms |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nel) | |||
integer, | intent(in) | :: | src(3) | |||
integer, | intent(out) | :: | tgt(3) | |||
real(kind=dp), | intent(inout) | :: | pgen | |||
integer, | intent(in) | :: | ms |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(inout) | :: | pgen | |||
real(kind=dp), | intent(inout) | :: | pgen_pick | |||
integer, | intent(in) | :: | pool_sizes(3) | |||
integer, | intent(in) | :: | ms | |||
integer, | intent(in) | :: | tgt(3) | |||
integer, | intent(in) | :: | cc_unocc(ScratchSize) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nel) | |||
integer, | intent(in) | :: | src(3) | |||
integer, | intent(out) | :: | tgt(3) | |||
real(kind=dp), | intent(inout) | :: | pgen | |||
integer, | intent(in) | :: | ms |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nel) | |||
integer, | intent(inout) | :: | tgt(3) | |||
integer, | intent(in) | :: | ms | |||
integer, | intent(in) | :: | nPicked | |||
real(kind=dp), | intent(inout) | :: | pgen |
Randomly pick an orbital from a pre-arranged pool of possible orbitals @param[inout] tgt array of size 3, contains the target orbitals @param[in] pool array containing the available orbitals to pick from @param[in] nPicked number of already picked orbitals @param[inout] pgen probabaility of choosing this orbital
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(inout) | :: | tgt(3) | |||
integer, | intent(in) | :: | pool(:) | |||
integer, | intent(in) | :: | nPicked | |||
real(kind=dp), | intent(inout) | :: | pgen |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nel) | |||
integer, | intent(inout) | :: | tgt(3) | |||
integer, | intent(in) | :: | ms | |||
integer, | intent(out), | allocatable | :: | pool(:) | ||
integer, | intent(in) | :: | nPicked |
create a pool of unoccupied orbitals with a given symmetry @param[in] nI determinant to excite from @param[in] tgt array of size 3, contains the already picked target orbitals @param[in] ms spin of the pool. ms>0 is alpha, ms<0 beta @param[out] pool on return, a list of the available orbitals to excite to @param[in] nPicked number of already picked target orbitals @param[in] tgt_sym symmetry of the pool @param[in] cc_unocc array containing the number of unoccupied orbitals per irrep
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nI(nel) | |||
integer, | intent(inout) | :: | tgt(3) | |||
integer, | intent(in) | :: | ms | |||
integer, | intent(out), | allocatable | :: | pool(:) | ||
integer, | intent(in) | :: | nPicked | |||
integer, | intent(in) | :: | tgt_sym | |||
integer, | intent(in) | :: | cc_unocc(ScratchSize) |