.. -*- coding: utf-8 -*-
.. GromacsWrapper documentation master file, created by sphinx-quickstart on Tue Jun 23 19:38:56 2009.

====================================================
  GromacsWrapper --- a Python framework for GROMACS
====================================================

:Release: |release|
:Date: |today|


**GromacsWrapper** is a pure 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. This is
generally superior to shell scripts because of Python's better error
handling and superior data structures. It also allows for
modularization and code re-use. In addition, commands, warnings and
errors are logged to a file so that there exists a complete history of
what has been done.

GROMACS_ versions 4.6.x, 2016.x, 2018.x, 2019.x, 2020.x, 2021.x,
2022.x, 2023.x, 2024.x are all supported. GromacsWrapper detects your
Gromacs tools and provides them as :func:`gromacs.grompp`,
:func:`gromacs.mdrun`, etc, regardless of your Gromacs version, which
allows one to write scripts that are broadly Gromacs-version
agnostic. Source your ``GMXRC`` file or make the :program:`gmx` binary
(for versions ≥ 5.x) or all the GROMACS tools available on your
:envvar:`PATH` for GromacsWrapper to find the GROMACS installation.

.. warning::

  Although GromacsWrapper has been used in published research over the
  last 10 years or so, there is no guarantee that any of the defaults
  chosen are suitable for any particular project or simulation setup.
   
  It is **your responsibility to ensure that you are running
  simulations with sensible parameters.** Provide appropriate template
  files instead of the bundled defaults and check the logger output!

Please report bugs in the `issue tracker`_ and go to the
`discussions`_ forum for questions.

Contributions are very welcome --- start by raising an issue in the
`issue tracker`_ to describe what feature you're adding or what bug
you're fixing.

.. SeeAlso:: Other approaches to interfacing Python_ and GROMACS_
             are listed under :doc:`alternatives`.

	     
Getting started
===============
	     
See :ref:`installation` for supported versions of Python and download
and installation instructions. The :ref:`quickstart` provides a brief
example of how to use GromacsWrapper in the most basic fashion.

The source code itself is available in the `GromacsWrapper git
repository`_.

You also need to have a version of GROMACS_ installed.



.. _GROMACS: http://www.gromacs.org
.. _Python: https://www.python.org
.. _Documentation: https://gromacswrapper.readthedocs.io/
.. _GromacsWrapper git repository:
   https://github.com/Becksteinlab/GromacsWrapper
.. _issue tracker:
   https://github.com/Becksteinlab/GromacsWrapper/issues
.. _discussions:
   https://github.com/Becksteinlab/GromacsWrapper/discussions
	     
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

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

.. |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)
   

Contact
=======

Please use the `issue tracker`_ to report bugs, installation problems,
and feature requests (mention ``@orbeckst`` in the issue report) and
use the `discussions`_ forum for general questions.

   

.. Contents
.. --------

.. toctree::
   :numbered:
   :maxdepth: 2
   :hidden:	      

   installation
   quickstart
   overview   
   configuration
   gromacs
   alternatives



..
   Indices and tables
   ------------------

   * :ref:`genindex`
   * :ref:`modindex`
   * :ref:`search`

