Skip to content

Implement brutally simple `solve()`

Ryan Curtin requested to merge rcurtin/bandicoot-code:solve into unstable

The Armadillo solve() function is really complicated; this one is not.

I used the LU decomposition solver (getrf/getrs) to provide an interface to solve systems AX = B with A square.

The solve_opts struct is implemented but not documented, because there's only one option: solve_opts::fast (and none defaults to fast).

As time goes on, more can be added, but this is at least a very rudimentary implementation that can get us started.

There are easy optimizations for A.t() * X = B and a * A.t() * X = B, so I implemented those too.

Merge request reports