excit_gens_int_weighted Module



Contents


Functions

public function calc_pgen_4ind_weighted(nI, ilutI, ex, ic, ClassCountUnocc) result(pgen)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer(kind=n_int), intent(in) :: ilutI(0:NIfTot)
integer, intent(in) :: ex(2,ic)
integer, intent(in) :: ic
integer, intent(in) :: ClassCountUnocc(ScratchSize)

Return Value real(kind=dp)

public function get_paired_cc_ind(cc_ind, sym_product, sum_ml, iSpn) result(cc_ret)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: cc_ind
integer, intent(in) :: sym_product
integer, intent(in) :: sum_ml
integer, intent(in) :: iSpn

Return Value integer

public function pgen_single_4ind(nI, ilutI, src, tgt) result(pgen)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer(kind=n_int), intent(in) :: ilutI(0:NIfTot)
integer, intent(in) :: src
integer, intent(in) :: tgt

Return Value real(kind=dp)

public function select_orb_sing(nI, ilut, src, cc_index, pgen) result(orb)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer(kind=n_int), intent(in) :: ilut(0:NIfTot)
integer, intent(in) :: src
integer, intent(in) :: cc_index
real(kind=dp), intent(out) :: pgen

Return Value integer

public pure function get_pgen_pick_biased_elecs(same_spin, pParallel, par_elec_pairs, opp_elec_pairs) result(pgen)

@brief Return the pgen for pick_biased_elecs

Read more…

Arguments

Type IntentOptional Attributes Name
logical, intent(in) :: same_spin
real(kind=dp), intent(in) :: pParallel
integer, intent(in) :: par_elec_pairs
integer, intent(in) :: opp_elec_pairs

Return Value real(kind=dp)

public function opp_spin_pair_contrib(indi, indj, orba, orbb) result(contrib)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: indi
integer, intent(in) :: indj
integer, intent(in) :: orba
integer, intent(in) :: orbb

Return Value real(kind=dp)

public function same_spin_pair_contrib(indi, indj, orba, orbb) result(contrib)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: indi
integer, intent(in) :: indj
integer, intent(in) :: orba
integer, intent(in) :: orbb

Return Value real(kind=dp)

public function select_orb(ilut, src, cc_index, orb_pair, cpt, cum_sum) result(orb)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(in) :: ilut(0:NifTot)
integer, intent(in) :: src(2)
integer, intent(in) :: cc_index
integer, intent(in) :: orb_pair
real(kind=dp), intent(out) :: cpt
real(kind=dp), intent(out) :: cum_sum

Return Value integer

public function calc_pgen_4ind_reverse(nI, ilutI, ex, ic) result(pgen)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer(kind=n_int), intent(in) :: ilutI(0:NifTot)
integer, intent(in) :: ex(2,ic)
integer, intent(in) :: ic

Return Value real(kind=dp)

public function select_elec_sing(nI, tgt, src, pgen) result(elec)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(in) :: tgt
integer, intent(out) :: src
real(kind=dp), intent(out) :: pgen

Return Value integer

public function get_ispn(orbi, orbj) result(ispn)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: orbi
integer, intent(in) :: orbj

Return Value integer

public function pick_hole_spn(ilut, spn, exclude_orb) result(orb)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(in) :: ilut(0:NIfTot)
integer, intent(in) :: spn
integer, intent(in) :: exclude_orb

Return Value integer

public function pick_hole(ilut, exclude_orb) result(orb)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(in) :: ilut(0:NIfTot)
integer, intent(in) :: exclude_orb

Return Value integer

public function pgen_weighted_elecs(nI, orbs) result(prob)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(in) :: orbs(2)

Return Value real(kind=dp)


Subroutines

public subroutine gen_excit_hel_weighted(nI, ilutI, nJ, ilutJ, exFlag, IC, ExcitMat, tParity, pGen, HElGen, store, part_type)

Arguments

Type IntentOptional 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(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

public subroutine gen_excit_hel_local(nI, ilutI, nJ, ilutJ, ic, ExcitMat, tParity, pGen, HElGen, nexcit)

Arguments

Type IntentOptional 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) :: ic
integer, intent(out) :: ExcitMat(2,maxExcit)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pGen
real(kind=dp), intent(out) :: HElGen
integer, intent(in) :: nexcit

public subroutine gen_excit_4ind_weighted(nI, ilutI, nJ, ilutJ, exFlag, IC, ExcitMat, tParity, pGen, HElGen, store, part_type)

Arguments

Type IntentOptional 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(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

public subroutine gen_single_4ind_ex(nI, ilutI, nJ, ilutJ, ex, par, pgen)

Arguments

Type IntentOptional 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) :: ex(2,maxExcit)
logical, intent(out) :: par
real(kind=dp), intent(out) :: pgen

public subroutine gen_double_4ind_ex(nI, ilutI, nJ, ilutJ, ex, par, pgen, store)

Arguments

Type IntentOptional 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) :: ex(2,maxExcit)
logical, intent(out) :: par
real(kind=dp), intent(out) :: pgen
type(excit_gen_store_type), intent(in) :: store

public subroutine pick_biased_elecs(nI, elecs, src, sym_prod, ispn, sum_ml, pgen, pBias, pAA)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(out) :: elecs(2)
integer, intent(out) :: src(2)
integer, intent(out) :: sym_prod
integer, intent(out) :: ispn
integer, intent(out) :: sum_ml
real(kind=dp), intent(out) :: pgen
real(kind=dp), intent(in), optional :: pBias
real(kind=dp), intent(in), optional :: pAA

public subroutine pick_oppspin_elecs(nI, elecs, src, sym_prod, ispn, sum_ml, pgen)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(out) :: elecs(2)
integer, intent(out) :: src(2)
integer, intent(out) :: sym_prod
integer, intent(out) :: ispn
integer, intent(out) :: sum_ml
real(kind=dp), intent(out) :: pgen

public subroutine pgen_select_orb(ilut, src, orb_pair, tgt, cpt, cum_sum)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(in) :: ilut(0:NIfTot)
integer, intent(in) :: src(2)
integer, intent(in) :: orb_pair
integer, intent(in) :: tgt
real(kind=dp) :: cpt
real(kind=dp) :: cum_sum

public subroutine gen_excit_4ind_reverse(nI, ilutI, nJ, ilutJ, exFlag, IC, ExcitMat, tParity, pGen, HElGen, store, part_type)

Arguments

Type IntentOptional 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(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

public subroutine gen_double_4ind_rev(nI, ilutI, nJ, ilutJ, ex, par, pgen)

Arguments

Type IntentOptional 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) :: ex(2,maxExcit)
logical, intent(out) :: par
real(kind=dp), intent(out) :: pgen

public subroutine pick_hole_pair_biased(ilut, orbs, pgen, sym_prod, sum_ml, ispn)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(in) :: ilut(0:NIfTot)
integer, intent(out) :: orbs(2)
real(kind=dp), intent(out) :: pgen
integer, intent(out) :: sym_prod
integer, intent(out) :: sum_ml
integer, intent(out) :: ispn

public subroutine pick_weighted_elecs(nI, elecs, src, sym_prod, ispn, sum_ml, pgen)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(out) :: elecs(2)
integer, intent(out) :: src(2)
integer, intent(out) :: sym_prod
integer, intent(out) :: ispn
integer, intent(out) :: sum_ml
real(kind=dp), intent(out) :: pgen

public subroutine calc_all_excitations(ilut, non_zero_list, n_non_zero)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(in) :: ilut(0:niftot)
integer(kind=n_int), intent(out), allocatable :: non_zero_list(:,:)
integer, intent(out) :: n_non_zero