nalgebra_linalg3 0.1.1

LU, Cholesky (+ the column updates of dimension 2), LDLᵀ / UDU, QR, inverse of dimension 3; the `Perm3` methods.

Readme

nalgebra_linalg3

LU, Cholesky (+ the column updates of dimension 2), LDLᵀ / UDU, QR, inverse of dimension 3; the Perm3 methods.

Part of nalgebra-cairo, the Cairo port of the Rust nalgebra crate on fixed::Fixed (Q32.32), built for provable game physics, split per dimension (docs/SPLIT.md §18: a number in a crate name is exactly that dimension; the dimension of a rectangular shape is max(rows, columns)).

What it holds

  • linalg::cholesky: Cholesky;
  • linalg::cholesky_update: the Cholesky column updates (rank_one_update, insert_column, remove_column);
  • linalg::inverse: the inverse;
  • linalg::lu: LU and the permutation (PermN) methods;
  • linalg::qr: QR;
  • linalg::udu: UDU / LDLᵀ.

Upstream's module paths are kept: nalgebra_linalg3::<module path> is nalgebra::<module path> (docs/SPLIT.md §3.1). It depends on nalgebra_core, nalgebra_types2, nalgebra_types3, nalgebra_static3, nalgebra_linalg2 and simba.

Features (all on by default, forwarded by the facade's features of the same name): qr, cholesky_update. Each gates the module of that name; nalgebra with default-features = false leaves them out.

When to depend on it

nalgebra_linalg3 is a member of the declared closure static4_factor (8.9 s / 2.06 GB, 15 s / 3 GB).

Depend on the linalg packages for LU, Cholesky, LDLᵀ / UDU, QR and the inverse of the shapes of that dimension (linalgN pulls the lower ones for the column updates).

For upstream's whole API at upstream's paths, depend on the facade nalgebra, which re-exports every sub-crate at the 0.1.0 paths (behind the features of the same names, on by default and still real: they gate code inside this package).

internal

The modules under internal (internal::linalg) hold items that are crate-private in nalgebra 0.1.0 and that the split had to make pub to share them across crates: no stability promise.

License

MIT.

Metadata

Version 0.1.1

Uploaded 11 hours ago

License MIT

Cairo version ^2.19.4

Size 24.4 KB

Installation

Run the following command in your project dir

scarb add nalgebra_linalg3@0.1.1

Or add the following line to your Scarb.toml

nalgebra_linalg3 = "0.1.1"

Monthly downloads

Links

Keywords

  • linear-algebra
  • fixed-point
  • linalg
  • cholesky
  • cholesky-update
  • inverse
  • lu
  • qr

Owners