1
0
mirror of https://github.com/TREX-CoE/qmckl.git synced 2024-11-19 20:42:50 +01:00
qmckl/org/qmckl_slater_determinant.org
2021-10-04 15:42:22 +02:00

3.5 KiB
Raw Blame History

Slater Determinant

The slater deteminant is required for the calculation of the wavefunction, gradient, and derivatives. These quantities will be used to calculate the local Energy (\[E_L\]).

ψ(x) = det|ϕ₁(x₁)…ϕᵢ(yᵢ)…ϕₙ(xₙ)|

Concerning the gradient and laplacian, in fact what is actually calculated is the ratio of the gradient/laplacian and the determinant of the slater matrix:

∇ψ(x)/ψ(x)

and

∇²ψ(x)/ψ(x)

This avoids the unnecessary multiplication and division of by the determinant ψ(x).

Context

The following arrays are stored in the context:

type char α ('A') or β ('B') determinant
walk_num uint64_t Number of walkers
det_num uint64_t Number of determinants per walker
fermi_num uint64_t Number of number of fermions
mo_index_list mo_index[walk_num][det_num] Index of MOs for each walker

Computed data:

det_matrix_list [walk_num][det_num][mo_num][fermi_num] The slater matrix for each determinant of each walker.
det_vgl [5][walk_num][det_num] Value, gradients, Laplacian of the MOs at electron positions
det_vgl_date uint64_t Late modification date of Value, gradients, Laplacian of the MOs at electron positions