Skip to main content

SHTOOLS - Spherical Harmonic Tools

Project description

Documentation DOI Paper Join the chat at https://gitter.im/SHTOOLS/SHTOOLS Twitter

SHTOOLS/pysthools is a Fortran-95/Python library that can be used to perform spherical harmonic transforms, 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,

    • OpenMP compatible and OpenMP thread-safe.

  • Selected applications and routines:

    • global spectral analysis, spherical harmonic rotations, and Wigner 3j symbols,

    • localized multitaper spectral analyses, and expansions in Slepian basis functions,

    • standard gravity and magnetic field calculations, computation of the geoid, and 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

Upgrade to a new version:

pip install --upgrade 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 developers

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:

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

Alternatively, clone the shtools repo and then install:

git clone https://github.com/SHTOOLS/SHTOOLS.git
cd shtools
pip install .  # install into the active python environment lib folder, or
pip install -v -e .  # install into the SHTOOLS/pyshtools folder and link 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  # for 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.

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, 19, 2574-2592, doi:10.1029/2018GC007529.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyshtools-4.4.1.tar.gz (20.9 MB view details)

Uploaded Source

Built Distributions

pyshtools-4.4.1-cp37-cp37m-manylinux1_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.7m

pyshtools-4.4.1-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 (2.9 MB view details)

Uploaded 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

pyshtools-4.4.1-cp36-cp36m-manylinux1_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.6m

pyshtools-4.4.1-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 (2.9 MB view details)

Uploaded 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

pyshtools-4.4.1-cp35-cp35m-manylinux1_x86_64.whl (10.8 MB view details)

Uploaded CPython 3.5m

pyshtools-4.4.1-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 (2.9 MB view details)

Uploaded 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

pyshtools-4.4.1-cp34-cp34m-manylinux1_x86_64.whl (10.8 MB view details)

Uploaded CPython 3.4m

pyshtools-4.4.1-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 (2.9 MB view details)

Uploaded 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

pyshtools-4.4.1-cp27-cp27mu-manylinux1_x86_64.whl (10.7 MB view details)

Uploaded CPython 2.7mu

pyshtools-4.4.1-cp27-cp27m-manylinux1_x86_64.whl (10.7 MB view details)

Uploaded CPython 2.7m

pyshtools-4.4.1-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 (2.9 MB view details)

Uploaded 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

File details

Details for the file pyshtools-4.4.1.tar.gz.

File metadata

  • Download URL: pyshtools-4.4.1.tar.gz
  • Upload date:
  • Size: 20.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.1

File hashes

Hashes for pyshtools-4.4.1.tar.gz
Algorithm Hash digest
SHA256 63878eb4d23cc40620819b24a9e4c211c1fcb813bfc0eb1aa9664c69b6113800
MD5 cf0c108d56815e339651d61a95b972fb
BLAKE2b-256 763eca6fe5cdfbb61bd3fe8d3734f7f9a68a14f0efcc8123560455e7fbd3a6a3

See more details on using hashes here.

File details

Details for the file pyshtools-4.4.1-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

  • Download URL: pyshtools-4.4.1-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.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.6

File hashes

Hashes for pyshtools-4.4.1-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 0e08e2c2e1a8933b3ef522ea332513fffa05988f67c69b162461176dd9bb9419
MD5 e3c9a552379f2143dbe07459ef1c33bb
BLAKE2b-256 b27a9741ebf793089703775cfb51138ec0c5890211e04d30ffe235bc7ff04512

See more details on using hashes here.

File details

Details for the file pyshtools-4.4.1-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

File hashes

Hashes for pyshtools-4.4.1-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
Algorithm Hash digest
SHA256 69565e7406d8a4900517ce7549bb4e5e69745cfc7d101ccb30d3a2218ed16d9d
MD5 bceb5ec44673db7aa2a80594dbe7d3f1
BLAKE2b-256 9511cfef5ccf75101447a6069620f6750a630a730edfa41289aa8e8a16a68f36

See more details on using hashes here.

File details

Details for the file pyshtools-4.4.1-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

  • Download URL: pyshtools-4.4.1-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.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.6

File hashes

Hashes for pyshtools-4.4.1-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 158fb89b74092cec70870ffcb825647c45b727d01711a7c07dff3c6193432316
MD5 fe44066d92983cf4f9897bb73cf85091
BLAKE2b-256 8b96db769eb5b5c0dc4ab804e8d0ff2774816864029a9bc364fa730d5b58f785

See more details on using hashes here.

File details

Details for the file pyshtools-4.4.1-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

File hashes

Hashes for pyshtools-4.4.1-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
Algorithm Hash digest
SHA256 6cff0e1fba36466f23445fb957e40f25fefdd00efa8e2bcb7e1526df1c1c76d7
MD5 bfe2d2e5dc33bd08b616db0fd8269487
BLAKE2b-256 292c22feaae523392c5f8cf7fa1c74d3a72e38932bfadd5f916226d568954a0b

See more details on using hashes here.

File details

Details for the file pyshtools-4.4.1-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

  • Download URL: pyshtools-4.4.1-cp35-cp35m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 10.8 MB
  • Tags: CPython 3.5m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.6

File hashes

Hashes for pyshtools-4.4.1-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 2373c36ea58fd6571f91e3acf9a6765bc63588f42c97034171fed22122c56ba9
MD5 ce7abbb64a51253fb480266a994418a7
BLAKE2b-256 2e227a7fdc1f3b2843fff1a6fbf6164acb049e8f9149c9bc88cf23125e18cbfa

See more details on using hashes here.

File details

Details for the file pyshtools-4.4.1-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

File hashes

Hashes for pyshtools-4.4.1-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
Algorithm Hash digest
SHA256 df4e35a362df2ba42aae61784f1cdfd69d65ba838d3cf05133e68f45daf7fe1e
MD5 d3fa01596e38f966d4db71fc04641d0a
BLAKE2b-256 27c6e15aeb16177b17effe273a4c2429e9df8905b3266d1d4dbd050e96a77873

See more details on using hashes here.

File details

Details for the file pyshtools-4.4.1-cp34-cp34m-manylinux1_x86_64.whl.

File metadata

  • Download URL: pyshtools-4.4.1-cp34-cp34m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 10.8 MB
  • Tags: CPython 3.4m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.6

File hashes

Hashes for pyshtools-4.4.1-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 2d2400e4969bb16c18a40988c07d49eb0dbd464a674b300c9ceaaee1b236fb1f
MD5 c18657e431e5b23e9d302a3ab4f21211
BLAKE2b-256 5577940399fd80ba0da913c533f09dd34f2cbbb7c46bfbee818c10e71ef188e5

See more details on using hashes here.

File details

Details for the file pyshtools-4.4.1-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

File hashes

Hashes for pyshtools-4.4.1-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
Algorithm Hash digest
SHA256 d8198f229683691bb6c1f53aa43d4a8e912a74dd85e336fc09e0bdd2ede6fa75
MD5 e22d8bde51414c8a11ba46f4837eba3e
BLAKE2b-256 675c73eec7e141e4630586dca194fb1cb5c60d1830b415bbe9fb21425dfc5c8d

See more details on using hashes here.

File details

Details for the file pyshtools-4.4.1-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

  • Download URL: pyshtools-4.4.1-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.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.6

File hashes

Hashes for pyshtools-4.4.1-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 1267e45bfec14b39a120db3e8e498cfe1993945db5176b8d96590f1627b10803
MD5 09ad24002d3bd423c60b9fd959c6463f
BLAKE2b-256 55ef29857e47833996d8a371b90d0aabf0a7602682c812bc94bba0ec46c41844

See more details on using hashes here.

File details

Details for the file pyshtools-4.4.1-cp27-cp27m-manylinux1_x86_64.whl.

File metadata

  • Download URL: pyshtools-4.4.1-cp27-cp27m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 10.7 MB
  • Tags: CPython 2.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.6

File hashes

Hashes for pyshtools-4.4.1-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 fb1faa5198faf8a6460ee0e829fc95c961bb9213f47b219b6723bdd360154d21
MD5 e97eb0de0fe4e3469437e25ca818314d
BLAKE2b-256 cd448616ae1a4d209f564f9e1d3c0dc3ae9f31d5cb35b7bcb1e331d09bf019fb

See more details on using hashes here.

File details

Details for the file pyshtools-4.4.1-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

File hashes

Hashes for pyshtools-4.4.1-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
Algorithm Hash digest
SHA256 036c765d4e3b6db479fa4cd3b4ba820e9cb71695f495e35977631bb80e16e287
MD5 58658b5a5e884add155ed46c690a403c
BLAKE2b-256 92fbcdc8fd484984511f9d1f4cd84c6c45af58986c33e13015f4d99bdecaaa2a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page