DoublesGUGABase_t Derived Type

type, public, abstract, extends(Finalizable_t) :: DoublesGUGABase_t


Type-Bound Procedures

procedure(BoundFinalize_t), public, deferred :: finalize

  • subroutine BoundFinalize_t(this) Prototype

    Arguments

    Type IntentOptional Attributes Name
    class(Finalizable_t), intent(inout) :: this

procedure(DoublesPickOrbitals_t), public, deferred :: pickOrbitals

  • subroutine DoublesPickOrbitals_t(this, nI, ilut, csf_i, excitInfo, pgen) Prototype

    Arguments

    Type IntentOptional Attributes Name
    class(DoublesGUGABase_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

procedure(DoublesCalcPgen_t), public, deferred :: calc_pgen

  • function DoublesCalcPgen_t(this, nI, ilutI, csf_i, excitInfo) result(pgen) Prototype

    Arguments

    Type IntentOptional Attributes Name
    class(DoublesGUGABase_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

    Return Value real(kind=dp)

procedure(DoublesCalcOrbitalPgenContr_t), public, deferred :: calc_orbital_pgen_contr_start

  • subroutine DoublesCalcOrbitalPgenContr_t(this, nI, ilut, csf_i, occ_orbs, orb_a, orb_pgen) Prototype

    Arguments

    Type IntentOptional Attributes Name
    class(DoublesGUGABase_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
    integer, intent(in) :: occ_orbs(2)
    integer, intent(in) :: orb_a
    real(kind=dp), intent(out) :: orb_pgen

procedure(DoublesCalcOrbitalPgenContr_t), public, deferred :: calc_orbital_pgen_contr_end

  • subroutine DoublesCalcOrbitalPgenContr_t(this, nI, ilut, csf_i, occ_orbs, orb_a, orb_pgen) Prototype

    Arguments

    Type IntentOptional Attributes Name
    class(DoublesGUGABase_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
    integer, intent(in) :: occ_orbs(2)
    integer, intent(in) :: orb_a
    real(kind=dp), intent(out) :: orb_pgen

procedure(Doublescalc_orbital_pgen_contr_t), public, deferred :: calc_orbital_pgen_contr

  • subroutine Doublescalc_orbital_pgen_contr_t(this, nI, ilut, csf_i, occ_orbs, above_cpt, below_cpt) Prototype

    Arguments

    Type IntentOptional Attributes Name
    class(DoublesGUGABase_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
    integer, intent(in) :: occ_orbs(2)
    real(kind=dp), intent(out) :: above_cpt
    real(kind=dp), intent(out) :: below_cpt

procedure(Doubles_gen_all_distinct_doubles_t), public, deferred :: gen_all_distinct

  • pure function Doubles_gen_all_distinct_doubles_t(this, csf_i, sort_fused_key) result(res) Prototype

    This function returns all possible excitations for the orbital picker

    This means it considers only occupation, not spin recoupling.

    Arguments

    Type IntentOptional Attributes Name
    class(DoublesGUGABase_t), intent(in) :: this
    type(CSF_Info_t), intent(in) :: csf_i
    logical, intent(in), optional :: sort_fused_key

    The fused index of the excitations should be sorted.

    Return Value type(DistinctDouble_t), allocatable, (:)