z-logo
Premium
Enabling grand‐canonical Monte Carlo: Extending the flexibility of GROMACS through the GromPy python interface module
Author(s) -
Pool René,
Heringa Jaap,
Hoefling Martin,
Schulz Roland,
Smith Jeremy C.,
Feenstra K. Anton
Publication year - 2012
Publication title -
journal of computational chemistry
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.907
H-Index - 188
eISSN - 1096-987X
pISSN - 0192-8651
DOI - 10.1002/jcc.22947
Subject(s) - python (programming language) , computer science , computational science , monte carlo method , interface (matter) , flexibility (engineering) , computer graphics (images) , parallel computing , programming language , mathematics , statistics , bubble , maximum bubble pressure method
We report on a python interface to the GROMACS molecular simulation package, GromPy (available at https://github.com/GromPy). This application programming interface (API) uses the ctypes python module that allows function calls to shared libraries, for example, written in C. To the best of our knowledge, this is the first reported interface to the GROMACS library that uses direct library calls. GromPy can be used for extending the current GROMACS simulation and analysis modes. In this work, we demonstrate that the interface enables hybrid Monte-Carlo/molecular dynamics (MD) simulations in the grand-canonical ensemble, a simulation mode that is currently not implemented in GROMACS. For this application, the interplay between GromPy and GROMACS requires only minor modifications of the GROMACS source code, not affecting the operation, efficiency, and performance of the GROMACS applications. We validate the grand-canonical application against MD in the canonical ensemble by comparison of equations of state. The results of the grand-canonical simulations are in complete agreement with MD in the canonical ensemble. The python overhead of the grand-canonical scheme is only minimal.

This content is not available in your region!

Continue researching here.

Having issues? You can contact us here