mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2024-06-30 00:44:52 +02:00
Added all the required tables and data for Jastrow. #22
This commit is contained in:
parent
938f362094
commit
c945514e56
|
@ -78,7 +78,6 @@ int main() {
|
|||
| ~int64_t~ | ~bord_num~ | in | The number of b coeffecients |
|
||||
| ~int64_t~ | ~cord_num~ | in | The number of c coeffecients |
|
||||
| ~uint64_t~ | ~type_nuc_num~ | in | Number of Nucleii types |
|
||||
| ~uint64_t~ | ~dim_cord_vec~ | in | Number of unique C coefficients |
|
||||
| ~double~ | ~aord_vector[aord_num + 1][type_nuc_num]~ | in | Order of a polynomial coefficients |
|
||||
| ~double~ | ~bord_vector[bord_num + 1]~ | in | Order of b polynomial coefficients |
|
||||
| ~double~ | ~cord_vector[cord_num][type_nuc_num]~ | in | Order of c polynomial coefficients |
|
||||
|
@ -91,10 +90,67 @@ int main() {
|
|||
|
||||
computed data:
|
||||
|
||||
|-------------------+--------------------------------------------+---------------------------------|
|
||||
| ~coord_vect_full~ | ~[dim_cord_vec]~ | vector of non-zero coefficients |
|
||||
| ~tmp_c~ | ~[elec_num][nuc_num][ncord + 1][ncord]~ | vector of non-zero coefficients |
|
||||
| ~dtmp_c~ | ~[elec_num][4][nuc_num][ncord + 1][ncord]~ | vector of non-zero coefficients |
|
||||
|-------------------+--------------------------------------------+-------------------------------------------------|
|
||||
| ~uint64_t~ | ~dim_cord_vec~ | Number of unique C coefficients |
|
||||
| ~coord_vect_full~ | ~[dim_cord_vec][nuc_num]~ | vector of non-zero coefficients |
|
||||
| ~lkpm_of_cindex~ | ~[4][dim_cord_vec]~ | Transform l,k,p, and m into consecutive indices |
|
||||
| ~tmp_c~ | ~[elec_num][nuc_num][ncord + 1][ncord]~ | vector of non-zero coefficients |
|
||||
| ~dtmp_c~ | ~[elec_num][4][nuc_num][ncord + 1][ncord]~ | vector of non-zero coefficients |
|
||||
|
||||
For H2O we have the following data:
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
type_nuc_num = 1
|
||||
aord_num = 5
|
||||
bord_num = 5
|
||||
cord_num = 23
|
||||
dim_cord_vec = 23
|
||||
|
||||
aord_vector = [ 0.000000000000000E+000, 0.000000000000000E+000, -0.380512000000000E+000,
|
||||
-0.157996000000000E+000, -3.155800000000000E-002, 2.151200000000000E-002]
|
||||
|
||||
bord_vector = [ 0.500000000000000E-000, 0.153660000000000E-000, 6.722620000000000E-002,
|
||||
2.157000000000000E-002, 7.309600000000000E-003, 2.866000000000000E-003]
|
||||
|
||||
cord_vector = [ 0.571702000000000E-000, -0.514253000000000E-000, -0.513043000000000E-000,
|
||||
9.486000000000000E-003, -4.205000000000000E-003, 0.426325800000000E-000,
|
||||
8.288150000000000E-002, 5.118600000000000E-003, -2.997800000000000E-003,
|
||||
-5.270400000000000E-003, -7.499999999999999E-005, -8.301649999999999E-002,
|
||||
1.454340000000000E-002, 5.143510000000000E-002, 9.250000000000000E-004,
|
||||
-4.099100000000000E-003, 4.327600000000000E-003, -1.654470000000000E-003,
|
||||
2.614000000000000E-003, -1.477000000000000E-003, -1.137000000000000E-003,
|
||||
-4.010475000000000E-002, 6.106710000000000E-003 ]
|
||||
|
||||
cord_vector_full = [
|
||||
[ 0.571702000000000E-000, -0.514253000000000E-000, -0.513043000000000E-000,
|
||||
9.486000000000000E-003, -4.205000000000000E-003, 0.426325800000000E-000,
|
||||
8.288150000000000E-002, 5.118600000000000E-003, -2.997800000000000E-003,
|
||||
-5.270400000000000E-003, -7.499999999999999E-005, -8.301649999999999E-002,
|
||||
1.454340000000000E-002, 5.143510000000000E-002, 9.250000000000000E-004,
|
||||
-4.099100000000000E-003, 4.327600000000000E-003, -1.654470000000000E-003,
|
||||
2.614000000000000E-003, -1.477000000000000E-003, -1.137000000000000E-003,
|
||||
-4.010475000000000E-002, 6.106710000000000E-003 ],
|
||||
[ 0.571702000000000E-000, -0.514253000000000E-000, -0.513043000000000E-000,
|
||||
9.486000000000000E-003, -4.205000000000000E-003, 0.426325800000000E-000,
|
||||
8.288150000000000E-002, 5.118600000000000E-003, -2.997800000000000E-003,
|
||||
-5.270400000000000E-003, -7.499999999999999E-005, -8.301649999999999E-002,
|
||||
1.454340000000000E-002, 5.143510000000000E-002, 9.250000000000000E-004,
|
||||
-4.099100000000000E-003, 4.327600000000000E-003, -1.654470000000000E-003,
|
||||
2.614000000000000E-003, -1.477000000000000E-003, -1.137000000000000E-003,
|
||||
-4.010475000000000E-002, 6.106710000000000E-003 ],
|
||||
]
|
||||
|
||||
lkpm_of_cindex =
|
||||
[ 1, 1, 2, 0, 0, 0, 2, 1, 1, 2, 3, 0, 2, 1, 3, 0, 0, 1,
|
||||
3, 1, 1, 0, 3, 1, 1, 3, 4, 0, 2, 2, 4, 0, 0, 2, 4, 1,
|
||||
3, 1, 4, 0, 1, 1, 4, 1, 2, 0, 4, 1, 0, 0, 4, 2, 1, 4,
|
||||
5, 0, 2, 3, 5, 0, 0, 3, 5, 1, 3, 2, 5, 0, 1, 2, 5, 1,
|
||||
4, 1, 5, 0, 2, 1, 5, 1, 0, 1, 5, 2, 3, 0, 5, 1, 1, 0,
|
||||
5, 2 ]
|
||||
|
||||
|
||||
#+END_EXAMPLE
|
||||
|
||||
|
||||
|
||||
** Data structure
|
||||
|
@ -106,7 +162,6 @@ typedef struct qmckl_jastrow_struct{
|
|||
int64_t bord_num;
|
||||
int64_t cord_num;
|
||||
uint64_t type_nuc_num;
|
||||
uint64_t dim_cord_vec;
|
||||
double * aord_vector;
|
||||
double * bord_vector;
|
||||
double * cord_vector;
|
||||
|
@ -116,6 +171,10 @@ typedef struct qmckl_jastrow_struct{
|
|||
double * factor_ee_deriv_e;
|
||||
double * factor_en_deriv_e;
|
||||
double * factor_een_deriv_e;
|
||||
uint64_t dim_cord_vec;
|
||||
double * coord_vect_full,
|
||||
double * tmp_c,
|
||||
double * dtmp_c,
|
||||
bool provided;
|
||||
char type;
|
||||
} qmckl_jastrow_struct;
|
||||
|
@ -143,11 +202,9 @@ qmckl_exit_code qmckl_init_jastrow(qmckl_context context) {
|
|||
qmckl_context_struct* const ctx = (qmckl_context_struct* const) context;
|
||||
assert (ctx != NULL);
|
||||
|
||||
ctx->jastrow.uninitialized = (1 << 2) - 1;
|
||||
ctx->jastrow.uninitialized = (1 << ) - 1;
|
||||
|
||||
/* Default values */
|
||||
//ctx->jastrow.rescale_factor_kappa_ee = 1.0;
|
||||
//ctx->jastrow.rescale_factor_kappa_en = 1.0;
|
||||
|
||||
return QMCKL_SUCCESS;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user