You are here: Home / Resources / Software: Download / PyLith / About


By Brad Aagaard (primary-developer)1, Charles A. Williams (primary-developer)2, Matthew Knepley (primary-developer)3

1. United States Geological Survey 2. GNS Science 3. University of Buffalo

Published on


PyLith is a finite-element code for dynamic and quasistatic simulations of crustal deformation, primarily earthquakes and volcanoes.

Binaries are available. Detailed installation instructions for the binary packages are in the User Manual. Use the PyLith Installer to install from source with detailed building instructions for a few platforms in the INSTALL file bundled with the PyLith Installer utility. We also offer a Docker image (see the PyLith User Manual for instructions) for running PyLith within a portable, virtual Linux environment. Windows 10 users should install the Windows Subsystem for Linux and use the Linux x86_64 binary; users with earlier versions of Windows should install Docker and use the Docker image.

Release Notes

PyLith v2.2.2 provides a few new minor bugfixes.

  • Bug fixes
    • Fix several typos in the manual.
    • Fix order of deallocation of data members in ElasticMaterial to prevent a segmentation fault, thereby allowing error messages to be shown when throwing an exception.
    • Fix tests for MPI and PETSc version info for more use cases.
    • Ensure all Python script are executable and use nemesis is used instead of python for correct paths to modules on Darwin.
    Added ability to write residual to an HDF5 file during solves. This is intended for debugging and is enabled at runtime using `--journal.debug.formulation=1`. The residual will be written to `residual.h5`. To generate the associated `.xdmf` file run `pylith_genxdmd -f residual.h5`.
  • Updated to PETSc 3.10.2

Sponsored by

Current PyLith development is supported by the CIG, and internal GNS Science and U.S. Geological Survey funding. Pyre development was funded by the Department of Energy’s Advanced Simulation and Computing program and the National Science Foundation’s Information Technology Research (ITR) program.

This material is based upon work supported by the National Science Foundation under Grants No. 0313238, 0745391, 1150901, and EAR-1550901. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.