A numerical library for working with (representations) of Lie Groups and Algebras.
- Spin matrices
su(2)and ladder matricessl(2, C) - Generalized Gell-Mann Matrices
su(n)(Hermitian) - Sylverster "Clock" and "Shift" Matrices
su(n)(non-Hermitian) -
su(n)matrices by "Spherical Harmonics Tensors su(2) addition" via Clebsh-Gordan coefficients - Computation of Structure constants
- Computation of dot/cross product in
su(n)through structure constants
import liepy as lp
su_algebra = lp.gen_gellmann(3)Additional examples, and notebooks, can found here.
use lie::gellmann::*;
use lie::lie_algebra::*;
let su_algebra = get_gellmann(3);
let f = find_structure_constants(su_algebra);
println!("{:?}", f);Pre-built binary wheels are available.
pip install liepy
Lie depends on:
openblas-devel, e.g. (for Ubuntu/Debiansudo apt install libopenblas-devel) or equivalent- Rust >= 1.58
- Maturin
git clone https://github.com/RustyBamboo/lie
cd lie/liepy
maturin build --release --manylinux=off
pip3 install target/wheels/liepy-....whl --force-reinstall
For manylinux compiled wheel, a Docker container is used.
cd lie
docker build -t maturin liepy/
docker run --rm -v $(pwd):/io maturin build --release -m liepy/Cargo.toml
To ensure the library is working as intended, a test can be run:
cargo test
Lie is free and opensource, released under MIT license.