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
313 stars 92 forks source link

Molecule that our FFs should handle, but the infrastructure fails on #754

Open j-wags opened 3 years ago

j-wags commented 3 years ago

Taken from https://github.com/openforcefield/openforcefields/pull/27

Jeff needs to add more detail to this bug report. It's not clear if we should expect good behavior for pentavalent phosphorous or iodine at all

Molecule 3

[H]c1c(c(c(c(c1[H])[H])P(c2c(c(c(c(c2[H])[H])[H])[H])[H])(c3c(c(c(c(c3[H])[H])[H])[H])[H])(I)I)[H])[H]

This one may have coverage from our FFs, but neither OE nor AmberTools can calculate charges for it.

Screen Shot 2020-10-27 at 1 05 36 PM

When I try to run create_openmm_system on this, I get

RDKit WARNING: [13:09:02] UFFTYPER: Warning: hybridization set to SP3 for atom 9
/Users/jeffreywagner/miniconda3/envs/off-dev/lib/python3.7/site-packages/openforcefield/typing/engines/smirnoff/parameters.py:3479: Warning: No registered toolkits can provide the capability "assign_partial_charges" for args "(Molecule with name '' and SMILES '[H]c1c(c(c(c(c1[H])[H])P(c2c(c(c(c(c2[H])[H])[H])[H])[H])(c3c(c(c(c(c3[H])[H])[H])[H])[H])(I)I)[H])[H]',)" and kwargs "{'partial_charge_method': 'am1bcc', 'use_conformers': None, 'strict_n_conformers': False}"
Available toolkits are: [<openforcefield.utils.toolkits.OpenEyeToolkitWrapper object at 0x11bc08bd0>, <openforcefield.utils.toolkits.RDKitToolkitWrapper object at 0x11bc08f90>, <openforcefield.utils.toolkits.AmberToolsToolkitWrapper object at 0x11bc19790>, <openforcefield.utils.toolkits.BuiltInToolkitWrapper object at 0x123cd0d10>]
 <openforcefield.utils.toolkits.OpenEyeToolkitWrapper object at 0x11bc08bd0> <class 'Exception'> : OpenEye Omega conformer generation failed
 <openforcefield.utils.toolkits.AmberToolsToolkitWrapper object at 0x11bc19790> <class 'subprocess.CalledProcessError'> : Command '['antechamber', '-i', 'molecule.sdf', '-fi', 'sdf', '-o', 'charged.mol2', '-fo', 'mol2', '-pf', 'yes', '-dr', 'n', '-c', 'bcc', '-nc', '0.0']' returned non-zero exit status 1.
 <openforcefield.utils.toolkits.BuiltInToolkitWrapper object at 0x123cd0d10> <class 'openforcefield.utils.toolkits.ChargeMethodUnavailableError'> : Partial charge method "am1bcc"" is not supported by the Built-in toolkit. Available charge methods are ['zeros', 'formal_charge']

  warnings.warn(str(e), Warning)
mattwthompson commented 1 year ago

Since we can't change our code to fix this failure, we should do one of