Hi Jorgen, 

Which version of RDKit are you using? The ETKDG conformer generator (which will 
keep sp2 centers flat) has become only recently the default. If you are using 
an older RDKit version, the following code should give you a flat aromatic 
system for the SMILES you provided in your example.

m = 
Chem.MolFromSmiles('C1=NC(=C2C(=N1)N(C=N2)C3C(C(C(O3)COP(=O)(O)OP(=O)(O)OP(=O)(O)O)O)O)N’)
mH = AllChem.AddHs(m)
AllChem.EmbedMolecule(mH, params=AllChem.ETKDGv2())

Best regards,
Sereina


> On 8 Oct 2019, at 18:18, Paolo Tosco <paolo.tosco.m...@gmail.com> wrote:
> 
> Hi Jorgen,
> 
> use the MMFF94s variant of the forcefield if you wish to force trigonal 
> nitrogens to be planar:
> 
> AllChem.MMFFOptimizeMolecule(m2, mmffVariant="MMFF94s")
> 
> More information here:
> https://doi.org/10.1002/(SICI)1096-987X(199905)20:7%3C720::AID-JCC7%3E3.0.CO;2-X
>  
> <https://doi.org/10.1002/(SICI)1096-987X(199905)20:7%3C720::AID-JCC7%3E3.0.CO;2-X>
> Cheers,
> p.
> 
> On 10/08/19 15:27, Jorgen Simonsen wrote:
>> Cheers Paolo, 
>> 
>> It looks like that it keeps sp3 as the optimal geometry and not sp2. 
>> The optimization did converge :
>> 
>> AllChem.MMFFOptimizeMolecule(m2,)
>> 
>> #returned 1
>> 
>> I think it is getting the types wrong or I have to specify the types? 
>> 
>> 
>> 
>> On Tue, Oct 8, 2019 at 10:10 AM Paolo Tosco <paolo.tosco.m...@gmail.com 
>> <mailto:paolo.tosco.m...@gmail.com>> wrote:
>> Hi Jorgen,
>> 
>> optimizing your molecule geometry with UFF or MMFF should fix the problem:
>> 
>> AllChem.UFFOptimizeMolecule(m2)
>> 
>> or
>> 
>> AllChem.MMFFFFOptimizeMolecule(m2)
>> 
>> see rdkit.Chem.rdForceFieldHelpers.UFFOptimizeMolecule 
>> <https://www.rdkit.org/docs/source/rdkit.Chem.rdForceFieldHelpers.html?highlight=optimize#rdkit.Chem.rdForceFieldHelpers.UFFOptimizeMolecule>
>>  or rdkit.Chem.rdForceFieldHelpers.MMFFOptimizeMolecule 
>> <https://www.rdkit.org/docs/source/rdkit.Chem.rdForceFieldHelpers.html?highlight=optimize#rdkit.Chem.rdForceFieldHelpers.MMFFOptimizeMolecule>.
>> 
>> Cheers,
>> p.
>> 
>> On 10/08/19 14:41, Jorgen Simonsen wrote:
>>> Hi all, 
>>> 
>>> I am trying to built 3D structures from SMILES which for most of the 
>>> molecules works fine - I get the SMILES from pubchem ('canonical_smiles' 
>>> and 'isomeric_smiles') but some of the molecules they hydrogens are not 
>>> added correctly and are out of plane - e.g. amide group in ATP ( see below 
>>> for an example or arginine in a peptide). 
>>> 
>>> I use the following code to generate the 3D structure :
>>> 
>>> from rdkit import Chem
>>> from rdkit.Chem import AllChem
>>> m1 = 
>>> Chem.MolFromSmiles('C1=NC(=C2C(=N1)N(C=N2)C3C(C(C(O3)COP(=O)(O)OP(=O)(O)OP(=O)(O)O)O)O)N')
>>> 
>>> m2 = Chem.AddHs(m1)
>>> AllChem.EmbedMolecule(m2)
>>> 
>>> w = Chem.SDWriter('foo.sdf')
>>> w.write(m2)
>>> 
>>> # or to mol file
>>> 
>>> print(Chem.MolToMolBlock(m2),file=open('foo.mol','w+'))
>>> 
>>> How to insure that the atomtype are correct ? 
>>> 
>>> Thanks in advance
>>> 
>>> Best 
>>> Jorgen
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> _______________________________________________
>>> Rdkit-discuss mailing list
>>> Rdkit-discuss@lists.sourceforge.net 
>>> <mailto:Rdkit-discuss@lists.sourceforge.net>
>>> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss 
>>> <https://lists.sourceforge.net/lists/listinfo/rdkit-discuss>
>> 
> 
> _______________________________________________
> Rdkit-discuss mailing list
> Rdkit-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

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

Reply via email to