mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-09-01 08:43:42 +02:00
complex core quantities
This commit is contained in:
parent
b1e14142c6
commit
a64be70911
@ -5,6 +5,16 @@ BEGIN_PROVIDER [double precision, core_energy]
|
||||
END_DOC
|
||||
integer :: i,j,k,l
|
||||
core_energy = 0.d0
|
||||
if (is_periodic) then
|
||||
do i = 1, n_core_orb
|
||||
j = list_core(i)
|
||||
core_energy += 2.d0 * dble(mo_one_e_integrals_complex(j,j)) + mo_two_e_integrals_jj(j,j)
|
||||
do k = i+1, n_core_orb
|
||||
l = list_core(k)
|
||||
core_energy += 2.d0 * (2.d0 * mo_two_e_integrals_jj(j,l) - mo_two_e_integrals_jj_exchange(j,l))
|
||||
enddo
|
||||
enddo
|
||||
else
|
||||
do i = 1, n_core_orb
|
||||
j = list_core(i)
|
||||
core_energy += 2.d0 * mo_one_e_integrals(j,j) + mo_two_e_integrals_jj(j,j)
|
||||
@ -13,6 +23,7 @@ BEGIN_PROVIDER [double precision, core_energy]
|
||||
core_energy += 2.d0 * (2.d0 * mo_two_e_integrals_jj(j,l) - mo_two_e_integrals_jj_exchange(j,l))
|
||||
enddo
|
||||
enddo
|
||||
endif
|
||||
core_energy += nuclear_repulsion
|
||||
|
||||
END_PROVIDER
|
||||
@ -36,3 +47,25 @@ BEGIN_PROVIDER [double precision, core_fock_operator, (mo_num,mo_num)]
|
||||
enddo
|
||||
enddo
|
||||
END_PROVIDER
|
||||
|
||||
BEGIN_PROVIDER [complex*16, core_fock_operator_complex, (mo_num,mo_num)]
|
||||
implicit none
|
||||
integer :: i,j,k,l,m,n
|
||||
complex*16 :: get_two_e_integral_periodic
|
||||
BEGIN_DOC
|
||||
! this is the contribution to the Fock operator from the core electrons
|
||||
END_DOC
|
||||
core_fock_operator_complex = (0.d0,0.d0)
|
||||
do i = 1, n_act_orb
|
||||
j = list_act(i)
|
||||
do k = 1, n_act_orb
|
||||
l = list_act(k)
|
||||
do m = 1, n_core_orb
|
||||
n = list_core(m)
|
||||
core_fock_operator_complex(j,l) += 2.d0 * &
|
||||
get_two_e_integral_periodic(j,n,l,n,mo_integrals_map,mo_integrals_map_2) - &
|
||||
get_two_e_integral_periodic(j,n,n,l,mo_integrals_map,mo_integrals_map_2)
|
||||
enddo
|
||||
enddo
|
||||
enddo
|
||||
END_PROVIDER
|
||||
|
Loading…
Reference in New Issue
Block a user