[gmx-developers] Python interface for Gromacs

Sébastien Buchoux sebastien.buchoux at u-picardie.fr
Wed Sep 8 21:51:47 CEST 2010

Dear Gromacs developers,

Interfacing Gromacs with Python have been discussed on this
list last year (mainly here:
http://lists.gromacs.org/pipermail/gmx-developers/2009-March/003177.html) but,
according to the Gromacs roadmap
(http://www.gromacs.org/Developer_Zone/Roadmap), things are still to be done.
Sorry if decisions were made in the meantime making this email out of scope.

I have been using Gromacs for a few years now and lately I have been
playing with Gromacs source code. More precisely, I wanted to interface
some of the Gromacs core stuff (pbc, neighbour searching...) with Python.
To do so, I used pure C extensions (no C types nor SWIG) to handle calls
to the C libs and to define new Python types to store gromacs-friendly C
objects while allowing a more "pythonic" way to access them. (This
approach is actually close to what the Numpy/Scipy guys did.)
This is still at pretty early stage but it could be extended to
interface all the Gromacs libraries with Python.

Where is my point? While I don't think inserting Python-related stuff
directly into Gromacs source code would be a good idea, a kind of
"official Python interface for Gromacs" developed at the same time as
Gromacs would great because:
- This would be a way to reflect Gromacs API changes into the interface
more or less seamlessly.
- "Modularizing the analysis tools" and "making the analysis library a
true callable library" (cf. roadmap) could also be done.
- One project would be more visible than a few ones.
- Python is cool!

What do you think?



Sébastien Buchoux, MC
UMR 6022 - Génie Enzymatique et Cellulaire / Enzyme and Cell  
Engineering Université Picardie Jules Verne (UPJV)
33, rue Saint Leu, 80000 Amiens, France
tel: +33(0)3 22 82 74 73 - email: sebastien.buchoux[at]u-picardie.fr

More information about the gromacs.org_gmx-developers mailing list