LSMR: An iterative algorithm for least-squares problems

Official successor to the LSQR algorithm, developed by David Fong and Michael Saunders.

You are now following this Submission

An iterative method is presented for solving linear systems and linear least-square systems. The method is based on the Golub-Kahan bidiagonalization process. It is analytically equivalent to the standard method of MINRES applied to the normal equation. Compared to LSQR, it is safer to terminate LSMR early.

Details about LSMR can be found on
http://www.stanford.edu/group/SOL/software/lsmr.html
http://www.stanford.edu/~clfong/lsmr.html

Cite As

David (2026). LSMR: An iterative algorithm for least-squares problems (https://www.mathworks.com/matlabcentral/fileexchange/27183-lsmr-an-iterative-algorithm-for-least-squares-problems), MATLAB Central File Exchange. Retrieved .

Categories

Find more on Sparse Matrices in Help Center and MATLAB Answers

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.7.0.0

Fixing a bug in local reorthogonalization that the 1st V vector is stored twice. (suggested by David Gleich)

1.6.0.0

Added the option to use local or full reorthogonalization on the v_k vectors. This reduces the number of iterations to convergence by using extra memory to store some of the v_k's.

1.5.0.0

Updated documentation to MATLAB style.
Added testing code.

1.4.0.0

Better formatting of printout.
Updates to documentation.

1.3.0.0

Bug fix for the default value of itnlim.

1.2.0.0

Updated h1 line, some documentation and default parameters.

1.0.0.0