10
0
mirror of https://github.com/QuantumPackage/qp2.git synced 2024-07-17 00:20:41 +02:00
QuantumPackage/src/mo_one_e_ints/pot_mo_ints_complex.irp.f

47 lines
1.7 KiB
Fortran
Raw Normal View History

2020-01-29 21:15:48 +01:00
BEGIN_PROVIDER [double precision, mo_integrals_n_e_real, (mo_num,mo_num)]
&BEGIN_PROVIDER [double precision, mo_integrals_n_e_imag, (mo_num,mo_num)]
&BEGIN_PROVIDER [complex*16, mo_integrals_n_e_complex, (mo_num,mo_num)]
implicit none
BEGIN_DOC
! Kinetic energy integrals in the MO basis
END_DOC
integer :: i,j
if (read_mo_integrals_e_n) then
mo_integrals_n_e_real = 0.d0
mo_integrals_n_e_imag = 0.d0
call ezfio_get_mo_one_e_ints_mo_integrals_e_n_real(mo_integrals_n_e_real)
call ezfio_get_mo_one_e_ints_mo_integrals_e_n_imag(mo_integrals_n_e_imag)
print *, 'MO N-e integrals read from disk'
do i=1,mo_num
do j=1,mo_num
mo_integrals_n_e_complex(j,i) = dcmplx(mo_integrals_n_e_real(j,i), &
mo_integrals_n_e_imag(j,i))
enddo
enddo
else
call ao_to_mo_complex( &
ao_integrals_n_e_complex, &
size(ao_integrals_n_e_complex,1), &
mo_integrals_n_e_complex, &
size(mo_integrals_n_e_complex,1) &
)
endif
if (write_mo_integrals_e_n) then
!mo_integrals_n_e_real = 0.d0
!mo_integrals_n_e_imag = 0.d0
do i=1,mo_num
do j=1,mo_num
mo_integrals_n_e_real(j,i)=dble(mo_integrals_n_e_complex(j,i))
mo_integrals_n_e_imag(j,i)=dimag(mo_integrals_n_e_complex(j,i))
enddo
enddo
call ezfio_set_mo_one_e_ints_mo_integrals_e_n_real(mo_integrals_n_e_real)
call ezfio_set_mo_one_e_ints_mo_integrals_e_n_imag(mo_integrals_n_e_imag)
print *, 'MO N-e integrals written to disk'
endif
END_PROVIDER