[gmx-developers] API planning

Alexey Shvetsov alexxy at omrb.pnpi.spb.ru
Wed Dec 21 18:09:04 CET 2016


Hi!

There already is somehow working python interface capable for writing 
analysis tools. It wraps C++ API. Also one of its version support 
pipelines with many modules analysing same trajectory at same time (e.g. 
you need to read it only once)

https://gerrit.gromacs.org/#/c/4269/

Also there is standalone version for GROMACS 2016

http://biod.pnpi.spb.ru/gitweb/?p=alexxy/gromacs-pyapi.git;a=summary


Eric Irrgang писал 21-12-2016 19:10:
> Hello Developers,
> 
> I am interested in starting, rekindling and/or joining conversations
> about planning, implementing, and using various sorts of abstraction
> in the Gromacs public and internal interfaces. I am hoping to identify
> other developers working in the same areas, find out where efforts are
> being coordinated, or to volunteer to help coordinate efforts through
> new Redmine issues or reviving old ones.
> 
> Generally, I'm looking at encapsulation or abstraction of
> 
> * Terminal I/O
> * File I/O
>   - trajectory output
>   - input and configuration files
>   - log files
> * Prompted user interaction
> * CLI and runtime options
> * Simulation configuration, input state
> * Gathered parallel data, running state
> * task modules (gmx tools)
> * Compute kernels used within do_md() (for plug-ins as well as
> external access)
> * Domain--rank binding / Interprocess communication / MPI communicator
> 
> It might be possible to break down the areas of focus as follows:
> * data I/O
> * user/controller interface
> * core compute tasks
> 
> In the coming months, I will be working on new ways to use libgromacs
> for workflows implemented at higher levels, such as through Python
> interfaces, expanded ensemble workflow tools, and data flow based
> tools. In some cases, it looks like the C++ API I want already exists
> but may not be widely used within the code, in other cases I know that
> the features I want are under active development, in others I see old
> discussions but no recent comments, and in others I can't tell if any
> conversations have happened. I am trying to determine the best way to
> coordinate with plans or development already under way or with other
> interested developers.
> 
> To some degree, I may just not have found the right search terms to
> find an appropriate Redmine issue or wasn't sure if an existing issue
> was the right place, so I would be grateful if you could point me at
> relevant discussions or suggest that I start new issues. If it is most
> appropriate that I just have a conversation with certain people
> already on certain tasks, I would appreciate some help connecting.
> 
> I am also happy to volunteer to compile what information I can and
> help coordinate documentation, if lack of time is the major obstacle.
> I could start by sharing all of the cross-references I have already
> compiled, but I refrained from that in the current email to keep it to
> a manageable size and relevant to the mailing list.
> 
> Cheers,
> M. Eric Irrgang

-- 
Best Regards,
Alexey 'Alexxy' Shvetsov, PhD
Department of Molecular and Radiation Biophysics
FSBI Petersburg Nuclear Physics Institute, NRC Kurchatov Institute,
Leningrad region, Gatchina, Russia
mailto:alexxyum at gmail.com
mailto:alexxy at omrb.pnpi.spb.ru


More information about the gromacs.org_gmx-developers mailing list