2010/8/10 정종영 <[email protected]>:
> Dear Greg,
>
>>>
>>> Would you check and compare coordinates of Conformer class and sdf file?
>>
>> The look the same to me:
>>
>> [36]>>> suppl = Chem.SDMolSupplier('test.sdf',True,False)
>>
>> [37]>>> m = suppl.next()
>>
>> [38]>>> conf = m.GetConformer()
>>
>> [39]>>> for i in range(m.GetNumAtoms()): print
>> list(conf.GetAtomPosition(i))
>>  ....:
>> [4.8410000000000002, 27.576000000000001, 5.3099999999999996]
>> [5.7329999999999997, 26.393999999999998, 5.165]
>> [7.1740000000000004, 26.771999999999998, 5.5039999999999996]
>> [7.6239999999999997, 27.887, 5.218]
>> [5.6379999999999999, 25.818000000000001, 3.75]
>> [5.827, 26.846, 2.6520000000000001]
>> [5.625, 26.274999999999999, 1.262]
>> [4.6630000000000003, 25.497, 1.0649999999999999]
>> [6.4249999999999998, 26.620000000000001, 0.36299999999999999]
>>  ....
>>
>> When you use this file, what do you see?
>>
>> -greg
>>
>>
>
> I executed below source code..
>
> ...
>
>           SDMolSupplier ligandMolSup(fname, true, false);
>        ROMol *ligand = ligandMolSup.next();
>
>            ///////////////////////////////////////////////
>            ///  This is extended modules to calculate in-house molecular
> properties
>            ///////////////////////////////////////////////
>            assignCSBAtomTypes(ligand);
>        MolecularPropertiesCalculator molPropCalcator(ligand);
>        molPropCalcator.calculateMPEOE();
>        molPropCalcator.calculateCDEAP();
> ////////////////////////////////////////////////////
>
>        int numOfAtom = ligand->getNumAtoms();
>        Conformer conf = ligand->getConformer();
>        Point3D atomPos;
>        for (int i=0; i<numOfAtom; i++){
>                atomPos = conf.getAtomPos(i);
>                std::cout << atomPos << std::endl;
>        }
>
>
> <output>
> 1.2333 0.554 0.7792
> -0.6952 -2.7148 -0.7502
> 0.7958 -2.1843 0.8685
> 1.7813 0.8105 -1.4821
> -0.0857 0.6088 0.4403
> -0.7927 -0.5515 0.1244
> -0.7288 1.8464 0.4133
> -2.1426 -0.4741 -0.2184
> -2.0787 1.9238 0.0706
> ...
>
>
> I guess that center of coordinate is translated to origin "(0.0, 0.0, 0.0)"
> in Conformer class.

There is code in the RDKit to do this (specifically in
GraphMol/MolTransforms/MolTransforms.h), but that code is not used by
the SDMolSupplier.

Could it be that your MolecularPropertiesCalculator modifies the conformation?

Best,
-greg

------------------------------------------------------------------------------
This SF.net email is sponsored by 

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
Rdkit-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to