nalgebra

Travis.ci Status Crates.io Status License (3-Clause BSD)


Linear algebra library

… for the Rust programming language.


Quick reference  
A
global view of all the types, functions, and methods.
Vectors and matrices  
The fundamental building blocks of any linear algebra library. Includes both heap-allocated and stack-allocated objects parametrized by their dimensions using type-level integers.
Decompositions, linear solvers, and Lapack  
Compute decompositions, eigenvalues, and solutions to linear systems. Benefit from efficient implementations calling Lapack bindings from the nalgebra-lapack crate.
Points and transformations  
Types wrapping matrices and vectors to represent geometric entities like point and the most common transformations like rotations, isometries, and similarities.
Projections  
Orthographic and perspective projections that agree with computer-graphics convensions.
Recipes for Computer Graphics  
How to translate/rotate a Matrix4. How to build a Model-View-Projection matrix. How to get shader-compliant object representations, etc.
Performance tricks  
Types that may help you achieve better perfomances.
Generic programming  
Use or implement traits to write your own algorithms that may be generic wrt. the vector space and its dimension, the transformation types, etc.