fn artefact_solve_single(
n: [usize; 3],
x1: &[f64],
m: &[f64],
gw: &[Vec<f64>],
dk: &[f64],
tol: f64,
max_iter: usize,
) -> (Vec<f64>, LsqrOutcome)Expand description
Step 6 of ilsqr as STI computes it (IlsqrPrecision::Single): the right-hand side
G ∇(M·Re χ₁) in double, rounded to single; the operator y ↦ G ∇(√N F⁻¹(M_ic y)) and its
adjoint r ↦ M_ic F(∇ᴴ(G r)) / √N in single precision, on dense vectors (the unknown over
the whole k-space grid, the residual over three whole image grids); MATLAB’s lsqr on
single data. Returns Re F⁻¹(M_ic y) in double (the artefacts divided by √N), as
artefact_solve does.