An open-source, CPU-only scientific computing framework focused on quantum physics simulations and numerical methods.
Project description
USEL
USEL () is an open-source, CPU-only scientific computing framework focused on quantum physics simulations and numerical methods.
Version 1.0 establishes the mathematical and computational foundation — matrix and linear algebra utilities, numerical solvers, FFT-based frequency analysis, random number generation, configuration/IO/logging utilities, and a CLI — for future quantum mechanics, computational physics, and quantum information modules.
Features
- Runs efficiently on standard consumer hardware, no GPU required
- Operates within 8 GB RAM
- Cross-platform (Windows, Linux, macOS)
- Modular, extensible architecture
- Fully typed, PEP 8 compliant codebase
Installation
uv sync
uv run usel version
Or, for local development:
git clone https://github.com/usel/usel.git
cd usel
uv sync --group dev
See the examples directory for more, including eigenvalue solving, ODE integration, FFT analysis, and numerical integration.
Command Line Interface
uv run usel version
uv run usel doctor
uv run usel benchmark --size 200
uv run usel info
uv run usel config path/to/config.yaml
uv run usel test
Modules
| Module | Description |
|---|---|
usel.math |
Matrix creation, algebra, norms, FFT transforms |
usel.linalg |
Eigenvalues/vectors, SVD, QR, LU, Cholesky |
usel.solvers |
Root finding, ODE solvers, numerical integration |
usel.random |
Random matrices, vectors, and distributions |
usel.utils |
Timing, profiling, validation, precision control |
usel.logging |
Console/file loggers, performance logger |
usel.config |
YAML/JSON/TOML configuration loading |
usel.io |
CSV/JSON/NumPy binary/text file I/O |
usel.cli |
Command line interface |
Non-Goals (v1.0)
This release intentionally excludes the Schrödinger equation, quantum circuits/gates/qubits, machine learning, chemistry simulation, GPU/cloud computing, and AI integration. These are planned for future releases (see CHANGELOG.md and the roadmap below).
Roadmap
-
v1.0 — Scientific Computing Foundation
- Core numerical engine
- Linear algebra utilities
- Matrix operations
- Numerical solvers
- FFT and mathematical utilities
- Configuration, logging, and CLI support
-
v2.0 — Quantum Physics Engine
- Schrödinger equation module
- Quantum wavefunction utilities
- Potential models
- Hamiltonian construction
- Time evolution and visualization
-
v3.0 — Relativistic & Computational Physics
- Dirac equation module
- Spinor algebra
- Gamma matrix operations
- Relativistic particle simulations
- Maxwell equation module
- Electromagnetic field simulations
Still more planning is going on this.
Development
uv sync --group dev
uv run pytest
uv run ruff check .
uv run black --check .
uv run pytest --cov=./ --cov-report xml
Documentation
Full documentation is built with MkDocs:
uv run mkdocs serve
Contributing
Contributions are welcome! See CONTRIBUTING.md for guidelines.
Security
usel performs no telemetry, no network communication, and no data collection. It is fully offline capable.
License
MIT — see LICENSE.
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 usel-1.0.5.tar.gz.
File metadata
- Download URL: usel-1.0.5.tar.gz
- Upload date:
- Size: 34.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1911576569acd753ca318b65376efc3f298fcf5900410fea432861058d5c007a
|
|
| MD5 |
60758953506ebca378614b172af857d1
|
|
| BLAKE2b-256 |
dd4e5b0addb576ae01369220ccbbe12026107830404863bf8296b10f0b4368da
|
Provenance
The following attestation bundles were made for usel-1.0.5.tar.gz:
Publisher:
release.yml on goutam-tech/USEL
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
usel-1.0.5.tar.gz -
Subject digest:
1911576569acd753ca318b65376efc3f298fcf5900410fea432861058d5c007a - Sigstore transparency entry: 2255725916
- Sigstore integration time:
-
Permalink:
goutam-tech/USEL@41737fca2d0a321efa4af3f6824f8decae1c9c4e -
Branch / Tag:
refs/heads/main - Owner: https://github.com/goutam-tech
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@41737fca2d0a321efa4af3f6824f8decae1c9c4e -
Trigger Event:
push
-
Statement type:
File details
Details for the file usel-1.0.5-py3-none-any.whl.
File metadata
- Download URL: usel-1.0.5-py3-none-any.whl
- Upload date:
- Size: 49.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c4296d8d6a0c542c2d467e5c4862ddc9aa4ca3bec926374bb947dd3fb27ab0dc
|
|
| MD5 |
794a4eba053a5cc68a6d7198a9791089
|
|
| BLAKE2b-256 |
096a80b042e89611c1b0397379a267f1c483557fb6a91aea57cb1e8959da7f21
|
Provenance
The following attestation bundles were made for usel-1.0.5-py3-none-any.whl:
Publisher:
release.yml on goutam-tech/USEL
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
usel-1.0.5-py3-none-any.whl -
Subject digest:
c4296d8d6a0c542c2d467e5c4862ddc9aa4ca3bec926374bb947dd3fb27ab0dc - Sigstore transparency entry: 2255725924
- Sigstore integration time:
-
Permalink:
goutam-tech/USEL@41737fca2d0a321efa4af3f6824f8decae1c9c4e -
Branch / Tag:
refs/heads/main - Owner: https://github.com/goutam-tech
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@41737fca2d0a321efa4af3f6824f8decae1c9c4e -
Trigger Event:
push
-
Statement type: