Hi Greg,
Thanks for your quick response.
I look forward to more flexible version of the command.
For the second point, atoms 6 and 8 can be inverted by RDKit_2015_03_1.
RDKit_2015_03_1
---------------------------------
>>> mol=Chem.MolFromSmiles('C1[C@H]2[C@@H]3O[C@@H]3[C@@H]1[C@]13O[C@]21[C@@H]1C[C@H]3[C@@H]2O[C@@H]21')
>>> m=Chem.AddHs(mol)
>>> Chem.FindMolChiralCenters( copy(m), includeUnassigned=True )
[(1, 'S'), (2, 'S'), (4, 'R'), (5, 'R'), (6, 'S'), (8, 'S'), (9, 'R'),
(11, 'S'), (12, 'S'), (14, 'R')]
>>> AllChem.EmbedMolecule( m, randomSeed = 256, maxAttempts = 1, clearConfs =
>>> False )
0
>>> Chem.MolToSmiles(Chem.RemoveHs(m), isomericSmiles=True)
'C1[C@H]2[C@@H]3O[C@@H]3[C@@H]1[C@]13O[C@]21[C@@H]1C[C@H]3[C@@H]2O[C@@H]21'
---------------------------------
This conformation is different from that of
'C1[C@H]2[C@@H]3O[C@@H]3[C@@H]1[C@@]13O[C@@]21[C@@H]1C[C@H]3[C@@H]2O[C@@H]21'
in previous mail.
It is strange at first glance that such atoms on the axis of symmetry
have chirality.
But RDKit judges atoms 6 and 8 as achiral in the following two isomers
with lower symmetry.
C1[C@@H]2[C@@H]3O[C@@H]3[C@H]1C13OC21[C@@H]1C[C@H]3[C@H]2O[C@H]21
C1[C@@H]2[C@H]3O[C@H]3[C@H]1C13OC21[C@@H]1C[C@H]3[C@@H]2O[C@@H]21
Rigards,
Rintarou
On 2017/02/07 14:42, Greg Landrum wrote:
> Hi Rintarou,
>
> On Tue, Feb 7, 2017 at 6:23 AM, Suzuki, Rintarou <[email protected]>
> wrote:
>
>> Dear All,
>>
>> I'm generating conformation of a molecule:
>>
>> C1C2C3OC3C1C13OC21C1CC3C2OC21
>>
>>
>> This molecule has many chiral centers and 10 possible isomers.
>>
>> EmbedMolecule command of RDKit_2015_03_1 can generate every isomer but
>> RDKit_2016_09_3 fails in 9 of 10.
>>
>
> There are two things going on here.
>
> In the first case:
>
>
>> For example,
>>
>> RDKit_2015_03_1
>> ---------------------------------
>>>>> mol=Chem.MolFromSmiles('C1[C@H]2[C@@H]3O[C@@H]3[C@@H]1[C@@]13O[C@
>> @]21[C@@H]1C[C@H]3[C@@H]2O[C@@H]21')
>>>>> Chem.FindMolChiralCenters( copy(m), includeUnassigned=True )
>>
>> [(1, 'S'), (2, 'S'), (4, 'R'), (5, 'R'), (6, 'R'), (8, 'R'), (9, 'R'),
>> (11, 'S'), (12, 'S'), (14, 'R')]
>>
>>>>> m=Chem.AddHs(mol)
>>>>> AllChem.EmbedMolecule( m, randomSeed = 256, maxAttempts = 1,
>> clearConfs = False )
>>
>> 0
>> ---------------------------------
>>
>>
>> RDKit_2016_09_3
>> ---------------------------------
>>>>> mol=Chem.MolFromSmiles('C1[C@H]2[C@@H]3O[C@@H]3[C@@H]1[C@@]13O[C@
>> @]21[C@@H]1C[C@H]3[C@@H]2O[C@@H]21')
>>>>> m=Chem.AddHs(mol)
>>>>> Chem.FindMolChiralCenters( copy(m), includeUnassigned=True )
>>
>> [(1, 'S'), (2, 'S'), (4, 'R'), (5, 'R'), (6, 'R'), (8, 'R'), (9, 'R'),
>> (11, 'S'), (12, 'S'), (14, 'R')]
>>
>>>>> AllChem.EmbedMolecule( m, randomSeed = 256, maxAttempts = 100,
>> clearConfs = False )
>>
>> -1
>>
>
> I will need to check, but this is likely due to one of the checks added in
> the last release that was designed to prevent ugly structures in systems
> like this one. It looks like those checks are a bit too strict and need to
> be made more flexible (or, likely better, you should be able to turn them
> off) I'll add something for that. Thanks for reporting the problem.
>
> ---------------------------------
>>
>>
>> Two chiral centers in this molecule are stereo-dependent (6th and 8th
>> atoms).
>> Conformation of molecule without assignment for these atoms can be
>> generated, but the chiralities remain unassigned.
>>
>> RDKit_2016_09_3
>> ---------------------------------
>>>>> mol=Chem.MolFromSmiles('C1[C@H]2[C@@H]3O[C@@H]3[C@@H]1C13OC21[C@
>> @H]1C[C@H]3[C@@H]2O[C@@H]21')
>>>>> Chem.FindMolChiralCenters( copy(m), includeUnassigned=True )
>>
>> [(1, 'S'), (2, 'S'), (4, 'R'), (5, 'R'), (6, '?'), (8, '?'), (9, 'R'),
>> (11, 'S'), (12, 'S'), (14, 'R')]
>>
>>>>> m=Chem.AddHs(mol)
>>>>> AllChem.EmbedMolecule( m, randomSeed = 256, maxAttempts = 100,
>> clearConfs = False )
>>
>> 0
>>
>>>>> Chem.AssignAtomChiralTagsFromStructure(m)
>>>>> Chem.FindMolChiralCenters( copy(m), includeUnassigned=True )
>>
>> [(1, 'S'), (2, 'S'), (4, 'R'), (5, 'R'), (6, '?'), (8, '?'), (9, 'S'),
>> (11, 'R'), (12, 'S'), (14, 'R')]
>>
>>>>> opt = AllChem.UFFOptimizeMolecule( m, maxIters = 10000, confId=0)
>>>>> ff = AllChem.UFFGetMoleculeForceField( m, confId = 0 )
>>>>> ff.Minimize()
>>
>> 0
>>
>>>>> Chem.AssignAtomChiralTagsFromStructure(m)
>>>>> Chem.FindMolChiralCenters( copy(m), includeUnassigned=True )
>>
>> [(1, 'S'), (2, 'S'), (4, 'R'), (5, 'R'), (6, '?'), (8, '?'), (9, 'R'),
>> (11, 'S'), (12, 'S'), (14, 'R')]
>> ---------------------------------
>>
>> How can I assign chiralities of these atoms in RDKit_2016_09_3?
>>
>
> I believe that the current behavior is correct. Atoms 6 and 8 are not
> chiral due to the dependent stereochemistry. What would you expect to
> happen?
>
> -greg
>
--
----------------------------------------------------------------------
鈴木倫太郎 E-mail: [email protected]
Tel: 029-838-7900 / Fax: 029-838-7408
国立研究開発法人 農業・食品産業技術総合研究機構
高度解析センター 生体高分子解析チーム
〒305-8602 茨城県つくば市観音台2-1-2
4月より、所属、メールアドレスが変わりました。
旧所属
国立研究開発法人 農業生物資源研究所
農業生物先端ゲノム研究センター 生体分子研究ユニット
E-mail:[email protected]
----------------------------------------------------------------------
------------------------------------------------------------------------------
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
[email protected]
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss