mirror of
https://github.com/TREX-CoE/irpjast.git
synced 2024-08-25 06:31:46 +02:00
Fix nuclei formula
This commit is contained in:
parent
ea0d11a899
commit
be13b968df
2
Makefile
2
Makefile
@ -2,7 +2,7 @@ IRPF90 = irpf90 #-a -d
|
||||
FC = gfortran
|
||||
FCFLAGS= -O2 -ffree-line-length-none -I .
|
||||
NINJA = ninja
|
||||
AR = ar
|
||||
ARCHIVE= ar crs
|
||||
RANLIB = ranlib
|
||||
|
||||
SRC=
|
||||
|
@ -6,6 +6,14 @@ BEGIN_PROVIDER [ integer, nelec ]
|
||||
nelec = 10
|
||||
END_PROVIDER
|
||||
|
||||
BEGIN_PROVIDER [ integer, nelec_up ]
|
||||
implicit none
|
||||
BEGIN_DOC
|
||||
! Number of alpha and beta electrons
|
||||
END_DOC
|
||||
nelec_up = 5
|
||||
END_PROVIDER
|
||||
|
||||
|
||||
BEGIN_PROVIDER [ double precision, elec_coord, (nelec, 3) ]
|
||||
implicit none
|
||||
@ -22,6 +30,7 @@ BEGIN_PROVIDER [ double precision, elec_coord, (nelec, 3) ]
|
||||
end do
|
||||
|
||||
close(fu)
|
||||
|
||||
END_PROVIDER
|
||||
|
||||
BEGIN_PROVIDER [ double precision, elec_dist, (nelec, nelec) ]
|
||||
@ -48,22 +57,30 @@ BEGIN_PROVIDER [double precision, factor_ee]
|
||||
! Electron-electron contribution to Jastrow factor
|
||||
END_DOC
|
||||
integer :: i, j, p
|
||||
double precision :: pow_ser, x
|
||||
double precision :: pow_ser, x, b_one
|
||||
|
||||
factor_ee = 0.0d0
|
||||
pow_ser = 0.0d0
|
||||
|
||||
do j = 1, nelec
|
||||
do i = 1, nelec
|
||||
x = rescale_ee(i, j) * rescale_ee(i, j)
|
||||
x = rescale_ee(i, j)
|
||||
pow_ser = 0.0d0
|
||||
do p = 2, nbord
|
||||
x = x * rescale_ee(i, j)
|
||||
pow_ser = pow_ser + bord_vect(p + 1) * x
|
||||
end do
|
||||
factor_ee = factor_ee + bord_vect(1) * rescale_ee(i, j) &
|
||||
|
||||
if (i <= nelec_up .or. j >= nelec_up) then
|
||||
b_one = bord_vect(1) * 0.5d0
|
||||
else
|
||||
b_one = bord_vect(1)
|
||||
end if
|
||||
|
||||
factor_ee = factor_ee + b_one * rescale_ee(i, j) &
|
||||
/ (1.0d0 + bord_vect(2) * rescale_ee(i, j)) + pow_ser
|
||||
end do
|
||||
end do
|
||||
|
||||
factor_ee = 0.5d0 * factor_ee
|
||||
|
||||
END_PROVIDER
|
||||
|
@ -1,35 +1,35 @@
|
||||
-0.00008444
|
||||
-0.00003393
|
||||
0.00009230
|
||||
-0.00006224
|
||||
-0.00007552
|
||||
0.00009380
|
||||
0.00001181
|
||||
0.00009928
|
||||
-0.00007969
|
||||
0.00001493
|
||||
0.00007319
|
||||
-0.00004341
|
||||
-0.00002337
|
||||
0.00007838
|
||||
-0.00006033
|
||||
-0.00002512
|
||||
0.00004281
|
||||
0.00004631
|
||||
-0.00008111
|
||||
-0.00001758
|
||||
0.00002855
|
||||
0.00008134
|
||||
-0.00003731
|
||||
0.00002581
|
||||
0.00007723
|
||||
-0.00007482
|
||||
-0.00004745
|
||||
-0.00006915
|
||||
-0.00008698
|
||||
-0.00001448
|
||||
-0.00005086
|
||||
0.00001145
|
||||
-0.00003374
|
||||
0.00009208
|
||||
0.00007611
|
||||
0.00000000
|
||||
0.00000000
|
||||
-0.380512
|
||||
-0.157996
|
||||
-0.031558
|
||||
0.021512
|
||||
0.5000000
|
||||
0.153660
|
||||
0.0672262
|
||||
0.021570
|
||||
0.0073096
|
||||
0.002866
|
||||
0.571702
|
||||
-0.5142530
|
||||
-0.513043
|
||||
0.009486
|
||||
-0.004205
|
||||
0.4263258
|
||||
0.0828815
|
||||
0.0051186
|
||||
-0.0029978
|
||||
-0.0052704
|
||||
-0.000075
|
||||
-0.0830165
|
||||
0.0145434
|
||||
0.0514351
|
||||
0.000925
|
||||
-0.0040991
|
||||
0.0043276
|
||||
-0.00165447
|
||||
0.002614
|
||||
-0.001477
|
||||
-0.0011370
|
||||
-0.04010475
|
||||
0.00610671
|
||||
|
@ -62,11 +62,11 @@ BEGIN_PROVIDER [double precision, factor_en]
|
||||
double precision :: pow_ser, x
|
||||
|
||||
factor_en = 0.0d0
|
||||
pow_ser = 0.0d0
|
||||
|
||||
do j = 1 , nnuc
|
||||
do i = 1, nelec
|
||||
x = rescale_en(i, j) * rescale_en(i, j)
|
||||
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
|
||||
@ -76,5 +76,4 @@ BEGIN_PROVIDER [double precision, factor_en]
|
||||
end do
|
||||
end do
|
||||
|
||||
factor_en = 0.5d0 * factor_en
|
||||
END_PROVIDER
|
||||
|
@ -47,8 +47,8 @@ BEGIN_PROVIDER [integer, dim_cord_vect]
|
||||
END_PROVIDER
|
||||
|
||||
|
||||
BEGIN_PROVIDER [double precision, aord_vect, (0:naord, typenuc)]
|
||||
&BEGIN_PROVIDER [double precision, bord_vect, (0:nbord)]
|
||||
BEGIN_PROVIDER [double precision, aord_vect, (naord + 1, typenuc)]
|
||||
&BEGIN_PROVIDER [double precision, bord_vect, (nbord + 1)]
|
||||
&BEGIN_PROVIDER [double precision, cord_vect, (dim_cord_vect, typenuc)]
|
||||
implicit none
|
||||
BEGIN_DOC
|
||||
|
21
random.irp.f
21
random.irp.f
@ -1,21 +0,0 @@
|
||||
BEGIN_PROVIDER [ integer, seed_size ]
|
||||
implicit none
|
||||
BEGIN_DOC
|
||||
! Size of the random seed
|
||||
END_DOC
|
||||
call random_seed(size=seed_size)
|
||||
|
||||
END_PROVIDER
|
||||
|
||||
BEGIN_PROVIDER [ integer, seed, (seed_size) ]
|
||||
implicit none
|
||||
BEGIN_DOC
|
||||
! Random seed
|
||||
END_DOC
|
||||
integer :: i
|
||||
do i=1,seed_size
|
||||
seed(i) = i
|
||||
enddo
|
||||
call random_seed(put=seed)
|
||||
|
||||
END_PROVIDER
|
Loading…
Reference in New Issue
Block a user