pub(crate) fn gmres_batch(
rhs: &[Complex],
columns: usize,
options: GmresOptions,
apply: impl Fn(&[Complex], usize) -> Result<Vec<Complex>>,
) -> Result<(Vec<Complex>, Vec<Convergence>)>Expand description
Independent GMRES solves of columns column-major right-hand sides. Only the
operator applications are shared: each column keeps its own Krylov basis,
rotations, restart decisions and true-residual convergence certificate.
The caller bounds columns to set the Krylov memory budget. apply receives
only columns that still need that application, in column-major order.