slmsuite
Python package for high-performance spatial light modulator (SLM) control and holography. Supports features from aberration-corrected 3D point clouds to automated Fourier-domain calibrations.
Science Score: 64.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
-
✓Academic publication links
Links to: arxiv.org -
✓Committers with academic emails
3 of 6 committers (50.0%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.7%) to scientific vocabulary
Keywords
Repository
Python package for high-performance spatial light modulator (SLM) control and holography. Supports features from aberration-corrected 3D point clouds to automated Fourier-domain calibrations.
Basic Info
- Host: GitHub
- Owner: slmsuite
- License: mit
- Language: Python
- Default Branch: main
- Homepage: https://slmsuite.readthedocs.io
- Size: 7.3 MB
Statistics
- Stars: 112
- Watchers: 4
- Forks: 34
- Open Issues: 23
- Releases: 8
Topics
Metadata Files
README.md
High-Performance Spatial Light Modulator Control and Holography
slmsuite combines GPU-accelerated beamforming algorithms with optimized hardware control, automated calibration, and user-friendly scripting to enable high-performance programmable optics with modern spatial light modulators.
Key Features
- GPU-accelerated iterative phase retrieval algorithms (e.g. Gerchberg-Saxton, weighted GS, or phase-stationary WGS)
- A simple hardware-control interface for working with various SLMs and cameras
- Automated Fourier- to image-space coordinate transformations: choose how much light goes to which camera pixels;
slmsuitetakes care of the rest! - Automated wavefront calibration to improve manufacturer-supplied flatness maps or compensate for additional aberrations along the SLM imaging train
- Optimized optical focus/spot arrays using camera feedback, automated statistics, and numerous analysis routines
- Mixed region amplitude freedom, which ignores unused far-field regions in favor of optimized hologram performance in high-interest areas.
- Toolboxes for structured light, imprinting sectioned phase masks, SLM unit conversion, padding and unpadding data, and more
- A fully-featured example library that demonstrates these and other features
Installation
Install the stable version of slmsuite from PyPI using:
console
pip install slmsuite
Install the latest version of slmsuite from GitHub using:
console
pip install git+https://github.com/slmsuite/slmsuite
Documentation and Examples
Extensive documentation and API reference are available through readthedocs.
Examples can be found embedded in documentation, live through nbviewer, or directly in source.
Citation
slmsuite is built upon the work of many others. If you used any technique in particular,
be sure to check our documentation for links to relevant papers.
For acknowledgement of the package or unique features such as
aberration-space holography, please use the following citation:
@misc{
christen2025slmsuite,
Author = {Ian Christen and Christopher Panuski and Thomas Propson and Dirk Englund},
Title = {Full-volume aberration-space holography},
Year = {2025},
Eprint = {arXiv:2505.08777},
}
Owner
- Name: slmsuite
- Login: slmsuite
- Kind: organization
- Location: United States of America
- Website: slmsuite.readthedocs.io
- Repositories: 1
- Profile: https://github.com/slmsuite
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
preferred-citation:
type: article
authors:
- family-names: "Christen"
given-names: "Ian"
- family-names: "Panuski"
given-names: "Christopher"
- family-names: "Propson"
given-names: "Thomas"
- family-names: "Englund"
given-names: "Dirk"
doi: "10.48550/arXiv.2505.08777"
journal: "arXiv"
month: 5
title: "Full-volume aberration-space holography"
url: "https://arxiv.org/abs/2505.08777"
year: 2025
GitHub Events
Total
- Create event: 18
- Release event: 6
- Issues event: 40
- Watch event: 51
- Delete event: 17
- Issue comment event: 136
- Push event: 64
- Pull request review comment event: 5
- Pull request review event: 15
- Pull request event: 32
- Fork event: 16
Last Year
- Create event: 18
- Release event: 6
- Issues event: 40
- Watch event: 51
- Delete event: 17
- Issue comment event: 136
- Push event: 64
- Pull request review comment event: 5
- Pull request review event: 15
- Pull request event: 32
- Fork event: 16
Committers
Last synced: over 1 year ago
Top Committers
| Name | Commits | |
|---|---|---|
| Ian Christen | i****r@m****u | 253 |
| Chris Panuski | c****i@g****m | 44 |
| Thomas Propson | t****n@p****m | 24 |
| ichristen | i****n@g****m | 15 |
| lianebernstein | l****n@m****u | 5 |
| Chris Panuski | c****i@m****u | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 18
- Total pull requests: 14
- Average time to close issues: 4 months
- Average time to close pull requests: 26 days
- Total issue authors: 9
- Total pull request authors: 7
- Average comments per issue: 2.56
- Average comments per pull request: 3.64
- Merged pull requests: 8
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 17
- Pull requests: 14
- Average time to close issues: about 2 months
- Average time to close pull requests: 26 days
- Issue authors: 9
- Pull request authors: 7
- Average comments per issue: 1.82
- Average comments per pull request: 3.64
- Merged pull requests: 8
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- ichristen (18)
- kaller-wu (5)
- tpr0p (3)
- bodokaiser (2)
- OMozafar (2)
- zzpwahaha (1)
- dwgong (1)
- Lufter (1)
- BolitaKinki (1)
- lufermar (1)
- SimonLane (1)
- styojm-rockefeller (1)
- calebrich (1)
Pull Request Authors
- ichristen (8)
- bodokaiser (5)
- darikoneil (1)
- mkm2 (1)
- kwang428 (1)
- calebrich (1)
- EiseZ (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 118 last-month
- Total dependent packages: 2
- Total dependent repositories: 0
- Total versions: 6
- Total maintainers: 2
pypi.org: slmsuite
Package for high-performance spatial light modulator (SLM) control and holography.
- Homepage: https://github.com/slmsuite/slmsuite
- Documentation: https://slmsuite.readthedocs.io/en/latest/
- License: MIT License
-
Latest release: 0.2.1
published about 1 year ago
Rankings
Dependencies
- IPython *
- h5py *
- matplotlib *
- nbsphinx *
- numpy *
- opencv-python *
- pandoc *
- requests *
- scipy *
- sphinx ==5.3.0
- sphinx_copybutton *
- sphinx_last_updated_by_git *
- sphinx_rtd_theme *
- tqdm *
- h5py *
- matplotlib *
- numpy *
- opencv-python *
- scipy *
- tqdm *