On Sat, Apr 5, 2014 at 8:44 PM, Michal Krompiec
<michal.kromp...@gmail.com>wrote:

> On 5 April 2014 19:11, Paul Emsley <pems...@mrc-lmb.cam.ac.uk> wrote:
> > On 05/04/14 19:04, Michal Krompiec wrote:
> >
> >
> >> For example, it does not work well
> >> for long conjugated oligomers - sometimes it produces molecular knots
> >> instead of straight strands, and is quite slow for large systems.
> >
> > Can you expand on that? What sort of long conjugated oligomers were you
> > looking at?
>
> Some substituted oligoarenes with at least 8 rings in the chain, not
> particularly fancy (I think the problem is related more to the length
> of the molecule than to the nature of the repeat units). I tried
> various options in the EmbedMolecule function, but without success.
> This error occured in less than 10% tested structures. If anyone is
> interested in correcting this, I think I can produce a
> non-confidential input example...
>
>
I would certainly be interested to see this. I'm not sure what can be done,
but it's interesting to have the examples.

I played around a bit with a very simple example and was able to get
reasonable rod-like conformers:

In [43]: m =
Chem.MolFromSmiles('c12ccccc1.'+'c12ccc3cc1.c13ccc2cc1.'*6+'c12ccccc1')

In [44]: mh= Chem.AddHs(m)

In [45]: AllChem.EmbedMolecule(mh)
Out[45]: 0

In [46]: AllChem.UFFOptimizeMolecule(mh,maxIters=1000)
Out[46]: 0

Note that the return value of both EmbedMolecule and UFFOptimizeMolecule is
important: if EmbedMolecule returns -1 it means the embedding failed (more
on this below) and if UFFOptimizeMolecule returns anything other than 0 it
means that the optimization did not converge and that more iterations are
needed (you can just call it again).

In the simple tests I just did, UFF did occasionally produce geometries
that were not rod like. MMFF was always able to give a properly extended
geometry.

If EmbedMolecule fails, you can always try it again (there's a random
process involved, so running it again gives different results) or you can
try setting the useRandomCoords argument to true. This uses a different
approach to generate the coordinates and often works better for large
molecules. There were a couple of threads on this topic back in 2009;
here's one of the messages to help find the rest:
http://www.mail-archive.com/rdkit-discuss%40lists.sourceforge.net/msg00481.html

The general problem with this kind of molecule and the distance-geometry
based approach is that the code doesn't have enough information to "know"
how far apart atoms in a big molecule should be. This means that the
forcefield (UFF or MMFF) really has a lot of work to do in order to clean
the geometries up. In playing around with some of these simple systems, it
seems like MMFF is able to do this more reliably than UFF.



> > What was the nature of the input from which you were making
> > rdkit molecules?
>
> SMILES. The same input worked 100% fine with CORINA (which was, btw,
> approx. 5-20x faster on the same computer)


This kind of thing: generate a single realistic conformation of a molecule,
is what Corina is for; it's a nice piece of software and I'm really not
surprised that, particularly for these large molecules, that it's
significantly faster than the RDKit.


> and KNIME.
>
>
Which conformation generator in knime?

-greg
------------------------------------------------------------------------------
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to