Slepian Scale-Discretised Wavelets in Python
Project description
SLEPLET
SLEPLET is a Python package for the construction of Slepian wavelets in the
spherical and manifold (via meshes) settings. The API of SLEPLET has been
designed in an object-orientated manner and is easily extendable. Upon
installation, SLEPLET comes with two command line interfaces - sphere and
mesh - which allows one to easily generate plots on the sphere and a set of
meshes using plotly.
To read more about Slepian wavelets please see the following publications
Installation
The recommended way to install SLEPLET is via
pip
pip install sleplet
To install the latest development version of SLEPLET clone this repository and
run
pip install -e .
This will install two scripts sphere and mesh which can be used to generate
the figures in
the associated papers.
Supported Platforms
SLEPLET has been tested with
.
Windows is not currently supported as
SLEPLET relies on
pyssht and
pys2let which do not work on Windows. These
may be replaced with s2fft and
s2wav in the future when they are
available on PyPI.
Example Usage
SLEPLET may be interacted with via the API or the CLIs.
API Usage
The following demonstrates the first wavelet (ignoring the scaling function) of the South America region on the sphere.
import sleplet
B, J, J_MIN, L = 3, 0, 2, 128
region = sleplet.slepian.Region(mask_name="south_america")
f = sleplet.functions.SlepianWavelets(L, region=region, B=B, j_min=J_MIN, j=J)
f_sphere = sleplet.slepian_methods.slepian_inverse(f.coefficients, f.L, f.slepian)
sleplet.plotting.PlotSphere(
f_sphere,
f.L,
f"slepian_wavelets_south_america_{B}B_{J_MIN}jmin_{J_MIN+J}j_L{L}",
normalise=False,
region=f.region,
).execute()
CLI Usage
The demonstrates the first wavelet (ignoring the scaling function) of the head region of a Homer Simpson mesh for a per-vertex normals field.
mesh homer -e 3 2 0 -m slepian_wavelet_coefficients -u -z
Documentation
See here for the documentation. This includes demonstrations of the figures from the associated papers along with the API documentation. Further examples are included in the examples folder.
Community Guidelines
We'd love any contributions you may have, please see the contributing guidelines.
Citing
If you use SLEPLET in your research, please cite the paper.
@article{Roddy2023,
title = {{SLEPLET: Slepian Scale-Discretised Wavelets in Python}},
author = {Roddy, Patrick J.},
year = 2023,
journal = {Journal of Open Source Software},
volume = 8,
number = 84,
pages = 5221,
doi = {10.21105/joss.05221},
}
Please also cite S2LET upon which
SLEPLET is built, along with SSHT
in the spherical setting or libigl in
the mesh setting.
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 Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sleplet-1.5.2.tar.gz.
File metadata
- Download URL: sleplet-1.5.2.tar.gz
- Upload date:
- Size: 349.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d344ac876974fd325f8c6ea195d3160cbea459f5149a8ec47f52c2450be18567
|
|
| MD5 |
c846a2cb0bbc255113eff4f4b61c55c7
|
|
| BLAKE2b-256 |
881538d1bf4abf68058dc6783bc167148180c119acc77fa9721a959b5f91c702
|
Provenance
The following attestation bundles were made for sleplet-1.5.2.tar.gz:
Publisher:
deploy.yaml on astro-informatics/sleplet
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sleplet-1.5.2.tar.gz -
Subject digest:
d344ac876974fd325f8c6ea195d3160cbea459f5149a8ec47f52c2450be18567 - Sigstore transparency entry: 308426798
- Sigstore integration time:
-
Permalink:
astro-informatics/sleplet@08d5e7b8e42f8d362bd15495fd2bb23359b10925 -
Branch / Tag:
refs/tags/v1.5.2 - Owner: https://github.com/astro-informatics
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yaml@08d5e7b8e42f8d362bd15495fd2bb23359b10925 -
Trigger Event:
push
-
Statement type:
File details
Details for the file sleplet-1.5.2-py3-none-any.whl.
File metadata
- Download URL: sleplet-1.5.2-py3-none-any.whl
- Upload date:
- Size: 385.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
76def6b6f065f131e4bd92a6e7dc6fdd0eaabd760e9ed7a386612e8be2644ba3
|
|
| MD5 |
e5eee10a10449b20efd279d31214543c
|
|
| BLAKE2b-256 |
dcf03a7a1ce218adc95024ccb11a59c94a21e2d03736ed8eccf30f5cdb9c76eb
|
Provenance
The following attestation bundles were made for sleplet-1.5.2-py3-none-any.whl:
Publisher:
deploy.yaml on astro-informatics/sleplet
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sleplet-1.5.2-py3-none-any.whl -
Subject digest:
76def6b6f065f131e4bd92a6e7dc6fdd0eaabd760e9ed7a386612e8be2644ba3 - Sigstore transparency entry: 308426817
- Sigstore integration time:
-
Permalink:
astro-informatics/sleplet@08d5e7b8e42f8d362bd15495fd2bb23359b10925 -
Branch / Tag:
refs/tags/v1.5.2 - Owner: https://github.com/astro-informatics
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yaml@08d5e7b8e42f8d362bd15495fd2bb23359b10925 -
Trigger Event:
push
-
Statement type: