On 2/6/07, <b class="gmail_sendername">Mark Abraham</b> &lt;<a href="mailto:Mark.Abraham@anu.edu.au">Mark.Abraham@anu.edu.au</a>&gt; wrote:<div><span class="gmail_quote"></span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Ben FrantzDale wrote:<br>&gt; I am interested in using GROMACS as a library. I get the impression from<br>&gt; its use in Folding@Home that this is possible, but I don&#39;t see any<br>&gt; documentation on the subject. Is there a C/C++ API for GROMACS so that I
<br>&gt; could initialize GROMACS with an MPI communicator then send it jobs to<br>&gt; process? If so, did I just not find the documentation?<br><br>Well, from an engineering point of view, of course libgmx can be used<br>
&quot;as a library&quot;. You just have to work out how to call it intelligently.<br>The only available documentation for this is reading the source code to<br>see what the data types are and understanding the algorithms as well.
<br>You would have to write a bunch of stuff to be able to &quot;initialize<br>GROMACS with an MPI communicator then send it jobs&quot; and you&#39;d have to<br>ask yourself why you&#39;d bother doing that when you could just start a new
<br>mdrun process each time you have something new to do...<br></blockquote></div><br>Thanks for the response. Any suggestions as to which source file(s) to start with to do this?<br><br>In response to the last question, I am doing multiscale modeling, linking atomistic to continuum. In that context, the cost of initializing a parallel run, especially using files, can become prohibitive. For example, I want to ask for the forces on all atoms, then programatically move the atoms a little, then ask for the forces again.
<br><br>Thanks.<br><br>—Ben<br>