PEANUT model architecture
Overview of the PEANUT model architecture and components. Let \(N_{atoms}\) denote the number of atoms in the system, \(N_{elem}\) be the number of different chemical elements in the dataset, \(D\) the dimension of the atom embedding vectors, \(B\) the number of radial basis functions, \(L\) the maximum degree of spherical harmonics, and \(T\) the number of message-passing iterations. For each atom \(i\), let \(\mathcal{N}(i)\) denote the set of neighboring atoms within the cutoff radius.
Input for the model
Cartesian coordinates
Atom types
Construct an embedding vector for each atom:
where \(e\) is a function mapping the element type \(Z_i\) of atom \(i\) to an initial embedding vector \(h_i^{(0)}\) of length \(D\). Distances between atom pairs are encoded as Euclidean distance:
Radial features are encoded using \(B\) Behler-Parinello symmetry functions with centers \(R_B \in \mathbb{R}_+\) and width parameters \(\eta_B \in \mathbb{R}_+\). Additionally, a cutoff function \(f_c\) is applied to ensure smoothness at the cutoff radius \(r_c\).
Each distance \(r_{ij}\) is mapped to a \(B\)-dimensional radial feature vector:
Spherical features are encoded using spherical harmonics:
Total number of spherical harmonics per pair:
Radial and spherical features are combined:
Steps per atom \(i\) and message-passing iteration \(t = 1, \dots, T\)
Message passing: Construct message for each neighbor \(j\) of atom \(i\) using edge features \(F_{ij}\) and sender node features \(h_j^{(t-1)}\):
Aggregation: Combine all incoming messages from all atoms \(j\) in the neighborhood \(\mathcal{N}(i)\) of atom \(i\) to update the node embedding \(h_i^{(t)}\) at iteration \(t\).
Node update:
Energy prediction
Total energy per batch: