openforcefield / openff-toolkit

The Open Forcefield Toolkit provides implementations of the SMIRNOFF format, parameterization engine, and other tools. Documentation available at http://open-forcefield-toolkit.readthedocs.io
http://openforcefield.org
MIT License
309 stars 90 forks source link

Check energies reported in using_smirnoff_in_amber_or_gromacs /export_with_interchange.ipynb #1668

Closed pbuslaev closed 1 year ago

pbuslaev commented 1 year ago

I tried to reproduce the example notebook for using SMIRNOFF with GROMACS. I used openff-toolkit version 0.14.0 and I used the structure file provided in the tutorial directory. The energies that I got are

Software Bond Angle Torsion Electrostatics vdW RBTorsion
OpenMM 0.233879 7.141818 25.580587 -6.840315 9.658657 NaN
GROMACS 0.233865 7.141832 25.580585 -6.858640 9.667050 0.0

The reported in the notebook values are:

Software Bond Angle Torsion Electrostatics vdW RBTorsion
OpenMM 0.233879 7.141818 25.580587 -15.215644 9.658657 NaN
Amber 0.233886 7.141670 25.580558 -15.216371 9.727382 NaN
GROMACS 0.233869 7.141835 25.580585 -15.235316 9.667050 0.0

The difference is only in the Electrostatics term. So I tried to check the assigned charges, by running antechamber on structures of cyclohexane and ethanol from 1_cyclohexane_1_ethanol.pdb separately. I compared those charges with charges assigned by openff-toolkit, by applying

molecule.assign_partial_charges(
    "am1bcc",
    use_conformers=molecule.conformers
)

I provided the conformer, to be sure that charges are calculated for the exact same conformations by antechamber and openff-toolkit. For both molecules (cyclohexane and ethanol) the charges computed with two different methods were identical, which tells me, that the difference in electrostatic energies is not due to the incorrect charge assignment.

Next, I transformed interchange object created from 1_cyclohexane_1_ethanol.pdb file into GROMACS format:

interchange.to_gromacs("system_new_2", decimal=8)

and used default .mdp file, as implied by interchange get_gromacs_energies. Using created .mdp, .gro, and .top files, I ran

gmx grompp -f -c -p -o
gmx mdrun -s -e -ntomp 1
gmx energy -e -s -o

and checked the energies both manually and using routine from openff.interchange: _parse_gmx_energy. The energies that I obtained manually, were the same that I obtained with get_gromacs_energies(interchange) and thus, differed from those reported in example notebook. Could it be that the values reported are outdated?

My conde environment is:

# packages in environment at /home/pbuslaev/conda_env/basic:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       2_gnu    conda-forge
ambertools                23.3            py310he275f01_1    conda-forge
amberutils                21.0                     pypi_0    pypi
anyio                     3.7.1                    pypi_0    pypi
argon2-cffi               21.3.0                   pypi_0    pypi
argon2-cffi-bindings      21.2.0                   pypi_0    pypi
arpack                    3.7.0                hdefa2d7_2    conda-forge
asttokens                 2.2.1                    pypi_0    pypi
astunparse                1.6.3                    pypi_0    pypi
attrs                     23.1.0                   pypi_0    pypi
backcall                  0.2.0                    pypi_0    pypi
backports                 1.0                pyhd8ed1ab_3    conda-forge
backports-functools-lru-cache 1.6.5                    pypi_0    pypi
backports.functools_lru_cache 1.6.5              pyhd8ed1ab_0    conda-forge
beautifulsoup4            4.12.2                   pypi_0    pypi
biopython                 1.81                     pypi_0    pypi
bleach                    6.0.0                    pypi_0    pypi
blosc                     1.21.4               h0f2a231_0    conda-forge
boost                     1.78.0          py310hc4a4660_4    conda-forge
boost-cpp                 1.78.0               h6582d0a_3    conda-forge
brotli                    1.0.9                    pypi_0    pypi
brotli-bin                1.0.9                h166bdaf_9    conda-forge
brotli-python             1.0.9           py310hd8f1fbe_9    conda-forge
bson                      0.5.9                    pypi_0    pypi
bzip2                     1.0.8                h7b6447c_0  
c-ares                    1.19.1               hd590300_0    conda-forge
c-blosc2                  2.10.0               hb4ffafa_0    conda-forge
ca-certificates           2023.05.30           h06a4308_0  
cached-property           1.5.2                    pypi_0    pypi
cached_property           1.5.2              pyha770c72_1    conda-forge
cachetools                5.3.1                    pypi_0    pypi
cairo                     1.16.0            hbbf8b49_1016    conda-forge
certifi                   2023.5.7                 pypi_0    pypi
cffi                      1.15.1                   pypi_0    pypi
cftime                    1.6.2                    pypi_0    pypi
charset-normalizer        3.1.0                    pypi_0    pypi
colorama                  0.4.6                    pypi_0    pypi
comm                      0.1.3                    pypi_0    pypi
contourpy                 1.1.0                    pypi_0    pypi
cudatoolkit               11.8.0              h37601d7_11    conda-forge
cycler                    0.11.0                   pypi_0    pypi
cython                    0.29.36                  pypi_0    pypi
debugpy                   1.6.7                    pypi_0    pypi
decorator                 5.1.1                    pypi_0    pypi
defusedxml                0.7.1                    pypi_0    pypi
edgembar                  0.2                      pypi_0    pypi
entrypoints               0.4                      pypi_0    pypi
et-xmlfile                1.1.0                    pypi_0    pypi
exceptiongroup            1.1.2                    pypi_0    pypi
executing                 1.2.0                    pypi_0    pypi
expat                     2.5.0                hcb278e6_1    conda-forge
fasteners                 0.17.3                   pypi_0    pypi
fastjsonschema            2.17.1                   pypi_0    pypi
fftw                      3.3.10          nompi_hc118613_108    conda-forge
flit-core                 3.9.0                    pypi_0    pypi
font-ttf-dejavu-sans-mono 2.37                 hab24e00_0    conda-forge
font-ttf-inconsolata      3.000                h77eed37_0    conda-forge
font-ttf-source-code-pro  2.038                h77eed37_0    conda-forge
font-ttf-ubuntu           0.83                 hab24e00_0    conda-forge
fontconfig                2.14.2               h14ed4e7_0    conda-forge
fonts-conda-ecosystem     1                             0    conda-forge
fonts-conda-forge         1                             0    conda-forge
fonttools                 4.40.0                   pypi_0    pypi
freetype                  2.12.1               hca18f0e_1    conda-forge
freetype-py               2.3.0                    pypi_0    pypi
gettext                   0.21.1               h27087fc_0    conda-forge
gmp                       6.2.1                h58526e2_0    conda-forge
greenlet                  2.0.2                    pypi_0    pypi
griddataformats           1.0.1                    pypi_0    pypi
gsd                       2.9.0                    pypi_0    pypi
h5py                      3.9.0                    pypi_0    pypi
hdf4                      4.2.15               h501b40f_6    conda-forge
hdf5                      1.14.1          nompi_h4f84152_100    conda-forge
icu                       72.1                 hcb278e6_0    conda-forge
idna                      3.4                      pypi_0    pypi
importlib-metadata        6.7.0                    pypi_0    pypi
importlib-resources       5.12.0                   pypi_0    pypi
importlib_metadata        6.7.0                hd8ed1ab_0    conda-forge
importlib_resources       5.12.0             pyhd8ed1ab_0    conda-forge
ipykernel                 6.24.0                   pypi_0    pypi
ipython                   8.14.0                   pypi_0    pypi
ipython-genutils          0.2.0                    pypi_0    pypi
ipython_genutils          0.2.0                      py_1    conda-forge
ipywidgets                8.0.7                    pypi_0    pypi
jedi                      0.18.2                   pypi_0    pypi
jinja2                    3.1.2                    pypi_0    pypi
joblib                    1.3.0                    pypi_0    pypi
jsonschema                4.18.0                   pypi_0    pypi
jsonschema-specifications 2023.6.1                 pypi_0    pypi
jupyter-client            8.3.0                    pypi_0    pypi
jupyter-core              5.3.1                    pypi_0    pypi
jupyter-events            0.6.3                    pypi_0    pypi
jupyter-server            2.7.0                    pypi_0    pypi
jupyter-server-terminals  0.4.4                    pypi_0    pypi
jupyter_client            8.3.0              pyhd8ed1ab_0    conda-forge
jupyter_core              5.3.1           py310hff52083_0    conda-forge
jupyter_events            0.6.3              pyhd8ed1ab_0    conda-forge
jupyter_server            2.7.0              pyhd8ed1ab_0    conda-forge
jupyter_server_terminals  0.4.4              pyhd8ed1ab_1    conda-forge
jupyterlab-pygments       0.2.2                    pypi_0    pypi
jupyterlab-widgets        3.0.8                    pypi_0    pypi
jupyterlab_pygments       0.2.2              pyhd8ed1ab_0    conda-forge
jupyterlab_widgets        3.0.8              pyhd8ed1ab_0    conda-forge
keyutils                  1.6.1                h166bdaf_0    conda-forge
kiwisolver                1.4.4                    pypi_0    pypi
krb5                      1.20.1               h81ceb04_0    conda-forge
lcms2                     2.15                 haa2dc70_1    conda-forge
ld_impl_linux-64          2.38                 h1181459_1  
lerc                      4.0.0                h27087fc_0    conda-forge
libaec                    1.0.6                hcb278e6_1    conda-forge
libblas                   3.9.0           17_linux64_openblas    conda-forge
libbrotlicommon           1.0.9                h166bdaf_9    conda-forge
libbrotlidec              1.0.9                h166bdaf_9    conda-forge
libbrotlienc              1.0.9                h166bdaf_9    conda-forge
libcblas                  3.9.0           17_linux64_openblas    conda-forge
libcurl                   8.1.2                h409715c_0    conda-forge
libdeflate                1.18                 h0b41bf4_0    conda-forge
libedit                   3.1.20191231         he28a2e2_2    conda-forge
libev                     4.33                 h516909a_1    conda-forge
libexpat                  2.5.0                hcb278e6_1    conda-forge
libffi                    3.4.2                h7f98852_5    conda-forge
libgcc-ng                 13.1.0               he5830b7_0    conda-forge
libgfortran-ng            13.1.0               h69a702a_0    conda-forge
libgfortran5              13.1.0               h15d22d2_0    conda-forge
libglib                   2.76.4               hebfc3b9_0    conda-forge
libgomp                   13.1.0               he5830b7_0    conda-forge
libiconv                  1.17                 h166bdaf_0    conda-forge
libjpeg-turbo             2.1.5.1              h0b41bf4_0    conda-forge
liblapack                 3.9.0           17_linux64_openblas    conda-forge
libnetcdf                 4.9.2           nompi_he09a3a9_107    conda-forge
libnghttp2                1.52.0               h61bc06f_0    conda-forge
libnsl                    2.0.0                h7f98852_0    conda-forge
libopenblas               0.3.23          pthreads_h80387f5_0    conda-forge
libpng                    1.6.39               h753d276_0    conda-forge
libsodium                 1.0.18               h36c2ea0_1    conda-forge
libsqlite                 3.42.0               h2797004_0    conda-forge
libssh2                   1.11.0               h0841786_0    conda-forge
libstdcxx-ng              13.1.0               hfd8a6a1_0    conda-forge
libtiff                   4.5.1                h8b53f26_0    conda-forge
libuuid                   2.38.1               h0b41bf4_0    conda-forge
libwebp-base              1.3.1                hd590300_0    conda-forge
libxcb                    1.15                 h0b41bf4_0    conda-forge
libxml2                   2.11.4               h0d562d8_0    conda-forge
libzip                    1.9.2                hc929e4a_1    conda-forge
libzlib                   1.2.13               hd590300_5    conda-forge
lz4-c                     1.9.4                hcb278e6_0    conda-forge
lzo                       2.10              h516909a_1000    conda-forge
markupsafe                2.1.3                    pypi_0    pypi
matplotlib                3.7.2                    pypi_0    pypi
matplotlib-base           3.7.2           py310hf38f957_0    conda-forge
matplotlib-inline         0.1.6                    pypi_0    pypi
mdanalysis                2.5.0                    pypi_0    pypi
mdtraj                    1.9.8                    pypi_0    pypi
mistune                   3.0.0                    pypi_0    pypi
mmpbsa-py                 16.0                     pypi_0    pypi
mmtf-python               1.1.3                    pypi_0    pypi
mrcfile                   1.4.3                    pypi_0    pypi
msgpack                   1.0.5                    pypi_0    pypi
msgpack-python            1.0.5           py310hdf3cbec_0    conda-forge
munkres                   1.1.4                    pypi_0    pypi
nbclassic                 1.0.0                    pypi_0    pypi
nbclient                  0.8.0                    pypi_0    pypi
nbconvert                 7.6.0                    pypi_0    pypi
nbconvert-core            7.6.0              pyhd8ed1ab_0    conda-forge
nbconvert-pandoc          7.6.0              pyhd8ed1ab_0    conda-forge
nbformat                  5.9.0                    pypi_0    pypi
ncurses                   6.3                  h7f8727e_2  
ndfes                     1.8                      pypi_0    pypi
nest-asyncio              1.5.6                    pypi_0    pypi
netcdf-fortran            4.6.1           nompi_hec59055_101    conda-forge
netcdf4                   1.6.4                    pypi_0    pypi
networkx                  3.1                      pypi_0    pypi
nomkl                     1.0                  h5ca1d4c_0    conda-forge
notebook                  6.5.4                    pypi_0    pypi
notebook-shim             0.2.3                    pypi_0    pypi
numexpr                   2.8.4                    pypi_0    pypi
numpy                     1.25.0                   pypi_0    pypi
ocl-icd                   2.3.1                h7f98852_0    conda-forge
ocl-icd-system            1.0.0                         1    conda-forge
openff-amber-ff-ports     0+untagged.24.gf33b5cd.dirty          pypi_0    pypi
openff-forcefields        2023.06.0          pyh1a96a4e_0    conda-forge
openff-interchange        0.3.7                    pypi_0    pypi
openff-interchange-base   0.3.7              pyhd8ed1ab_0    conda-forge
openff-models             0.0.5                    pypi_0    pypi
openff-toolkit            0.14.0                   pypi_0    pypi
openff-toolkit-base       0.14.0             pyhd8ed1ab_2    conda-forge
openff-units              0.2.1                    pypi_0    pypi
openff-utilities          0.1.8                    pypi_0    pypi
openforcefields           0+untagged.59.g0b8669f.dirty          pypi_0    pypi
openjpeg                  2.5.0                hfec8fc6_2    conda-forge
openmm                    8.0.0                    pypi_0    pypi
openpyxl                  3.1.2                    pypi_0    pypi
openssl                   3.1.1                hd590300_1    conda-forge
overrides                 7.3.1                    pypi_0    pypi
packaging                 23.1                     pypi_0    pypi
packmol                   20.010               h86c2bf4_0    conda-forge
packmol-memgen            2023.2.24                pypi_0    pypi
pandas                    2.0.3                    pypi_0    pypi
pandoc                    3.1.3                h32600fe_0    conda-forge
pandocfilters             1.5.0                    pypi_0    pypi
panedr                    0.7.1                    pypi_0    pypi
parmed                    4.1.0                    pypi_0    pypi
parso                     0.8.3                    pypi_0    pypi
patsy                     0.5.3                    pypi_0    pypi
pbr                       5.11.1                   pypi_0    pypi
pcre2                     10.40                hc3806b6_0    conda-forge
pdb4amber                 22.0                     pypi_0    pypi
perl                      5.32.1          3_hd590300_perl5    conda-forge
pexpect                   4.8.0                    pypi_0    pypi
pickleshare               0.7.5                    pypi_0    pypi
pillow                    10.0.0                   pypi_0    pypi
pint                      0.21                     pypi_0    pypi
pip                       23.1.2                   pypi_0    pypi
pixman                    0.40.0               h36c2ea0_0    conda-forge
pkgutil-resolve-name      1.3.10                   pypi_0    pypi
platformdirs              3.8.0                    pypi_0    pypi
pooch                     1.7.0                    pypi_0    pypi
prometheus-client         0.17.0                   pypi_0    pypi
prometheus_client         0.17.0             pyhd8ed1ab_0    conda-forge
prompt-toolkit            3.0.39                   pypi_0    pypi
prompt_toolkit            3.0.39               hd8ed1ab_0    conda-forge
psutil                    5.9.5                    pypi_0    pypi
pthread-stubs             0.4               h36c2ea0_1001    conda-forge
ptyprocess                0.7.0                    pypi_0    pypi
pure-eval                 0.2.2                    pypi_0    pypi
pure_eval                 0.2.2              pyhd8ed1ab_0    conda-forge
py-cpuinfo                9.0.0                    pypi_0    pypi
pycairo                   1.24.0                   pypi_0    pypi
pycparser                 2.21                     pypi_0    pypi
pydantic                  1.10.10                  pypi_0    pypi
pyedr                     0.7.1                    pypi_0    pypi
pygments                  2.15.1                   pypi_0    pypi
pymsmt                    22.0                     pypi_0    pypi
pyparsing                 3.0.9                    pypi_0    pypi
pysocks                   1.7.1                    pypi_0    pypi
pytables                  3.8.0           py310ha028ce3_2    conda-forge
python                    3.10.11         he550d4f_0_cpython    conda-forge
python-constraint         1.4.0                    pypi_0    pypi
python-dateutil           2.8.2                    pypi_0    pypi
python-fastjsonschema     2.17.1             pyhd8ed1ab_0    conda-forge
python-json-logger        2.0.7                    pypi_0    pypi
python-tzdata             2023.3             pyhd8ed1ab_0    conda-forge
python_abi                3.10                    3_cp310    conda-forge
pytng                     0.3.0                    pypi_0    pypi
pytraj                    2.0.6                    pypi_0    pypi
pytz                      2023.3                   pypi_0    pypi
pyyaml                    6.0                      pypi_0    pypi
pyzmq                     25.1.0                   pypi_0    pypi
rdkit                     2023.03.2       py310h399bcf7_0    conda-forge
readline                  8.2                  h8228510_1    conda-forge
referencing               0.29.1                   pypi_0    pypi
reportlab                 4.0.4                    pypi_0    pypi
requests                  2.31.0                   pypi_0    pypi
rfc3339-validator         0.1.4                    pypi_0    pypi
rfc3986-validator         0.1.1                    pypi_0    pypi
rlpycairo                 0.2.0                    pypi_0    pypi
rpds-py                   0.8.6                    pypi_0    pypi
sander                    22.0                     pypi_0    pypi
scikit-learn              1.3.0                    pypi_0    pypi
scipy                     1.11.1                   pypi_0    pypi
seaborn                   0.12.2                   pypi_0    pypi
seaborn-base              0.12.2             pyhd8ed1ab_0    conda-forge
send2trash                1.8.2                    pypi_0    pypi
setuptools                67.8.0                   pypi_0    pypi
six                       1.16.0                   pypi_0    pypi
smirnoff99frosst          0+unknown                pypi_0    pypi
snappy                    1.1.10               h9fff704_0    conda-forge
sniffio                   1.3.0                    pypi_0    pypi
soupsieve                 2.3.2.post1              pypi_0    pypi
sqlalchemy                2.0.18                   pypi_0    pypi
sqlite                    3.38.5               hc218d9a_0  
stack-data                0.6.2                    pypi_0    pypi
stack_data                0.6.2              pyhd8ed1ab_0    conda-forge
statsmodels               0.14.0                   pypi_0    pypi
tables                    3.8.0                    pypi_0    pypi
terminado                 0.17.1                   pypi_0    pypi
threadpoolctl             3.1.0                    pypi_0    pypi
tidynamics                1.0.0                    pypi_0    pypi
tinycss2                  1.2.1                    pypi_0    pypi
tk                        8.6.12               h1ccaba5_0  
tornado                   6.3.2                    pypi_0    pypi
tqdm                      4.65.0                   pypi_0    pypi
traitlets                 5.9.0                    pypi_0    pypi
typing-extensions         4.7.1                    pypi_0    pypi
typing-utils              0.1.0                    pypi_0    pypi
typing_extensions         4.7.1              pyha770c72_0    conda-forge
typing_utils              0.1.0              pyhd8ed1ab_0    conda-forge
tzdata                    2023.3                   pypi_0    pypi
unicodedata2              15.0.0                   pypi_0    pypi
urllib3                   2.0.3                    pypi_0    pypi
wcwidth                   0.2.6                    pypi_0    pypi
webencodings              0.5.1                    pypi_0    pypi
websocket-client          1.6.1                    pypi_0    pypi
wheel                     0.38.4                   pypi_0    pypi
widgetsnbextension        4.0.8                    pypi_0    pypi
xmltodict                 0.13.0                   pypi_0    pypi
xorg-kbproto              1.0.7             h7f98852_1002    conda-forge
xorg-libice               1.0.10               h7f98852_0    conda-forge
xorg-libsm                1.2.3             hd9c2040_1000    conda-forge
xorg-libx11               1.8.6                h8ee46fc_0    conda-forge
xorg-libxau               1.0.11               hd590300_0    conda-forge
xorg-libxdmcp             1.1.3                h7f98852_0    conda-forge
xorg-libxext              1.3.4                h0b41bf4_2    conda-forge
xorg-libxrender           0.9.11               hd590300_0    conda-forge
xorg-libxt                1.3.0                hd590300_0    conda-forge
xorg-renderproto          0.11.1            h7f98852_1002    conda-forge
xorg-xextproto            7.3.0             h0b41bf4_1003    conda-forge
xorg-xproto               7.0.31            h7f98852_1007    conda-forge
xz                        5.2.6                h166bdaf_0    conda-forge
yaml                      0.2.5                h7f98852_2    conda-forge
zeromq                    4.3.4                h9c3ff4c_1    conda-forge
zipp                      3.15.0                   pypi_0    pypi
zlib                      1.2.13               hd590300_5    conda-forge
zlib-ng                   2.0.7                h0b41bf4_0    conda-forge
zstd                      1.5.2                hfc55251_7    conda-forge
mattwthompson commented 1 year ago

Hey @pbuslaev, nice detective work again. The discrepancy here is much less exciting than you'd hope - the toolkit provides slightly different charges when it uses antechamber vs. oechem. More detail here:

This tag calculates partial charges using the default settings of the highest-priority cheminformatics toolkit that can perform AM1-BCC charge assignment. Currently, if the OpenEye toolkit is licensed and available, this will use QuacPac configured to generate charges using AM1-BCC ELF10 for each unique molecule in the topology. Otherwise RDKit will be used for initial conformer generation and the AmberTools antechamber/sqm software will be used for charge calculation.

The ELF10 variant provides slightly different charges for some molecules, but both are considered correct implementations of a SMIRNOFF force field. (This grates me a bit, personally, but electrostatics are notoriously difficult to get right and AM1-BCC vs. AM1-BCC ELF10 is just the tip of the iceberg of different partial charge methods that can be used to similar result.) Under the hood, these tools are called by ToolkitWrappers (OpenEyeToolkitWrapper, AmberToolsToolkitWrapper, RDKitToolkitWrapper, ...).

The -15 number results from having access to OpenEye Toolkits (free for academics, and I usually use one in development) and the -6.8 number comes from using AmberTools/RDKit. The notebook you were looking at was probably rendered by a developer who had a license; we have another version floating around that reports the different number, which you got locally. To be a little more thorough, I checked myself what happens when OpenEyeToolkitWrapper is available or not, and the results look familiar:

from openff.toolkit.utils.toolkit_registry import (
    _toolkit_registry_manager,
    RDKitToolkitWrapper,
    OpenEyeToolkitWrapper,
    AmberToolsToolkitWrapper,
    ToolkitRegistry,
)

with _toolkit_registry_manager(
    ToolkitRegistry(toolkit_precedence=[RDKitToolkitWrapper, AmberToolsToolkitWrapper])):

    print(get_summary_data(forcefield.create_interchange(topology)))

with _toolkit_registry_manager(
    ToolkitRegistry(toolkit_precedence=[OpenEyeToolkitWrapper])):

    print(get_summary_data(forcefield.create_interchange(topology)))

             Bond     Angle    Torsion  Electrostatics       vdW  RBTorsion
OpenMM   0.233879  7.141818  25.580587       -6.840315  9.658657        NaN
Amber    0.233886  7.141670  25.580558       -6.840840  9.727382        NaN
GROMACS  0.233869  7.141836  25.580585       -6.858515  9.667051        0.0
LAMMPS   1.384295  7.141818  25.580587       -6.944298  9.630999        NaN
             Bond     Angle    Torsion  Electrostatics       vdW  RBTorsion
OpenMM   0.233879  7.141818  25.580587      -15.215644  9.658657        NaN
Amber    0.233886  7.141670  25.580558      -15.216371  9.727382        NaN
GROMACS  0.233869  7.141835  25.580582      -15.235316  9.667050        0.0
LAMMPS   1.384295  7.141818  25.580587      -15.301557  9.630999        NaN
pbuslaev commented 1 year ago

Hi @mattwthompson

Thanks for the explanations. It makes perfect sense. Do you think it is worth adding a similar note (or providing additionally values for Amber AM1BCC charges in README for example) to the example notebook, so users are not confused by different energies?

mattwthompson commented 1 year ago

Good idea @pbuslaev! https://github.com/openforcefield/openff-toolkit/pull/1671 has re-rendered the examples with only free (for everybody) and open source tools, and now includes the -6.8 number you expected it to.