lighthill
GPU-vectorized per-link hydrodynamics for articulated underwater robots in NVIDIA Isaac Lab.
⚠️ Pre-alpha. The package name is reserved on PyPI; the physics engine is in active development. APIs are not yet stable.
What it is
Out of the box, Isaac Lab simulates rigid bodies in air/vacuum. lighthill turns it
into an underwater simulator by applying, every physics step and per link:
- buoyancy
- drag
- added mass
- currents
The key difference from existing fast underwater simulators: forces are computed across an articulated robot — vehicle + manipulator(s) — not a single rigid body. That captures the vehicle↔arm hydrodynamic coupling that single-body simulators miss, while staying GPU-vectorized across thousands of parallel environments for modern RL.
- Topology-agnostic: UV, UVMS, multi-arm, swimming-snake — configured, not hardcoded.
- Config-driven: declare links and coefficients; no per-robot force code.
- Validation-first: ships with a suite checked against standard analytical references.
It fills a real gap: fast underwater sims are single-body; multi-body underwater sims are too slow for large-scale RL.
Status
| Stage | Pre-alpha (name reservation + scaffold) |
| Python | ≥ 3.10 |
| License | MIT |
Name
Named for Sir James Lighthill, whose elongated-body theory of aquatic locomotion is the foundational hydrodynamic model of how slender, articulated bodies generate thrust through reactive (added-mass) forces — exactly the physics this library computes per link.
License
MIT © 2026 Jeff Richley
Metadata
Release files for lighthill 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| lighthill-0.0.1.tar.gz | 2.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| lighthill-0.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 6.7 kB
Release files / lighthill-0.0.1.tar.gz
| Download URL | lighthill-0.0.1.tar.gz |
|---|---|
| Size | 2.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e44856e71e603e6e73e408e48c64ee2e8add80d94d99b99e7641d727afa04a44
|
|
BLAKE2b-256 checksum How to use checksums |
1b70065c06f79a89c04c3caf51aa22803c616d510e03f82f304990b4d0e4be81
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 29, 2026.
Transparency logRelease files / lighthill-0.0.1-py3-none-any.whl
| Download URL | lighthill-0.0.1-py3-none-any.whl |
|---|---|
| Size | 3.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c3f3f1dead5ba304ce77fe8f996b7407247f98dae3e7d8bb90a37db5916747d6
|
|
BLAKE2b-256 checksum How to use checksums |
4292e84b7229d3f27fb0acfa35e424b3198b1d543fc7780348f97546b2250313
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 29, 2026.
Transparency log