• Stars
    star
    169
  • Rank 223,206 (Top 5 %)
  • Language
    Python
  • License
    GNU General Publi...
  • Created over 14 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

GromacsWrapper wraps system calls to GROMACS tools into thin Python classes (GROMACS 4.6.5 - 2024 supported).

README: GromacsWrapper

Build Status Code Coverage Documentation Latest release on zenodo (with DOI) PRs Welcome! Anaconda.org package

A primitive Python wrapper around the Gromacs tools. The library is tested with GROMACS 4.6.5, 2018.x, 2019.x, 2020.x, 2021.x, 2022.x (and 5.x and 2016.x should also work). It supports Python 2.7 and 3.6--3.11 on Linux and macOS.

GromacsWrapper also provides a small library (cook book) of often-used recipes and helper functions to set up MD simulations.

Documentation is mostly provided through the python doc strings and available at https://gromacswrapper.readthedocs.org for recent releases.

The source code is available in the GromacsWrapper git repository.

Please be aware that this is beta software that most definitely contains bugs. It is your responsibility to ensure that you are running simulations with sensible parameters.

Quick Start

Given a PDB file 1iee.pdb, set up and run a simple simulation (assuming you have all other input files at hand such as the MDP files):

>>> import gromacs
>>> print(gromacs.release)
2018.2
>>> help(gromacs.pdb2gmx)
DESCRIPTION

gmx pdb2gmx reads a .pdb (or .gro) file, reads some database files,
adds hydrogens to the molecules and generates coordinates in GROMACS
...
...
OPTIONS

Options to specify input files:

-f      [<.gro/.g96/...>]  (eiwit.pdb)
          Structure file: gro g96 pdb brk ent esp tpr
...
...
>>> gromacs.pdb2gmx(f="1iee.pdb", o="protein.gro", p="topol.top",
...                 ff="oplsaa", water="tip4p")
>>> gromacs.editconf(f="protein.gro", o="boxed.gro",
...                  bt="dodecahedron", d=1.5, princ=True,
...                  input="Protein")
>>> gromacs.solvate(cp="boxed.gro", cs="tip4p", p="topol.top",
...                 o="solvated.gro")
>>> gromacs.grompp(f="emin.mdp", c="solvated.gro", p="topol.top",
...                o="emin.tpr")
>>> gromacs.mdrun(v=True, deffnm="emin")
>>> gromacs.grompp(f="md.mdp", c="emin.gro", p="topol.top", o="md.tpr")
>>> gromacs.mdrun(v=True, deffnm="md")

License

The GromacsWrapper package is made available under the terms of the GNU Public License v3 (or any higher version at your choice) except as noted below. See the file COPYING for the licensing terms for all modules.

Installation

Releases

The latest version of GromacsWrapper from PyPi can be installed with

pip install GromacsWrapper

or as a conda-forge package with conda from the conda-forge channel

conda install -c conda-forge gromacswrapper

Development version

The main branch in the GitHub source repository generally contains useful code but nevertheless, things can break in weird and wonderful ways. Please report issues through the Issue Tracker.

To use the development code base: checkout the main branch:

git clone https://github.com/Becksteinlab/GromacsWrapper.git
cd GromacsWrapper

and install

python setup.py install

Download and Availability

The GromacsWrapper home page is http://github.com/Becksteinlab/GromacsWrapper. The latest release of the package is being made available from https://github.com/Becksteinlab/GromacsWrapper/releases

You can also clone the GromacsWrapper git repository or fork for your own development:

git clone git://github.com/Becksteinlab/GromacsWrapper.git

Questions

Please ask questions in the Issue Tracker (instead of private email).

Reporting Bugs and Contributing to GromacsWrapper

Please use the Issue Tracker to report bugs, installation problems, and feature requests. Ask questions in the Discussion forum.

Pull requests for bug fixes and enhancements are very welcome. See http://makeapullrequest.com for a general introduction on how make a pull request and contribute to open source projects.

Building Documentation

Install Sphinx:

pip install sphinx

and compile:

cd GromacsWrapper
python setup.py build_sphinx

Citing

Latest release on zenodo (with DOI)

GromacsWrapper was written by Oliver Beckstein with contributions from many other people. Please see the file AUTHORS for all the names.

If you find this package useful and use it in published work I'd be grateful if it was acknowledged in text as

"... used GromacsWrapper (Oliver Beckstein et al, https://github.com/Becksteinlab/GromacsWrapper doi: 10.5281/zenodo.17901)"

or in the Acknowledgements section.

Thank you.

More Repositories

1

propkatraj

pKa estimates for proteins using an ensemble approach
Python
25
star
2

MDPOW

Calculation of water/solvent partition coefficients with Gromacs.
Python
24
star
3

PSAnalysisTutorial

Examples and data for performing path similarity analysis (PSA).
Python
16
star
4

hop

Solvent network analysis. Hop is a python package based on MDAnalysis to analyze solvation dynamics.
Python
13
star
5

making-prettier-plots

a quick primer on making prettier (and more impactful) plots
13
star
6

MDAnalysis-workshop

MDAnalysis Tutorial at the 2015 CECAM Macromolecular simulation software workshop
Jupyter Notebook
12
star
7

AdKGromacsTutorial

Basic tutorial for running and analyzing a Gromacs MD simulation of AdK
Shell
9
star
8

mdworks

molecular dynamics, with Fireworks!
Python
7
star
9

vesicle_library

library of vesicles with the Dry Martini force field
6
star
10

hollow

Fork of Bosco Ho's and Franz Gruswitz's HOLLOW 1.1 (see http://hollow.sourceforge.net/).
Python
6
star
11

MDAnalysis-with-Dask

Benchmarking MDAnalysis with dask.
Python
5
star
12

zarrtraj

zarrtraj MDAKit for @MDAnalysis
Python
4
star
13

multibind

A Python package for building thermodynamically consistent state graphs.
Python
4
star
14

kda

Python package used for the analysis of biochemical kinetic diagrams.
Python
3
star
15

Parallel-analysis-in-the-MDAnalysis-Library

Benchmarking MDAnalysis with Dask (and MPI). Supplementary Information for SciPy 2017 paper.
Python
3
star
16

numkit

Numerical first aid kit (with numpy/scipy).
Python
2
star
17

workflows-talk

Materials for workflows/automation talks.
2
star
18

timeseries-analysis-example

A brief example showing the basics of writing efficient timeseries analyses in python, and efficiently storing and exploring the resulting data
Python
2
star
19

BornProfiler

A small Python package to set up electrostatic solvation free energy ("Born energy") calculations of an ion in a membrane protein and calculate the electrostatic free energy with APBS .
Python
2
star
20

mdaadb

Python
1
star
21

conda-gromacs-5.1.2

Conda package of gromacs 5.1.2 intended for testing purposes.
Shell
1
star
22

gmx_first_aid

A command line utility intended to assist in recovering data from corrupted gromacs trajectories.
C
1
star
23

remote-vmd

Python client for the VMD server.
Python
1
star
24

vesicle_analysis_methods

Jupyter Notebook
1
star
25

PDB_Ion_Survey

A survey of ion coordination geometries in proteins.
Python
1
star
26

multibind-publication-code

Repository for the code used in the multibind paper
Jupyter Notebook
1
star
27

imdreader

prototype IMDReader for MDAnalysis
Python
1
star