I have a question

Before contacting us, first

  • read the documentation on this web site,
  • read the rest of this FAQ,
  • ensure that you are using the current version of SHTOOLS,
  • uninstall SHTOOLS using make clean and pip uninstall pyshtools, and then recompile/install SHTOOLS,
  • consult the SHTOOLS issues at GitHub

If at this point your problem is not resolved, you can

I have a suggestion

We often make improvements based on user suggestions. Nevertheless, please realize that the developers are very busy and that we are not paid to develop or maintain this archive. We suggest that you open an issue on GitHub describing your suggestion, and we will then flag the issue as a future enhancement.

How do you pronounce “shtools”?

It is pronounced S-H-Tools.

I would like to contribute

Please see this page.

Can I use the SHTOOLS library with C, Python, Julia, F77 or Matlab?

A C-interface to the Fortran-95 SHTOOLS library is distributed with this archive. However, it is currently a work in progress and is not documented in the current version. A working C example program can be found in the directory examples/cpp, and the required header file can be found at includes/shtools.h.

A Python interface to the SHTOOLS functions is provided in the pyshtools package. In addition to wrapping the Fortran-95 functions, this package provides a high-level interface for interacting with spherical harmonic coefficients and plotting global gridded data.

A basic Julia package that wraps the SHTOOLS functions can be found here.

As for Fortran 77 and Matlab, please let us know if you get this to work!

Which FFT libraries work with SHTOOLS?

SHTOOLS was developed initially to use the FFTW library. Since then, Intel’s MKL has added wrapper functions to their FFT routines that use the same syntax as FFTW. SHTOOLS can be linked either to FFTW or MKL with no impact on performance.

Does SHTOOLS work with Python 2.7?

The last version of pyshtools that supported Python 2.7 was version 4.5. Precompiled binaries of this release can be installed using the command

pip install pyshtools==4.5

Occassionally, critical updates may be made to the Python 2.7 code in the python2.7 branch of the GitHub project. Though Python 2.7 compatible binaries will not be distributed for any of these updates, these can be installed from souce using the command

pip install git+https://github.com/SHTOOLS/SHTOOLS.git@python2.7

Will you help me with my homework?

No.

I don’t understand spherical harmonics or programming. Will you explain how to modify the example codes?

No.

How do I make images with the output from SHTOOLS?

If you are using the Fortran version of SHTOOLS, the output is typically in the form of an ASCII or binary raster file. These can be read by any standard graphics package, such as the free unix-based command line software GMT.

If you are using the Python version of SHTOOLS, the classes for working with spherical harmonic coefficients and grids contain methods for making publication quality graphics that make use of the matplotlib, pygmt, and Cartopy packages.

Who maintains SHTOOLS?

This software package was created initially in 2004 by Mark Wieczorek and Matthias Meschede was responsible for the initial Python implementation of version 3. A list of all contributors can be found here.

How do I cite SHTOOLS in a publication?

SHTOOLS can be cited in two ways. First, one could cite the shtools paper that was published in Geochemistry, Geophysics, Geosystems (the reference is on the main web page). Secondly, one could cite a specific version of the code using the Zenodo DOI (digital object identifier) that is provided in the release notes.

Edit me