Fwd: [gmx-developers] free energy calculations with restraints
David Mobley
dmobley at gmail.com
Mon Aug 19 20:31:36 CEST 2013
Hi, Berk,
I agree that this solution would be the "proper" one and would be nice.
However, it's been a long time coming (this is an issue I've been raising
for approximately 5 years, and there's no progress; normally no one even
answers). Currently, for the restraints I need to use, I *have* to merge
the ligand into my protein topology, inconvenient or not. Doing this also
means there are some features I simply can't use (couple-moltype for
example).
It strikes me that Floris's solution is a good interim one, in that it at
least solves most of the typical use cases we're facing, and has the
advantage of being *already implemented*.
Is there any way we could get this into the main GROMACS, at least until
someone gets time to implementing the "proper" solution (which could be
years from now)?
Thanks!
David
On Mon, Aug 19, 2013 at 1:10 AM, Berk Hess <hess at kth.se> wrote:
> Hi,
>
> I fully understood this point, maybe my reply wasn't well structured.
> I was trying to argue that the proper solution would be to implement
> inter-molecular restraints, instead of introducing an option which could me
> misused. Also merging a ligand topology into your protein topology is very
> inconvenient. This problem with the proper solution is, of course, that
> someone will need to implement inter-molecular restraints/potentials.
>
> One issue used to be that we corrected molecules for PBC before
> calculating bonded interactions. But in 4.6 this is usually not faster and
> not used any more. That makes it easier to treat intra- and inter-molecular
> interactions the same way at the mdrun level.
>
> Cheers,
>
> Berk
>
>
> On 08/19/2013 09:55 AM, Floris Buelens wrote:
>
>> Hi Berk,
>>
>> I think some clarification is needed. What we're talking about is only
>> relevant in the context of non-bonded interactions, typically between a
>> small molecule and a protein. To access the binding affinity of a ligand
>> through alchemical methods, it's useful to switch off only the interactions
>> of the ligand with its environment while maintaining intra-ligand
>> potentials - this is what's provided by the 'couple-moltype' code path.
>>
>> The limitation that we're trying to circumvent comes from the fact that
>> as you scale down interactions with the environment, the ligand is no
>> longer held in the binding site. To counteract this, it's necessary to
>> perturb in restraining potentials as the intramolecular nonbonded
>> interactions are perturbed out. The most practical method makes use of a
>> single distance restraint, two angle and three dihedral restraints, whose
>> effect can later be accounted for analytically.
>>
>> The current code only allows decoupling of a whole logical 'molecule' as
>> specified in the topology file. This precludes the use of regular (fully
>> perturbation-aware) bonded interactions. As far as I'm aware, the pull code
>> doesn't provide what's required. Inter-molecular bonded interactions would
>> be a great general solution but presumably won't show up any time soon.
>>
>> The workaround here is instead to represent two physical molecules (e.g.
>> protein and ligand) as a single logical molecule (in the topology file), so
>> regular bonded potentials can be applied. Current Gromacs doesn't allow the
>> decoupling ('couple-moltype') code to be used in this scenario. My
>> modification allows you to target the ligand by its residue name and get
>> this functionality back.
>>
>> Decoupling a single residue of a multi-residue chain is indeed probably
>> not correct in this framework (I did call it 'weird' in my last message :-)
>> ). An extra check would block users from trying this.
>>
>> I hope that clarifies the problem we're trying to solve. I agree this
>> will be useful a relatively small number of users, but on the other hand
>> it's a very unobtrusive, self-contained modification which can maintain
>> full backwards compatibility.
>>
>> thanks,
>>
>> Floris
>>
>>
>> ----- Original Message -----
>> From: Berk Hess <hess at kth.se>
>> To: Floris Buelens <floris_buelens at yahoo.com>; Discussion list for
>> GROMACS development <gmx-developers at gromacs.org>
>> Cc:
>> Sent: Monday, 19 August 2013, 9:03
>> Subject: Re: [gmx-developers] free energy calculations with restraints
>>
>> Hi,
>>
>> There is the rotational pull code, but that might not provide the exact
>> functionality you want.
>> Already for some time we have been discussing inter-molecular
>> interactions, by specifying molecule type, molecule index and atom
>> index, but there are no concrete plans for implementing this yet.
>>
>> An option for decoupling part of a molecule indeed sound useful. But in
>> practice you always need to replace that part by something else, at
>> least a hydrogen, and modify some potentials of connecting atoms, so I
>> don't know how generally useful such an option is.
>>
>> Cheers,
>>
>> Berk
>>
>> On 08/19/2013 07:56 AM, Floris Buelens wrote:
>>
>>> I suppose that would make sense. The changes are fairly minor (more or
>>> less just the function convert_moltype_couple and the four functions it
>>> calls) and mainly consist of a bit of extra juggling with nonbonded
>>> exclusions during preprocessing. The current functionality (decouple a
>>> whole molecule) could be handled as a special case of the new code. A check
>>> for bonds to the rest of the structure could stop people from trying weird
>>> stuff like decoupling residues from a chain.
>>>
>>>
>>>
>>>
>>> ______________________________**__
>>> From: David Mobley <dmobley at gmail.com>
>>> To: Floris Buelens <floris_buelens at yahoo.com>
>>> Cc: Discussion list for GROMACS development <gmx-developers at gromacs.org>
>>> Sent: Friday, 16 August 2013, 18:30
>>> Subject: Re: [gmx-developers] free energy calculations with restraints
>>>
>>>
>>>
>>> This does sound useful, though it would be more useful if this could be
>>> implemented into the main GROMACS rather than a separate code (since
>>> otherwise it will go away as GROMACS is further developed).
>>>
>>> Would this be a possibility going forward, devels?
>>>
>>> Thanks!
>>>
>>>
>>>
>>>
>>> On Fri, Aug 16, 2013 at 3:07 AM, Floris Buelens <
>>> floris_buelens at yahoo.com> wrote:
>>>
>>> Hi David,
>>>
>>>> I have the same requirement as you, but I've gone about it slightly
>>>> differently. I've hacked the couple-moltype code path to allow decoupling
>>>> of a specific residue (identified by name) instead of a molecule. This
>>>> allows the residue of interest to be part of another molecule block so you
>>>> can set up distance, angle and dihedral restraints using regular bonded
>>>> interactions with full perturbation support.
>>>>
>>>> If this is useful to you or to anyone else, let me know and I'll be
>>>> happy to share.
>>>>
>>>> best,
>>>>
>>>> Floris
>>>>
>>>> ______________________________**__
>>>> From: David Mobley <dmobley at gmail.com>
>>>>
>>>> To: Discussion list for GROMACS development <gmx-developers at gromacs.org
>>>> >
>>>> Sent: Friday, 14 June 2013, 21:47
>>>> Subject: [gmx-developers] free energy calculations with restraints
>>>>
>>>>
>>>>
>>>>
>>>> Hi, devs,
>>>>
>>>>
>>>> I'm writing with an issue relating to the interplay of new free energy
>>>> features with restraints.
>>>>
>>>> I'm very much appreciating some of the new free energy features in
>>>> gromacs, such as the 'couple-moltype' option which provides a way to set up
>>>> decoupling or annihilation of a specific molecule via free energy
>>>> calculations without having to edit the topology file directly. This is
>>>> especially great when it comes to decoupling -- charge decoupling was not
>>>> previously possible via topology file editing, and vdW decoupling took
>>>> substantial manipulation of the topology file.
>>>>
>>>> However, for binding free energies, my work employs orientational
>>>> restraints between the protein and ligand. I need to be able to impose both
>>>> dihedral and angle restraints on angles between the protein and ligand.
>>>> Currently, I do this using angle-restraints and dihedral-restraints. This
>>>> requires that both the protein and ligand be within the same logical
>>>> 'molecule', which (unfortunately) means that I can't make use of the new
>>>> free energy features above, since couple-moltype has to apply to a whole
>>>> molecule, not just part of a molecule.
>>>>
>>>> So, my I see two possible solutions to the problem, and hence have
>>>> these questions:
>>>> 1) Can dihedral and angle restraints be applied via the pull code? If
>>>> not, are there any plans to add that?
>>>> 2) Alternatively, what about modifying the restraints code so it uses
>>>> (or at least optionally allows) absolute atom numbering, rather than
>>>> numbering within a specific molecule, thus allowing restraints
>>>> (angle-restraints and dihedral-restraints) to be applied between
>>>> 'molecules'?
>>>>
>>>> Thanks!
>>>> David
>>>>
>>>>
>>>>
>>>> --
>>>> David Mobley
>>>> dmobley at gmail.com
>>>> 949-385-2436
>>>>
>>>>
>>>> --
>>>> gmx-developers mailing list
>>>> gmx-developers at gromacs.org
>>>> http://lists.gromacs.org/**mailman/listinfo/gmx-**developers<http://lists.gromacs.org/mailman/listinfo/gmx-developers>
>>>> Please don't post (un)subscribe requests to the list. Use the
>>>> www interface or send it to gmx-developers-request@**gromacs.org<gmx-developers-request at gromacs.org>
>>>> .
>>>>
>>>>
> --
> gmx-developers mailing list
> gmx-developers at gromacs.org
> http://lists.gromacs.org/**mailman/listinfo/gmx-**developers<http://lists.gromacs.org/mailman/listinfo/gmx-developers>
> Please don't post (un)subscribe requests to the list. Use the www
> interface or send it to gmx-developers-request@**gromacs.org<gmx-developers-request at gromacs.org>
> .
>
--
David Mobley
Assistant Professor
Department of Pharmaceutical Sciences
Department of Chemistry
3134B Natural Sciences I
University of California, Irvine
Irvine, CA 92697
dmobley at uci.edu
work (949) 824-6383
cell (949) 385-2436
--
David Mobley
dmobley at gmail.com
949-385-2436
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-developers/attachments/20130819/d1232845/attachment.html>
More information about the gromacs.org_gmx-developers
mailing list