qmctorch.wavefunction.jastrows.elec_nuclei.jastrow_factor_electron_nuclei module¶
-
class
qmctorch.wavefunction.jastrows.elec_nuclei.jastrow_factor_electron_nuclei.
JastrowFactorElectronNuclei
(nup, ndown, atomic_pos, jastrow_kernel, kernel_kwargs={}, cuda=False)[source]¶ Bases:
sphinx.ext.autodoc.importer._MockObject
Base class for two el-nuc jastrow of the form:
\[J = \prod_{a,i} \exp(A(r_{ai}))\]Parameters: -
forward
(pos, derivative=0, sum_grad=True)[source]¶ Compute the Jastrow factors.
Parameters: - pos (torch.tensor) – Positions of the electrons Size : Nbatch, Nelec x Ndim
- derivative (int, optional) – order of the derivative (0,1,2,). Defaults to 0.
- sum_grad (bool, optional) – Return the sum_grad (i.e. the sum of the derivatives) or the individual terms. Defaults to True. False only for derivative=1
Returns: - value of the jastrow parameter for all confs
derivative = 0 (Nmo) x Nbatch x 1 derivative = 1 (Nmo) x Nbatch x Nelec (for sum_grad = True) derivative = 1 (Nmo) x Nbatch x Ndim x Nelec (for sum_grad = False) derivative = 2 (Nmo) x Nbatch x Nelec
Return type: torch.tensor
-
jastrow_factor_derivative
(r, dr, jast, sum_grad)[source]¶ Compute the value of the derivative of the Jastrow factor
Parameters: - r (torch.tensor) – ee distance matrix Nbatch x Nelec x Nelec
- jast (torch.tensor) – values of the jastrow elements Nbatch x Nelec x Natom
Returns: - gradient of the jastrow factors
Nbatch x Ndim x Nelec
Return type: torch.tensor
-
jastrow_factor_second_derivative
(r, dr, d2r, jast)[source]¶ Compute the value of the pure 2nd derivative of the Jastrow factor
Parameters: - r (torch.tensor) – ee distance matrix Nbatch x Nelec x Nelec
- jast (torch.tensor) – values of the ajstrow elements Nbatch x Nelec x Nelec
Returns: - diagonal hessian of the jastrow factors
Nbatch x Nelec x Ndim
Return type: torch.tensor
-