This text contains short installation instructions for SfePy. The full
instructions are given in doc/installation.rst, see also [1, 2].

[1] http://sfepy.org
[2] http://sfepy.org/doc-devel/installation.html

Platforms
---------

*SfePy* is known to work on various flavours of Linux, on Intel Macs and
Windows.

Requirements
------------

Installation prerequisites, required to build SfePy:

- a C compiler suite (for example gcc)
- Python 2.6 or 2.7
- NumPy
- Cython

Python packages required for using SfePy:

- Pyparsing
- SciPy, preferably with umfpack wrapper, or umfpack scikit
- Matplotlib, for various plots; GTKAgg for live plotting via log.py
- PyTables, for storing results in HDF5 files
- SymPy, for some tests and functions)
- Mayavi, for postproc.py
- Pysparse, for schroedinger.py
- igakit, for script/gen_iga_patch.py - simple IGA domain generator

Other dependencies:

- To be able to (re)generate the documentation: Sphinx, numpydoc, LaTeX.
- Mesh generation tools use pexpect and gmsh or tetgen.
- IPython is preferred over the regular Python shell for following some
  parts of primer/tutorial.

SfePy can be used in-place without any installation by running the scripts from
the top-level directory of the distribution (TOPDIR), or can be installed
locally or system-wide.

Compilation of C Extension Modules
----------------------------------

1. Look at ``site_cfg_template.py`` and follow the instructions
   therein. Usually no changes are necessary.

2. Compile the extension modules

   a) for in-place use:

      python setup.py build_ext --inplace

   b) for installation:

      python setup.py build

Installation
------------

(As mentioned above, this step is not required to use SfePy.)

- System-wide (may require root privileges):

    python setup.py install

- Local (requires write access to ``<installation prefix>``):

    python setup.py install --root=<installation prefix>

Testing:
--------

Run './run_tests.py' or './run_tests.py --filter-less' in TOPDIR.

Tests that save results save them into TOPDIR/output-tests directory. View the
results (*.vtk) with a VTK-capable viewer (e.g. ParaView, Mayavi).

No failures should be reported.

If you get some failures it probably means some optional packages are not
installed. Also be sure to have a recent version of Numpy and SciPy installed
(latest releases or Git versions are the best bet). Verify also your pytables
(hdf5) installation (possible test_io.py failures).

To debug a failure, run './run_tests.py --debug'.
See also './run_tests.py --help' for further options.

Documentation:
--------------

SfePy is documented using Sphinx, see [1] above. The documentation sources are
in the doc directory.
