netket.models.DeepSetRelDistance#

class netket.models.DeepSetRelDistance[source]#

Bases: Module

Implements an equivariant version of the DeepSets architecture given by (https://arxiv.org/abs/1703.06114)

\[f(x_1,...,x_N) = \rho\left(\sum_i \phi(x_i)\right)\]

that is suitable for the simulation of periodic systems. Additionally one can add a cusp condition by specifying the asymptotic exponent. For helium the Ansatz reads (https://arxiv.org/abs/2112.11957):

\[\psi(x_1,...,x_N) = \rho\left(\sum_i \phi(d_{\sin}(x_i,x_j))\right) \cdot \exp\left[-\frac{1}{2}\left(b/d_{\sin}(x_i,x_j)\right)^5\right]\]
Attributes
cusp_exponent: Optional[int] = None#

exponent of Katos cusp condition

output_activation: Optional[Callable] = None#

The nonlinear activation function at the output layer.

use_bias: bool = True#

if True uses a bias in all layers.

hilbert: ContinuousHilbert#

The hilbert space defining the periodic box where this ansatz is defined.

layers_phi: int#

Number of layers in phi network.

layers_rho: int#

Number of layers in rho network.

features_phi: Union[tuple, int]#

Number of features in each layer for phi network.

features_rho: Union[tuple, int]#

Number of features in each layer for rho network. If specified as a list, the last layer must have 1 feature.

activation: Optional[Callable]#

The nonlinear activation function between hidden layers.

pooling: Callable#

The pooling operation to be used after the phi-transformation

kernel_init: Callable[[Any, Sequence[int], Any], Union[ndarray, Array]]#

Initializer for the Dense layer matrix

bias_init: Callable[[Any, Sequence[int], Any], Union[ndarray, Array]]#

Initializer for the hidden bias

params_init: Callable[[Any, Sequence[int], Any], Union[ndarray, Array]]#

Initializer for the parameter in the cusp

Methods
__call__(x)[source]#

Call self as a function.

distance(x, sdim, L)[source]#