You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+29-21Lines changed: 29 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -49,6 +49,16 @@ See [CHANGELOG.md](CHANGELOG.md) for release history and
49
49
- Large matrices/dimensions with parallelism: use [`faer`](https://crates.io/crates/faer) if you need this
50
50
- Alternate floating-point scalar families: `la-stack` supports `f64` and optional exact arithmetic, not `f32` / `f16` APIs
51
51
52
+
## ✅ Use this crate when
53
+
54
+
- Your matrices and vectors have small, fixed dimensions known at compile time
55
+
- Stack allocation and `Copy` value semantics fit your data flow
56
+
- You want explicit LU / LDLT / determinant APIs rather than a broad algebra toolkit
57
+
- You need exact determinants, exact determinant signs, or exact linear solves
58
+
for fixed-size systems
59
+
- Robust predicates matter for geometry-style workloads near degeneracy
60
+
- You prefer a default build with no runtime dependencies
61
+
52
62
## 🔢 Scalar types
53
63
54
64
The scalar model is intentionally limited to `f64` for floating-point work and
@@ -71,6 +81,12 @@ Add this to your `Cargo.toml`:
71
81
la-stack = "0.4.2"
72
82
```
73
83
84
+
### Feature flags
85
+
86
+
-`default`: no runtime dependencies
87
+
-`exact`: `BigRational` exact determinant and solve APIs
88
+
-`bench`: Criterion, nalgebra, and faer for internal benchmarks
89
+
74
90
Solve a 5×5 system via LU:
75
91
76
92
```rust
@@ -335,7 +351,14 @@ not store NaN or infinity.
335
351
336
352
Raw data: [docs/assets/bench/vs_linalg_lu_solve_median.csv](docs/assets/bench/vs_linalg_lu_solve_median.csv)
337
353
338
-
Summary (median time; lower is better). The “la-stack vs nalgebra/faer” columns show the % time reduction relative to each baseline (positive = la-stack faster):
354
+
Representative benchmark: `lu_solve` factors the matrix and solves one
355
+
right-hand side. Median time is lower-is-better, and the “la-stack vs
356
+
nalgebra/faer” columns show the % time reduction relative to each baseline
357
+
(positive = la-stack faster). This is not an aggregate score across all
358
+
operations.
359
+
360
+
For the full per-kernel comparison methodology, input construction, and
361
+
release-comparison workflow details, see [docs/BENCHMARKING.md](docs/BENCHMARKING.md).
339
362
340
363
<!-- BENCH_TABLE:lu_solve:median:new:BEGIN -->
341
364
@@ -397,37 +420,22 @@ CI runs `just ci` on Ubuntu, macOS, and Windows to keep platform coverage
397
420
aligned with the local comprehensive validation path.
398
421
399
422
For coverage commands and report locations, see [`docs/COVERAGE.md`](docs/COVERAGE.md).
400
-
For the full set of developer commands, see `just --list` and `AGENTS.md`.
423
+
For the full contributor workflow, see [CONTRIBUTING.md](CONTRIBUTING.md).
401
424
402
425
## 📝 Citation
403
426
404
427
If you use this library in academic work, please cite it using [CITATION.cff](CITATION.cff) (or GitHub's
405
-
"Cite this repository" feature). A Zenodo DOI will be added for tagged releases.
428
+
"Cite this repository" feature). Tagged releases are archived on Zenodo.
406
429
407
430
## 📚 References
408
431
409
432
For canonical references to the algorithms used by this crate, see [REFERENCES.md](REFERENCES.md).
410
433
411
434
## 🤖 AI Agents
412
435
413
-
This repository contains an `AGENTS.md` file, which defines the canonical rules and invariants
414
-
for all AI coding assistants and autonomous agents working on this codebase.
415
-
416
-
AI tools (including `ChatGPT`, `Claude`, `CodeRabbit`, `KiloCode`, and `WARP`) are expected to read
417
-
and follow `AGENTS.md` when proposing or applying changes.
418
-
419
-
Portions of this library were developed with the assistance of these AI tools:
420
-
421
-
-[ChatGPT](https://openai.com/chatgpt)
422
-
-[Claude](https://www.anthropic.com/claude)
423
-
-[CodeRabbit](https://coderabbit.ai/)
424
-
-[KiloCode](https://kilocode.ai/)
425
-
-[WARP](https://www.warp.dev)
426
-
427
-
> All code was written and/or reviewed and validated by the author.
428
-
429
-
For full tool citation metadata, see the [AI-Assisted Development Tools](REFERENCES.md#ai-assisted-development-tools)
430
-
section of `REFERENCES.md`.
436
+
AI coding assistants should read [AGENTS.md](AGENTS.md) before proposing or
437
+
applying changes. See [CONTRIBUTING.md](CONTRIBUTING.md) for the repository's
0 commit comments