.. _glossary:

Glossary
--------

.. glossary::

   Buildbot
      The BuildBot is a system to automate the compile/test cycle
      required by most software projects to validate code changes.
      See http://trac.buildbot.net/.

   FiPy
      The eponymous software package. 
      See http://www.ctcms.nist.gov/fipy.

   Gmsh
      A free and Open Source 3D (and 2D!) finite element grid generator. It
      also has a CAD engine and post-processor that :term:`FiPy` does not
      make use of. See http://www.geuz.org/gmsh.

   IPython
      An improved :term:`Python` shell that integrates nicely with
      :ref:`MATPLOTLIB`. See http://ipython.scipy.org/.

   Matplotlib
      :mod:`matplotlib` :term:`Python` package displays publication quality
      results. It displays both 1D X-Y type plots and 2D contour plots for
      structured data. It does not display unstructured 2D data or 3D data.
      It works on all common platforms and produces publication quality hard
      copies. See 
      http://matplotlib.sourceforge.net
      and :ref:`Matplotlib`.

   Mayavi
      The :mod:`mayavi` Data Visualizer is a free, easy to use scientific data
      visualizer.  It displays 1D, 2D and 3D data. It is the only :term:`FiPy`
      viewer available for 3D data. Other viewers are probably better for 1D
      or 2D viewing. See
      http://code.enthought.com/projects/mayavi
      and :ref:`MAYAVI`.

   MayaVi
      The predecessor to :term:`Mayavi`. Yes, it's confusing.

   numarray
      An archaic predecessor to :term:`NumPy`.

   Numeric
      An archaic predecessor to :term:`NumPy`.

   NumPy
      The :mod:`numpy` :term:`Python` package provides array arithmetic 
      facilities. See
      http://www.scipy.org/NumPy.

   pip
      "pip installs python" is a tool for installing and managing Python
      packages, such as those found in :term:`PyPI`.
      See http://www.pip-installer.org.

   PyAMG
      A suite of python-based preconditoners. See 
      http://code.google.com/p/pyamg/
      and :ref:`PYAMG`.

   PyPI
      The Python Package Index is a repository of software for the
      :term:`Python` programming language. 
      See http://pypi.python.org/pypi.

   Pyrex
      A mechanism for mixing C and Python code.
      See http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/.

   PySparse
      The :mod:`pysparse` :term:`Python` package provides sparse
      matrix storage, solvers, and linear algebra routines. See
      http://pysparse.sourceforge.net
      and :ref:`PYSPARSE`.

   Python
      The programming language that :term:`FiPy` (and your scripts) are
      written in. See
      http://www.python.org/.

   Python 3
      The (likely) future of the :term:`Python` programming language.
      Third-party packages are slowly being adapted, but many that
      :term:`FiPy` uses are not yet available. See
      http://docs.python.org/py3k/
      and :pep:`3000`.
     
   PyTrilinos
      :term:`Python` wrapper for :term:`Trilinos`. See 
      http://trilinos.sandia.gov/packages/pytrilinos/.

   PyxViewer
      A now defunct python viewer.

   ScientificPython
      A collection of useful utilities for scientists. See 
      http://dirac.cnrs-orleans.fr/plone/software/scientificpython.

   SciPy
      The :mod:`scipy` package provides a wide range of scientific and
      mathematical operations. :term:`FiPy` can use :mod:`scipy.weave`
      for enhanced performance with C language inlining and
      :term:`Scipy`'s solver suite for linear solutions. See
      http://www.scipy.org/.
      and :ref:`SCIPY`.

   Sphinx
      The tools used to generate the :term:`FiPy` documentation.
      See
      http://sphinx.pocoo.org/.

   Trilinos
      This package provides sparse matrix storage, solvers, and
      preconditioners, and can be used instead of :term:`PySparse`.
      :term:`Trilinos` preconditioning allows for iterative solutions
      to some difficult problems that :term:`PySparse` cannot
      solve. See
      http://trilinos.sandia.gov
      and :ref:`TRILINOS`.
