SIGMA

Scalable Interfaces for Geometry and Mesh based Applications

PyTAPS — The Python interface for ITAPS

NOTE: We have officially deprecated the PyTAPS project and this will be superseded by an ongoing effort based on Cython. Please contact us (Vijay Mahadevan and Rajeev Jain) if you need more information.

PyTAPS is a Python package designed to interface with the ITAPS (Interoperable Technologies for Advanced Petascale Simulations) interfaces, a set of standardized interfaces for use in simulation code written in C, C++, or Fortran. PyTAPS focuses on Python support for the SIGMA project (MOAB, CGM, Lasso and MeshKit).

Building C Dependencies

Since Python extension modules are shared libraries, MOAB, CGM, and Lasso must also be built as shared libraries (or using --with-pic, which will not be covered here). After building, be sure to update your LD_LIBRARY_PATH to include the lib directories for MOAB, CGM, and Lasso. In addition to making it possible to load these libraries, it also helps PyTAPS; install process, since it peeks at your LD_LIBRARY_PATH to try to find iXxx-Defs.inc.

If you do not have one or more of MOAB, CGM, and Lasso, PyTAPS will automatically disable those components and install modules for only the ones you have.

Installing Python Dependencies

PyTAPS requires a couple of Python modules to operate. At minimum, you need NumPy installed. Setuptools (version 0.6rc11 or better) is also required, but will be (temporarily) installed automatically if it’s not present. It’s also recommended to have {{{pip}}} to simplify the installation.

Installing PyTAPS the Easy Way

Assuming everything has been set up as above, you can install PyTAPS by typing

pip install pytaps

on the command line. If you do not have pip, you can use easy_install instead via

easy_install pytaps

Installing PyTAPS Manually

If you do not have pip/easy_install, or if you would like to specify some installation options, you can download the latest tarball, then run:

tar xzf PyTAPS-1.3.tar.gz
cd PyTAPS-1.3
python setup.py install

To install the latest PyTAPS trunk (often necessary if you are running the latest trunk of MOAB, CGM, and Lasso), run the following:

svn co https://svn.mcs.anl.gov/repos/ITAPS/python/trunk pytaps
cd pytaps
python setup.py install

Local Installations

(Note: if you plan on installing PyTAPS into the default system location, skip this section.)

There are lots of ways to make local installations of Python packages. If you require anything other than the simple case (that is, modules you always see but aren’t visible to other users), use virtualenv. We will not discuss virtualenv here, but suffice to say, it allows you to make private Python modules on a per-directory basis.

For the simple case, the easiest way is to tell Python to install all its packages in a particular location. On Unix systems, this can be accomplished with the “home scheme”. You can use this on a per-package basis by manually specifying the home directory:

python setup.py install --home=/path/to/install

Alternately, you can make a global config file named ~/.pydistutils.cfg, or a local config file in the PyTAPS source directory named setup.cfg. Your config file should look like this (for examples of other options, see setup.cfg.example in the PyTAPS source):

[install]
home=/path/to/install

Next, make sure /path/to/install has the following structure (note that not all of these directories are required for all Python packages):

/path/to/install/

  bin/
  include/
    python/
  lib/
    python/

Finally, add /path/to/install/lib/python to your PYTHONPATH environment variable and run your chosen setup command.

More Installation Options

Other installation options are documented in the main PyTAPS documentation.

Using PyTAPS

Now that you have (hopefully) successfully installed PyTAPS, you can start using it!

Related Links


Copyright © 2014 SIGMA. All Rights Reserved.