ForceNet follows the encoder-decoder architecture of the GNS framework [1]}, [2]}, [3]}. The encoder uses scalable iterative message passing to compute node embeddings \(\mathbf {h}_t\)  that capture the 3D structure surrounding each atom, and the decoder uses an Multi-Layer Perceptron (MLP) to directly predict per-atom forces from these embeddings.
The encoder updates \(\mathbf {h}_t\)  as:
\(\mathbf {h}_t^{(k+1)} = \mathbf {F}_n\left(\mathbf {m}_t + \sum _{s\in \mathcal {N}_t}\mathbf {m}_{st}\right) + \mathbf {h}_t^{(k)},\) 
