Hi Anikó,

Both functions do an alignment. The big difference here is coming because
GetBestRMS() looks at all 2D-identical alignments of the molecules to each
other while GetConformerRMS() only does the alignment once: using the atom
numbers.

Practically speaking what does that mean for your molecule?

Here's a 2D sketch without the Hs:
[image: Inline image 1]

By 2D symmetry atoms 8 and 9 are equivalent as are atoms 4 and 5.

So there are four possible 2D isomorphisms between those molecules :
8->8, 9->9, 4->4, 5->5  (all others the same)
8->9, 9->8, 4->4, 5->5  (all others the same)
8->8, 9->9, 4->5, 5->4  (all others the same)
8->9, 9->8, 4->5, 5->4  (all others the same)

GetBestRMS() does alignments for all of these and takes the one that
provides the lowest RMS value.
GetConformerRMS() only does the first alignment and uses that RMS.

In general you want to always use GetBestRMS() for symmetric molecules.

Does that help?
-greg
p.s. Adding the Hs leads to additional mappings which just makes the
overall problem worse.




On Fri, Sep 8, 2017 at 9:26 AM, Udvarhelyi, Aniko <
aniko.udvarhe...@novartis.com> wrote:

> Dear All,
>
>
>
> I would like to compute RMS values between conformers of the same molecule
> that are not aligned. Unfortunately, I can´t get along very well with the
> GetConformerRMS() function, it gives far too high RMS values even for
> conformers that are clearly (near-)identical as judged by visual inspection
> after alignment. I attach one example of 2 conformers of a molecule, that
> are near-identical.
>
> GetConformerRMS() returns an RMS value of 1.32 (with Hydrogens) and 0.70
> (disregarding Hydrogens).
>
> GetBestRMS() returns an RMS value of 0.03 (with Hydrogens) and 0.02
> (disregarding Hydrogens).
>
>
>
> Clearly, the GetBestRMS() result is the one I´d expect (I am interested
> in the all-atom RMSDs with Hydrogens). I guess GetConformerRMS() cannot
> align the two conformers properly hence the high RMS value. My question is
> why not? The atom ordering and all bonds are exactly the same in both
> conformers. Why do I need the GetBestRMS() alignment of all possible
> permutations of matching atom orders in both conformers to get the
> alignment correct? I would like to avoid using GetBestRMS()as it is far
> too slow for my purposes (processing many molecules with many conformers).
>
>
>
> Many thanks for any hints,
>
> Anikó
>
> ------------------------------------------------------------
> ------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Rdkit-discuss mailing list
> Rdkit-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
>
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to