qmctorch.wavefunction.jastrows.elec_elec.kernels.pade_jastrow_kernel module
- class qmctorch.wavefunction.jastrows.elec_elec.kernels.pade_jastrow_kernel.PadeJastrowKernel(*args: Any, **kwargs: Any)[source]
Bases:
JastrowKernelElectronElectronBase
Computes the Simple Pade-Jastrow factor
\[B_{ij} = \frac{w_0 r_{ij}}{1 + w r_{ij}}\]where \(w_0\) equals 0.5 for parallel spin and 0.25 for antiparallel spin
- Parameters:
- get_static_weight()[source]
Get the matrix of static weights
- Returns:
matrix of the static weights
- Return type:
torch.tensor
- forward(r)[source]
Get the jastrow kernel.
\[B_{ij} = \frac{w_0 r_{i,j}}{1+w r_{i,j}}\]- Parameters:
r (torch.tensor) – matrix of the e-e distances Nbatch x Nelec x Nelec
- Returns:
- matrix of the jastrow kernels
Nbatch x Nelec x Nelec
- Return type:
torch.tensor
- compute_derivative(r, dr)[source]
Get the elements of the derivative of the jastrow kernels wrt to the first electrons
\[\frac{d B_{ij}}{d k_i} = \frac{d B_{ij}}{ d k_j } = - \frac{d B_{ji}}{d k_i}\]\[\text{out}_{k,i,j} = A1 + A2\]\[A1_{kij} = w0 \frac{dr_{ij}}{dk_i} \frac{1}{1 + w r_{ij}}\]\[A2_{kij} = - w0 w' r_{ij} \frac{dr_{ij}}{dk_i} \frac{1}{1 + w r_{ij}}^2\]- Parameters:
r (torch.tensor) – matrix of the e-e distances Nbatch x Nelec x Nelec
dr (torch.tensor) – matrix of the derivative of the e-e distances Nbatch x Ndim x Nelec x Nelec
- Returns:
- matrix fof the derivative of the jastrow elements
Nbatch x Ndim x Nelec x Nelec
- Return type:
torch.tensor
- compute_second_derivative(r, dr, d2r)[source]
Get the elements of the pure 2nd derivative of the jastrow kernels wrt to the first electron
\[\frac{d^2 B_{ij}}{d k_i^2} = \frac{d^2 B_{ij}}{d k_j^2} = \frac{d^2 B_{ji}}{ d k_i^2}\]- Parameters:
r (torch.tensor) – matrix of the e-e distances Nbatch x Nelec x Nelec
dr (torch.tensor) – matrix of the derivative of the e-e distances Nbatch x Ndim x Nelec x Nelec
d2r (torch.tensor) – matrix of the 2nd derivative of the e-e distances Nbatch x Ndim x Nelec x Nelec
- Returns:
- matrix fof the pure 2nd derivative of
the jastrow elements Nbatch x Ndim x Nelec x Nelec
- Return type:
torch.tensor