Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Spacetime Extension for nalgebra

Build Status Downloads Rust Version Documentation License

API Documentation with KaTeX: stable | master

Present Features

  • Minkowski space as special case of LorentzianN 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 FrameN 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.
  • Spacetime algebra (STA) as special case of CliffordN space.

Pseudo-local Documentation Builds

# Build and open documentation inclusive dependencies.
cargo doc --open
# Update any source file, then regenerate this crate's documentation with KaTeX.
cargo tex
# Refresh opened documentation.

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




Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the works by you shall be licensed as above, without any additional terms or conditions.