SLEPLET
SLEPLET: Slepian Scale-Discretised Wavelets in Python - Published in JOSS (2023)
Science Score: 100.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 20 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org, zenodo.org -
✓Committers with academic emails
1 of 7 committers (14.3%) from academic institutions -
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Keywords from Contributors
Scientific Fields
Repository
Slepian Scale-Discretised Wavelets in Python
Basic Info
- Host: GitHub
- Owner: astro-informatics
- License: bsd-3-clause
- Language: Python
- Default Branch: main
- Homepage: https://pypi.org/project/sleplet
- Size: 29.1 MB
Statistics
- Stars: 9
- Watchers: 3
- Forks: 1
- Open Issues: 3
- Releases: 38
Topics
Metadata Files
README.md
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
sh
pip install sleplet
To install the latest development version of SLEPLET clone this repository and
run
sh
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.
```python import sleplet
B, J, J_MIN, L = 3, 0, 2, 128
region = sleplet.slepian.Region(maskname="southamerica") f = sleplet.functions.SlepianWavelets(L, region=region, B=B, jmin=JMIN, j=J) fsphere = sleplet.slepianmethods.slepianinverse(f.coefficients, f.L, f.slepian) sleplet.plotting.PlotSphere( fsphere, f.L, f"slepianwaveletssouthamerica{B}B{JMIN}jmin{JMIN+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.
sh
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.
bibtex
@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.
Owner
- Name: AstroInfo Team @ UCL
- Login: astro-informatics
- Kind: organization
- Location: United Kingdom
- Website: http://www.jasonmcewen.org/
- Repositories: 29
- Profile: https://github.com/astro-informatics
JOSS Publication
SLEPLET: Slepian Scale-Discretised Wavelets in Python
Tags
manifolds python slepian-functions sphere waveletsCitation (CITATION.cff)
cff-version: 1.2.0
authors:
- family-names: Roddy
given-names: Patrick J.
orcid: https://orcid.org/0000-0002-6271-1700
doi: 10.5281/zenodo.7268074
message: >-
If you use this software, please cite our article in the Journal of Open
Source Software.
title: "SLEPLET: Slepian Scale-Discretised Wavelets in Python"
preferred-citation:
authors:
- family-names: Roddy
given-names: Patrick J.
orcid: https://orcid.org/0000-0002-6271-1700
date-published: 2023-04-20
doi: 10.21105/joss.05221
issn: 2475-9066
issue: 84
journal: Journal of Open Source Software
publisher:
name: Open Journals
start: 5221
title: "SLEPLET: Slepian Scale-Discretised Wavelets in Python"
type: article
url: https://joss.theoj.org/papers/10.21105/joss.05221
volume: 8
CodeMeta (codemeta.json)
{
"@context": "https://w3id.org/codemeta/3.0",
"applicationCategory": "Information Theory",
"author": [
{
"affiliation": {
"name": "Centre for Advanced Research Computing, University College London",
"type": "Organization"
},
"email": "patrickjamesroddy@gmail.com",
"familyName": "Roddy",
"givenName": "Patrick J.",
"id": "https://orcid.org/0000-0002-6271-1700",
"type": "Person"
}
],
"codemeta:contIntegration": {
"id": "https://github.com/astro-informatics/sleplet/actions"
},
"codeRepository": "https://github.com/astro-informatics/sleplet.git",
"continuousIntegration": "https://github.com/astro-informatics/sleplet/actions",
"dateCreated": "2017-10-21",
"datePublished": "2022-10-31",
"description": "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.",
"developmentStatus": "active",
"identifier": "10.5281/zenodo.7268074",
"issueTracker": "https://github.com/astro-informatics/sleplet/issues",
"keywords": [
"manifolds",
"python",
"slepian-functions",
"sphere",
"wavelets"
],
"license": "https://spdx.org/licenses/BSD-3-Clause",
"name": "SLEPLET",
"operatingSystem": [
"Linux",
"macOS"
],
"programmingLanguage": "Python 3",
"referencePublication": "https://joss.theoj.org/papers/10.21105/joss.05221",
"type": "SoftwareSourceCode"
}
GitHub Events
Total
- Create event: 47
- Release event: 7
- Issues event: 1
- Watch event: 2
- Delete event: 41
- Issue comment event: 24
- Push event: 144
- Pull request review comment event: 4
- Pull request review event: 37
- Pull request event: 72
Last Year
- Create event: 48
- Release event: 7
- Issues event: 1
- Watch event: 2
- Delete event: 41
- Issue comment event: 24
- Push event: 145
- Pull request review comment event: 4
- Pull request review event: 37
- Pull request event: 73
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| paddyroddy | p****y@g****m | 2,033 |
| renovate[bot] | 2****] | 143 |
| paddyroddy | p****y@g****m | 10 |
| github-actions[bot] | 4****] | 2 |
| github-actions | g****s@g****m | 1 |
| dependabot[bot] | 4****] | 1 |
| Daniel S. Katz | d****z@i****g | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 21
- Total pull requests: 464
- Average time to close issues: 15 days
- Average time to close pull requests: 4 days
- Total issue authors: 4
- Total pull request authors: 4
- Average comments per issue: 1.05
- Average comments per pull request: 0.32
- Merged pull requests: 414
- Bot issues: 1
- Bot pull requests: 175
Past Year
- Issues: 3
- Pull requests: 98
- Average time to close issues: 15 days
- Average time to close pull requests: 5 days
- Issue authors: 1
- Pull request authors: 3
- Average comments per issue: 0.67
- Average comments per pull request: 0.52
- Merged pull requests: 87
- Bot issues: 0
- Bot pull requests: 46
Top Authors
Issue Authors
- paddyroddy (16)
- klb2 (3)
- renovate[bot] (1)
- Saran-nns (1)
Pull Request Authors
- paddyroddy (288)
- renovate[bot] (171)
- github-actions[bot] (4)
- danielskatz (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 133 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 30
- Total maintainers: 1
pypi.org: sleplet
Slepian Scale-Discretised Wavelets in Python
- Homepage: https://github.com/astro-informatics/sleplet
- Documentation: https://astro-informatics.github.io/sleplet
- License: bsd-3-clause
-
Latest release: 1.5.2
published 5 months ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v3 composite
- actions/setup-python v4 composite
- sourcery-ai/action v1 composite
- actions/checkout 8ade135a41bc03ea155e62e844d188df1ea18608 composite
- actions/setup-python v4 composite
- pypa/gh-action-pypi-publish release/v1 composite
- actions/checkout 8ade135a41bc03ea155e62e844d188df1ea18608 composite
- actions/setup-python v4 composite
- peaceiris/actions-gh-pages v3 composite
- actions/cache v3 composite
- actions/checkout 8ade135a41bc03ea155e62e844d188df1ea18608 composite
- actions/setup-python v4 composite
- FantasticFiasco/action-update-license-year v3 composite
- actions/checkout 8ade135a41bc03ea155e62e844d188df1ea18608 composite
- actions/checkout 8ade135a41bc03ea155e62e844d188df1ea18608 composite
- actions/upload-artifact v3 composite
- openjournals/openjournals-draft-action master composite
- actions/cache v3 composite
- actions/checkout 8ade135a41bc03ea155e62e844d188df1ea18608 composite
- actions/setup-python v4 composite
- coverallsapp/github-action v2 composite
- cmocean >=3.0.3
- gmpy2 >=2.1.5
- hypothesis >=6.70.2
- jaxlib >=0.4.14
- libigl >=2.4.1
- matplotlib >=3.7.1
- multiprocess >=0.70.14
- numba >=0.56.4
- numpy >=1.23.5
- platformdirs >=3.2.0
- plotly >=5.14.0
- pooch >=1.7.0
- pydantic >=2.3.0
- pyssht >=1.5.2
- s2wav @git+https://github.com/astro-informatics/s2wav.git@main#egg=s2wav
- scipy >=1.10.1
- seaborn >=0.12.2
- tomli >=2.0.1
- tqdm >=4.65.0
