gromacswrapper

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

https://github.com/becksteinlab/gromacswrapper

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
    Links to: acs.org, zenodo.org
  • Committers with academic emails
    5 of 23 committers (21.7%) from academic institutions
  • Institutional organization owner
    Organization becksteinlab has institutional domain (becksteinlab.physics.asu.edu)
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.4%) to scientific vocabulary

Keywords

gromacs gromacswrapper molecular-dynamics python science

Keywords from Contributors

molecular-simulation computational-chemistry mdanalysis molecular-dynamics-simulation trajectory-analysis free-energy closember
Last synced: 6 months ago · JSON representation

Repository

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

Basic Info
Statistics
  • Stars: 179
  • Watchers: 11
  • Forks: 54
  • Open Issues: 14
  • Releases: 19
Topics
gromacs gromacswrapper molecular-dynamics python science
Created almost 16 years ago · Last pushed 7 months ago
Metadata Files
Readme Changelog License Authors

README.rst

.. -*- mode: rst, coding: utf-8 -*-
.. The whole GromacsWrapper package is Copyright (c) 2009-2018 Oliver
.. Beckstein and AUTHORS except where noted otherwise.


========================
 README: GromacsWrapper
========================

|build| |cov| |docs| |zenodo| |black| |PRsWelcome| |anaconda|

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,
2023.x, 2024.x (and 5.x and 2016.x should also work). It supports
Python 3.9--3.13 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 software is only minimally maintained and it
most definitely contains bugs. It is *your* responsibility to ensure
that you are running simulations with sensible parameters.

.. _Gromacs: http://www.gromacs.org
.. _Documentation: 
   https://gromacswrapper.readthedocs.org/en/latest/
.. _GromacsWrapper git repository:
   https://github.com/Becksteinlab/GromacsWrapper
.. |build| image:: https://github.com/Becksteinlab/GromacsWrapper/actions/workflows/ci.yaml/badge.svg?branch=main
   :target: https://github.com/Becksteinlab/GromacsWrapper/actions/workflows/ci.yaml
   :alt: Build Status	     
.. |cov| image:: https://codecov.io/gh/Becksteinlab/GromacsWrapper/graph/badge.svg?token=LvbLZ49wxN
   :target: https://codecov.io/gh/Becksteinlab/GromacsWrapper
   :alt: Code Coverage
.. |zenodo| image:: https://zenodo.org/badge/13219/Becksteinlab/GromacsWrapper.svg
   :target: https://zenodo.org/badge/latestdoi/13219/Becksteinlab/GromacsWrapper
   :alt: Latest release on zenodo (with DOI)
.. |docs| image:: https://readthedocs.org/projects/gromacswrapper/badge/?version=latest
   :target: https://gromacswrapper.readthedocs.org/en/latest/?badge=latest
   :alt: Documentation
.. |PRsWelcome| image:: https://img.shields.io/badge/PRs-welcome-brightgreen.svg
   :target: http://makeapullrequest.com
   :alt: PRs Welcome!	 
.. |anaconda| image:: https://anaconda.org/conda-forge/gromacswrapper/badges/version.svg
   :target: https://anaconda.org/conda-forge/gromacswrapper
   :alt: Anaconda.org package
.. |black| image:: https://img.shields.io/badge/code%20style-black-000000.svg
   :target: https://github.com/psf/black	 
   :alt: black   

	 
	 
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.

.. _GNU Public License v3: http://www.gnu.org/licenses/gpl.html


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
    

.. _`latest version of GromacsWrapper from PyPi`:
   https://pypi.org/project/GromacsWrapper/

.. _`conda-forge package`:
   https://anaconda.org/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   

and install ::

   pip install GromacsWrapper/

Code contributions are welcome. We use `black`_ for uniform code
formatting so please install black_ and run it on your code.

.. _`black`: https://github.com/psf/black

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 `Discussion forum`_ (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.

.. _Issue Tracker: https://github.com/Becksteinlab/GromacsWrapper/issues
.. _Discussion forum: https://github.com/Becksteinlab/GromacsWrapper/discussions


Building Documentation
======================

Install Sphinx::

   pip install sphinx

and compile::

  cd GromacsWrapper
  python setup.py build_sphinx
  

Citing
======

|zenodo|

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.

.. _AUTHORS:
   https://raw.githubusercontent.com/Becksteinlab/GromacsWrapper/main/AUTHORS

Owner

  • Name: Becksteinlab
  • Login: Becksteinlab
  • Kind: organization
  • Email: obeckste@asu.edu
  • Location: Tempe, AZ

Computational Biophysics at Arizona State University

GitHub Events

Total
  • Create event: 5
  • Release event: 1
  • Issues event: 5
  • Watch event: 9
  • Delete event: 2
  • Issue comment event: 5
  • Push event: 24
  • Pull request event: 3
  • Fork event: 3
Last Year
  • Create event: 5
  • Release event: 1
  • Issues event: 5
  • Watch event: 9
  • Delete event: 2
  • Issue comment event: 5
  • Push event: 24
  • Pull request event: 3
  • Fork event: 3

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 1,099
  • Total Committers: 23
  • Avg Commits per committer: 47.783
  • Development Distribution Score (DDS): 0.157
Past Year
  • Commits: 24
  • Committers: 3
  • Avg Commits per committer: 8.0
  • Development Distribution Score (DDS): 0.083
Top Committers
Name Email Commits
Oliver Beckstein o****t@g****m 926
Pedro Lacerda p****a@g****m 33
Jan Domanski j****i@n****v 24
Andrew White w****w@g****m 16
Thomas Heavey t****y@g****m 14
Max Linke m****e@g****e 13
richardjgowers r****s@g****m 13
David Dotson d****l@g****m 13
Jan Domanski j****m@g****m 12
Ian Kenney i****y@a****u 7
Cody c****y@q****m 7
VOD555 g****8@h****m 4
POW user (ICSN) p****w@s****r 3
Elizabeth Denning d****0@g****m 2
Yura 3****A 2
andy.somogyi a****i@g****m 2
Oliver Beckstein o****r@d****) 2
Jinzhe Zeng j****g@r****u 1
Marcin Magnus m****x@o****l 1
Mohamad Mohebifar n****s@g****m 1
Philip Loche p****e@p****e 1
Andrej Berg a****g@u****e 1
hsk17 h****7@m****e 1

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 92
  • Total pull requests: 69
  • Average time to close issues: 5 months
  • Average time to close pull requests: about 1 month
  • Total issue authors: 29
  • Total pull request authors: 14
  • Average comments per issue: 2.58
  • Average comments per pull request: 2.57
  • Merged pull requests: 60
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 7
  • Pull requests: 9
  • Average time to close issues: about 2 months
  • Average time to close pull requests: about 1 month
  • Issue authors: 3
  • Pull request authors: 1
  • Average comments per issue: 0.86
  • Average comments per pull request: 1.44
  • Merged pull requests: 8
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • orbeckst (54)
  • richardjgowers (5)
  • dpadula85 (2)
  • PolyachenkoYA (2)
  • pacho2 (2)
  • a-ws-m (2)
  • mcardZH (1)
  • wehs7661 (1)
  • theavey (1)
  • njzjz (1)
  • rochoa85 (1)
  • MamtaMohan (1)
  • brgstfzj (1)
  • Wade2016 (1)
  • marcodigennaro (1)
Pull Request Authors
  • orbeckst (51)
  • jandom (6)
  • richardjgowers (4)
  • njzjz (4)
  • PolyachenkoYA (3)
  • whitead (3)
  • theavey (2)
  • hsk17 (2)
  • VOD555 (2)
  • PicoCentauri (1)
  • ianmkenney (1)
  • dotsdl (1)
  • mmagnus (1)
  • andrejberg (1)
Top Labels
Issue Labels
bug (15) tests (11) question (7) documentation (7) enhancement (6) fileformats (6) Python3 (6) release (5) CI (5) installation (4) paper (3) configuration (2) wontfix (1) refactor (1)
Pull Request Labels
CI (2) Python3 (1) work in progress (1) paper (1)

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 1,065 last-month
  • Total dependent packages: 1
    (may contain duplicates)
  • Total dependent repositories: 1
    (may contain duplicates)
  • Total versions: 22
  • Total maintainers: 1
pypi.org: gromacswrapper

A Python wrapper around the GROMACS tools.

  • Versions: 21
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 1,065 Last month
Rankings
Stargazers count: 5.7%
Forks count: 5.8%
Downloads: 6.0%
Average: 9.8%
Dependent packages count: 10.0%
Dependent repos count: 21.7%
Maintainers (1)
Last synced: 6 months ago
conda-forge.org: gromacswrapper

GromacsWrapper is a Python package that wraps system calls to GROMACS tools into thin classes. This allows for fairly seamless integration of the GROMACS tools into Python scripts.

  • Versions: 1
  • Dependent Packages: 1
  • Dependent Repositories: 0
Rankings
Forks count: 23.8%
Stargazers count: 27.3%
Average: 28.5%
Dependent packages count: 28.8%
Dependent repos count: 34.0%
Last synced: 6 months ago

Dependencies

setup.py pypi
  • matplotlib *
  • numkit *
  • numpy >=1.0
  • six *
.github/workflows/black.yaml actions
  • actions/checkout v3 composite
  • psf/black stable composite
.github/workflows/ci.yaml actions
  • actions/checkout v3 composite
  • codecov/codecov-action v3 composite
  • mamba-org/setup-micromamba v1 composite
ci/readthedocs/requirements.txt pypi
  • matplotlib *
  • numkit >=1.0
  • numpy >=1.0
  • pandas *
  • six *
gromacs/setup.py pypi
pyproject.toml pypi
ci/readthedocs/environment.yml pypi