Re: [Rdkit-devel] Charged atoms in SMARTS and SMILES

2014-05-13 Thread Christos Kannas
Hi Greg,

I want to compare reactant templates and product templates to reactant
templates.
I know its not robust and it will fail in some cases, but I have to find a
working solution at least for most of the cases.

Regards,

Christos

Christos Kannas

Researcher
Ph.D Student

Mob (UK): +44 (0) 7447700937
Mob (Cyprus): +357 99530608

[image: View Christos Kannas's profile on
LinkedIn]


On 12 May 2014 20:20, Greg Landrum  wrote:

> Hi Christos,
>
> On Mon, May 12, 2014 at 12:35 PM, Christos Kannas 
> wrote:
>
>>
>> I've noticed the following:
>> >>> m = Chem.MolFromSmarts("[O]=[O+]-[O-]")
>> >>> print Chem.MolToSmarts(m)
>> O=[O&+]-[O&-]
>> >>> print Chem.MolToSmiles(m)
>> O=OO
>>
>> In order to have a correct SMILES for it I do:
>> >>> smiles = Chem.MolToSmarts(m).replace("&". "")
>> >>> m1 = Chem.MolFromSmiles(smiles)
>> >>> print Chem.MolToSmiles(m1)
>> O=[O+]-[O-]
>>
>
> Just a general comment: there's really no reason to expect that you should
> be able to sensibly and accurately convert a molecule with query features
> (which is what you get from MolFromSmarts) into SMILES. Why are you trying
> to do this?
>
> The hack you propose above will work in many cases, but it's certainly not
> robust.
>
> -greg
>
>
--
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs___
Rdkit-devel mailing list
Rdkit-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-devel


Re: [Rdkit-devel] Charged atoms in SMARTS and SMILES

2014-05-12 Thread Greg Landrum
Hi Christos,

On Mon, May 12, 2014 at 12:35 PM, Christos Kannas wrote:

>
> I've noticed the following:
> >>> m = Chem.MolFromSmarts("[O]=[O+]-[O-]")
> >>> print Chem.MolToSmarts(m)
> O=[O&+]-[O&-]
> >>> print Chem.MolToSmiles(m)
> O=OO
>
> In order to have a correct SMILES for it I do:
> >>> smiles = Chem.MolToSmarts(m).replace("&". "")
> >>> m1 = Chem.MolFromSmiles(smiles)
> >>> print Chem.MolToSmiles(m1)
> O=[O+]-[O-]
>

Just a general comment: there's really no reason to expect that you should
be able to sensibly and accurately convert a molecule with query features
(which is what you get from MolFromSmarts) into SMILES. Why are you trying
to do this?

The hack you propose above will work in many cases, but it's certainly not
robust.

-greg
--
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs___
Rdkit-devel mailing list
Rdkit-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-devel