e3nn-jax
Equivariant convolutional neural networks for the group E(3) of 3 dimensional rotations, translations, and mirrors.
What it is and what it does
e3nn-jax is a JAX implementation of Euclidean neural networks that enforce equivariance to 3D rotations, translations, and mirror symmetries. It wraps tensor data in an IrrepsArray structure that tracks irreducible representations (irreps) of the E(3) group, allowing neural networks to respect these geometric symmetries by design. This is particularly useful for molecular systems, point clouds, and other 3D data where physical symmetries should be preserved or exploited by the model.
The package provides operations like tensor products, norms, and convolutions that work directly on irreps-annotated arrays. It depends on jax, jaxlib, numpy, sympy, and attrs. The library is actively maintained, supports modern Python versions (3.9+), and is distributed under Apache 2.0, making it suitable for both research and commercial use.
Use it for:
- Train equivariant neural networks on molecular structures or point clouds where 3D symmetries matter for prediction accuracy.
- Build MACE-style interatomic potential models for molecular dynamics simulations with guaranteed rotation/translation equivariance.
- Prototype geometric deep learning models in JAX that respect Euclidean symmetries without manual constraint engineering.
- Compute tensor products and irrep decompositions for group-theoretic operations in physics-informed machine learning.
- Develop models on GPU/TPU hardware using JAX's compilation and automatic differentiation with built-in symmetry guarantees.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Implements equivariant convolutional neural networks for 3D rotations, translations, and mirrors using JAX, with an IrrepsArray data structure that tracks irreducible representations alongside tensor data.
Yes. The package is actively maintained, has low install friction, carries a permissive license, and fills a specific niche—equivariant neural networks in JAX with explicit irreps tracking. Install it if you need to build or experiment with E(3)-equivariant models; skip it if you don't work with 3D geometric data or prefer PyTorch.
Install
e3nn-jax on PyPI
pip
pip install e3nn-jaxuv
uv add e3nn-jaxpoetry
poetry add e3nn-jaxInstalling e3nn-jax
Before you install
Low friction installation with a pure Python wheel. Active maintenance as of April 2026 with recent commits. Supports Python 3.9, 3.10, and 3.11. Runtime dependencies are well-established scientific libraries (jax, jaxlib, numpy, sympy, attrs).
License in practice
Apache License 2.0 permits commercial and derivative use with attribution. No restrictions on modification or distribution, making it suitable for both research and production applications.
Quickstart
pip install e3nn-jax
import e3nn_jax as e3nn
import jax
array = e3nn.normal("0e + 1o", jax.random.PRNGKey(0))
norms = e3nn.norm(array)
tensor_product = e3nn.tensor_square(array)
Requires JAX and jaxlib, which may need GPU/TPU setup depending on your hardware; jaxlib installation can be non-trivial on some systems.
Verify before relying
- Whether the 44% speed advantage over PyTorch holds across different model architectures and hardware beyond the MACE/revMD-17 benchmark cited.
- Maturity and stability guarantees for production use in molecular dynamics or other scientific domains.
- Whether sympy is a runtime dependency or only needed for specific symbolic operations.
Package facts
| License | Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — jax, jaxlib, sympy, numpy, attrs |
| Maintenance | actively maintained — 135 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 76,628/month — #14,606 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: e3nn_jax-0.21.0-py3-none-any.whl
Tags
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to…
permissive · top 100 on PyPI
huggingface-hubClient library and CLI tool for downloading,…
permissive · top 100 on PyPI
langchainLangChain provides a framework for building…
permissive · top 1,000 on PyPI
hf-xethf-xet provides chunk-based deduplication and…
permissive · top 1,000 on PyPI
tokenizersTokenizers converts raw text into token…
permissive · top 1,000 on PyPI
transformersTransformers provides a unified framework for…
permissive · top 1,000 on PyPI
e3nne3nn provides PyTorch-based operations for…
permissive · top 15,000 on PyPI
cuequivariance-torchPyTorch bindings for NVIDIA's CUDA-accelerated…
permissive · top 15,000 on PyPI
cuequivariancecuEquivariance provides CUDA-accelerated…
permissive · top 15,000 on PyPI
objaverseDownloads and processes Objaverse-XL, an open…
permissive · top 15,000 on PyPI
mace-torchMACE trains and evaluates machine learning…
permissive · top 15,000 on PyPI
cuequivariance-ops-torch-cu12Provides CUDA-accelerated PyTorch kernels and…
unclear · top 15,000 on PyPI
jaxliejaxlie implements Lie groups (SO2, SE2, SO3,…
permissive · top 15,000 on PyPI
edtComputes Euclidean distance transforms for 1D,…
copyleft · top 15,000 on PyPI
cuequivariance-ops-cu13Provides CUDA kernels for equivariant neural…
unclear · top 15,000 on PyPI
equinoxEquinox provides neural network and model…
permissive · top 5,000 on PyPI