How to suppress warnings from fsolve method?
Show older comments
Hello,
how to suppress these kind of warnings for the fsolve method? It is orange by the way.
Warning: Trust-region-dogleg algorithm of FSOLVE cannot handle non-square systems; using Levenberg-Marquardt algorithm instead.
> In fsolve (line 298)
In function1 (line 24)
In mainScript (line 265)
Thank you!
Answers (2)
The message means, that the default choise of the Trust-region-dogleg method is not suffcient.
The best way to suppress a warning is to fix the reason. If you know in advance, that you need a Levenberg-Marquardt algorithm, enable it explicitely instead of letting fsolve examine the problem by its own. See https://www.mathworks.com/help/optim/ug/fsolve.html#inputarg_options .
5 Comments
Manuela Gräfe
on 9 May 2017
Torsten
on 9 May 2017
As Jan suggests, enable the algorithm explicitly:
options = optimoptions('fsolve','Algorithm','levenberg-marquardt');
x = fsolve(fun,x0,options)
Best wishes
Torsten.
Manuela Gräfe
on 9 May 2017
Walter Roberson
on 9 May 2017
What benefit is being derived from not passing in the Algorithm option?
Jan
on 10 May 2017
@Manuela: It is possible to suppress warning messages, see doc warning . But it is a bad idea to ignore warnings. Even if you now know, what you are doing, your program might change in the future. Your data might be delivered as square matrix by accident and then a completely different solver is used. This might have unexpected consequences.
Alan Weiss
on 9 May 2017
0 votes
Alan Weiss
MATLAB mathematical toolbox documentation
1 Comment
Walter Roberson
on 9 May 2017
In particular, the ID is optim:fsolve:NonSquareSystem
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!