3D Alignment Node: GenericRDKitException: How to align conformers of same molecule

Hi All,

I’m trying to use the 3D Alignment Node. I’ve used it in the past without issue. But with my current workflow I constantly get an error:

ERROR RDKit Open 3D Alignment Execute failed: (“GenericRDKitException”): null

Memory usage is fine. Should not be an out of memory issue. I’m generating conformers, optimize them and then select by RMSD with RDKit nodes. I then want to align them on each other. But for some reason I always get this error. See below for log file.

EDIT:

Another issue I have is that I get no alignments at all:

WARN RDKit Open 3D Alignment Alignment of query molecule failed: org.RDKit.GenericRDKitException [All rows]

This happens with the same molecule but different conformers. If I do the align in RDKit-Python with the exact same molecules it works as expected.

Log file:

2014-03-04 14:42:34,231 ERROR KNIME-Worker-16 RDKit Open 3D Alignment : Execute failed: (“GenericRDKitException”): null
2014-03-04 14:42:34,232 DEBUG KNIME-Worker-16 RDKit Open 3D Alignment : Execute failed: (“GenericRDKitException”): null
org.RDKit.GenericRDKitException
at org.RDKit.RDKFuncsJNI.ForceField_MMFFHasAllMoleculeParams(Native Method)
at org.RDKit.ForceField.MMFFHasAllMoleculeParams(ForceField.java:224)
at org.rdkit.knime.nodes.open3dalignment.RDKitOpen3DAlignmentNodeModel.preProcessing(RDKitOpen3DAlignmentNodeModel.java:512)
at org.rdkit.knime.nodes.AbstractRDKitNodeModel.execute(AbstractRDKitNodeModel.java:773)
at org.knime.core.node.NodeModel.execute(NodeModel.java:713)
at org.knime.core.node.NodeModel.executeModel(NodeModel.java:556)
at org.knime.core.node.Node.invokeNodeModelExecute(Node.java:1069)
at org.knime.core.node.Node.execute(Node.java:924)
at org.knime.core.node.workflow.NativeNodeContainer.performExecuteNode(NativeNodeContainer.java:418)
at org.knime.core.node.exec.LocalNodeExecutionJob.mainExecute(LocalNodeExecutionJob.java:98)
at org.knime.core.node.workflow.NodeExecutionJob.internalRun(NodeExecutionJob.java:182)
at org.knime.core.node.workflow.NodeExecutionJob.run(NodeExecutionJob.java:113)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at org.knime.core.util.ThreadPool$MyFuture.run(ThreadPool.java:123)
at org.knime.core.util.ThreadPool$Worker.run(ThreadPool.java:238)

It seems that in my case the alignment node requires hydrogen atoms to be present. Then it works. In other cases it also works without them. Not sure why.

Could you please attach a simple workflow that I could use for trying to reproduce your issues on my system? Thanks!

Kind regards,
Manuel