I'm seeing lots of failures when minimising molecules using
MMFFOptimizeMolecule.
A large proportion of seemingly valid molecules seem to fail.
Am I doing something stupid here?

Example:

from rdkit import Chem
from rdkit.Chem import AllChem

molblock = '''
     RDKit          3D

  5  4  0  0  0  0  0  0  0  0999 V2000
   10.2630   -5.8010   25.0960 N   0  0  0  0  0  0  0  0  0  0  0  0
    8.8220   -3.5490   23.3680 C   0  0  0  0  0  0  0  0  0  0  0  0
    8.2100   -4.7890   24.0210 C   0  0  0  0  0  0  0  0  0  0  0  0
    9.1000   -5.2470   25.1770 C   0  0  0  0  0  0  0  0  0  0  0  0
    8.5860   -5.0380   26.4480 N   0  0  0  0  0  0  0  0  0  0  0  0
  3  2  1  0
  4  1  2  0
  4  3  1  0
  5  4  1  0
M  END
'''

mol = Chem.MolFromMolBlock(molblock)
print("Processing", Chem.MolToSmiles(mol))
molh = Chem.AddHs(mol)
converged = AllChem.MMFFOptimizeMolecule(molh)


Outcome:

Processing CCC(=N)N
[17:41:57]

****
Invariant Violation
bad direction in linearSearch
Violation occurred on line 234 in file
/home/conda/feedstock_root/build_artifacts/rdkit_1620892510968/work/Code/Numerics/Optimizer/BFGSOpt.h
Failed Expression: status >= 0
****

Traceback (most recent call last):
  File "/data/work/jku/5V6S/simple-min.py", line 23, in <module>
    converged = AllChem.MMFFOptimizeMolecule(molh)
RuntimeError: Invariant Violation
        bad direction in linearSearch
        Violation occurred on line 234 in file
Code/Numerics/Optimizer/BFGSOpt.h
        Failed Expression: status >= 0
        RDKIT: 2021.03.2
        BOOST: 1_74
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to