Regularization Tools: A MATLAB package for Analysis and Solution of Discrete Ill-Posed Problems. Version 4.1.
By means of the routines in this package, the user can experiment with different regularization strategies. The package also includes 12 test problems.
Requires Matlab Version 7.3. The manual and more details can be found at
Per Christian Hansen (2021). regtools (https://www.mathworks.com/matlabcentral/fileexchange/52-regtools), MATLAB Central File Exchange. Retrieved .
A suggestion for l_curve: if there would be a minimum ratio for lambda, the it would work well with only one free parameter (even if it is not the intended use). For example, on line 55: "if length(s) == 1; reg_param(npoints) = s*smin_ratio; end"
Very well documented, plus the accompanying book; A Well Deserved 5-Star Rating!
could I use the package for under-determined problems? I think No.
it's good until I try to make modifications. I don't understand why the x_0 setting cannot be used for L_curve or GCV for tikhonov. A general version of L_curve and GCV to accept manual defined regularization function would also be helpful.
I am a student who has just started the regularization method. I am not very familiar with the complicated mathematical derivation. Thanks to the author for providing this package, but I have a question. When I operate "regudemo.m" according to Section 3.4 of the manual. The "GCV method for computing the 'optimal' regulariztion parameter for TSVD" in the file does not give the correct result, the calculation result shows "k=28", and the real k is 7, so I would like to ask if there are some problems in the GCV method or it's my computer's fault.
The manual is well documented and the package is really useful!
gcv() function appears to produce a crude approximation of an optimal lambda. It chooses only 200 values of lambda and picks the minimum GCV value among the 200. When I compute the minimum GCV using fminbnd() I get a different lambda even-though the GCV value is the same in both methods. Did anyone test the accuracy of gcv() by other algorithms?
Excellent package,very Good!!Thanks!!
Why is there no python version?
Excellent package. I love this package and it is perfect for me.
My Iterative Tikhonov performs a bit better than
the package's combo. l-curve(), Tikhonov()
Using A=Golub(12),x=ones(12,1), b=A*x, e=normrnd(0,.1,r,1), b=b+e; the package's relative error is 0.254 my algorithm's relative error 0.233. Iterative Tikhonov performs significantly better than Landweber and Kaczmarz in the package for all iterations.
Excellent package. I used it for my Ph.D. and now I'll try with the updated version. Thanks a lot. Just wondering if there is any open implementation of modified routines for some of the algoritms such as Robust GCV, The Robust GCV and the Trnasformed Discrepancy Principle
I got the answer. My blurring matrix was incorrect. Only problem is that it is hard to work on MATLAB when the image size is 512 by 512. I hope that in the future MATLAB will take care of this issue.
I am concerned about tsvd.m
While I was using iogray.tif as an image file(P C Hansen suggested), MATLAB does not work. I don't know when it will work. Is there anyone in the world to help me?
What are the input to tikhonov regularisation function.i mean tel me what are those u s v b x_0.reply me soon.
I want to find that which funtion is uesed to call the "art.m"? Is an test for "art.m" avaliable?
Poorly documented. My own experience with it has been that I cannot know what matrices must I pass as arguments for these functions. For example when using l_corner I have found that you have to pass a matrix s, which I believe to be the matrix given by svd (nowhere it says whether this is right or wrong), and I always get an error because it tries to compute beta./s, with beta=U'*b, which in my case means beta is a 6x1 matrix, while s is a 6x6 matrix. How am I supposed to know how to solve this?, I'm just studying the basics of regularization!!!!!
Very essential tools
I am trying the tikhonov function and getting errors...
suppose my Ax=b
A=matrix of 11375x3
b=vector of 11375x1
I calculated svd of A using svd(A,0)
assuming x_0 is zero
and insert lambda as [10,1,1e-2]
unfortunately..I keep getting an error that
Error in tikhonov (line 66)
if (nargin==6), omega = V\x_0; omega = omega(1:p); end
anyone having the same problem?...Thanks!
Great package but, what is what...?
I have a data vector, and a model for calculating a theoretical data vector. What variables are the data vector and model in the call? Could someone lay out what each of these are?
Great package, really useful to understand better resolution of ill-posed problems
Well written Code thanks to the Author
Fantastic package! Easy to use, stable, great documentation. Many thanks to the author!
thanks a lot ,very convenient and powerful
sharing is good
very good !
These are really useful & essential programs.
Thanks a lot, it is very useful
Thank you for this very useful package.
Thank you for this job.
Great collection of tools. It needs some time to get familiarised with all functions though the documentaion is good.
Excellent tool, good documentation. As with other powerful methods you have to know what you are doing.
Many thanks to the Author for writing and sharing.
Indispensable for everybody working on
This is a very useful package of tools for
the regularization of linear inverse problems. I've found this package to be very
useful both in research and in teaching a
course in inverse problems.
One minor complaint- the author
has released an updated version for MATLAB 6
which isn't on MATLAB Central yet.
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!