Skip to main content

![LOGO](misc/logo.png)

[![Join the chat at https://gitter.im/SHTOOLS/SHTOOLS](https://badges.gitter.im/SHTOOLS/SHTOOLS.svg)](https://gitter.im/SHTOOLS/SHTOOLS?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![DOI](https://zenodo.org/badge/doi/10.5281/zenodo.1067108.svg)](http://dx.doi.org/10.5281/zenodo.1067108)

SHTOOLS is a Fortran 95 / Python library that can be used to perform spherical harmonic transforms and reconstructions, rotations of data expressed in spherical harmonics, and multitaper spectral analyses on the sphere.

### FEATURES ###

  • A wide range of supported spherical harmonic functions:
    • real and complex,

    • different normalizations (Geodesy 4π, Schmidt semi-normalized, orthonormalized, unnormalized),

    • Condon-Shortley phase factor of (-1)<sup>m</sup>.

  • Selected applications and routines:
    • global spectral analysis, spherical harmonic rotations, Wigner 3j symbols,

    • localized multitaper spectral analyses, optimal window generation, spherical harmonic coupling matrices,

    • standard gravity and magnetic field calculations, computation of the geoid, finite-amplitude potential from topography.

  • Clean implementation of the spherical harmonic transforms: * Exact quadrature rules using either the sampling theorem of Driscoll and Healy (1994) where data are equally sampled (or spaced) in latitude and longitude, or Gauss-Legendre quadrature.

    • Accurate and fast to approximately degree 2800, corresponding to a spatial resolution higher than 4 arc minutes. Transforms and reconstructions take on the order of 1 second for bandwidths less than 600 and about 3 minutes for bandwidths close to 2800 on standard machines. The Fortran 95 routines are OpenMP compatible and OpenMP thread-safe.

### INSTALLATION ### #### Requirements #### Linux: `bash sudo apt-get install libblas-dev liblapack-dev g++ gfortran libfftw3-dev tcsh ` OSX: `bash brew install fftw --with-fortran `

#### Python Library #### `bash pip install pyshtools ` Or, to install a developer version, [download](https://github.com/SHTOOLS/SHTOOLS/zipball/master) or clone the SHTOOLS repository, enter the SHTOOLS folder and then execute one of the following commands: `bash pip install . # installs into the active python environment lib folder pip install -v -e . # installs into the SHTOOLS/pyshtools folder and links to the active python environment `

#### Fortran Library #### To install the Fortran 95 library, enter one of the following `bash make fortran make fortran-mp # Open-MP Fortran routines `

Or, with OSX, use the [brew](http://brew.sh/) package manager: `bash brew tap shtools/shtools brew install shtools ` To also install the OpenMP components, add `--with-openmp` to the last command.

More installation instructions and options can be found in the [web documentation](https://shtools.oca.eu) and GitHub [wiki](https://github.com/SHTOOLS/SHTOOLS/wiki).

### HOW TO USE ###

SHTOOLS can be invoked from Fortran 95, Python 2, or Python 3. The base SHTOOLS software is written in Fortran 95, and the Python library allows simple access to all fortran-compiled routines and offers helper routines as well as simple interfaces.

To get started, check out the following Python tutorial notebooks:

  • Introduction 1: Grids and Spherical Harmonic Coefficients [[ipynb]](examples/notebooks/Introduction-1.ipynb)

  • Introduction 2: Localization Windows and Spectral Analysis [[ipynb]](examples/notebooks/Introduction-2.ipynb)

  • Tutorial 1: Simple Spherical Harmonic Analyses [[ipynb]](examples/notebooks/tutorial_1.ipynb)

  • Tutorial 2: Localized Spectral Analysis on the Sphere [[ipynb]](examples/notebooks/tutorial_2.ipynb)

  • Tutorial 3: The SHTOOLS Class Interface [[ipynb]](examples/notebooks/tutorial_3.ipynb)

  • Tutorial 4: Spherical Harmonic Normalizations and Parseval’s theorem [[ipynb]](examples/notebooks/tutorial_4.ipynb)

  • Tutorial 5: Multitaper Spectral Analysis Class Interface [[ipynb]](examples/notebooks/tutorial_5.ipynb)

  • Tutorial 6: 3D Spherical Harmonic Plots [[ipynb]](examples/notebooks/tutorial_6.ipynb)

You can keep up to date by following SHTOOLS on [Twitter](https://twitter.com/SH_tools).

### ACKNOWLEDGMENTS ### SHTOOLS is open source (revised BSD license) and makes use of the freely available Fourier transform package [FFTW](http://www.fftw.org) and the linear algebra packages [LAPACK](http://www.netlib.org/lapack/) and [BLAS](http://www.netlib.org/blas/).

### CITATION ### M. A. Wieczorek, M. Meschede, E. Sales de Andrade, I. Oshchepkov, B. Xu, and A. Walker (2017). SHTOOLS: Version 4.1, Zenodo, doi:[10.5281/zenodo.1067108](http://doi.org/10.5281/zenodo.1067108)

Metadata

Release files for pyshtools 4.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyshtools 4.1.2
File Size Uploaded Provenance
pyshtools-4.1.2.tar.gz 18.2 MB Without provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for pyshtools 4.1.2
File
pyshtools-4.1.2-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
pyshtools-4.1.2-cp36-cp36m-manylinux1_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64 Details
pyshtools-4.1.2-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ Intel (x86-64, i386), macOS 10.10+ Intel (x86-64, i386), macOS 10.9+ x86-64, macOS 10.6+ Intel (x86-64, i386), macOS 10.10+ x86-64 Details
pyshtools-4.1.2-cp35-cp35m-win_amd64.whl CPython 3.5 CPython 3.5 pymalloc Windows x86-64 Details
pyshtools-4.1.2-cp35-cp35m-manylinux1_x86_64.whl CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-64 Details
pyshtools-4.1.2-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl CPython 3.5 CPython 3.5 pymalloc macOS 10.9+ x86-64, macOS 10.10+ x86-64, macOS 10.6+ Intel (x86-64, i386), macOS 10.9+ Intel (x86-64, i386), macOS 10.10+ Intel (x86-64, i386) Details
pyshtools-4.1.2-cp34-cp34m-manylinux1_x86_64.whl CPython 3.4 CPython 3.4 pymalloc Linux glibc 2.5+ x86-64 Details
pyshtools-4.1.2-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl CPython 3.4 CPython 3.4 pymalloc macOS 10.9+ x86-64, macOS 10.10+ x86-64, macOS 10.6+ Intel (x86-64, i386), macOS 10.10+ Intel (x86-64, i386), macOS 10.9+ Intel (x86-64, i386) Details
pyshtools-4.1.2-cp27-cp27mu-manylinux1_x86_64.whl CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-64 Details
pyshtools-4.1.2-cp27-cp27m-manylinux1_x86_64.whl CPython 2.7 CPython 2.7 pymalloc Linux glibc 2.5+ x86-64 Details
pyshtools-4.1.2-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl CPython 2.7 CPython 2.7 pymalloc macOS 10.9+ Intel (x86-64, i386), macOS 10.9+ x86-64, macOS 10.10+ x86-64, macOS 10.10+ Intel (x86-64, i386), macOS 10.6+ Intel (x86-64, i386) Details

Total release size: 144.7 MB

Release files / pyshtools-4.1.2.tar.gz

Download URL pyshtools-4.1.2.tar.gz
Size 18.2 MB
Tags Source
SHA-256 checksum
How to use checksums
205aa78e2fba4ea1edf3ffc41ef96fbf2d30634b5bef3a81f422502f42e918b6
BLAKE2b-256 checksum
How to use checksums
71d891b5b0914c6c68ed52a06f843442f8b5ef05467e27287bd6ec41e2fa5933
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / pyshtools-4.1.2-cp36-cp36m-win_amd64.whl

Download URL pyshtools-4.1.2-cp36-cp36m-win_amd64.whl
Size 31.3 MB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
c0279ead34621a7d2695a1435753f4f558e02410c17cc6f64d58ba01dabb1444
BLAKE2b-256 checksum
How to use checksums
a7007b53d9a1dc463b8b09783d662293d45f4756c572f45b0ff0a516097a7feb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / pyshtools-4.1.2-cp36-cp36m-manylinux1_x86_64.whl

Download URL pyshtools-4.1.2-cp36-cp36m-manylinux1_x86_64.whl
Size 10.6 MB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
1b9b5684b20c6fe2d75240a3f79914dc3735a8f41fbda8f5d1382d33afaa6059
BLAKE2b-256 checksum
How to use checksums
0424b3deb698b09e9f580b2ce91099a2d46fcfab33bb6f8384ea8f8bdf6cbfe8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / pyshtools-4.1.2-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl

Download URL pyshtools-4.1.2-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Size 2.7 MB
Tags CPython 3.6 CPython 3.6 pymalloc macOS 10.10+ Intel (x86-64, i386) macOS 10.10+ x86-64 macOS 10.6+ Intel (x86-64, i386) macOS 10.9+ Intel (x86-64, i386) macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
429d89f7fe81e7ff980eb172a28b496f320af83599e102eed9099dd0ede1b8e8
BLAKE2b-256 checksum
How to use checksums
79650c3fa8b3a0b86826ef9e4380696a771a5e15bbb1081582655f9c5a6e1cd6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / pyshtools-4.1.2-cp35-cp35m-win_amd64.whl

Download URL pyshtools-4.1.2-cp35-cp35m-win_amd64.whl
Size 31.3 MB
Tags CPython 3.5 CPython 3.5 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
cca735c9c9b70a17e7a32fa7b8ed4af70fb0954a9a41aa2657fe0151b420cf70
BLAKE2b-256 checksum
How to use checksums
3fc5717d7666e6b452b87acfa082955715ddb92397f9369244d95ac97732864f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / pyshtools-4.1.2-cp35-cp35m-manylinux1_x86_64.whl

Download URL pyshtools-4.1.2-cp35-cp35m-manylinux1_x86_64.whl
Size 10.7 MB
Tags CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
8cfbacfb46e030e27e78a4a1f2fc061d9d6e01e052b34dca150e07443522e425
BLAKE2b-256 checksum
How to use checksums
eac22af67fb9d7c65642c46093b8b30b0e871fd60e03de9e6aae1e6f3330b0a6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / pyshtools-4.1.2-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl

Download URL pyshtools-4.1.2-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Size 2.7 MB
Tags CPython 3.5 CPython 3.5 pymalloc macOS 10.10+ Intel (x86-64, i386) macOS 10.10+ x86-64 macOS 10.6+ Intel (x86-64, i386) macOS 10.9+ Intel (x86-64, i386) macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
dbd43469a481066eb35dbfaac67af2a6c3f565ce4f586f2f1c09ea5f3c3b875e
BLAKE2b-256 checksum
How to use checksums
8ccdaddf69b39d0d0e125d3366f8b679af6dce73b2255067e25ad9d2384054d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / pyshtools-4.1.2-cp34-cp34m-manylinux1_x86_64.whl

Download URL pyshtools-4.1.2-cp34-cp34m-manylinux1_x86_64.whl
Size 10.7 MB
Tags CPython 3.4 CPython 3.4 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
5b3aad45f60294a238138e9f25d782e94eafe2fcec8db5554ab24e7cc787e561
BLAKE2b-256 checksum
How to use checksums
d0ebb2e3e7e581caa2973853b95e3568e104ec533db27fb2c3ff5dfab3ed7152
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / pyshtools-4.1.2-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl

Download URL pyshtools-4.1.2-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Size 2.7 MB
Tags CPython 3.4 CPython 3.4 pymalloc macOS 10.10+ Intel (x86-64, i386) macOS 10.10+ x86-64 macOS 10.6+ Intel (x86-64, i386) macOS 10.9+ Intel (x86-64, i386) macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
9e97a3d61f9007639d40b59ec96f7d75474c45dbc6a4ff568ea175bc7c32caeb
BLAKE2b-256 checksum
How to use checksums
980709ab28162fe5b6ff91b0d7f0f7c14ac03e60aa9652010276450892ffc5f5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / pyshtools-4.1.2-cp27-cp27mu-manylinux1_x86_64.whl

Download URL pyshtools-4.1.2-cp27-cp27mu-manylinux1_x86_64.whl
Size 10.7 MB
Tags CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
b05347c63955e73754fe0191a7c420ecbc8c0c6eae033f5b80e5b29aff33c931
BLAKE2b-256 checksum
How to use checksums
259c621cb32be353c028cd6e22ec742156011c126a8e7b56dd02cade9944c900
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / pyshtools-4.1.2-cp27-cp27m-manylinux1_x86_64.whl

Download URL pyshtools-4.1.2-cp27-cp27m-manylinux1_x86_64.whl
Size 10.7 MB
Tags CPython 2.7 CPython 2.7 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
7021fea23a35a4406566cd0a78673af6d9ba30ed07185e42d14bcb334da34486
BLAKE2b-256 checksum
How to use checksums
6c95ffea6c1e59612dfdc28556da7bec27bac199f786d7526e0d1e351d10e9bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / pyshtools-4.1.2-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl

Download URL pyshtools-4.1.2-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Size 2.7 MB
Tags CPython 2.7 CPython 2.7 pymalloc macOS 10.10+ Intel (x86-64, i386) macOS 10.10+ x86-64 macOS 10.6+ Intel (x86-64, i386) macOS 10.9+ Intel (x86-64, i386) macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
cb76aa7cd22d461e4fd943711bb99662523e924b565baa758040e997d5807f86
BLAKE2b-256 checksum
How to use checksums
527c6cfaf17a0a5b9a5af7a84d6f02ef38162ae0ae1e39699b484d67eb91bd5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for pyshtools 4.1.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page