Regularization Tools

Regularization Tools Version 4.1 (for MATLAB Version 7.3)

A MATLAB package for analysis and solution of discrete ill-posed problems, developed by Prof. Per Christian Hansen, DTU Compute, Technical University of Denmark. The software is available from:

Background

The software package Regularization Tools, Version 4.1 (for MATLAB Version 7.3), consists of a collection of documented MATLAB functions for analysis and solution of discrete ill-posed problems. By means of this package, the user can experiment with different regularization strategies, compare them, and draw conclusions that would otherwise require a major programming effort. In addition to the analysis and solution routines, the package also includes 12 test problems. The package and the underlying theory is published in:

The most recent version of the package is described in:

The test problems included in this package are outdated - they are too simple and they do not reflect today's challenging 2D problems. Instead, please use the 2D test problems provided in the MATLAB packages IR Tools and AIR Tools II.

Manual

The accompanying manual, which also includes a description of the underlying algorithms, as well as a tutorial, is electronically available:

Additional MATLAB software

The function TVreg.m computes a 1D Total Variation regularized solution.

The function preprocL.m can be used to preprocess an arbitrary L matrix such that it conforms with the requirements in Regularization Tools; requires that the UTV Tools package is installed.

The 212-times-100 helioseismology problem used in several of my papers is available either as an m-file helio.m or as a mat-file helio.mat (note: some browsers try to change the file extension when saving this mat-file).

The functions mblur.m and oblur.m compute block Toeplitz matrices representing motion blur and out-of-focus blur, respectively.

The function pptsvd.m computes piecewise polynomial regularized solutions by means of the PP-TSVD algorithm. Note that the computing time can be very large for large problems.