From a5559fc3bae37220eef5004dc6124c2a3976b5f3 Mon Sep 17 00:00:00 2001 From: Emiel Slootman Date: Thu, 12 Dec 2024 10:23:02 +0100 Subject: [PATCH 1/4] clean up --- org/qmckl_forces.org | 44 ++------------------------------------------ 1 file changed, 2 insertions(+), 42 deletions(-) diff --git a/org/qmckl_forces.org b/org/qmckl_forces.org index c9b9145..e040937 100644 --- a/org/qmckl_forces.org +++ b/org/qmckl_forces.org @@ -3062,26 +3062,14 @@ qmckl_exit_code qmckl_provide_forces_jastrow_een_g(qmckl_context context) if (ctx->jastrow_champ.cord_num > 0) { - /* Check if en rescaled distance is provided */ - rc = qmckl_provide_een_rescaled_e(context); - if(rc != QMCKL_SUCCESS) return rc; - /* Check if en rescaled distance derivatives is provided */ rc = qmckl_provide_een_rescaled_n(context); if(rc != QMCKL_SUCCESS) return rc; - /* Check if en rescaled distance is provided */ - rc = qmckl_provide_een_rescaled_e_gl(context); - if(rc != QMCKL_SUCCESS) return rc; - /* Check if en rescaled distance derivatives is provided */ rc = qmckl_provide_een_rescaled_n_gl(context); if(rc != QMCKL_SUCCESS) return rc; - /* Check if en rescaled distance derivatives is provided */ - rc = qmckl_provide_een_rescaled_e_gl(context); - if(rc != QMCKL_SUCCESS) return rc; - /* Check if en rescaled distance derivatives is provided */ rc = qmckl_provide_jastrow_champ_c_vector_full(context); if(rc != QMCKL_SUCCESS) return rc; @@ -3162,9 +3150,7 @@ qmckl_exit_code qmckl_provide_forces_jastrow_een_g(qmckl_context context) ctx->forces.forces_dtmp_c, ctx->forces.forces_een_n, ctx->jastrow_champ.een_rescaled_n, - ctx->jastrow_champ.een_rescaled_e, ctx->jastrow_champ.een_rescaled_n_gl, - ctx->jastrow_champ.een_rescaled_e_gl, ctx->forces.forces_jastrow_een_g); if (rc != QMCKL_SUCCESS) { @@ -3203,9 +3189,7 @@ qmckl_exit_code qmckl_provide_forces_jastrow_een_g(qmckl_context context) | ~forces_dtmp_c~ | ~double[walk_num][0:cord_num-1][0:cord_num][4][nucl_num][4][elec_num]~ | in | vector of non-zero coefficients | | ~forces_een_n~ | ~double[walk_num][0:cord_num][3][nucl_num][4][elec_num]~ | in | Derivative of Electron-nucleus rescaled factor | | ~een_rescaled_n~ | ~double[walk_num][0:cord_num][nucl_num][elec_num]~ | in | Electron-nucleus rescaled factor | - | ~een_rescaled_e~ | ~double[walk_num][0:cord_num][elec_num][elec_num]~ | in | Electron-nucleus rescaled factor | | ~een_rescaled_n_gl~ | ~double[walk_num][0:cord_num][nucl_num][4][elec_num]~ | in | Derivative of Electron-nucleus rescaled factor | - | ~een_rescaled_e_gl~ | ~double[walk_num][0:cord_num][elec_num][4][elec_num]~ | in | Derivative of Electron-nucleus rescaled factor | | ~forces_jastrow_een_g~| ~double[walk_num][3][nucl_num][3][elec_num]~ | out | Derivative of Electron-nucleus jastrow | @@ -3214,7 +3198,7 @@ integer(qmckl_exit_code) function qmckl_compute_forces_jastrow_een_g( & context, walk_num, elec_num, nucl_num, & cord_num, dim_c_vector, c_vector_full, lkpm_combined_index, & en_distance, tmp_c, dtmp_c, forces_tmp_c, forces_dtmp_c, forces_een_n, een_rescaled_n, & - een_rescaled_e, een_rescaled_n_gl, een_rescaled_e_gl, forces_jastrow_een_g)& + een_rescaled_e_gl, forces_jastrow_een_g)& result(info) bind(C) use, intrinsic :: iso_c_binding use qmckl @@ -3230,9 +3214,7 @@ integer(qmckl_exit_code) function qmckl_compute_forces_jastrow_een_g( & real (c_double ) , intent(in) :: forces_dtmp_c(elec_num, 4, nucl_num,4,0:cord_num, 0:cord_num-1, walk_num) real (c_double ) , intent(in) :: forces_een_n(elec_num, 4, nucl_num, 3, 0:cord_num, walk_num) real (c_double ) , intent(in) :: een_rescaled_n(elec_num, nucl_num, 0:cord_num, walk_num) - real (c_double ) , intent(in) :: een_rescaled_e(elec_num, elec_num, 0:cord_num, walk_num) real (c_double ) , intent(in) :: een_rescaled_n_gl(elec_num, 4, nucl_num, 0:cord_num, walk_num) - real (c_double ) , intent(in) :: een_rescaled_e_gl(elec_num, 4, elec_num, 0:cord_num, walk_num) real (c_double ) , intent(out) :: forces_jastrow_een_g(elec_num,3,nucl_num,3,walk_num) integer*8 :: i, a, j, l, k, m, n, nw, ii, jj @@ -3304,9 +3286,7 @@ end function qmckl_compute_forces_jastrow_een_g const double* forces_dtmp_c, const double* forces_een_n, const double* een_rescaled_n, - const double* een_rescaled_e, const double* een_rescaled_n_gl, - const double* een_rescaled_e_gl, double* const forces_jastrow_een_g ); #+end_src @@ -3434,26 +3414,14 @@ qmckl_exit_code qmckl_provide_forces_jastrow_een_l(qmckl_context context) if (ctx->jastrow_champ.cord_num > 0) { - /* Check if en rescaled distance is provided */ - rc = qmckl_provide_een_rescaled_e(context); - if(rc != QMCKL_SUCCESS) return rc; - /* Check if en rescaled distance derivatives is provided */ rc = qmckl_provide_een_rescaled_n(context); if(rc != QMCKL_SUCCESS) return rc; - /* Check if en rescaled distance is provided */ - rc = qmckl_provide_een_rescaled_e_gl(context); - if(rc != QMCKL_SUCCESS) return rc; - /* Check if en rescaled distance derivatives is provided */ rc = qmckl_provide_een_rescaled_n_gl(context); if(rc != QMCKL_SUCCESS) return rc; - /* Check if en rescaled distance derivatives is provided */ - rc = qmckl_provide_een_rescaled_e_gl(context); - if(rc != QMCKL_SUCCESS) return rc; - /* Check if en rescaled distance derivatives is provided */ rc = qmckl_provide_jastrow_champ_c_vector_full(context); if(rc != QMCKL_SUCCESS) return rc; @@ -3534,9 +3502,7 @@ qmckl_exit_code qmckl_provide_forces_jastrow_een_l(qmckl_context context) ctx->forces.forces_dtmp_c, ctx->forces.forces_een_n, ctx->jastrow_champ.een_rescaled_n, - ctx->jastrow_champ.een_rescaled_e, ctx->jastrow_champ.een_rescaled_n_gl, - ctx->jastrow_champ.een_rescaled_e_gl, ctx->forces.forces_jastrow_een_l); if (rc != QMCKL_SUCCESS) { @@ -3575,9 +3541,7 @@ qmckl_exit_code qmckl_provide_forces_jastrow_een_l(qmckl_context context) | ~forces_dtmp_c~ | ~double[walk_num][0:cord_num-1][0:cord_num][4][nucl_num][4][elec_num]~ | in | vector of non-zero coefficients | | ~forces_een_n~ | ~double[walk_num][0:cord_num][3][nucl_num][4][elec_num]~ | in | Derivative of Electron-nucleus rescaled factor | | ~een_rescaled_n~ | ~double[walk_num][0:cord_num][nucl_num][elec_num]~ | in | Electron-nucleus rescaled factor | - | ~een_rescaled_e~ | ~double[walk_num][0:cord_num][elec_num][elec_num]~ | in | Electron-nucleus rescaled factor | | ~een_rescaled_n_gl~ | ~double[walk_num][0:cord_num][nucl_num][4][elec_num]~ | in | Derivative of Electron-nucleus rescaled factor | - | ~een_rescaled_e_gl~ | ~double[walk_num][0:cord_num][elec_num][4][elec_num]~ | in | Derivative of Electron-nucleus rescaled factor | | ~forces_jastrow_een_l~| ~double[walk_num][3][nucl_num]~ | out | Derivative of Electron-nucleus jastrow | @@ -3586,7 +3550,7 @@ integer(qmckl_exit_code) function qmckl_compute_forces_jastrow_een_l( & context, walk_num, elec_num, nucl_num, & cord_num, dim_c_vector, c_vector_full, lkpm_combined_index, & en_distance, tmp_c, dtmp_c, forces_tmp_c, forces_dtmp_c, forces_een_n, een_rescaled_n, & - een_rescaled_e, een_rescaled_n_gl, een_rescaled_e_gl, forces_jastrow_een_l)& + een_rescaled_n_gl, forces_jastrow_een_l)& result(info) bind(C) use, intrinsic :: iso_c_binding use qmckl @@ -3602,9 +3566,7 @@ integer(qmckl_exit_code) function qmckl_compute_forces_jastrow_een_l( & real (c_double ) , intent(in) :: forces_dtmp_c(elec_num, 4, nucl_num,4,0:cord_num, 0:cord_num-1, walk_num) real (c_double ) , intent(in) :: forces_een_n(elec_num, 4, nucl_num, 3, 0:cord_num, walk_num) real (c_double ) , intent(in) :: een_rescaled_n(elec_num, nucl_num, 0:cord_num, walk_num) - real (c_double ) , intent(in) :: een_rescaled_e(elec_num, elec_num, 0:cord_num, walk_num) real (c_double ) , intent(in) :: een_rescaled_n_gl(elec_num, 4, nucl_num, 0:cord_num, walk_num) - real (c_double ) , intent(in) :: een_rescaled_e_gl(elec_num, 4, elec_num, 0:cord_num, walk_num) real (c_double ) , intent(out) :: forces_jastrow_een_l(nucl_num,3,walk_num) integer*8 :: i, a, j, l, k, m, n, nw, ii, jj @@ -3686,9 +3648,7 @@ end function qmckl_compute_forces_jastrow_een_l const double* forces_dtmp_c, const double* forces_een_n, const double* een_rescaled_n, - const double* een_rescaled_e, const double* een_rescaled_n_gl, - const double* een_rescaled_e_gl, double* const forces_jastrow_een_l ); #+end_src From 0ee0040393661f8212e02954224d8c5060ddfd97 Mon Sep 17 00:00:00 2001 From: Emiel Slootman Date: Thu, 12 Dec 2024 10:25:34 +0100 Subject: [PATCH 2/4] cleanup 2 --- org/qmckl_forces.org | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/org/qmckl_forces.org b/org/qmckl_forces.org index e040937..57cbebe 100644 --- a/org/qmckl_forces.org +++ b/org/qmckl_forces.org @@ -2379,10 +2379,6 @@ qmckl_exit_code qmckl_provide_forces_jastrow_een(qmckl_context context) if (ctx->jastrow_champ.cord_num > 0) { - /* Check if en rescaled distance is provided */ - rc = qmckl_provide_een_rescaled_e(context); - if(rc != QMCKL_SUCCESS) return rc; - /* Check if en rescaled distance derivatives is provided */ rc = qmckl_provide_een_rescaled_n(context); if(rc != QMCKL_SUCCESS) return rc; @@ -2451,7 +2447,6 @@ qmckl_exit_code qmckl_provide_forces_jastrow_een(qmckl_context context) ctx->jastrow_champ.dim_c_vector, ctx->jastrow_champ.c_vector_full, ctx->jastrow_champ.lkpm_combined_index, - ctx->jastrow_champ.een_rescaled_e, ctx->jastrow_champ.een_rescaled_n, ctx->jastrow_champ.een_rescaled_n_gl, ctx->jastrow_champ.tmp_c, @@ -2487,7 +2482,6 @@ qmckl_exit_code qmckl_provide_forces_jastrow_een(qmckl_context context) | ~dim_c_vector~ | ~int64_t~ | in | dimension of full coefficient vector | | ~c_vector_full~ | ~double[dim_c_vector][nucl_num]~ | in | full coefficient vector | | ~lkpm_combined_index~ | ~int64_t[4][dim_c_vector]~ | in | combined indices | - | ~een_rescaled_e~ | ~double[walk_num][0:cord_num][elec_num][elec_num]~ | in | Electron-nucleus rescaled | | ~een_rescaled_n~ | ~double[walk_num][0:cord_num][nucl_num][elec_num]~ | in | Electron-nucleus rescaled factor | | ~een_rescaled_n_gl~ | ~double[walk_num][0:cord_num][nucl_num][4][elec_num]~ | in | Electron-nucleus rescaled factor | | ~tmp_c~ | ~double[walk_num][0:cord_num-1][0:cord_num][nucl_num][elec_num]~ | in | vector of non-zero coefficients | @@ -2498,7 +2492,7 @@ qmckl_exit_code qmckl_provide_forces_jastrow_een(qmckl_context context) integer(qmckl_exit_code) function qmckl_compute_forces_jastrow_een( & context, walk_num, elec_num, nucl_num, cord_num,& dim_c_vector, c_vector_full, lkpm_combined_index, & - een_rescaled_e, een_rescaled_n, een_rescaled_n_gl, tmp_c, forces_tmp_c,forces_jastrow_een) & + een_rescaled_n, een_rescaled_n_gl, tmp_c, forces_tmp_c,forces_jastrow_een) & result(info) bind(C) use, intrinsic :: iso_c_binding use qmckl @@ -2507,7 +2501,6 @@ integer(qmckl_exit_code) function qmckl_compute_forces_jastrow_een( & integer (c_int64_t) , intent(in), value :: walk_num, elec_num, cord_num, nucl_num, dim_c_vector integer (c_int64_t) , intent(in) :: lkpm_combined_index(dim_c_vector,4) real (c_double ) , intent(in) :: c_vector_full(nucl_num, dim_c_vector) - real (c_double ) , intent(in) :: een_rescaled_e(elec_num, elec_num, 0:cord_num, walk_num) real (c_double ) , intent(in) :: een_rescaled_n(elec_num, nucl_num, 0:cord_num, walk_num) real (c_double ) , intent(in) :: een_rescaled_n_gl(elec_num, 4, nucl_num, 0:cord_num, walk_num) real (c_double ) , intent(in) :: tmp_c(elec_num, nucl_num,0:cord_num, 0:cord_num-1, walk_num) @@ -2561,7 +2554,6 @@ end function qmckl_compute_forces_jastrow_een const int64_t dim_c_vector, const double* c_vector_full, const int64_t* lkpm_combined_index, - const double* een_rescaled_e, const double* een_rescaled_n, const double* een_rescaled_n_gl, const double* tmp_c, From 6bae3ed8f93372aae8a582f9cdd5ee0c179e3f75 Mon Sep 17 00:00:00 2001 From: Emiel Slootman Date: Thu, 12 Dec 2024 10:29:09 +0100 Subject: [PATCH 3/4] fix --- org/qmckl_forces.org | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org/qmckl_forces.org b/org/qmckl_forces.org index 57cbebe..de99778 100644 --- a/org/qmckl_forces.org +++ b/org/qmckl_forces.org @@ -3190,7 +3190,7 @@ integer(qmckl_exit_code) function qmckl_compute_forces_jastrow_een_g( & context, walk_num, elec_num, nucl_num, & cord_num, dim_c_vector, c_vector_full, lkpm_combined_index, & en_distance, tmp_c, dtmp_c, forces_tmp_c, forces_dtmp_c, forces_een_n, een_rescaled_n, & - een_rescaled_e_gl, forces_jastrow_een_g)& + een_rescaled_n_gl, forces_jastrow_een_g)& result(info) bind(C) use, intrinsic :: iso_c_binding use qmckl From 7a74b657cf85a272ee0d203be176b9efa3d8b82e Mon Sep 17 00:00:00 2001 From: Emiel Slootman Date: Thu, 12 Dec 2024 11:31:21 +0100 Subject: [PATCH 4/4] working version --- org/qmckl_forces.org | 4 ++-- org/qmckl_jastrow_champ.org | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/org/qmckl_forces.org b/org/qmckl_forces.org index de99778..d8fc1b1 100644 --- a/org/qmckl_forces.org +++ b/org/qmckl_forces.org @@ -3679,8 +3679,8 @@ for (int nw = 0; nw < walk_num; nw++){ for (int nw = 0; nw < walk_num; nw++){ for (int a = 0; a < nucl_num; a++) { for (int k = 0; k < 3; k++){ - printf("finite_difference_force_een_l_sum[%i][%i][%i] %+3.10f \n", nw,a,k,finite_difference_force_een_l_sum[nw][a][k]); - printf("forces_jastrow_een_l [%i][%i][%i] %+3.10f\n", nw,k,a,forces_jastrow_een_l[nw][k][a]); + //printf("finite_difference_force_een_l_sum[%i][%i][%i] %+3.10f \n", nw,a,k,finite_difference_force_een_l_sum[nw][a][k]); + //printf("forces_jastrow_een_l [%i][%i][%i] %+3.10f\n", nw,k,a,forces_jastrow_een_l[nw][k][a]); assert(fabs(finite_difference_force_een_l_sum[nw][a][k] - forces_jastrow_een_l[nw][k][a]) < 1.e-8); } } diff --git a/org/qmckl_jastrow_champ.org b/org/qmckl_jastrow_champ.org index f894908..58bbc43 100644 --- a/org/qmckl_jastrow_champ.org +++ b/org/qmckl_jastrow_champ.org @@ -5618,7 +5618,7 @@ function qmckl_compute_en_distance_rescaled_gl_doc(context, elec_num, nucl_num, real (c_double ) , intent(in) :: rescale_factor_en(nucl_num) integer (c_int64_t) , intent(in) , value :: walk_num real (c_double ) , intent(in) :: elec_coord(elec_num,walk_num,3) - real (c_double ) , intent(in) :: nucl_coord(elec_num,3) + real (c_double ) , intent(in) :: nucl_coord(nucl_num,3) real (c_double ) , intent(out) :: en_distance_rescaled_gl(4,elec_num,nucl_num,walk_num) integer(qmckl_exit_code) :: info