Skip to main content

torch-so3

License PyPI Python Version CI codecov

Generate uniform sets of proper Euler angles (ZYZ format) over the SO(3) group using PyTorch. Note that Euler angles are returned in the order of $(\phi, \theta, \psi)$.

Examples

See the /examples directory for brief notebooks outlining the usage of the package.

Installation

Install via pip

pip install torch-so3

Install via source by first cloning the repository then running.

git clone https://github.com/teamtomo/torch-so3.git
cd torch-so3
pip install -e .

And for development and testing use

pip install -e ".[dev,test]"

For those contributing make sure to run tests before, and to adhere to the pre-commit hooks.

python -m pytest
pre-commit run

Usage

A basic example of generating uniform Euler angles in 4.0 and 6.0 degree increments across the entire SO(3) group is shown below.

from torch_so3 import get_uniform_euler_angles

angles = get_uniform_euler_angles(
    psi_step=4.0,  # units of degrees
    theta_step=6.0,
)
angles.shape  # (103320, 3)

Metadata

Release files for torch-so3 0.6.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for torch-so3 0.6.0
File Size Uploaded
torch_so3-0.6.0.tar.gz 18.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for torch-so3 0.6.0
File Interpreter ABI Platform
torch_so3-0.6.0-py3-none-any.whl Python 3 none any Details

Total release size: 33.6 kB

Release files / torch_so3-0.6.0.tar.gz

Download URL torch_so3-0.6.0.tar.gz
Size 18.4 kB
Tags Source
SHA-256 checksum
How to use checksums
6d000dc78ffebe8d15652934c51e5586ab9b7b6d0c2e83632991950b56e48575
BLAKE2b-256 checksum
How to use checksums
ae21777dd52b3b1ec982c71db53def97757ccdbcf23dbde7d417eefd6eca7ad0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 11, 2026.

Transparency log

Release files / torch_so3-0.6.0-py3-none-any.whl

Download URL torch_so3-0.6.0-py3-none-any.whl
Size 15.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
58d33343a56012dd7f89ebfc749d60f2c8be97edd18640f3755b9ca3ab4503f0
BLAKE2b-256 checksum
How to use checksums
74ba95553d17fa043e2bb2b9df0ccfb0ab46d178fff2070610a0d5969cea9580
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 11, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page