Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SLEPLET: Slepian Scale-Discretised Wavelets in Python #148

Closed
4 of 14 tasks
paddyroddy opened this issue Nov 8, 2023 · 3 comments
Closed
4 of 14 tasks

SLEPLET: Slepian Scale-Discretised Wavelets in Python #148

paddyroddy opened this issue Nov 8, 2023 · 3 comments

Comments

@paddyroddy
Copy link

Submitting Author: Patrick J. Roddy (@paddyroddy)
Package Name: SLEPLET
One-Line Description of Package: Slepian Scale-Discretised Wavelets in Python
Repository Link (if existing): https://github.com/astro-informatics/sleplet


Code of Conduct & Commitment to Maintain Package

Description

  • Include a brief paragraph describing what your package does:

SLEPLET is a Python package for the construction of Slepian wavelets in the spherical and manifold (via meshes) settings. SLEPLET handles any spherical region as well as the general manifold setting. The API is documented and easily extendible, designed in an object-orientated manner. Upon installation, SLEPLET comes with two command line interfaces - sphere and mesh - that allow one to easily generate plots on the sphere and a set of meshes using plotly. Whilst these scripts are the primary intended use, SLEPLET may be used directly to generate the Slepian coefficients in the spherical/manifold setting and use methods to convert these into real space for visualisation or other intended purposes. The construction of the sifting convolution was required to create Slepian wavelets. As a result, there are also many examples of functions on the sphere in harmonic space (rather than Slepian) that were used to demonstrate its effectiveness. SLEPLET has been used in the development of various papers.

Community Partnerships

We partner with communities to support peer review with an additional layer of
checks that satisfy community requirements. If your package fits into an
existing community please check below:

Scope

  • Please indicate which category or categories.
    Check out our package scope page to learn more about our
    scope. (If you are unsure of which category you fit, we suggest you make a pre-submission inquiry):

    • Data retrieval
    • Data extraction
    • Data processing/munging
    • Data deposition
    • Data validation and testing
    • Data visualization
    • Workflow automation
    • Citation management and bibliometrics
    • Scientific software wrappers
    • Database interoperability

Domain Specific & Community Partnerships

- [ ] Geospatial
- [ ] Education
- [ ] Pangeo
- [X] Unsure/Other (explain below)
  • Explain how and why the package falls under these categories (briefly, 1-2 sentences). Please note any areas you are unsure of:

Not sure what these community partnerships are. Only recently learny about pyOpenSci!

  • Who is the target audience and what are the scientific applications of this package?

Many fields in science and engineering measure data that inherently live on non-Euclidean geometries, such as the sphere. Techniques developed in the Euclidean setting must be extended to other geometries. Due to recent interest in geometric deep learning, analogues of Euclidean techniques must also handle general manifolds or graphs. Often, data are only observed over partial regions of manifolds, and thus standard whole-manifold techniques may not yield accurate predictions. Slepian wavelets are designed for datasets like these. Slepian wavelets are built upon the eigenfunctions of the Slepian concentration problem of the manifold: a set of bandlimited functions that are maximally concentrated within a given region. Wavelets are constructed through a tiling of the Slepian harmonic line by leveraging the existing scale-discretised framework. Whilst these wavelets were inspired by spherical datasets, like in cosmology, the wavelet construction may be utilised for manifold or graph data.

  • Are there other Python packages that accomplish similar things? If so, how does yours differ?

To the author's knowledge, there is no public software that allows one to compute Slepian wavelets
(or a similar approach) on the sphere or general manifolds/meshes. SHTools is a Python code used for spherical harmonic transforms, which allows one to compute the Slepian functions of the spherical polar cap. A series of MATLAB scripts exist in slepian_alpha, which permits the calculation of the Slepian functions on the sphere. However, these scripts are very specialised and hard to generalise.

  • Any other questions or issues we should be aware of:

Has been accepted in JOSS
JOSS

P.S. Have feedback/comments about our review process? Leave a comment here

@NickleDave
Copy link
Contributor

Hi @paddyroddy and welcome to pyOpenSci.

Thank you for your detailed presubmission inquiry.
I can confirm that SLEPTET is in scope for pyOpenSci, and we will be happy to provide you with a review.

Please go ahead and make a full submission, and reference this issue by number when you do.

@paddyroddy
Copy link
Author

Okay thank you, will do!

@NickleDave
Copy link
Contributor

Great, looking forward to your submission!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

No branches or pull requests

2 participants