mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2025-01-10 04:58:33 +01:00
Added variables and doc for derivatives of ee_distance_rescaled. #17
This commit is contained in:
parent
86634c373e
commit
59f284d765
@ -78,8 +78,10 @@ int main() {
|
|||||||
| ~ee_distance_date~ | uint64_t | Last modification date of the electron-electron distances |
|
| ~ee_distance_date~ | uint64_t | Last modification date of the electron-electron distances |
|
||||||
| ~en_distance~ | double[walk_num][nucl_num][num] | Electron-nucleus distances |
|
| ~en_distance~ | double[walk_num][nucl_num][num] | Electron-nucleus distances |
|
||||||
| ~en_distance_date~ | uint64_t | Last modification date of the electron-electron distances |
|
| ~en_distance_date~ | uint64_t | Last modification date of the electron-electron distances |
|
||||||
| ~ee_distance_rescaled~ | double[walk_num][num][num] | Electron-electron distances |
|
| ~ee_distance_rescaled~ | double[walk_num][num][num] | Electron-electron rescaled distances |
|
||||||
| ~ee_distance_rescaled_date~ | uint64_t | Last modification date of the electron-electron distances |
|
| ~ee_distance_rescaled_date~ | uint64_t | Last modification date of the electron-electron distances |
|
||||||
|
| ~ee_distance_rescaled_deriv_e~ | double[walk_num][4][num][num] | Electron-electron rescaled distances derivatives |
|
||||||
|
| ~ee_distance_rescaled_deriv_e_date~ | uint64_t | Last modification date of the electron-electron distance derivatives |
|
||||||
| ~en_distance_rescaled~ | double[walk_num][nucl_num][num] | Electron-nucleus distances |
|
| ~en_distance_rescaled~ | double[walk_num][nucl_num][num] | Electron-nucleus distances |
|
||||||
| ~en_distance_rescaled_date~ | uint64_t | Last modification date of the electron-electron distances |
|
| ~en_distance_rescaled_date~ | uint64_t | Last modification date of the electron-electron distances |
|
||||||
|
|
||||||
@ -97,12 +99,14 @@ typedef struct qmckl_electron_struct {
|
|||||||
int64_t ee_distance_date;
|
int64_t ee_distance_date;
|
||||||
int64_t en_distance_date;
|
int64_t en_distance_date;
|
||||||
int64_t ee_distance_rescaled_date;
|
int64_t ee_distance_rescaled_date;
|
||||||
|
int64_t ee_distance_rescaled_deriv_e_date;
|
||||||
int64_t en_distance_rescaled_date;
|
int64_t en_distance_rescaled_date;
|
||||||
double* coord_new;
|
double* coord_new;
|
||||||
double* coord_old;
|
double* coord_old;
|
||||||
double* ee_distance;
|
double* ee_distance;
|
||||||
double* en_distance;
|
double* en_distance;
|
||||||
double* ee_distance_rescaled;
|
double* ee_distance_rescaled;
|
||||||
|
double* ee_distance_rescaled_deriv_e;
|
||||||
double* en_distance_rescaled;
|
double* en_distance_rescaled;
|
||||||
int32_t uninitialized;
|
int32_t uninitialized;
|
||||||
bool provided;
|
bool provided;
|
||||||
@ -1108,7 +1112,7 @@ qmckl_exit_code qmckl_provide_ee_distance_rescaled(qmckl_context context)
|
|||||||
| double | rescale_factor_kappa_ee | in | Factor to rescale ee distances |
|
| double | rescale_factor_kappa_ee | in | Factor to rescale ee distances |
|
||||||
| int64_t | walk_num | in | Number of walkers |
|
| int64_t | walk_num | in | Number of walkers |
|
||||||
| double | coord[walk_num][3][elec_num] | in | Electron coordinates |
|
| double | coord[walk_num][3][elec_num] | in | Electron coordinates |
|
||||||
| double | ee_distance[walk_num][elec_num][elec_num] | out | Electron-electron distances |
|
| double | ee_distance[walk_num][elec_num][elec_num] | out | Electron-electron rescaled distances |
|
||||||
|
|
||||||
#+begin_src f90 :comments org :tangle (eval f) :noweb yes
|
#+begin_src f90 :comments org :tangle (eval f) :noweb yes
|
||||||
integer function qmckl_compute_ee_distance_rescaled_f(context, elec_num, rescale_factor_kappa_ee, walk_num, &
|
integer function qmckl_compute_ee_distance_rescaled_f(context, elec_num, rescale_factor_kappa_ee, walk_num, &
|
||||||
@ -1245,6 +1249,16 @@ rc = qmckl_get_electron_ee_distance_rescaled(context, ee_distance);
|
|||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
** Electron-electron rescaled distance gradients and laplacian with respect to electron coords
|
||||||
|
|
||||||
|
The rescaled distances which is given as $R = (1 - \exp{-\kappa r})/\kappa$
|
||||||
|
needs to be perturbed with respect to the electorn and nuclear coordinates.
|
||||||
|
This data is stored in the ~ee_distance_rescaled_deriv_e~ tensor. The
|
||||||
|
The first three elements of this three index tensor ~[4][num][num]~ gives the
|
||||||
|
derivatives in the x, y, and z directions $dx, dy, dz$ and the last index
|
||||||
|
gives the Laplacian $\partial x^2 + \partial y^2 + \partial z^2$.
|
||||||
|
|
||||||
|
|
||||||
** Electron-nucleus distances
|
** Electron-nucleus distances
|
||||||
|
|
||||||
*** Get
|
*** Get
|
||||||
|
Loading…
Reference in New Issue
Block a user