<div dir="ltr">Hi,<div><br></div><div>I think the python API is one of the most important things we&#39;ll introduce in a long time, but for that reason we definitely shouldn&#39;t push anything in last-minute. </div><div><br></div><div>However, within the next ~2 months I hope we can see a vivid discussion with use cases and specifications in Redmine, and end up with a compromise that satisfies most of us (nobody will get all their wishes). From my point-of-view I feel that it&#39;s important that we achieve long-term stability so the existing API in principle never changes (although it will expand), and that it &quot;feels&quot; like a first-class python interface suitable for large-scale &amp; high-throughput scripting (rather than wrappers for C/C++ code).</div><div><br></div><div>So, I&#39;ll cast a strong vote that Python should wait for the 2018 release - because it&#39;s too important to rush and get wrong :-)</div><div><br></div><div>Cheers,</div><div><br></div><div>Erik</div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Mar 9, 2017 at 8:52 PM, Alexey Shvetsov <span dir="ltr">&lt;<a href="mailto:alexxy@omrb.pnpi.spb.ru" target="_blank">alexxy@omrb.pnpi.spb.ru</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi!<br>
<br>
Mark Abraham писал 09-03-2017 19:03:<span class=""><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi,<br>
<br>
On Thu, Mar 9, 2017 at 3:49 PM Alexey Shvetsov<br>
&lt;<a href="mailto:alexxy@omrb.pnpi.spb.ru" target="_blank">alexxy@omrb.pnpi.spb.ru</a>&gt; wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi!<br>
<br>
I&#39;d like to add python api for gromacs as a suggestion (however we<br>
need<br>
to fix it first to work with current changes for trajectoryanalysis)<br>
</blockquote>
<br>
I suspect we&#39;ve not done anywhere near enough groundwork (yet) for<br>
this. Offhand, we should have a clear understanding of the scope<br>
(&quot;expose the trajectoryanalysis C++ API&quot; seems to be that of the<br>
current RFC patch in gerrit), how that adds value to users, and<br>
whether the approach will be able to offer a suitably stable UI. We<br>
also need to consider which versions of Python make sense to support<br>
</blockquote>
<br></span>
I think we can support both versions, however py3 is prefferable.<span class=""><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
How does a script using it look? (Your link to<br>
<a href="https://biod.pnpi.spb.ru" rel="noreferrer" target="_blank">https://biod.pnpi.spb.ru</a> from the Redmine no longer seems to work?)<br>
Does that compare reasonably to offerings like<br>
<a href="http://www.mdanalysis.org/pages/basic_example/" rel="noreferrer" target="_blank">http://www.mdanalysis.org/page<wbr>s/basic_example/</a> or<br>
<a href="http://mdtraj.org/1.8.0/examples/introduction.html" rel="noreferrer" target="_blank">http://mdtraj.org/1.8.0/exampl<wbr>es/introduction.html</a>. What lessons have<br>
we learned from them, and what aspects of other related python<br>
toolsets should we plan to incorporate, so that users will find<br>
themselves able to get the benefit of rapid compiler-free prototyping?<br>
</blockquote>
<br></span>
Currently we also have standalone version of py-api [1]<br>
This version expose to users<br>
 * all topology fields<br>
 * selections from trajectoryanalysis<br>
 * trajectoryanalysis api<br>
This version also include simple example of how to use it.<br>
So users can use it for one-time-use tools and prototyping with ability to use all numpy/scipy and other python related machinery.<br>
<br>
Version that listed in changeset on gerrit also includes possibility for pipelining modules<br>
So it can pass data between them or use many modules (e.g. select, distance, sasa, rdf, any c++ api module), reading trajectory only once.<span class=""><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
There&#39;s widespread interest in something like this, and active work<br>
over the medium term from some of our US colleagues, but if SIP is the<br>
vehicle for exposing a C++ API to python, then we probably need first<br>
to do some design work to make a C++ layer suitable for that, or a<br>
python layer on top of the SIP. Particularly because &quot;exposure to<br>
Python&quot; was never part of Teemu&#39;s initial design.<br>
<br>
</blockquote>
<br></span>
Some design work was already done, but there still many things that can be improved.<br>
However even current version already usable for simple tools.<br>
<br>
[1] <a href="http://biod.pnpi.spb.ru/gitweb/?p=alexxy/gromacs-pyapi.git;a=summary" rel="noreferrer" target="_blank">http://biod.pnpi.spb.ru/gitweb<wbr>/?p=alexxy/gromacs-pyapi.git;<wbr>a=summary</a><br>
<br>
PS biod link wasnt worked because of electricity work in server room =) now links should work<div class="HOEnZb"><div class="h5"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Mark<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Mark Abraham писал 09-03-2017 17:42:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi,<br>
<br>
It&#39;s time to start preparing for this year&#39;s release. Consistent<br>
</blockquote>
with<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
previous practice, we will have a soft deadline for work proposed<br>
</blockquote>
for<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
inclusion to have appeared in Gerrit in approximately final form,<br>
</blockquote>
then<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
we&#39;ll make a release candidate from the first patch on a new<br>
release-2017 branch. That branch will thereafter be open, in the<br>
</blockquote>
usual<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
way, for all manner of fixes, docs and tests, with patches<br>
</blockquote>
expected to<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
focus on stability, correctness and minimal disruption.<br>
</blockquote>
Thereafter,<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
from that branch, we might make a future release candidate, and at<br>
some point a final release.<br>
<br>
For target dates I propose:<br>
* April 1 - proposals available in gerrit in approximately final<br>
</blockquote>
form<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
* May 1 - ship release candidate<br>
* May 15 - ship second release candidate if that seems useful<br>
* June 1 - ship 2017 final if there are no known serious problems<br>
<br>
There&#39;s a fair bit of work currently in gerrit that is refactoring<br>
</blockquote>
to<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
suit long term needs. There&#39;s no strong reason to push to get such<br>
things in the release, but review and submission are welcome in<br>
</blockquote>
the<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
usual way. I do suggest that we avoid any further cleanup patches<br>
</blockquote>
that<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
touch lots of lines or lots of files until after the 2017 release,<br>
</blockquote>
to<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
make life easier on those preparing work for that release and<br>
</blockquote>
merging<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
fixes forward.<br>
<br>
After we ship 2017, and have incorporated any bug fixes we want to<br>
back port, I will make a final 5.1 patch release and declare that<br>
branch closed to future work. Similarly, I&#39;ll make another 2016<br>
</blockquote>
patch<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
release, and thereafter that branch will have the policy of being<br>
</blockquote>
open<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
only to fixes for things that might affect scientific results.<br>
<br>
My focus will be on the integration of Aleksei&#39;s PME-on-GPU<br>
implementation, as well as several non-code GROMACS activities.<br>
<br>
Erik hopes to rush out some new templated kernel infrastructure,<br>
</blockquote>
but<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
he has a grant application on April 6, so perhaps we will relax<br>
</blockquote>
the<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
April 1 cutoff for that - but based on history, there will be no<br>
promises either way ;-)<br>
<br>
David&#39;s energy analysis framework is pretty close to good shape,<br>
</blockquote>
so<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
some final effort there would be a nice achievement.<br>
<br>
Berk hopes to get in some more of his conserved quantities for<br>
integrators, and perhaps with Viveca some of the AWH<br>
</blockquote>
implementation<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
(that needs a lot of refactoring, however...)<br>
<br>
Are there any other things people would like to flag for<br>
</blockquote>
attention?<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Are there good reasons to suggest alternative dates?<br>
<br>
Mark<br>
</blockquote>
<br>
--<br>
Best Regards,<br>
Alexey &#39;Alexxy&#39; Shvetsov, PhD<br>
Department of Molecular and Radiation Biophysics<br>
FSBI Petersburg Nuclear Physics Institute, NRC Kurchatov Institute,<br>
Leningrad region, Gatchina, Russia<br>
mailto:<a href="mailto:alexxyum@gmail.com" target="_blank">alexxyum@gmail.com</a><br>
mailto:<a href="mailto:alexxy@omrb.pnpi.spb.ru" target="_blank">alexxy@omrb.pnpi.spb.ru</a><br>
</blockquote></blockquote>
<br>
-- <br>
Best Regards,<br>
Alexey &#39;Alexxy&#39; Shvetsov, PhD<br>
Department of Molecular and Radiation Biophysics<br>
FSBI Petersburg Nuclear Physics Institute, NRC Kurchatov Institute,<br>
Leningrad region, Gatchina, Russia<br>
mailto:<a href="mailto:alexxyum@gmail.com" target="_blank">alexxyum@gmail.com</a><br>
mailto:<a href="mailto:alexxy@omrb.pnpi.spb.ru" target="_blank">alexxy@omrb.pnpi.spb.ru</a><br></div></div><div class="HOEnZb"><div class="h5">
-- <br>
Gromacs Developers mailing list<br>
<br>
* Please search the archive at <a href="http://www.gromacs.org/Support/Mailing_Lists/GMX-developers_List" rel="noreferrer" target="_blank">http://www.gromacs.org/Support<wbr>/Mailing_Lists/GMX-developers_<wbr>List</a> before posting!<br>
<br>
* Can&#39;t post? Read <a href="http://www.gromacs.org/Support/Mailing_Lists" rel="noreferrer" target="_blank">http://www.gromacs.org/Support<wbr>/Mailing_Lists</a><br>
<br>
* For (un)subscribe requests visit<br>
<a href="https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-developers" rel="noreferrer" target="_blank">https://maillist.sys.kth.se/ma<wbr>ilman/listinfo/gromacs.org_gmx<wbr>-developers</a> or send a mail to <a href="mailto:gmx-developers-request@gromacs.org" target="_blank">gmx-developers-request@gromacs<wbr>.org</a>.</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr">--<div>Erik Lindahl &lt;<a href="mailto:erik.lindahl@gmail.com" target="_blank">erik.lindahl@gmail.com</a>&gt;</div><div>Professor of Biophysics, Dept. Biochemistry &amp; Biophysics, Stockholm University</div><div>Science for Life Laboratory, Box 1031, 17121 Solna, Sweden</div></div></div></div></div>
</div>