qmctorch.wavefunction.orbitals.backflow.kernels package
Submodules
qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_autodiff_inverse module
- class qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_autodiff_inverse.BackFlowKernelAutoInverse(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseCompute the back flow kernel, i.e. the function f(rij) where rij is the distance between electron i and j This kernel is used in the backflow transformation .. math:
q_i = r_i + sum_{jneq i} f(r_{ij}) (r_i-r_j)
qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_base module
- class qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_base.BackFlowKernelBase(*args: Any, **kwargs: Any)[source]
Bases:
ModuleCompute the back flow kernel, i.e. the function f(rij) where rij is the distance between electron i and j This kernel is used in the backflow transformation .. math:
q_i = r_i + sum_{jneq i} f(r_{ij}) (r_i-r_j)
- forward(ree: torch.Tensor, derivative: int = 0) torch.Tensor[source]
- Computes the desired values of the kernel
- Args:
ree (torch.tensor): e-e distance Nbatch x Nelec x Nelec derivative (int): derivative requried 0, 1, 2
- Returns:
f(r) Nbatch x Nelec x Nelec
- Return type:
torch.tensor
qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_exp module
- class qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_exp.BackFlowKernelExp(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseCompute the back flow kernel, i.e. the function f(rij) where rij is the distance between electron i and j This kernel is used in the backflow transformation .. math:
q_i = r_i + sum_{jneq i} f(r_{ij}) (r_i-r_j)
with here :
qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_fully_connected module
- class qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_fully_connected.BackFlowKernelFullyConnected(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseCompute the back flow kernel, i.e. the function f(rij) where rij is the distance between electron i and j This kernel is used in the backflow transformation .. math:
q_i = r_i + sum_{jneq i} f(r_{ij}) (r_i-r_j)
qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_inverse module
- class qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_inverse.BackFlowKernelInverse(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseCompute the back flow kernel, i.e. the function f(rij) where rij is the distance between electron i and j This kernel is used in the backflow transformation .. math:
q_i = r_i + sum_{jneq i} f(r_{ij}) (r_i-r_j)
with here :
qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_power_sum module
- class qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_power_sum.BackFlowKernelPowerSum(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseCompute the back flow kernel, i.e. the function f(rij) where rij is the distance between electron i and j This kernel is used in the backflow transformation .. math:
q_i = r_i + sum_{jneq i} f(r_{ij}) (r_i-r_j)
qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_rbf module
- class qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_rbf.BackFlowKernelRBF(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseInitialize the RBF kernel
- Parameters:
- centers
Centers of the radial basis functions
- Type:
nn.Parameter
- sigma
Widths of the radial basis functions
- Type:
nn.Parameter
- weight
Weights of the radial basis functions
- Type:
nn.Parameter
- fc
Linear layer to compute the kernel
- Type:
nn.Linear
- bias
Bias of the kernel
- Type:
nn.Parameter
qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_square module
- class qmctorch.wavefunction.orbitals.backflow.kernels.backflow_kernel_square.BackFlowKernelSquare(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseDefine a generic kernel to test the auto diff features.
Module contents
- class qmctorch.wavefunction.orbitals.backflow.kernels.BackFlowKernelBase(*args: Any, **kwargs: Any)[source]
Bases:
ModuleCompute the back flow kernel, i.e. the function f(rij) where rij is the distance between electron i and j This kernel is used in the backflow transformation .. math:
q_i = r_i + sum_{jneq i} f(r_{ij}) (r_i-r_j)
- forward(ree: torch.Tensor, derivative: int = 0) torch.Tensor[source]
- Computes the desired values of the kernel
- Args:
ree (torch.tensor): e-e distance Nbatch x Nelec x Nelec derivative (int): derivative requried 0, 1, 2
- Returns:
f(r) Nbatch x Nelec x Nelec
- Return type:
torch.tensor
- class qmctorch.wavefunction.orbitals.backflow.kernels.BackFlowKernelAutoInverse(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseCompute the back flow kernel, i.e. the function f(rij) where rij is the distance between electron i and j This kernel is used in the backflow transformation .. math:
q_i = r_i + sum_{jneq i} f(r_{ij}) (r_i-r_j)
- class qmctorch.wavefunction.orbitals.backflow.kernels.BackFlowKernelFullyConnected(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseCompute the back flow kernel, i.e. the function f(rij) where rij is the distance between electron i and j This kernel is used in the backflow transformation .. math:
q_i = r_i + sum_{jneq i} f(r_{ij}) (r_i-r_j)
- class qmctorch.wavefunction.orbitals.backflow.kernels.BackFlowKernelInverse(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseCompute the back flow kernel, i.e. the function f(rij) where rij is the distance between electron i and j This kernel is used in the backflow transformation .. math:
q_i = r_i + sum_{jneq i} f(r_{ij}) (r_i-r_j)
with here :
- class qmctorch.wavefunction.orbitals.backflow.kernels.BackFlowKernelPowerSum(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseCompute the back flow kernel, i.e. the function f(rij) where rij is the distance between electron i and j This kernel is used in the backflow transformation .. math:
q_i = r_i + sum_{jneq i} f(r_{ij}) (r_i-r_j)
- class qmctorch.wavefunction.orbitals.backflow.kernels.BackFlowKernelSquare(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseDefine a generic kernel to test the auto diff features.
- class qmctorch.wavefunction.orbitals.backflow.kernels.BackFlowKernelRBF(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseInitialize the RBF kernel
- Parameters:
- centers
Centers of the radial basis functions
- Type:
nn.Parameter
- sigma
Widths of the radial basis functions
- Type:
nn.Parameter
- weight
Weights of the radial basis functions
- Type:
nn.Parameter
- fc
Linear layer to compute the kernel
- Type:
nn.Linear
- bias
Bias of the kernel
- Type:
nn.Parameter
- class qmctorch.wavefunction.orbitals.backflow.kernels.BackFlowKernelExp(*args: Any, **kwargs: Any)[source]
Bases:
BackFlowKernelBaseCompute the back flow kernel, i.e. the function f(rij) where rij is the distance between electron i and j This kernel is used in the backflow transformation .. math:
q_i = r_i + sum_{jneq i} f(r_{ij}) (r_i-r_j)
with here :