k_space_hubbard Module



Contents


Variables

Type Visibility Attributes Name Initial
integer, private, parameter :: ABORT_EXCITATION = 0
integer, private, parameter :: N_DIM = 3
real(kind=dp), public :: three_body_prefac = 0.0_dp
real(kind=dp), public :: n_opp(-1:1) = 0.0_dp
logical, private :: t_symmetric = .true.
real(kind=dp), private, allocatable :: two_body_transcorr_factor_matrix(:,:)
real(kind=dp), private, allocatable :: three_body_const_mat(:,:,:)

Interfaces

public interface get_helement_k_space_hub

  • public function get_helement_k_space_hub_ex_mat(nI, ic, ex, tpar) result(hel)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nI(nel)
    integer, intent(in) :: ic
    integer, intent(in) :: ex(2,ic)
    logical, intent(in) :: tpar

    Return Value real(kind=dp)

  • public function get_helement_k_space_hub_general(nI, nJ, ic_ret) result(hel)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nI(nel)
    integer, intent(in) :: nJ(nel)
    integer, intent(inout), optional :: ic_ret

    Return Value real(kind=dp)

private interface get_one_body_diag

  • private function get_one_body_diag_sym(nI, spin, k_sym, t_sign) result(hel)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nI(nel)
    integer, intent(in) :: spin
    type(Symmetry), intent(in) :: k_sym
    logical, intent(in), optional :: t_sign

    Return Value real(kind=dp)

  • private function get_one_body_diag_kvec(nI, spin, k_shift, t_sign) result(hel)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nI(nel)
    integer, intent(in) :: spin
    integer, intent(in) :: k_shift(3)
    logical, intent(in), optional :: t_sign

    Return Value real(kind=dp)

public interface same_spin_transcorr_factor

  • private function same_spin_transcorr_factor_kvec(nI, k_vec, spin)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nI(nel)
    integer, intent(in) :: k_vec(N_DIM)
    integer, intent(in) :: spin

    Return Value real(kind=dp)

  • private function same_spin_transcorr_factor_ksym(nI, k_sym, spin)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nI(nel)
    type(Symmetry), intent(in) :: k_sym
    integer, intent(in) :: spin

    Return Value real(kind=dp)

public interface three_body_transcorr_fac

  • private function three_body_transcorr_fac_kvec(nI, p, q, k, spin)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nI(nel)
    integer, intent(in) :: p(N_DIM)
    integer, intent(in) :: q(N_DIM)
    integer, intent(in) :: k(N_DIM)
    integer, intent(in) :: spin

    Return Value real(kind=dp)

  • private function three_body_transcorr_fac_ksym(nI, p, q, k, spin)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nI(nel)
    type(Symmetry) :: p
    type(Symmetry) :: q
    type(Symmetry) :: k
    integer, intent(in) :: spin

    Return Value real(kind=dp)

public interface two_body_transcorr_factor

  • private function two_body_transcorr_factor_kvec(p, k)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: p(N_DIM)
    integer, intent(in) :: k(N_DIM)

    Return Value real(kind=dp)

  • private function two_body_transcorr_factor_ksym(p, k)

    Arguments

    Type IntentOptional Attributes Name
    type(Symmetry), intent(in) :: p
    type(Symmetry), intent(in) :: k

    Return Value real(kind=dp)

private interface three_body_rpa_contrib

  • private function rpa_contrib_ksym(J, p, a, spin)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=dp), intent(in) :: J
    type(Symmetry), intent(in) :: p
    type(Symmetry), intent(in) :: a
    integer, intent(in) :: spin

    Return Value real(kind=dp)

  • private function rpa_contrib_kvec(J, p, k, spin)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=dp), intent(in) :: J
    integer, intent(in) :: p(N_DIM)
    integer, intent(in) :: k(N_DIM)
    integer, intent(in) :: spin

    Return Value real(kind=dp)

private interface two_body_contrib

  • private function two_body_contrib_ksym(J, p, a)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=dp), intent(in) :: J
    type(Symmetry), intent(in) :: p
    type(Symmetry), intent(in) :: a

    Return Value real(kind=dp)

  • private function two_body_contrib_kvec(J, p, k)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=dp), intent(in) :: J
    integer, intent(in) :: p(N_DIM)
    integer, intent(in) :: k(N_DIM)

    Return Value real(kind=dp)

private interface three_body_exchange_contrib

  • private function exchange_contrib_ksym(nI, J, p, q, a, spin)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nI(:)
    real(kind=dp), intent(in) :: J
    type(Symmetry), intent(in) :: p
    type(Symmetry), intent(in) :: q
    type(Symmetry), intent(in) :: a
    integer, intent(in) :: spin

    Return Value real(kind=dp)

  • private function exchange_contrib_kvec(nI, J, p, q, k, spin)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nI(:)
    real(kind=dp), intent(in) :: J
    integer, intent(in) :: p(N_DIM)
    integer, intent(in) :: q(N_DIM)
    integer, intent(in) :: k(N_DIM)
    integer, intent(in) :: spin

    Return Value real(kind=dp)


Functions

public pure function get_umat_kspace(i, j, k, l) result(hel)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: i
integer, intent(in) :: j
integer, intent(in) :: k
integer, intent(in) :: l

Return Value real(kind=dp)

private function calc_pgen_mixed_k_space_hub_transcorr(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(:,:)
integer, intent(in) :: ic

Return Value real(kind=dp)

public function calc_pgen_k_space_hubbard_uniform_transcorr(ex, ic) result(pgen)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: ex(:,:)
integer, intent(in) :: ic

Return Value real(kind=dp)

public function calc_pgen_k_space_hubbard_transcorr(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(:,:)
integer, intent(in) :: ic

Return Value real(kind=dp)

public function calc_pgen_k_space_hubbard_triples(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(:,:)
integer, intent(in) :: ic

Return Value real(kind=dp)

public function calc_pgen_k_space_hubbard_par(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(:,:)
integer, intent(in) :: ic

Return Value real(kind=dp)

public function calc_pgen_k_space_hubbard(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,2)
integer, intent(in) :: ic

Return Value real(kind=dp)

public function get_helement_k_space_hub_ex_mat(nI, ic, ex, tpar) result(hel)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(in) :: ic
integer, intent(in) :: ex(2,ic)
logical, intent(in) :: tpar

Return Value real(kind=dp)

public function get_helement_k_space_hub_general(nI, nJ, ic_ret) result(hel)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(in) :: nJ(nel)
integer, intent(inout), optional :: ic_ret

Return Value real(kind=dp)

public function get_diag_helement_k_sp_hub(nI) result(hel)

Arguments

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

Return Value real(kind=dp)

public function get_2_body_diag_transcorr(nI) result(two_body)

Arguments

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

Return Value real(kind=dp)

public function get_3_body_diag_transcorr(nI) result(three_body)

Arguments

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

Return Value real(kind=dp)

public function get_j_opt(nI, corr_J)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
real(kind=dp), intent(in) :: corr_J

Return Value real(kind=dp)

private function get_one_body_diag_sym(nI, spin, k_sym, t_sign) result(hel)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(in) :: spin
type(Symmetry), intent(in) :: k_sym
logical, intent(in), optional :: t_sign

Return Value real(kind=dp)

private function get_one_body_diag_kvec(nI, spin, k_shift, t_sign) result(hel)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(in) :: spin
integer, intent(in) :: k_shift(3)
logical, intent(in), optional :: t_sign

Return Value real(kind=dp)

public function get_offdiag_helement_k_sp_hub(nI, ex, tpar) result(hel)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(in) :: ex(2,2)
logical, intent(in) :: tpar

Return Value real(kind=dp)

private function same_spin_transcorr_factor_kvec(nI, k_vec, spin)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(in) :: k_vec(N_DIM)
integer, intent(in) :: spin

Return Value real(kind=dp)

private function same_spin_transcorr_factor_ksym(nI, k_sym, spin)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
type(Symmetry), intent(in) :: k_sym
integer, intent(in) :: spin

Return Value real(kind=dp)

private function rpa_contrib_kvec(J, p, k, spin)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: J
integer, intent(in) :: p(N_DIM)
integer, intent(in) :: k(N_DIM)
integer, intent(in) :: spin

Return Value real(kind=dp)

private function rpa_contrib_ksym(J, p, a, spin)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: J
type(Symmetry), intent(in) :: p
type(Symmetry), intent(in) :: a
integer, intent(in) :: spin

Return Value real(kind=dp)

private function two_body_contrib_kvec(J, p, k)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: J
integer, intent(in) :: p(N_DIM)
integer, intent(in) :: k(N_DIM)

Return Value real(kind=dp)

private function two_body_contrib_ksym(J, p, a)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: J
type(Symmetry), intent(in) :: p
type(Symmetry), intent(in) :: a

Return Value real(kind=dp)

private function exchange_contrib_kvec(nI, J, p, q, k, spin)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(:)
real(kind=dp), intent(in) :: J
integer, intent(in) :: p(N_DIM)
integer, intent(in) :: q(N_DIM)
integer, intent(in) :: k(N_DIM)
integer, intent(in) :: spin

Return Value real(kind=dp)

private function exchange_contrib_ksym(nI, J, p, q, a, spin)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(:)
real(kind=dp), intent(in) :: J
type(Symmetry), intent(in) :: p
type(Symmetry), intent(in) :: q
type(Symmetry), intent(in) :: a
integer, intent(in) :: spin

Return Value real(kind=dp)

private function two_body_transcorr_factor_kvec(p, k)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: p(N_DIM)
integer, intent(in) :: k(N_DIM)

Return Value real(kind=dp)

private function two_body_transcorr_factor_ksym(p, k)

Arguments

Type IntentOptional Attributes Name
type(Symmetry), intent(in) :: p
type(Symmetry), intent(in) :: k

Return Value real(kind=dp)

private function three_body_transcorr_fac_kvec(nI, p, q, k, spin)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(in) :: p(N_DIM)
integer, intent(in) :: q(N_DIM)
integer, intent(in) :: k(N_DIM)
integer, intent(in) :: spin

Return Value real(kind=dp)

private function three_body_transcorr_fac_ksym(nI, p, q, k, spin)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
type(Symmetry) :: p
type(Symmetry) :: q
type(Symmetry) :: k
integer, intent(in) :: spin

Return Value real(kind=dp)

public function get_3_body_helement_ks_hub(ex, tpar) result(hel)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: ex(2,3)
logical, intent(in) :: tpar

Return Value real(kind=dp)

private function get_3body_sign(ex)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: ex(2,3)

Return Value logical

public function check_momentum_sym(elecs, orbs)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: elecs(:)
integer, intent(in) :: orbs(:)

Return Value logical


Subroutines

public subroutine setup_symmetry_table()

Arguments

None

public subroutine init_k_space_hubbard()

Arguments

None

public subroutine initialize_excit_table()

Arguments

None

private subroutine check_k_space_hubbard_input()

Arguments

None

public subroutine gen_excit_k_space_hub(nI, ilutI, nJ, ilutJ, exFlag, ic, ex, tParity, pGen, hel, store, run)

An API interfacing function for generate_excitation to the rest of NECI:

Read more…

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) :: ex(2,maxExcit)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pGen
real(kind=dp), intent(out) :: hel
type(excit_gen_store_type), intent(inout), target :: store
integer, intent(in), optional :: run

public subroutine gen_excit_uniform_k_space_hub(nI, ilutI, nJ, ilutJ, exFlag, ic, ex, tParity, pGen, hel, store, run)

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) :: ex(2,maxExcit)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pGen
real(kind=dp), intent(out) :: hel
type(excit_gen_store_type), intent(inout), target :: store
integer, intent(in), optional :: run

public subroutine gen_excit_uniform_k_space_hub_transcorr(nI, ilutI, nJ, ilutJ, exFlag, ic, ex, tParity, pgen, hel, store, run)

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) :: ex(2,maxExcit)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pgen
real(kind=dp), intent(out) :: hel
type(excit_gen_store_type), intent(inout), target :: store
integer, intent(in), optional :: run

public subroutine gen_excit_mixed_k_space_hub_transcorr(nI, ilutI, nJ, ilutJ, exFlag, ic, ex, tParity, pgen, hel, store, run)

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) :: ex(2,3)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pgen
real(kind=dp), intent(out) :: hel
type(excit_gen_store_type), intent(inout), target :: store
integer, intent(in), optional :: run

private subroutine gen_uniform_double_para(nI, ilutI, nJ, ilutJ, ex, tParity, 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,3)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pgen

private subroutine gen_uniform_double_anti(nI, ilutI, nJ, ilutJ, ex, tParity, 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,3)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pgen

private subroutine gen_uniform_triple(nI, ilutI, nJ, ilutJ, ex, tParity, 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,3)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pgen

public subroutine gen_excit_k_space_hub_transcorr(nI, ilutI, nJ, ilutJ, exFlag, ic, ex, tParity, pGen, hel, store, run)

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) :: ex(2,maxExcit)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pGen
real(kind=dp), intent(out) :: hel
type(excit_gen_store_type), intent(inout), target :: store
integer, intent(in), optional :: run

public subroutine gen_excit_uniform_k_space_hub_test(nI, ilutI, nJ, ilutJ, exFlag, ic, ex, tParity, pGen, hel, store, run)

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) :: ex(2,maxExcit)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pGen
real(kind=dp), intent(out) :: hel
type(excit_gen_store_type), intent(inout), target :: store
integer, intent(in), optional :: run

public subroutine gen_excit_k_space_hub_transcorr_test(nI, ilutI, nJ, ilutJ, exFlag, ic, ex, tParity, pGen, hel, store, run)

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) :: ex(2,maxExcit)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pGen
real(kind=dp), intent(out) :: hel
type(excit_gen_store_type), intent(inout), target :: store
integer, intent(in), optional :: run

public subroutine gen_triple_hubbard(nI, ilutI, nJ, ilutJ, ex, tParity, 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,3)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pgen

public subroutine pick_bc_orbitals_hubbard(nI, ilutI, src, orb_a, orbs, p_orb)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer(kind=n_int), intent(in) :: ilutI(0:niftot)
integer, intent(in) :: src(3)
integer, intent(in) :: orb_a
integer, intent(out) :: orbs(2)
real(kind=dp), intent(out) :: p_orb

public subroutine create_bc_list_hubbard(nI, ilutI, src, orb_a, orb_list, cum_arr, cum_sum, tgt, cpt)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer(kind=n_int), intent(in) :: ilutI(0:niftot)
integer, intent(in) :: src(3)
integer, intent(in) :: orb_a
integer, intent(out) :: orb_list(nbasis/2,2)
real(kind=dp), intent(out) :: cum_arr(nbasis/2)
real(kind=dp), intent(out) :: cum_sum
integer, intent(in), optional :: tgt
real(kind=dp), intent(out), optional :: cpt

public subroutine pick_a_orbital_hubbard(ilutI, orb, p_orb, sum_ms)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(in) :: ilutI(0:niftot)
integer, intent(out) :: orb
real(kind=dp), intent(out) :: p_orb
integer, intent(in), optional :: sum_ms

public subroutine gen_parallel_double_hubbard(nI, ilutI, nJ, ilutJ, ex, tParity, 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,2)
logical, intent(out) :: tParity
real(kind=dp), intent(out) :: pgen

public subroutine pick_ab_orbitals_par_hubbard(nI, ilutI, src, orbs, p_orb)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer(kind=n_int), intent(in) :: ilutI(0:niftot)
integer, intent(in) :: src(2)
integer, intent(out) :: orbs(2)
real(kind=dp), intent(out) :: p_orb

public subroutine pick_ab_orbitals_hubbard(nI, ilutI, src, orbs, p_orb)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer(kind=n_int), intent(in) :: ilutI(0:niftot)
integer, intent(in) :: src(2)
integer, intent(out) :: orbs(2)
real(kind=dp), intent(out) :: p_orb

public subroutine create_ab_list_par_hubbard(nI, ilutI, src, orb_list, cum_arr, cum_sum, tgt, cpt)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer(kind=n_int), intent(in) :: ilutI(0:niftot)
integer, intent(in) :: src(2)
integer, intent(out) :: orb_list(nbasis/2,2)
real(kind=dp), intent(out) :: cum_arr(nbasis/2)
real(kind=dp), intent(out) :: cum_sum
integer, intent(in), optional :: tgt
real(kind=dp), intent(out), optional :: cpt

public subroutine create_ab_list_hubbard(nI, ilutI, src, orb_list, cum_arr, cum_sum, tgt, cpt)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer(kind=n_int), intent(in) :: ilutI(0:niftot)
integer, intent(in) :: src(2)
integer, intent(out) :: orb_list(nbasis,2)
real(kind=dp), intent(out) :: cum_arr(nbasis)
real(kind=dp), intent(out) :: cum_sum
integer, intent(in), optional :: tgt
real(kind=dp), intent(out), optional :: cpt

public subroutine init_get_helement_k_space_hub()

Arguments

None

public subroutine setup_k_total(nI)

Arguments

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

public subroutine setup_k_space_hub_sym(in_lat)

Arguments

Type IntentOptional Attributes Name
class(lattice), intent(in), optional :: in_lat

public subroutine setup_g1(in_lat)

Arguments

Type IntentOptional Attributes Name
class(lattice), intent(in), optional :: in_lat

public subroutine setup_nbasismax(in_lat)

Arguments

Type IntentOptional Attributes Name
class(lattice), intent(in), optional :: in_lat

public subroutine setup_kPointToBasisFn(in_lat)

Arguments

Type IntentOptional Attributes Name
class(lattice), intent(in), optional :: in_lat

Arguments

None

public subroutine init_three_body_const_mat()

Arguments

None

public subroutine make_triple(nI, nJ, elecs, orbs, ex, tPar)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nel)
integer, intent(out) :: nJ(nel)
integer, intent(in) :: elecs(3)
integer, intent(in) :: orbs(3)
integer, intent(out) :: ex(2,3)
logical, intent(out) :: tPar

public subroutine init_tmat_kspace(in_lat)

Arguments

Type IntentOptional Attributes Name
class(lattice), optional :: in_lat

public subroutine setup_tmat_k_space(in_lat)

Arguments

Type IntentOptional Attributes Name
class(lattice), intent(in), optional :: in_lat