/nalgebra-spacetime

Spacetime Extension for nalgebra

Primary LanguageRustBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

nalgebra-spacetime

Spacetime Extension for nalgebra

Build Documentation Downloads Version Rust License

Present Features

  • Minkowski space as special case of n-dimensional Lorentzian space.
  • Raising/Lowering tensor indices: dual()/r_dual()/c_dual().
  • Metric contraction of degree-1/degree-2 tensors: contr()/scalar().
  • Spacetime interval() with LightCone depiction.
  • Inertial OFrame of reference holding boost parameters.
  • Lorentz boost as new_boost() matrix.
  • Direct Lorentz boost() to compose() velocities.
  • Wigner rotation() and axis_angle() between to-be-composed boosts.

Future Features

  • Event4/Velocity4/Momentum4/... equivalents of Point4/....
  • Categorize Rotation4/PureBoost4/... as Boost4/....
  • Wigner rotation() and axis_angle() of an already-composed Boost4.
  • Distinguish pre/post-rotation and active/passive Boost4 compositions.

Pseudo-local Documentation Builds

# Build and open documentation inclusive dependencies.
cargo doc --open
# Rebuild this crate's documentation with KaTeX.
cargo tex
# Refresh opened documentation.

With cargo tex defined in .cargo/config.toml. Note that navigating the documentation requires web access as KaTeX is embedded via remote CDN.

License

Copyright © 2020,2021,2024 Rouven Spreckels rs@qu1x.dev

This project is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.