The fatiando package

The fatiando package contains all the subpackages and modules required for most tasks.

Modules for each geophysical method are group in subpackages:

  • gravmag: Gravity and magnetics (i.e., potential fields)
  • seismic: Seismics and seismology
  • geothermal: Geothermal heat transfer modeling

Modules for gridding, meshing, visualization, etc:

  • mesher: Mesh generation and definition of geometric elements
  • gridder: Grid generation and operations (e.g., interpolation)
  • vis: Plotting utilities for 2D (using matplotlib) and 3D (using mayavi)
  • datasets: Fetch and load datasets and models from web repositories
  • utils: Miscelaneous utilities, like mathematical functions, unit conversion, etc
  • constants: Physical constants and unit conversions

Also included is the fatiando.inversion package with utilities for implementing inverse problems. There you’ll find ready to use regularization, optimization methods, and templates to implement new inversion methods.

Inversions implemented in Fatiando leverage fatiando.inversion, providing a common interface and usage patters. For examples, see modules fatiando.seismic.epic2d, fatiando.seismic.srtomo, fatiando.gravmag.basin2d, fatiando.gravmag.euler, fatiando.gravmag.eqlayer, etc.

The design of fatiando.inversion was inspired by scikit-learn, an amazing machine-learning library.

fatiando.test(doctest=True, verbose=False, coverage=False)[source]

Run the test suite for Fatiando a Terra.

Uses py.test to discover and run the tests. If you haven’t already, you can install it with conda or pip.


  • doctest
    : bool

    If True, will run the doctests as well (code examples that start with a >>> in the docs).

  • verbose
    : bool

    If True, will print extra information during the test run.

  • coverage
    : bool

    If True, will run test coverage analysis on the code as well. Requires pytest-cov.


  • exit_code
    : int

    The exit code for the test run. If 0, then all tests pass.

List of modules and packages: