Re: [Rdkit-discuss] How to get substructure matches with different atoms?
Open-Source Cheminformatics and Machine Learning
Brought to you by:
glandrum
|
From: Paolo T. <pao...@gm...> - 2019-07-25 17:07:23
|
Dear Masgils,
you may try something along these lines, i.e. make atoms and/or bonds
generic on one of the molecules withrdmolops.AdjustQueryProperties() in
order to get subtructures to match, and then use rdMolAlign.GetBestRMS():
piperidine = Chem.AddHs(Chem.MolFromSmiles("C1CC(C)CCN1"))
AllChem.EmbedMolecule(piperidine)
AllChem.MMFFOptimizeMolecule(piperidine)
piperidine_noh = Chem.RemoveHs(piperidine)
piperazine = Chem.AddHs(Chem.MolFromSmiles("C1CN(C)CCN1"))
AllChem.EmbedMolecule(piperazine)
AllChem.MMFFOptimizeMolecule(piperazine)
piperazine_noh = Chem.RemoveHs(piperazine)
piperidine_noh
piperazine_noh
piperidine_noh.GetSubstructMatches(piperazine_noh)
()
params = AllChem.AdjustQueryParameters()
params.makeAtomsGeneric = True
params.makeBondsGeneric = True
piperazine_noh_generic = AllChem.AdjustQueryProperties(
piperazine_noh, params)
piperazine_noh_generic
piperidine_noh.GetSubstructMatches(piperazine_noh_generic)
((0, 1, 2, 3, 4, 5, 6),)
AllChem.GetBestRMS(piperazine_noh_generic, piperidine_noh)
0.39432427325884206
Hope this helps, cheers
p.
On 07/25/19 16:53, Masgils wrote:
> Hi, all
>
> Is it possible use GetSubstructMatches() to match a substructure with one or two atom different from ref_mol? (eg. a Piperidine ring and a Piperazing ring)
>
> And how to get the RMSD between corresponding atoms of two substructures?
>
>
>
>
>
> _______________________________________________
> Rdkit-discuss mailing list
> Rdk...@li...
> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
|