From fc0f30a80404fde5062548d5a0a1b273aac1cae6 Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Tue, 15 Dec 2020 17:06:55 +0100 Subject: [PATCH] WIP jast deriv --- Makefile | 7 +++++-- deriv_num.irp.f | 47 +++++++++++++++++++++++++++++++++++++++++++++++ el_nuc_el.irp.f | 22 ++++++++++++++-------- electrons.irp.f | 1 + jastrow | Bin 66696 -> 0 bytes rescale.irp.f | 11 ++++------- 6 files changed, 71 insertions(+), 17 deletions(-) create mode 100644 deriv_num.irp.f delete mode 100755 jastrow diff --git a/Makefile b/Makefile index 24b8b55..cbc251d 100644 --- a/Makefile +++ b/Makefile @@ -1,8 +1,11 @@ IRPF90 = irpf90 #-a -d -FC = gfortran +FC = gfortran -g FCFLAGS= -O2 -ffree-line-length-none -I . -NINJA = ninja +FC = ifort -C -traceback -g +#FCFLAGS= -O2 -ffree-line-length-none -I . +#NINJA = ninja AR = ar +ARCHIVE= ar crs RANLIB = ranlib SRC= diff --git a/deriv_num.irp.f b/deriv_num.irp.f new file mode 100644 index 0000000..6bacd32 --- /dev/null +++ b/deriv_num.irp.f @@ -0,0 +1,47 @@ +program jastrow + implicit none + print *, 'Nabla J1' + integer::k + double precision :: j1, j2, j0, deriv, dt, lapl + dt = 1.d-4 + +BEGIN_TEMPLATE +lapl = 0.d0 +j0 = $X $Y +do k=1,3 + + elec_coord(1,k) -= dt + TOUCH elec_coord + j1 = $X $Y + + elec_coord(1,k) += 2.d0*dt + TOUCH elec_coord + j2 = $X $Y + + deriv = (j2 - j1)/(2.d0*dt) + lapl += (j2 - 2.d0*j0 + j1)/(dt*dt) + print *, 'deriv $X ' + print *, deriv + print *, $X_deriv_e(k,$Z) + print *, '' + + elec_coord(1,k) -= dt + TOUCH elec_coord + +enddo + print *, 'lapl $X ' + print *, lapl + print *, $X_deriv_e(4 ,$Z) + print *, '' + +SUBST [X,Y,Z] +factor_een ; ; 1 ;; +END_TEMPLATE +!rescale_een_e ; (1,3,1) ; 1,3,1 ;; +!rescale_een_n ; (1,1,2) ; 1,1,2 ;; +!rescale_een_e ; (1,2,2) ; 1,2,2 ;; +!elnuc_dist ; (1,1); 1,1 ;; +!elec_dist ; (1,2); 1,2 ;; + + +end program diff --git a/el_nuc_el.irp.f b/el_nuc_el.irp.f index 6938a27..95332bd 100644 --- a/el_nuc_el.irp.f +++ b/el_nuc_el.irp.f @@ -29,7 +29,8 @@ BEGIN_PROVIDER [ double precision, factor_een ] riam = rescale_een_n(i, a, m) rijk = rescale_een_e(i, j, k) factor_een = factor_een + & - rijk * (rial + rjal) * riam * rjam_cn +! rijk * (rial + rjal) * riam * rjam_cn + rijk * rjam_cn enddo enddo enddo @@ -68,7 +69,6 @@ BEGIN_PROVIDER [ double precision, factor_een_deriv_e, (4, nelec) ] cn = cord_vect_lkp(l, k, p, typenuc_arr(a)) do j = 1, nelec - factor_een_deriv_e(:, j) = 0.d0 rjal = rescale_een_n(j, a, l) rjam_cn = rescale_een_n(j, a, m) * cn @@ -83,7 +83,7 @@ BEGIN_PROVIDER [ double precision, factor_een_deriv_e, (4, nelec) ] rijk = rescale_een_e(i, j, k) do ii = 1, 4 - drijk(ii) = rescale_een_e_deriv_e(ii, i, j, k) + drijk(ii) = rescale_een_e_deriv_e(ii, j, i, k) enddo lap = 0.0d0 @@ -92,15 +92,23 @@ BEGIN_PROVIDER [ double precision, factor_een_deriv_e, (4, nelec) ] v1 = rijk * (rial + rjal) v2 = rjam_cn * riam - do ii = 1, 4 + do ii = 1, 3 d1 = drijk(ii) * (rial + rjal) + rijk * (rial + drjal(ii)) d2 = drjam_cn(ii) * riam factor_een_deriv_e(ii, j) = factor_een_deriv_e(ii, j) + & - v1 * d2 + d1 * v2 + x(ii) * lap - ! v(x) u''(x) + 2 * u'(x) v'(x) + u(x) v''(x) + v1 * d2 + d1 * v2 +! factor_een_deriv_e(ii, j) = factor_een_deriv_e(ii, j) + & +! drijk(ii) lap = lap + d1 * d2 enddo + ii = 4 + d1 = drijk(ii) * (rial + rjal) + rijk * (rial + drjal(ii)) + d2 = drjam_cn(ii) * riam + factor_een_deriv_e(ii, j) = factor_een_deriv_e(ii, j) + & + v1 * d2 + d1 * v2 + x(ii) * lap + ! v(x) u''(x) + 2 * u'(x) v'(x) + u(x) v''(x) + enddo enddo enddo @@ -108,6 +116,4 @@ BEGIN_PROVIDER [ double precision, factor_een_deriv_e, (4, nelec) ] enddo enddo - factor_een_deriv_e = 0.5d0 * factor_een_deriv_e - END_PROVIDER diff --git a/electrons.irp.f b/electrons.irp.f index 0011a93..4dfde8a 100644 --- a/electrons.irp.f +++ b/electrons.irp.f @@ -48,6 +48,7 @@ BEGIN_PROVIDER [ double precision, elec_dist, (nelec, nelec) ] z = elec_coord(i, 3) - elec_coord(j, 3) elec_dist(i, j) = dsqrt( x*x + y*y + z*z ) enddo +! elec_dist(j, j) = 1.d-10 enddo END_PROVIDER diff --git a/jastrow b/jastrow deleted file mode 100755 index b442acd1b57aceaea7691a5406e6c140ab66efc0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66696 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