[gmx-developers] Conformation representation and energy function

Axel Kohlmeyer akohlmey at cmm.chem.upenn.edu
Tue Oct 5 16:02:30 CEST 2010


some general remarks. i'll try to be short, if you want, we can discuss
more off-list, as this is really not so much of a development list issue.

i suspect you are trying to put the horse before the cart here.
before trying to find out the technical details, you should think
(and discuss with your colleagues) some fundamental issues.

what you describe would work only reasonably well for a peptide
in vacuum (or implicit solvent). are you sure this is a useful piece
of information? usually peptides are studies immersed in a solvent
and then suddenly you cannot just move things around, as you
would have to move the solvent as well (to make room). and on
top of that, the useful information is the "free energy" i.e. some average
that includes information about the statistical relevance (entropy)
of the conformation you are looking at. there is plenty of literature
on a variety of methods to map out free energy landscapes.

if this is not a concern, you should still consider your approach.
as was mentioned, using some external scripting is straightforward
and will help you focus on implementing your method and testing
its correctness, and then i would first try it on a simplified "toy" code,
before trying to integrate something into a code base as large as
gromacs. you have to be sure about what you need for your method,
so that the only problems of merging are technical issues of understanding
gromacs. otherwise you will be constantly confused by what is the
origin of failures: your method? your implementation? or your integration
into gromacs? if you don't have any practical experience in running
an MD code and being able to tell whether it works correctly or not,
how would you expect to be able to modify it correctly? large packages
have lots of subtle issues and classical force field calculations have
some surprises of their own and thus need some practice for the users
until they are confident in judging its outcome.


On Tue, Oct 5, 2010 at 7:20 AM, Martin Kamp Jensen
<martin.kamp.jensen at gmail.com> wrote:
> Hello,
> I would like to manipulate the conformation of a peptide inside of GROMACS.
> More specifically, I want to add a method on the same level as do_steep,
> do_nm, etc. (in mdlib/minimize.c) that repeatedly looks up the energy value
> and in between changes the conformation of a peptide by changing the
> dihedral angles. To be honest, I am overwhelmed by the data structures and
> where to begin. I have looked
> at http://www.gromacs.org/Developer_Zone/Programming_Guide/Data_Structures
> without any luck.
> I am a computer science student that is about to do my master's thesis. That
> plan is to, among other things, investigate the energy landscapes for
> (small) peptides and create barrier trees. I will need to use the energy
> function of GROMACS as a "black box", but of course I need to know how to
> integrate with it. I have no knowledge of biochemistry :) (My contacts do,
> of course...)
> My goals are as follows.
> 1) Find as many local minima as possible in the energy landscape of a
> (small) peptide. This could probably be implemented in an external program
> that calls GROMACS multiple times as the energy minimization features
> promise to find a local mimima close to the starting conformation. Another
> possibility would be to integrate this functionality in GROMACS and then
> maybe write the local minima to a trajectory file and read them in later for
> use in 2). (How to know that I found all the local minima/the search is
> converged will be one of my challenges.)
> 2) Find a way to "connect" pairs of local minima, i.e., what is the lowest
> barrier connecting a pair of local minima. This is to be done using
> heuristics to change one conformation to another (change the dihedral
> angels) step by step. (Of course, the heuristics will be another one of my
> challenges.) However, to do this, I will need to call the energy function
> (evaluate_energy in mdlib/minimize.c) each time I change a conformation to
> guide the heuristics. I am aware that changing the conformation after
> GROMACS (mdrun) has parsed the binary run input file will probably remove
> the possibility of using MPI because data has been distributed in some
> specific way (maybe it is also a problem when using multiple threads on the
> same machine). I will just have to accept that for now and then maybe in the
> future look into the possibility of redistributing data after changing a
> conformation. However, right now I do not even know how to change the
> conformation/the dihedral angles...
> So, in conclusion, I have some computer science challenges which will be my
> focus, but I cannot get to them without some knowledge of GROMACS. I hope
> someone will be able to give me some pointers.
> Regards,
> Martin.
> --
> gmx-developers mailing list
> gmx-developers at gromacs.org
> 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 at gromacs.org.

Dr. Axel Kohlmeyer    akohlmey at gmail.com

Institute for Computational Molecular Science
Temple University, Philadelphia PA, USA.

More information about the gromacs.org_gmx-developers mailing list