mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2024-12-23 04:44:03 +01:00
Fixed bug in factor_en. #22
This commit is contained in:
parent
be341f3afd
commit
672f0e771c
@ -2284,7 +2284,7 @@ integer function qmckl_compute_factor_en_f(context, walk_num, elec_num, nucl_num
|
|||||||
integer*8 , intent(in) :: walk_num, elec_num, aord_num, nucl_num, type_nucl_num
|
integer*8 , intent(in) :: walk_num, elec_num, aord_num, nucl_num, type_nucl_num
|
||||||
integer*8 , intent(in) :: type_nucl_vector(type_nucl_num)
|
integer*8 , intent(in) :: type_nucl_vector(type_nucl_num)
|
||||||
double precision , intent(in) :: aord_vector(aord_num + 1, type_nucl_num)
|
double precision , intent(in) :: aord_vector(aord_num + 1, type_nucl_num)
|
||||||
double precision , intent(in) :: en_distance_rescaled(walk_num, elec_num, nucl_num)
|
double precision , intent(in) :: en_distance_rescaled(elec_num, nucl_num, walk_num)
|
||||||
double precision , intent(out) :: factor_en(walk_num)
|
double precision , intent(out) :: factor_en(walk_num)
|
||||||
|
|
||||||
integer*8 :: i, a, p, ipar, nw
|
integer*8 :: i, a, p, ipar, nw
|
||||||
@ -2322,18 +2322,18 @@ integer function qmckl_compute_factor_en_f(context, walk_num, elec_num, nucl_num
|
|||||||
do nw =1, walk_num
|
do nw =1, walk_num
|
||||||
do a = 1, nucl_num
|
do a = 1, nucl_num
|
||||||
do i = 1, elec_num
|
do i = 1, elec_num
|
||||||
x = en_distance_rescaled(nw, i, a)
|
x = en_distance_rescaled(i, a, nw)
|
||||||
power_ser = 0.0d0
|
power_ser = 0.0d0
|
||||||
|
|
||||||
do p = 2, aord_num
|
do p = 2, aord_num
|
||||||
x = x * en_distance_rescaled(nw, i, a)
|
x = x * en_distance_rescaled(i, a, nw)
|
||||||
power_ser = power_ser + aord_vector(p + 1, type_nucl_vector(a)) * x
|
power_ser = power_ser + aord_vector(p + 1, type_nucl_vector(a)) * x
|
||||||
end do
|
end do
|
||||||
|
|
||||||
factor_en(nw) = factor_en(nw) + aord_vector(1, type_nucl_vector(a)) * &
|
factor_en(nw) = factor_en(nw) + aord_vector(1, type_nucl_vector(a)) * &
|
||||||
en_distance_rescaled(nw, i, a) / &
|
en_distance_rescaled(i, a, nw) / &
|
||||||
(1.0d0 + aord_vector(2, type_nucl_vector(a)) * &
|
(1.0d0 + aord_vector(2, type_nucl_vector(a)) * &
|
||||||
en_distance_rescaled(nw, i, a)) &
|
en_distance_rescaled(i, a, nw)) &
|
||||||
+ power_ser
|
+ power_ser
|
||||||
|
|
||||||
end do
|
end do
|
||||||
|
Loading…
Reference in New Issue
Block a user