Dear all,I am willing to compute the rmsd of a docking pose against a reference. My code works for some results, but not for all...
The pseudo-algorithm is: a) read and clean the reference for the pdb file b) read each pose (in SD format, Accelrys) c) perform the substructure match and get the corresponding atoms d) compute the rmsd e) output the result.The code and input file are attached to the message (adjust line 10 for rdkit path if needed)
The output is: ./calc_rmsd_simple.py Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamine 0.601627 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamine 0.269822 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamine 0.434981 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamine 0.454281 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamine 0.450157 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamine 0.444344 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamine 0.561584 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamine 0.526337 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamine 0.566695 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamine 0.397786 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamineTypeI 0.000000 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamineTypeI 0.000000 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamineTypeI 0.000000 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamineTypeI 0.000000 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamineTypeI 0.000000 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamineTypeI 0.000000 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamineTypeI 0.000000 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamineTypeI 0.000000 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamineTypeI 0.401164 Beta-D-Galactose_3ZSJA_H.pdb jeu_test.sd carbLactosamineTypeI 0.391936For the first molecule the rmsd is correct, while for the second (same input file, 10 different output poses) nearly no values can be computed. Visually, the rmsd with 0.0 values are oriented in another in opposition to the others.
I assumed the GetSubstructMatch(es) would be independent of the atoms order, but it seems not. Am I using the wrong logic (or another routine should be used, or I did not understood properly)?
I have tried to sanitize the molecules, to add / remove hydrogens, to use various input formats (mol, mol2, sd, pdb), to reimport the molecules into rdkit to clean them (thus the resulting test cases above), without luck.
Thanks a lot in advance for comments and remarks, this is driving me crazy. Stéphane --Assistant Professor in BioInformatics, UFIP, UMR 6286 CNRS, Team Protein Design In Silico UFR Sciences et Techniques, 2, rue de la Houssinière, Bât. 25, 44322 Nantes cedex 03, France
Tél : +33 251 125 636 / Fax : +33 251 125 632 http://www.ufip.univ-nantes.fr/ - http://www.steletch.org
example.tgz
Description: application/compressed-tar
------------------------------------------------------------------------------
_______________________________________________ Rdkit-discuss mailing list Rdkit-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rdkit-discuss