diff --git a/org/qmckl_jastrow.org b/org/qmckl_jastrow.org index a0054a7..00b4769 100644 --- a/org/qmckl_jastrow.org +++ b/org/qmckl_jastrow.org @@ -1391,46 +1391,46 @@ print("asymp_jasb[1] : ", asymp_jasb[1]) : asymp_jasb[1] : 0.31567342786262853 #+begin_src c :tangle (eval c_test) -//assert(qmckl_electron_provided(context)); -// -//int64_t type_nucl_num = n2_type_nucl_num; -//int64_t* type_nucl_vector = &(n2_type_nucl_vector[0]); -//int64_t aord_num = n2_aord_num; -//int64_t bord_num = n2_bord_num; -//int64_t cord_num = n2_cord_num; -//double* aord_vector = &(n2_aord_vector[0][0]); -//double* bord_vector = &(n2_bord_vector[0]); -//double* cord_vector = &(n2_cord_vector[0][0]); -// -///* Initialize the Jastrow data */ -//rc = qmckl_init_jastrow(context); -//assert(!qmckl_jastrow_provided(context)); -// -///* Set the data */ -//rc = qmckl_set_jastrow_ord_num(context, aord_num, bord_num, cord_num); -//assert(rc == QMCKL_SUCCESS); -//rc = qmckl_set_jastrow_type_nucl_num(context, type_nucl_num); -//assert(rc == QMCKL_SUCCESS); -//rc = qmckl_set_jastrow_type_nucl_vector(context, type_nucl_vector, nucl_num); -//assert(rc == QMCKL_SUCCESS); -//rc = qmckl_set_jastrow_aord_vector(context, aord_vector); -//assert(rc == QMCKL_SUCCESS); -//rc = qmckl_set_jastrow_bord_vector(context, bord_vector); -//assert(rc == QMCKL_SUCCESS); -//rc = qmckl_set_jastrow_cord_vector(context, cord_vector); -//assert(rc == QMCKL_SUCCESS); -//rc = qmckl_set_jastrow_dependencies(context); -//assert(rc == QMCKL_SUCCESS); -// -///* Check if Jastrow is properly initialized */ -//assert(qmckl_jastrow_provided(context)); -// -//double asymp_jasb[2]; -//rc = qmckl_get_jastrow_asymp_jasb(context, asymp_jasb); -// -//// calculate asymp_jasb -//assert(fabs(asymp_jasb[0]-0.5323750557252571) < 1.e-12); -//assert(fabs(asymp_jasb[1]-0.31567342786262853) < 1.e-12); +assert(qmckl_electron_provided(context)); + +int64_t type_nucl_num = n2_type_nucl_num; +int64_t* type_nucl_vector = &(n2_type_nucl_vector[0]); +int64_t aord_num = n2_aord_num; +int64_t bord_num = n2_bord_num; +int64_t cord_num = n2_cord_num; +double* aord_vector = &(n2_aord_vector[0][0]); +double* bord_vector = &(n2_bord_vector[0]); +double* cord_vector = &(n2_cord_vector[0][0]); + +/* Initialize the Jastrow data */ +rc = qmckl_init_jastrow(context); +assert(!qmckl_jastrow_provided(context)); + +/* Set the data */ +rc = qmckl_set_jastrow_ord_num(context, aord_num, bord_num, cord_num); +assert(rc == QMCKL_SUCCESS); +rc = qmckl_set_jastrow_type_nucl_num(context, type_nucl_num); +assert(rc == QMCKL_SUCCESS); +rc = qmckl_set_jastrow_type_nucl_vector(context, type_nucl_vector, nucl_num); +assert(rc == QMCKL_SUCCESS); +rc = qmckl_set_jastrow_aord_vector(context, aord_vector); +assert(rc == QMCKL_SUCCESS); +rc = qmckl_set_jastrow_bord_vector(context, bord_vector); +assert(rc == QMCKL_SUCCESS); +rc = qmckl_set_jastrow_cord_vector(context, cord_vector); +assert(rc == QMCKL_SUCCESS); +rc = qmckl_set_jastrow_dependencies(context); +assert(rc == QMCKL_SUCCESS); + +/* Check if Jastrow is properly initialized */ +assert(qmckl_jastrow_provided(context)); + +double asymp_jasb[2]; +rc = qmckl_get_jastrow_asymp_jasb(context, asymp_jasb); + +// calculate asymp_jasb +assert(fabs(asymp_jasb[0]-0.5323750557252571) < 1.e-12); +assert(fabs(asymp_jasb[1]-0.31567342786262853) < 1.e-12); #+end_src @@ -1721,14 +1721,14 @@ print("factor_ee :",factor_ee) #+begin_src c :tangle (eval c_test) -///* Check if Jastrow is properly initialized */ -//assert(qmckl_jastrow_provided(context)); -// -//double factor_ee[walk_num]; -//rc = qmckl_get_jastrow_factor_ee(context, factor_ee); -// -//// calculate factor_ee -//assert(fabs(factor_ee[0]+4.282760865958113) < 1.e-12); +/* Check if Jastrow is properly initialized */ +assert(qmckl_jastrow_provided(context)); + +double factor_ee[walk_num]; +rc = qmckl_get_jastrow_factor_ee(context, factor_ee); + +// calculate factor_ee +assert(fabs(factor_ee[0]+4.282760865958113) < 1.e-12); #+end_src @@ -2140,18 +2140,18 @@ print(factor_ee_deriv_e) #+begin_src c :tangle (eval c_test) -///* Check if Jastrow is properly initialized */ -//assert(qmckl_jastrow_provided(context)); -// -//// calculate factor_ee_deriv_e -//double factor_ee_deriv_e[walk_num][4][elec_num]; -//rc = qmckl_get_jastrow_factor_ee_deriv_e(context, &(factor_ee_deriv_e[0][0][0])); -// -//// check factor_ee_deriv_e -//assert(fabs(factor_ee_deriv_e[0][0][0]-0.16364894652107934) < 1.e-12); -//assert(fabs(factor_ee_deriv_e[0][1][0]+0.6927548119830084 ) < 1.e-12); -//assert(fabs(factor_ee_deriv_e[0][2][0]-0.073267755223968 ) < 1.e-12); -//assert(fabs(factor_ee_deriv_e[0][3][0]-1.5111672803213185 ) < 1.e-12); +/* Check if Jastrow is properly initialized */ +assert(qmckl_jastrow_provided(context)); + +// calculate factor_ee_deriv_e +double factor_ee_deriv_e[walk_num][4][elec_num]; +rc = qmckl_get_jastrow_factor_ee_deriv_e(context, &(factor_ee_deriv_e[0][0][0])); + +// check factor_ee_deriv_e +assert(fabs(factor_ee_deriv_e[0][0][0]-0.16364894652107934) < 1.e-12); +assert(fabs(factor_ee_deriv_e[0][1][0]+0.6927548119830084 ) < 1.e-12); +assert(fabs(factor_ee_deriv_e[0][2][0]-0.073267755223968 ) < 1.e-12); +assert(fabs(factor_ee_deriv_e[0][3][0]-1.5111672803213185 ) < 1.e-12); #+end_src @@ -2436,14 +2436,14 @@ print("factor_en :",factor_en) #+begin_src c :tangle (eval c_test) -///* Check if Jastrow is properly initialized */ -//assert(qmckl_jastrow_provided(context)); -// -//double factor_en[walk_num]; -//rc = qmckl_get_jastrow_factor_en(context, factor_en); -// -//// calculate factor_en -//assert(fabs(factor_en[0]+5.865822569188727) < 1.e-12); +/* Check if Jastrow is properly initialized */ +assert(qmckl_jastrow_provided(context)); + +double factor_en[walk_num]; +rc = qmckl_get_jastrow_factor_en(context, factor_en); + +// calculate factor_en +assert(fabs(factor_en[0]+5.865822569188727) < 1.e-12); #+end_src @@ -2835,18 +2835,18 @@ print("factor_en_deriv_e[3][0]:",factor_en_deriv_e[3][0]) #+begin_src c :tangle (eval c_test) -///* Check if Jastrow is properly initialized */ -//assert(qmckl_jastrow_provided(context)); -// -//// calculate factor_en_deriv_e -//double factor_en_deriv_e[walk_num][4][elec_num]; -//rc = qmckl_get_jastrow_factor_en_deriv_e(context, &(factor_en_deriv_e[0][0][0])); -// -//// check factor_en_deriv_e -//assert(fabs(factor_en_deriv_e[0][0][0]-0.11609919541763383) < 1.e-12); -//assert(fabs(factor_en_deriv_e[0][1][0]+0.23301394780804574) < 1.e-12); -//assert(fabs(factor_en_deriv_e[0][2][0]-0.17548337641865783) < 1.e-12); -//assert(fabs(factor_en_deriv_e[0][3][0]+0.9667363412285741 ) < 1.e-12); +/* Check if Jastrow is properly initialized */ +assert(qmckl_jastrow_provided(context)); + +// calculate factor_en_deriv_e +double factor_en_deriv_e[walk_num][4][elec_num]; +rc = qmckl_get_jastrow_factor_en_deriv_e(context, &(factor_en_deriv_e[0][0][0])); + +// check factor_en_deriv_e +assert(fabs(factor_en_deriv_e[0][0][0]-0.11609919541763383) < 1.e-12); +assert(fabs(factor_en_deriv_e[0][1][0]+0.23301394780804574) < 1.e-12); +assert(fabs(factor_en_deriv_e[0][2][0]-0.17548337641865783) < 1.e-12); +assert(fabs(factor_en_deriv_e[0][3][0]+0.9667363412285741 ) < 1.e-12); #+end_src @@ -3142,19 +3142,19 @@ print(" een_rescaled_e[1, 5, 2] = ",een_rescaled_e[1, 5, 2]) : een_rescaled_e[1, 5, 2] = 0.3424402276009091 #+begin_src c :tangle (eval c_test) -//assert(qmckl_electron_provided(context)); -// -// -//double een_rescaled_e[walk_num][elec_num][elec_num][(cord_num + 1)]; -//rc = qmckl_get_jastrow_een_rescaled_e(context, &(een_rescaled_e[0][0][0][0])); -// -//// value of (0,2,1) -//assert(fabs(een_rescaled_e[0][0][2][1]-0.08084493981483197) < 1.e-12); -//assert(fabs(een_rescaled_e[0][0][3][1]-0.1066745707571846) < 1.e-12); -//assert(fabs(een_rescaled_e[0][0][4][1]-0.01754273169464735) < 1.e-12); -//assert(fabs(een_rescaled_e[0][1][3][2]-0.02214680362033448) < 1.e-12); -//assert(fabs(een_rescaled_e[0][1][4][2]-0.0005700154999202759) < 1.e-12); -//assert(fabs(een_rescaled_e[0][1][5][2]-0.3424402276009091) < 1.e-12); +assert(qmckl_electron_provided(context)); + + +double een_rescaled_e[walk_num][elec_num][elec_num][(cord_num + 1)]; +rc = qmckl_get_jastrow_een_rescaled_e(context, &(een_rescaled_e[0][0][0][0])); + +// value of (0,2,1) +assert(fabs(een_rescaled_e[0][0][2][1]-0.08084493981483197) < 1.e-12); +assert(fabs(een_rescaled_e[0][0][3][1]-0.1066745707571846) < 1.e-12); +assert(fabs(een_rescaled_e[0][0][4][1]-0.01754273169464735) < 1.e-12); +assert(fabs(een_rescaled_e[0][1][3][2]-0.02214680362033448) < 1.e-12); +assert(fabs(een_rescaled_e[0][1][4][2]-0.0005700154999202759) < 1.e-12); +assert(fabs(een_rescaled_e[0][1][5][2]-0.3424402276009091) < 1.e-12); #+end_src @@ -3477,18 +3477,6 @@ print(" een_rescaled_e[1, 5, 2] = ",een_rescaled_e[1, 5, 2]) #+begin_src c :tangle (eval c_test) //assert(qmckl_electron_provided(context)); -// -// -//double een_rescaled_e[walk_num][elec_num][elec_num][(cord_num + 1)]; -//rc = qmckl_get_jastrow_een_rescaled_e(context, &(een_rescaled_e[0][0][0][0])); -// -//// value of (0,2,1) -//assert(fabs(een_rescaled_e[0][0][2][1]-0.08084493981483197) < 1.e-12); -//assert(fabs(een_rescaled_e[0][0][3][1]-0.1066745707571846) < 1.e-12); -//assert(fabs(een_rescaled_e[0][0][4][1]-0.01754273169464735) < 1.e-12); -//assert(fabs(een_rescaled_e[0][1][3][2]-0.02214680362033448) < 1.e-12); -//assert(fabs(een_rescaled_e[0][1][4][2]-0.0005700154999202759) < 1.e-12); -//assert(fabs(een_rescaled_e[0][1][5][2]-0.3424402276009091) < 1.e-12); #+end_src @@ -3779,18 +3767,18 @@ print(" een_rescaled_n[1, 5, 2] = ",een_rescaled_n[1, 5, 2]) : een_rescaled_n[1, 5, 2] = 0.01343938025140174 #+begin_src c :tangle (eval c_test) -//assert(qmckl_electron_provided(context)); -// -//double een_rescaled_n[walk_num][elec_num][nucl_num][(cord_num + 1)]; -//rc = qmckl_get_jastrow_een_rescaled_n(context, &(een_rescaled_n[0][0][0][0])); -// -//// value of (0,2,1) -//assert(fabs(een_rescaled_n[0][2][0][1]-0.10612983920006765) < 1.e-12); -//assert(fabs(een_rescaled_n[0][3][0][1]-0.135652809635553) < 1.e-12); -//assert(fabs(een_rescaled_n[0][4][0][1]-0.023391817607642338) < 1.e-12); -//assert(fabs(een_rescaled_n[0][3][1][2]-0.880957224822116) < 1.e-12); -//assert(fabs(een_rescaled_n[0][4][1][2]-0.027185942659395074) < 1.e-12); -//assert(fabs(een_rescaled_n[0][5][1][2]-0.01343938025140174) < 1.e-12); +assert(qmckl_electron_provided(context)); + +double een_rescaled_n[walk_num][elec_num][nucl_num][(cord_num + 1)]; +rc = qmckl_get_jastrow_een_rescaled_n(context, &(een_rescaled_n[0][0][0][0])); + +// value of (0,2,1) +assert(fabs(een_rescaled_n[0][2][0][1]-0.10612983920006765) < 1.e-12); +assert(fabs(een_rescaled_n[0][3][0][1]-0.135652809635553) < 1.e-12); +assert(fabs(een_rescaled_n[0][4][0][1]-0.023391817607642338) < 1.e-12); +assert(fabs(een_rescaled_n[0][3][1][2]-0.880957224822116) < 1.e-12); +assert(fabs(een_rescaled_n[0][4][1][2]-0.027185942659395074) < 1.e-12); +assert(fabs(een_rescaled_n[0][5][1][2]-0.01343938025140174) < 1.e-12); #+end_src @@ -4121,17 +4109,6 @@ print(" een_rescaled_n[1, 5, 2] = ",een_rescaled_n[1, 5, 2]) #+begin_src c :tangle (eval c_test) //assert(qmckl_electron_provided(context)); -// -//double een_rescaled_n[walk_num][elec_num][nucl_num][(cord_num + 1)]; -//rc = qmckl_get_jastrow_een_rescaled_n(context, &(een_rescaled_n[0][0][0][0])); -// -//// value of (0,2,1) -//assert(fabs(een_rescaled_n[0][2][0][1]-0.10612983920006765) < 1.e-12); -//assert(fabs(een_rescaled_n[0][3][0][1]-0.135652809635553) < 1.e-12); -//assert(fabs(een_rescaled_n[0][4][0][1]-0.023391817607642338) < 1.e-12); -//assert(fabs(een_rescaled_n[0][3][1][2]-0.880957224822116) < 1.e-12); -//assert(fabs(een_rescaled_n[0][4][1][2]-0.027185942659395074) < 1.e-12); -//assert(fabs(een_rescaled_n[0][5][1][2]-0.01343938025140174) < 1.e-12); #+end_src @@ -4714,17 +4691,7 @@ print(" een_rescaled_n[1, 5, 2] = ",een_rescaled_n[1, 5, 2]) #+begin_src c :tangle (eval c_test) //assert(qmckl_electron_provided(context)); - -//double een_rescaled_n[walk_num][elec_num][nucl_num][(cord_num + 1)]; -//rc = qmckl_get_jastrow_een_rescaled_n(context, &(een_rescaled_n[0][0][0][0])); // -//// value of (0,2,1) -//assert(fabs(een_rescaled_n[0][2][0][1]-0.10612983920006765) < 1.e-12); -//assert(fabs(een_rescaled_n[0][3][0][1]-0.135652809635553) < 1.e-12); -//assert(fabs(een_rescaled_n[0][4][0][1]-0.023391817607642338) < 1.e-12); -//assert(fabs(een_rescaled_n[0][3][1][2]-0.880957224822116) < 1.e-12); -//assert(fabs(een_rescaled_n[0][4][1][2]-0.027185942659395074) < 1.e-12); -//assert(fabs(een_rescaled_n[0][5][1][2]-0.01343938025140174) < 1.e-12); #+end_src @@ -5097,11 +5064,11 @@ print("factor_en_deriv_e[3][0]:",factor_en_deriv_e[3][0]) #+begin_src c :tangle (eval c_test) /* Check if Jastrow is properly initialized */ -//assert(qmckl_jastrow_provided(context)); -// -//// calculate factor_en_deriv_e -//double factor_een[walk_num]; -//rc = qmckl_get_jastrow_factor_een(context, &(factor_een[0])); +assert(qmckl_jastrow_provided(context)); + +// calculate factor_en_deriv_e +double factor_een[walk_num]; +rc = qmckl_get_jastrow_factor_een(context, &(factor_een[0])); //// check factor_en_deriv_e //assert(fabs(factor_en_deriv_e[0][0][0]-0.11609919541763383) < 1.e-12); @@ -5523,13 +5490,13 @@ print("factor_en_deriv_e[3][0]:",factor_en_deriv_e[3][0]) #+begin_src c :tangle (eval c_test) -/* Check if Jastrow is properly initialized */ +///* Check if Jastrow is properly initialized */ //assert(qmckl_jastrow_provided(context)); // //// calculate factor_en_deriv_e //double factor_een[walk_num]; //rc = qmckl_get_jastrow_factor_een(context, &(factor_een[0])); - +// //// check factor_en_deriv_e //assert(fabs(factor_en_deriv_e[0][0][0]-0.11609919541763383) < 1.e-12); //assert(fabs(factor_en_deriv_e[0][1][0]+0.23301394780804574) < 1.e-12);