SHTOOLS - Tools for working with spherical harmonics
Project description
SHTOOLS/pysthools is a Fortran-95/Python library that can be used to perform spherical harmonic transforms and reconstructions, multitaper spectral analyses on the sphere, expansions of functions into Slepian bases, and standard operations on global gravitational and magnetic field data.
FEATURES
A wide range of supported spherical harmonic functions:
real and complex,
all standard normalizations (Geodesy 4π, Schmidt semi-normalized, orthonormalized, unnormalized),
Condon-Shortley phase factor of (-1)m.
Clean implementation of the spherical harmonic transforms:
exact quadrature rules using the sampling theorem of Driscoll and Healy (1994) or Gauss-Legendre quadrature,
accurate and fast to approximately degree 2800,
Fortran 95 routines are OpenMP compatible and OpenMP thread-safe.
Selected applications and routines:
global spectral analysis, spherical harmonic rotations, Wigner 3j symbols,
localized multitaper spectral analyses, expansions in Slepian basis functions, spherical harmonic coupling matrices,
standard gravity and magnetic field calculations, computation of the geoid, finite-amplitude potential from topography.
SHTOOLS is open source software (3-clause BSD license).
INSTALLATION
pyshtools for Python
Binary install for linux/macOS/windows:
pip install pyshtools
Build from source:
pip install pyshtools --no-binary pyshtools
pyshtools for Anaconda Python
Install fftw3 with fortran bindings and then install pyshtools using pip:
conda install -c eumetsat fftw3
pip install pyshtools
pyshtools for Python (developer install)
Linux requirements:
sudo apt-get install libblas-dev liblapack-dev g++ gfortran libfftw3-dev tcsh
macOS requirements:
brew install fftw
To install the develop branch use:
pip install git+https://github.com/SHTOOLS/SHTOOLS@develop
Alternatively, clone the shtools repo
git clone https://github.com/SHTOOLS/SHTOOLS.git
and then execute one of the following commands in the shtools directory:
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
Clone the shtools repo, and then execute one of the following commands in the shtools directory:
make fortran
make fortran-mp # OpenMP Fortran routines
Or use the brew package manager (macOS):
brew tap shtools/shtools
brew install shtools
brew install shtools --with-openmp # to install shtools with the OpenMP components.
More installation instructions and options can be found in the web documentation and GitHub wiki.
HOW TO USE
SHTOOLS can be invoked in any Fortran 95 or Python program. The core software is written in Fortran 95, and Python wrappers allow simple access to the fortran-compiled routines. A variety of Python notebooks and example files are included that demonstrate the major features of the library.
To get started, check out the following Python tutorial notebooks:
DEVELOPERS
We work on the develop branch and only push releases to master. Please base all pull requests on develop.
CITATION
Mark A. Wieczorek and Matthias Meschede (2018). SHTools — Tools for working with spherical harmonics, Geochemistry, Geophysics, Geosystems, doi:10.1029/2018GC007529.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file pyshtools-4.3.tar.gz
.
File metadata
- Download URL: pyshtools-4.3.tar.gz
- Upload date:
- Size: 29.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7b9a04bbcb9adb0d2c4d013e8f1892608b53e8829e209e02dacfa03bac4a179d |
|
MD5 | 7475cd7e78472b92fcf175d7fa22ab9e |
|
BLAKE2b-256 | 06034eca0aeac71adb5d70a98f383bb7f73ca05bc6039359e6bf5e8512a13719 |
File details
Details for the file pyshtools-4.3-cp37-cp37m-manylinux1_x86_64.whl
.
File metadata
- Download URL: pyshtools-4.3-cp37-cp37m-manylinux1_x86_64.whl
- Upload date:
- Size: 10.7 MB
- Tags: CPython 3.7m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.5.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6270e3c00150c1ea74f1fea94f1984fcc43580add2b6a998867ddaac3e9af451 |
|
MD5 | e6d05a17084bbe6ad9132060892f5ebe |
|
BLAKE2b-256 | 09ab7c049e02683a04a2832757ea84d8f5e326b30cdb45498ac75db29ddbb6ac |
File details
Details for the file pyshtools-4.3-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
.
File metadata
- Download URL: pyshtools-4.3-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
- Upload date:
- Size: 2.9 MB
- Tags: CPython 3.7m, macOS 10.10+ intel, macOS 10.10+ x86-64, macOS 10.6+ intel, macOS 10.9+ intel, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e506ae374779705500be7684bd2c634f161c7d310d11bc176fc19ee63754f8e6 |
|
MD5 | 3eee5aa4c5ce0ae987befe58ae9665a3 |
|
BLAKE2b-256 | 61e40a4882ff8c4ed0f1216d768df8e68915a7bcf8e1a044b2d887fb2ee96f50 |
File details
Details for the file pyshtools-4.3-cp36-cp36m-manylinux1_x86_64.whl
.
File metadata
- Download URL: pyshtools-4.3-cp36-cp36m-manylinux1_x86_64.whl
- Upload date:
- Size: 10.7 MB
- Tags: CPython 3.6m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.5.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b159baa938cd8c04e3442eaf3b9eb772ab1a0c2888b00129b4c974db9c1afa24 |
|
MD5 | b388dedf103f35e5d6d1465562ae2a4a |
|
BLAKE2b-256 | 61b5a796cca970eec6cccf3b625dbc3e084c114ba04e1df1e230449558fd3d9d |
File details
Details for the file pyshtools-4.3-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
.
File metadata
- Download URL: pyshtools-4.3-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
- Upload date:
- Size: 2.9 MB
- Tags: CPython 3.6m, macOS 10.10+ intel, macOS 10.10+ x86-64, macOS 10.6+ intel, macOS 10.9+ intel, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a3fcd83e543b509ac8c0d36a4452614235197c977e2ef42933b78c3c455e983 |
|
MD5 | 8f4cfc46c920351ae207957362e7dd6e |
|
BLAKE2b-256 | 5624f04d7b64b38dd2776a42ea66cc72c5623588f06e875933d5bc6b6c98e0d2 |
File details
Details for the file pyshtools-4.3-cp35-cp35m-manylinux1_x86_64.whl
.
File metadata
- Download URL: pyshtools-4.3-cp35-cp35m-manylinux1_x86_64.whl
- Upload date:
- Size: 10.7 MB
- Tags: CPython 3.5m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.5.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c6b45a8cdedde4d496de853982ed307000585869e276561a51e301f2726e8eec |
|
MD5 | e1a54601ea008f76c627466c4ab57d9a |
|
BLAKE2b-256 | 18d86f37258f55542a203cf6aaf3237ef140c555659f68f1541d661c83fd7bc1 |
File details
Details for the file pyshtools-4.3-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
.
File metadata
- Download URL: pyshtools-4.3-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
- Upload date:
- Size: 2.9 MB
- Tags: CPython 3.5m, macOS 10.10+ intel, macOS 10.10+ x86-64, macOS 10.6+ intel, macOS 10.9+ intel, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.5.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d628a712f81aee1c9cdd65c95ac402a6cf1ed7fcf94b62740aa601caff0e17d5 |
|
MD5 | 66739a3c0edceeaa2192d4626e096d31 |
|
BLAKE2b-256 | 515231461e8b9d45a9bbd15bb023bcd1b5aefaaa5841a0f11a80faa818dd73e3 |
File details
Details for the file pyshtools-4.3-cp34-cp34m-manylinux1_x86_64.whl
.
File metadata
- Download URL: pyshtools-4.3-cp34-cp34m-manylinux1_x86_64.whl
- Upload date:
- Size: 10.7 MB
- Tags: CPython 3.4m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.5.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 60719ce4518a272066880c09e1d11f2394ffaf85c9447d3b11a104a9f6f8de27 |
|
MD5 | 55b6b3c898e03c85f674013d8cb20fa1 |
|
BLAKE2b-256 | 93382d1ef4e1812c4abc9ee6179a384fac6ec55c3200b645a028d470139700c7 |
File details
Details for the file pyshtools-4.3-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
.
File metadata
- Download URL: pyshtools-4.3-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
- Upload date:
- Size: 2.9 MB
- Tags: CPython 3.4m, macOS 10.10+ intel, macOS 10.10+ x86-64, macOS 10.6+ intel, macOS 10.9+ intel, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.4.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a135d32e06376a18b811930a306dd1e3179b67aa3eae94cb64166fbd4e7da2fb |
|
MD5 | c242bb8d02e1b0476e843ddd9d775e09 |
|
BLAKE2b-256 | 85838d17d9b7633d1169ff72e446f6d7c7f07f525b4a89cd935747358f3197e0 |
File details
Details for the file pyshtools-4.3-cp27-cp27mu-manylinux1_x86_64.whl
.
File metadata
- Download URL: pyshtools-4.3-cp27-cp27mu-manylinux1_x86_64.whl
- Upload date:
- Size: 10.7 MB
- Tags: CPython 2.7mu
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.5.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8c5d1ba7b3662796c073737aa7ca75b16ff42bd82806a20c22e46c650c87445d |
|
MD5 | 0dfc55388dae4917ef3b6ddeb93ccf7b |
|
BLAKE2b-256 | 208d8187c8b46ee870cb046c7d50c9e18717e8e9df9949666dc5710045e7328e |
File details
Details for the file pyshtools-4.3-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
.
File metadata
- Download URL: pyshtools-4.3-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
- Upload date:
- Size: 2.9 MB
- Tags: CPython 2.7m, macOS 10.10+ intel, macOS 10.10+ x86-64, macOS 10.6+ intel, macOS 10.9+ intel, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/2.7.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c798843b62a217152862d65928b85ae94b0aba50ecc6d1ac185ad2906d6f39f8 |
|
MD5 | 75daaf7923c03965114648a949fd2b8c |
|
BLAKE2b-256 | b48ab3c4dfe6e08193b80d22427189ce8660725fbe436c1a5fe68445d93dc1f5 |