Package gromacs :: Module tools
[hide private]
[frames] | no frames]

Module tools

source code


:mod:`gromacs.tools` -- Gromacs commands classes
================================================

A Gromacs command class can be thought of as a factory function that
produces an instance of a gromacs command
(:class:`gromacs.core.GromacsCommand`) with initial default values.

By convention, a class has the capitalized name of the corresponding Gromacs
tool; dots are replaced by underscores to make it a valid python identifier.

The list of Gromacs tools to be loaded is configured in
:data:`gromacs.config.gmx_tool_groups`.

It is also possible to extend the basic commands and patch in additional
functionality. For example, the :class:`GromacsCommandMultiIndex` class makes a
command accept multiple index files and concatenates them on the fly; the
behaviour mimics Gromacs' "multi-file" input that has not yet been enabled for
all tools.

.. autoclass:: GromacsCommandMultiIndex
   :members: run, _fake_multi_ndx, __del__

Example
-------

In this example we create two instances of the :class:`gromacs.tools.Trjconv` command (which
runs the Gromacs ``trjconv`` command)::

  import gromacs.tools as tools

  trjconv = tools.Trjconv()
  trjconv_compact = tools.Trjconv(ur='compact', center=True, boxcenter='tric', pbc='mol',
                                  input=('protein','system'),
                                  doc="Returns a compact representation of the system centered on the protein")

The first one, ``trjconv``, behaves as the standard commandline tool but the
second one, ``trjconv_compact``, will by default create a compact
representation of the input data by taking into account the shape of the unit
cell. Of course, the same effect can be obtained by providing the corresponding
arguments to ``trjconv`` but by naming the more specific command differently
one can easily build up a library of small tools that will solve a specifi,
repeatedly encountered problem reliably. This is particularly helpful when doing
interactive work.

Gromacs tools
-------------
.. The docs for the tool classes are auto generated.

Classes [hide private]
  GromacsCommandMultiIndex
  G_mindist
Gromacs tool 'g_mindist' (with patch to handle multiple ndx files).
  G_dist
Gromacs tool 'g_dist' (with patch to handle multiple ndx files).
  A_gridcalc
Gromacs tool 'a_gridcalc'.
  A_ri3dc
Gromacs tool 'a_ri3Dc'.
  Anadock
Gromacs tool 'anadock'.
  Do_dssp
Gromacs tool 'do_dssp'.
  Editconf
Gromacs tool 'editconf'.
  Eneconv
Gromacs tool 'eneconv'.
  G_anaeig
Gromacs tool 'g_anaeig'.
  G_analyze
Gromacs tool 'g_analyze'.
  G_angle
Gromacs tool 'g_angle'.
  G_bond
Gromacs tool 'g_bond'.
  G_bundle
Gromacs tool 'g_bundle'.
  G_chi
Gromacs tool 'g_chi'.
  G_cluster
Gromacs tool 'g_cluster'.
  G_clustsize
Gromacs tool 'g_clustsize'.
  G_confrms
Gromacs tool 'g_confrms'.
  G_count
Gromacs tool 'g_count'.
  G_covar
Gromacs tool 'g_covar'.
  G_current
Gromacs tool 'g_current'.
  G_density
Gromacs tool 'g_density'.
  G_densmap
Gromacs tool 'g_densmap'.
  G_dielectric
Gromacs tool 'g_dielectric'.
  G_dih
Gromacs tool 'g_dih'.
  G_dipoles
Gromacs tool 'g_dipoles'.
  G_disre
Gromacs tool 'g_disre'.
  G_dyndom
Gromacs tool 'g_dyndom'.
  G_enemat
Gromacs tool 'g_enemat'.
  G_energy
Gromacs tool 'g_energy'.
  G_filter
Gromacs tool 'g_filter'.
  G_flux
Gromacs tool 'g_flux'.
  G_gyrate
Gromacs tool 'g_gyrate'.
  G_h2order
Gromacs tool 'g_h2order'.
  G_hbond
Gromacs tool 'g_hbond'.
  G_helix
Gromacs tool 'g_helix'.
  G_helixorient
Gromacs tool 'g_helixorient'.
  G_lie
Gromacs tool 'g_lie'.
  G_mdmat
Gromacs tool 'g_mdmat'.
  G_morph
Gromacs tool 'g_morph'.
  G_msd
Gromacs tool 'g_msd'.
  G_nmeig
Gromacs tool 'g_nmeig'.
  G_nmens
Gromacs tool 'g_nmens'.
  G_nmtraj
Gromacs tool 'g_nmtraj'.
  G_order
Gromacs tool 'g_order'.
  G_polystat
Gromacs tool 'g_polystat'.
  G_potential
Gromacs tool 'g_potential'.
  G_principal
Gromacs tool 'g_principal'.
  G_rama
Gromacs tool 'g_rama'.
  G_rdf
Gromacs tool 'g_rdf'.
  G_ri3dc
Gromacs tool 'g_ri3Dc'.
  G_rms
Gromacs tool 'g_rms'.
  G_rmsf
Gromacs tool 'g_rmsf'.
  G_rotacf
Gromacs tool 'g_rotacf'.
  G_saltbr
Gromacs tool 'g_saltbr'.
  G_sas
Gromacs tool 'g_sas'.
  G_sdf
Gromacs tool 'g_sdf'.
  G_sgangle
Gromacs tool 'g_sgangle'.
  G_sham
Gromacs tool 'g_sham'.
  G_sorient
Gromacs tool 'g_sorient'.
  G_spatial
Gromacs tool 'g_spatial'.
  G_spol
Gromacs tool 'g_spol'.
  G_tcaf
Gromacs tool 'g_tcaf'.
  G_traj
Gromacs tool 'g_traj'.
  G_vanhove
Gromacs tool 'g_vanhove'.
  G_velacc
Gromacs tool 'g_velacc'.
  G_wham
Gromacs tool 'g_wham'.
  G_zcoord
Gromacs tool 'g_zcoord'.
  Genbox
Gromacs tool 'genbox'.
  Genconf
Gromacs tool 'genconf'.
  Genion
Gromacs tool 'genion'.
  Genrestr
Gromacs tool 'genrestr'.
  Gmxcheck
Gromacs tool 'gmxcheck'.
  Gmxdump
Gromacs tool 'gmxdump'.
  GridMAT_MD
External tool 'GridMAT-MD.pl'
  Grompp
Gromacs tool 'grompp'.
  Luck
Gromacs tool 'luck'.
  Make_edi
Gromacs tool 'make_edi'.
  Make_ndx
Gromacs tool 'make_ndx'.
  Mdrun
Gromacs tool 'mdrun'.
  Mdrun_d
Gromacs tool 'mdrun_d'.
  Mk_angndx
Gromacs tool 'mk_angndx'.
  Pdb2gmx
Gromacs tool 'pdb2gmx'.
  Protonate
Gromacs tool 'protonate'.
  Sigeps
Gromacs tool 'sigeps'.
  Tpbconv
Gromacs tool 'tpbconv'.
  Trjcat
Gromacs tool 'trjcat'.
  Trjconv
Gromacs tool 'trjconv'.
  Trjorder
Gromacs tool 'trjorder'.
  Wheel
Gromacs tool 'wheel'.
  X2top
Gromacs tool 'x2top'.
  Xpm2ps
Gromacs tool 'xpm2ps'.
Variables [hide private]
  registry = {'A_gridcalc': <class 'gromacs.tools.A_gridcalc'>, ...
This dict holds all generated classes.
  exec_name = 'GridMAT-MD.pl'
Variables Details [hide private]

registry

This dict holds all generated classes.
Value:
{'A_gridcalc': <class 'gromacs.tools.A_gridcalc'>,
 'A_ri3dc': <class 'gromacs.tools.A_ri3dc'>,
 'Anadock': <class 'gromacs.tools.Anadock'>,
 'Do_dssp': <class 'gromacs.tools.Do_dssp'>,
 'Editconf': <class 'gromacs.tools.Editconf'>,
 'Eneconv': <class 'gromacs.tools.Eneconv'>,
 'G_anaeig': <class 'gromacs.tools.G_anaeig'>,
 'G_analyze': <class 'gromacs.tools.G_analyze'>,
...