<div class="gmail_quote">On Tue, Oct 5, 2010 at 4:02 PM, Axel Kohlmeyer <span dir="ltr"><<a href="mailto:akohlmey@cmm.chem.upenn.edu">akohlmey@cmm.chem.upenn.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
martin,<br>
<br>
some general remarks. i'll try to be short, if you want, we can discuss<br>
more off-list, as this is really not so much of a development list issue.<br>
<br>
i suspect you are trying to put the horse before the cart here.<br>
before trying to find out the technical details, you should think<br>
(and discuss with your colleagues) some fundamental issues.<br>
<br>
what you describe would work only reasonably well for a peptide<br>
in vacuum (or implicit solvent). are you sure this is a useful piece<br>
of information? usually peptides are studies immersed in a solvent<br>
and then suddenly you cannot just move things around, as you<br>
would have to move the solvent as well (to make room). and on<br>
top of that, the useful information is the "free energy" i.e. some average<br>
that includes information about the statistical relevance (entropy)<br>
of the conformation you are looking at. there is plenty of literature<br>
on a variety of methods to map out free energy landscapes.<br>
<br>
if this is not a concern, you should still consider your approach.<br>
as was mentioned, using some external scripting is straightforward<br>
and will help you focus on implementing your method and testing<br>
its correctness, and then i would first try it on a simplified "toy" code,<br>
before trying to integrate something into a code base as large as<br>
gromacs. you have to be sure about what you need for your method,<br>
so that the only problems of merging are technical issues of understanding<br>
gromacs. otherwise you will be constantly confused by what is the<br>
origin of failures: your method? your implementation? or your integration<br>
into gromacs? if you don't have any practical experience in running<br>
an MD code and being able to tell whether it works correctly or not,<br>
how would you expect to be able to modify it correctly? large packages<br>
have lots of subtle issues and classical force field calculations have<br>
some surprises of their own and thus need some practice for the users<br>
until they are confident in judging its outcome.<br></blockquote><div><br></div><div>I am doing preliminary work now to assess whether or not the approaches I mentioned are feasible. I very much appreciate the comments from all of you and I will certainly discuss them with my contacts.</div>
<div><br></div><div>Thanks a lot,</div><div>Martin.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
cheers,<br>
axel.<br>
<div><div></div><div class="h5"><br>
<br>
On Tue, Oct 5, 2010 at 7:20 AM, Martin Kamp Jensen<br>
<<a href="mailto:martin.kamp.jensen@gmail.com">martin.kamp.jensen@gmail.com</a>> wrote:<br>
> Hello,<br>
> I would like to manipulate the conformation of a peptide inside of GROMACS.<br>
> More specifically, I want to add a method on the same level as do_steep,<br>
> do_nm, etc. (in mdlib/minimize.c) that repeatedly looks up the energy value<br>
> and in between changes the conformation of a peptide by changing the<br>
> dihedral angles. To be honest, I am overwhelmed by the data structures and<br>
> where to begin. I have looked<br>
> at <a href="http://www.gromacs.org/Developer_Zone/Programming_Guide/Data_Structures" target="_blank">http://www.gromacs.org/Developer_Zone/Programming_Guide/Data_Structures</a><br>
> without any luck.<br>
> I am a computer science student that is about to do my master's thesis. That<br>
> plan is to, among other things, investigate the energy landscapes for<br>
> (small) peptides and create barrier trees. I will need to use the energy<br>
> function of GROMACS as a "black box", but of course I need to know how to<br>
> integrate with it. I have no knowledge of biochemistry :) (My contacts do,<br>
> of course...)<br>
> My goals are as follows.<br>
> 1) Find as many local minima as possible in the energy landscape of a<br>
> (small) peptide. This could probably be implemented in an external program<br>
> that calls GROMACS multiple times as the energy minimization features<br>
> promise to find a local mimima close to the starting conformation. Another<br>
> possibility would be to integrate this functionality in GROMACS and then<br>
> maybe write the local minima to a trajectory file and read them in later for<br>
> use in 2). (How to know that I found all the local minima/the search is<br>
> converged will be one of my challenges.)<br>
> 2) Find a way to "connect" pairs of local minima, i.e., what is the lowest<br>
> barrier connecting a pair of local minima. This is to be done using<br>
> heuristics to change one conformation to another (change the dihedral<br>
> angels) step by step. (Of course, the heuristics will be another one of my<br>
> challenges.) However, to do this, I will need to call the energy function<br>
> (evaluate_energy in mdlib/minimize.c) each time I change a conformation to<br>
> guide the heuristics. I am aware that changing the conformation after<br>
> GROMACS (mdrun) has parsed the binary run input file will probably remove<br>
> the possibility of using MPI because data has been distributed in some<br>
> specific way (maybe it is also a problem when using multiple threads on the<br>
> same machine). I will just have to accept that for now and then maybe in the<br>
> future look into the possibility of redistributing data after changing a<br>
> conformation. However, right now I do not even know how to change the<br>
> conformation/the dihedral angles...<br>
> So, in conclusion, I have some computer science challenges which will be my<br>
> focus, but I cannot get to them without some knowledge of GROMACS. I hope<br>
> someone will be able to give me some pointers.<br>
> Regards,<br>
> Martin.<br>
</div></div>> --<br>
<div class="im">> gmx-developers mailing list<br>
> <a href="mailto:gmx-developers@gromacs.org">gmx-developers@gromacs.org</a><br>
> <a href="http://lists.gromacs.org/mailman/listinfo/gmx-developers" target="_blank">http://lists.gromacs.org/mailman/listinfo/gmx-developers</a><br>
> Please don't post (un)subscribe requests to the list. Use the<br>
> www interface or send it to <a href="mailto:gmx-developers-request@gromacs.org">gmx-developers-request@gromacs.org</a>.<br>
><br>
<br>
<br>
<br>
</div><font color="#888888">--<br>
Dr. Axel Kohlmeyer <a href="mailto:akohlmey@gmail.com">akohlmey@gmail.com</a><br>
<a href="http://sites.google.com/site/akohlmey/" target="_blank">http://sites.google.com/site/akohlmey/</a><br>
<br>
Institute for Computational Molecular Science<br>
Temple University, Philadelphia PA, USA.<br>
</font><div><div></div><div class="h5">--<br>
gmx-developers mailing list<br>
<a href="mailto:gmx-developers@gromacs.org">gmx-developers@gromacs.org</a><br>
<a href="http://lists.gromacs.org/mailman/listinfo/gmx-developers" target="_blank">http://lists.gromacs.org/mailman/listinfo/gmx-developers</a><br>
Please don't post (un)subscribe requests to the list. Use the<br>
www interface or send it to <a href="mailto:gmx-developers-request@gromacs.org">gmx-developers-request@gromacs.org</a>.<br>
</div></div></blockquote></div><br>