lib.rs 837 B

123456789101112131415161718
  1. //! This is a LINEar ALgebra library.
  2. //!
  3. //! Most stuff works with the traits `Float`, `Numeric` and `Primitive` in some combination.
  4. //!
  5. //! The combination `Float + Numeric` allows `f32`, `f64`, `Complex<f32>` and `Complex<f64>`,
  6. //! whereas `Float + Numeric + Primitive` would only allow `f32` and `f64`.
  7. //! This trick is used to prevent e.g. `Complex<Complex<f32>>`, as that would not make sense.
  8. //!
  9. //! There are no complex numbers with integral types, as these would be rather impractical
  10. //! when calculating basically anything.
  11. //!
  12. //! As a consequence the complex types `Complex<f32>` and `Complex<f64>` are also considered
  13. //! `Float` in our context.
  14. pub use self::traits::{Float, Numeric, Primitive};
  15. pub use self::types::{ColumnVector, Complex, GenericMatrix, Quaternion, RowVector, SquareMatrix};
  16. mod traits;
  17. mod types;