10
0
mirror of https://github.com/QuantumPackage/qp2.git synced 2024-08-15 08:48:30 +02:00
QuantumPackage/src/ao_one_e_ints/ao_one_e_ints.irp.f

70 lines
1.9 KiB
Fortran
Raw Normal View History

2019-01-25 11:39:31 +01:00
BEGIN_PROVIDER [ double precision, ao_one_e_integrals,(ao_num,ao_num)]
&BEGIN_PROVIDER [ double precision, ao_one_e_integrals_diag,(ao_num)]
implicit none
integer :: i,j,n,l
BEGIN_DOC
! One-electron Hamiltonian in the |AO| basis.
END_DOC
IF (read_ao_one_e_integrals) THEN
call ezfio_get_ao_one_e_ints_ao_one_e_integrals(ao_one_e_integrals)
ELSE
ao_one_e_integrals = ao_integrals_n_e + ao_kinetic_integrals
IF (DO_PSEUDO) THEN
ao_one_e_integrals += ao_pseudo_integrals
ENDIF
ENDIF
DO j = 1, ao_num
ao_one_e_integrals_diag(j) = ao_one_e_integrals(j,j)
ENDDO
IF (write_ao_one_e_integrals) THEN
call ezfio_set_ao_one_e_ints_ao_one_e_integrals(ao_one_e_integrals)
print *, 'AO one-e integrals written to disk'
ENDIF
END_PROVIDER
2019-12-02 18:18:30 +01:00
BEGIN_PROVIDER [ double precision, ao_one_e_integrals_imag,(ao_num,ao_num)]
implicit none
integer :: i,j,n,l
BEGIN_DOC
! One-electron Hamiltonian in the |AO| basis.
END_DOC
IF (read_ao_one_e_integrals) THEN
2020-01-24 15:50:15 +01:00
call ezfio_get_ao_one_e_ints_ao_one_e_integrals_imag(ao_one_e_integrals_imag)
2019-12-02 18:18:30 +01:00
ELSE
2020-01-24 15:50:15 +01:00
ao_one_e_integrals_imag = ao_integrals_n_e_imag + ao_kinetic_integrals_imag
IF (DO_PSEUDO) THEN
ao_one_e_integrals_imag += ao_pseudo_integrals_imag
ENDIF
2019-12-02 18:18:30 +01:00
ENDIF
IF (write_ao_one_e_integrals) THEN
2020-01-24 15:50:15 +01:00
call ezfio_set_ao_one_e_ints_ao_one_e_integrals_imag(ao_one_e_integrals_imag)
2019-12-02 18:18:30 +01:00
print *, 'AO one-e integrals written to disk'
ENDIF
END_PROVIDER
2020-01-24 15:50:15 +01:00
BEGIN_PROVIDER [ complex*16, ao_one_e_integrals_complex,(ao_num,ao_num)]
implicit none
integer :: i,j,n,l
BEGIN_DOC
! One-electron Hamiltonian in the |AO| basis.
END_DOC
do i=1,ao_num
do j=1,ao_num
ao_one_e_integrals_complex(j,i)=dcmplx(ao_one_e_integrals(j,i), &
ao_one_e_integrals_imag(j,i))
2020-01-24 15:50:15 +01:00
enddo
enddo
END_PROVIDER