Hello Greg

Yes it does. I am using it in c++. I will give it a try.

On Tue, Jul 28, 2009 at 3:05 PM, Greg Landrum <[email protected]>wrote:

> Dear Abhinav,
>
> Please direct RDKit questions to the rdkit-discuss list instead of me
> personally.
>
> On Tue, Jul 28, 2009 at 8:56 PM, Abhinav Chawade<[email protected]>
> wrote:
> >
> > I am using rdkit to generate SMILES database using SMIRKS. Is it possible
> to
> > use reactant side of SMIRKS as SMARTS for substructure matching? I tried
> to
> > create a vector of SMILES, and apply SMIRKS (as reaction SMARTS) to them.
> > Whenever there is a mismatch, rdkit throws an exception and stops
> > processing. Is there a way to skip the mismatch and apply reaction to
> only
> > the matching SMILES? I have a huge database of SMILES and SMIRKS. But if
> > there is one mismatch, it stops processing. Is there a way to automate
> > substructure matching and reaction processing? Like ChemDB's reaction
> > processor.
>
> The reaction matcher should not be generating an exception if it can't
> apply a reaction, it just returns an empty set of products:
>
> [3]>>> rxn =
> AllChem.ReactionFromSmarts('[C:1](=[O:2])[O:3]>>[C:1](=[O:2])[N:3]')
>
> [4]>>> ps = rxn.RunReactants((Chem.MolFromSmiles('CC(=O)OCCC'),))
>
> [5]>>> ps
> Out[5] ((<rdkit.Chem.rdchem.Mol object at 0xa4d617c>,),)
>
> [6]>>> Chem.MolToSmiles(ps[0][0])
> Out[6] 'CCCNC(=O)C'
>
> [7]>>> ps = rxn.RunReactants((Chem.MolFromSmiles('CC(=O)NCCC'),))
>
> [8]>>> ps
> Out[8] ()
>
> So you just need to test the return value from RunReactants to make
> sure it's not empty.
>
> does this answer the question?
> -greg
>

Reply via email to