Hi Martin,
Sorry, I forgot to 'Reply All' last night.  I think you need to do a bit
more work than just map the carboxylate groups.  Phenol maps onto itself
twice, going either way round the phenyl ring.  GetBestRMS does this for
you, and reports the lower RMS.  For benzoic acid, adding the symmetry for
the carboxylate groups, you will thus need 4 mapping lists.  So first you
need to do a substructure query for the probe against the reference, to
produce 1 or more mapping lists.  You then need to do a substructure match
for carboxylate against, say, the probe and for each of the original match
lists, produce an extra copy and change the mapping of the carboxylate
atoms.  If there is more than one 1 carboxylate, you'll need to do it for
each one, so for 1,4 benzene dioic acid you should end up with 8 mapping
lists.
Hope that helps
Dave


On Tue, Apr 17, 2018 at 8:09 PM, Martin Watson <
martin.wat...@c4xdiscovery.com> wrote:

> Thanks very much Dave,  I think that makes sense.
>
> I need to formulate a substructure match for carboxyl and use that to
> generate the atom lists.  I'll have a crack at that.
>
> *Kind Regards*
>
> Dr. Martin Watson
> VP Structural Analysis
> C4X Discovery Ltd
>
> martin.wat...@c4xdiscovery.com
> +44 (0)7753 434535
> +44 (0)161 235 5085
>
> *www.c4xdiscovery.com <http://www.c4xdiscovery.com>*
>
> On 17 April 2018 at 19:40, David Cosgrove <davidacosgrov...@gmail.com>
> wrote:
>
>> Hi Martin,
>> The documentation for the function, http://www.rdkit.org/Python_Do
>> cs/rdkit.Chem.rdMolAlign-module.html#GetBestRMS, says that you can pass
>> an optional list of lists of atom maps, which map the atoms in one molecule
>> to their corresponding ones in the other.  You could use that to give the
>> two ways of mapping the carboxylate oxygens of the probe onto the
>> reference.  It doesn't say so, but I expect you'll need the full list of
>> atom correspondences. For for 2 conformers of acetic acid, CC(=O)O,
>> numbered so the O atoms are 2 and 3, you'd want something like [[(0,0),
>> (1,1), (2,2), (3,3)], [(0,0), (1,1), (2,3), (3,2)]].  It will take a few
>> lines of code, that I don't have time to bash together for you this
>> evening, that will match one molecule/conformer onto the other, then
>> identify the carboxylate groups and generate the requisite combinations.
>> It doesn't look as though you'll get the combination that produced the best
>> RMS out, though if you passed the maps in one at a time you could discover
>> that explicitly.
>> Hope that helps,
>> Dave
>>
>> On Tue, Apr 17, 2018 at 4:46 PM, Martin Watson <
>> martin.wat...@c4xdiscovery.com> wrote:
>>
>>> Update, the explicit or not charge is not relevant. that just determines
>>> the behaviour of the AssignBondOrderstoTemplate.  The behaviour is that
>>> GetBestRMS does not consider a carboxylate as symmetric.  Can anyone
>>> suggest a workaround to treat as symmetric?
>>>
>>> *Kind Regards*
>>>
>>> Dr. Martin Watson
>>> VP Structural Analysis
>>> C4X Discovery Ltd
>>>
>>> martin.wat...@c4xdiscovery.com
>>> +44 (0)7753 434535
>>> +44 (0)161 235 5085
>>>
>>> *www.c4xdiscovery.com <http://www.c4xdiscovery.com>*
>>>
>>> On 17 April 2018 at 14:21, Martin Watson <martin.wat...@c4xdiscovery.com
>>> > wrote:
>>>
>>>> Hi
>>>>
>>>> I'm using GetBestRMS to score conformers in an sdf relative to a pdb
>>>> extracted sdf ligand using the snippet below. I get odd behaviour when the
>>>> molecule includes a carboxylic acid.  depending on whether the charge is
>>>> explicitly defined in the sdf or not I get a different RMS which seems to
>>>> be that the symmetry of the carboxyl is not considered by GetBestRMS is
>>>> that so?  And if not can anyone suggest a workaround.  (FWIW I have
>>>> examples which "work" when the charge is supplied and "fail" if not as well
>>>> as vice versa)
>>>>
>>>> import sys
>>>> from rdkit import Chem
>>>> from rdkit.Chem import AllChem, rdMolAlign
>>>>
>>>> # The ensemble sdf conformations with hydrogens
>>>> suppl = Chem.SDMolSupplier(sys.argv[2],sanitize=False)
>>>> count=0
>>>>
>>>> #compare them to ref pdb extract no hydrogens
>>>> for molh in suppl:
>>>>    count=count+1
>>>>    mol1 = Chem.MolFromMolFile(sys.argv[1])
>>>>    mol = Chem.RemoveHs(molh)
>>>>    mol = AllChem.AssignBondOrdersFromTemplate(mol1, mol)
>>>>    rms = AllChem.GetBestRMS(mol1, mol)
>>>>    print(rms)
>>>>
>>>>
>>>> *Thanks*
>>>>
>>>> Dr. Martin Watson
>>>>
>>>>
>>>
>>> Confidentiality Notice:
>>> This email and any attachments may be confidential and protected by
>>> legal privilege. If you are not the intended recipient, be aware that any
>>> disclosure, copying, distribution or use of the e-mail or any attachment is
>>> prohibited. If you have received this email in error, please notify us
>>> immediately by replying to the sender and then delete this copy and the
>>> reply from your system. Thank you for your cooperation.
>>>
>>> C4X Discovery Ltd Registered in England and Wales Registered Number:
>>> 06324250 Registered Office: Manchester One, 53 Portland Street,
>>> Manchester M1
>>> <https://maps.google.com/?q=53+Portland+Street,+Manchester+M1&entry=gmail&source=g>
>>> 3LD, UK.
>>>
>>> ------------------------------------------------------------
>>> ------------------
>>> 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
>>> Rdkit-discuss@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
>>>
>>>
>>
>>
>> --
>> David Cosgrove
>> Freelance computational chemistry and chemoinformatics developer
>> http://cozchemix.co.uk
>>
>>
>
> Confidentiality Notice:
> This email and any attachments may be confidential and protected by legal
> privilege. If you are not the intended recipient, be aware that any
> disclosure, copying, distribution or use of the e-mail or any attachment is
> prohibited. If you have received this email in error, please notify us
> immediately by replying to the sender and then delete this copy and the
> reply from your system. Thank you for your cooperation.
>
> C4X Discovery Ltd Registered in England and Wales Registered Number:
> 06324250 Registered Office: Manchester One, 53 Portland Street,
> Manchester M1
> <https://maps.google.com/?q=53+Portland+Street,+Manchester+M1&entry=gmail&source=g>
> 3LD, UK.
>



-- 
David Cosgrove
Freelance computational chemistry and chemoinformatics developer
http://cozchemix.co.uk
------------------------------------------------------------------------------
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
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to