1
0
mirror of https://github.com/TREX-CoE/irpjast.git synced 2024-07-22 18:57:41 +02:00

Fix electrons formula

This commit is contained in:
Panadestein 2020-12-08 23:40:24 +01:00
parent be13b968df
commit 72c0fb1e4e
3 changed files with 14 additions and 7 deletions

View File

@ -56,8 +56,8 @@ BEGIN_PROVIDER [double precision, factor_ee]
BEGIN_DOC
! Electron-electron contribution to Jastrow factor
END_DOC
integer :: i, j, p
double precision :: pow_ser, x, b_one
integer :: i, j, p, ipar
double precision :: pow_ser, x, spin_fact
factor_ee = 0.0d0
@ -65,19 +65,23 @@ BEGIN_PROVIDER [double precision, factor_ee]
do i = 1, nelec
x = rescale_ee(i, j)
pow_ser = 0.0d0
spin_fact = 1.0d0
ipar = 0
do p = 2, nbord
x = x * rescale_ee(i, j)
pow_ser = pow_ser + bord_vect(p + 1) * x
end do
if (i <= nelec_up .or. j >= nelec_up) then
b_one = bord_vect(1) * 0.5d0
else
b_one = bord_vect(1)
if ((i.le.nelec_up .and. j.le.nelec_up) .or. &
(i.gt.nelec_up .and. j.gt.nelec_up)) then
spin_fact = 0.5d0
ipar = 1
end if
factor_ee = factor_ee + b_one * rescale_ee(i, j) &
factor_ee = factor_ee + spin_fact * bord_vect(1) * rescale_ee(i, j) &
/ (1.0d0 + bord_vect(2) * rescale_ee(i, j)) + pow_ser
end do
end do

BIN
jastrow

Binary file not shown.

View File

@ -67,12 +67,15 @@ BEGIN_PROVIDER [double precision, factor_en]
do i = 1, nelec
x = rescale_en(i, j)
pow_ser = 0.0d0
do p = 2, naord
x = x * rescale_en(i, j)
pow_ser = pow_ser + aord_vect(p + 1, typenuc_arr(j)) * x
end do
factor_en = factor_en + aord_vect(1, typenuc_arr(j)) * rescale_en(i, j) &
/ (1 + aord_vect(2, typenuc_arr(j)) * rescale_en(i, j)) + pow_ser
end do
end do