Spin-Network-Scaled MP2 (SNS-MP2) by D. E. Shaw

Code author: D. E. Shaw Research

Section author: Shannon E. Houck


This plugin is an implementation of the SNS-MP2 algorithm developed by McGibbon et. al. [McGibbon:2017:161725]. The SNS-MP2 method uses neural networking to improve the accuracy of MP2 (DF-MP2: Density-Fitted 2nd-Order Møller–Plesset Perturbation Theory) interaction energies for dimer molecules. The plugin is distributed under the 2-clause BSD license.



  • https://anaconda.org/psi4/snsmp2/badges/version.svg
  • snsmp2 is available as a conda package for Linux and macOS (and Windows, through the Ubuntu shell).

  • If using the Psi4conda installer, snsmp2 has already been installed alongside.

  • If using the PSI4 conda package, the snsmp2 conda package can be obtained through conda install snsmp2 -c psi4 or conda install psi4-rt -c psi4.

  • If using PSI4 built from source, and anaconda or miniconda has already been installed (instructions at Quick Installation), snsmp2 can be obtained through conda install snsmp2 -c psi4. Then, hint its location with PYTHONPATH.

  • To remove a conda installation, conda remove snsmp2.


  • https://img.shields.io/github/tag/DEShawResearch/sns-mp2.svg?maxAge=2592000
  • Download the plugin from the GitHub repository:

    >>> git clone https://github.com/DEShawResearch/sns-mp2
  • Once dowloaded, the plugin can be installed as outlined in the documentation:

    >>> cd {top-level-sns-mp2-directory}
    >>> PSI4_PYTHON=$(head $(which psi4) -n 1 | sed -r 's/^.{2}//')
    >>> $PSI4_PYTHON -m pip install .

Sample Input

A sample input file, adapted from the documentation, is shown below:

# Sample SNS-MP2 calculation for two helium atoms

molecule dimer {
He 0 0 0
He 2 0 0


Note that the two monomers are separated by double dashes, indicating that they should be treated as separate molecules. (See Analysis of Intermolecular Interactions for more details on setting up dimer molecules.) This input file can be run in the usual fashion:

>>> psi4 input.dat