Integrals_neci Module



Contents


Functions

public function GetUMatEl2(I, J, A, B)

Arguments

Type IntentOptional Attributes Name
integer :: I
integer :: J
integer :: A
integer :: B

Return Value real(kind=dp)

public pure function get_umat_el_comporb_spinorbs(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)

public pure function get_umat_el_comporb_notspinorbs(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)

public pure function get_umat_el_fixlz_storespinorbs(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)

public pure function get_umat_el_fixlz_notspinorbs(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)

public pure function get_umat_el_normal(idi, idj, idk, idl) result(hel)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: idi
integer, intent(in) :: idj
integer, intent(in) :: idk
integer, intent(in) :: idl

Return Value real(kind=dp)


Subroutines

public subroutine SetIntDefaults()

Arguments

None

public subroutine IntReadInput(file_reader)

Arguments

Type IntentOptional Attributes Name
class(FileReader_t), intent(inout) :: file_reader

public subroutine IntInit(iCacheFlag)

C.. Real space hubbard C.. we pre-compute the 2-e integrals C.. Generate the 2e integrals (UMAT) C.. we pre-compute the 2-e integrals C.. Generate the 2e integrals (UMAT) C.. Non-periodic hubbard (mom space) C.. Most normal Hubbards C.. The UEG doesn’t store coul integrals C.. We need to init the arrays regardless of whether we’re storing H C..Need to initialise the Fourier arrays C..

Read more…

Arguments

Type IntentOptional Attributes Name
integer :: iCacheFlag

public subroutine IntFreeze()

C.. At this point, we transform the UMAT and TMAT into a new UMAT and C.. TMAT and Ecore with the frozen orbitals factored in C.. C.. a,b are frozen spinorbitals C.. E’core = Ecore+sum_a t_aa + sum_(a<b) (-) C.. t’_ii = t_ii+ sum_a ( - ) C.. NHG contains the old number of orbitals C.. NBASIS contains the new C.. We need to transform some integrals

Read more…

Arguments

None

public subroutine IntCleanup(iCacheFlag)

Arguments

Type IntentOptional Attributes Name
integer :: iCacheFlag

public subroutine IntFREEZEBASIS(NHG, NBASIS, UMAT, UMAT2, ECORE, G1, nBasisMax, ISS, BRR, NFROZEN, NTFROZEN, NFROZENIN, NTFROZENIN, NEL)

C.. At this point, we transform the UMAT and TMAT into a new UMAT and C.. TMAT and Ecore with the frozen orbitals factored in C.. C.. a,b are frozen spinorbitals C.. E’core = Ecore+sum_a t_aa + sum_(a<b) (-) C.. t’_ii = t_ii+ sum_a ( - ) C.. NHG contains the old number of orbitals C.. NBASIS contains the new C.. We first need to work out where each of the current orbitals will C.. end up in the new set

Arguments

Type IntentOptional Attributes Name
integer :: NHG
integer :: NBASIS
real(kind=dp) :: UMAT(*)

C.. was (NHG/ISS,NHG/ISS,NHG/ISS,NHG/ISS)

real(kind=dp) :: UMAT2(*)
real(kind=dp) :: ECORE

C.. was (NBASIS/ISS,NBASIS/ISS,NBASIS/ISS,NBASIS/ISS)

type(BasisFN) :: G1(NHG)
integer :: nBasisMax(5,*)
integer :: ISS
integer :: BRR(NHG)
integer :: NFROZEN
integer :: NTFROZEN
integer :: NFROZENIN
integer :: NTFROZENIN
integer :: NEL

public subroutine init_getumatel_fn_pointers()

Arguments

None

public subroutine DumpFCIDUMP()

Arguments

None