How can I disable fminsearch function to print a warning message?

16 次查看(过去 30 天)
warning('off') is not workink. Why? I get the following message: Exiting: Maximum number of function evaluations has been exceeded - increase MaxFunEvals option. But I want to ignore, and desable printing it.
  2 个评论
Merse Gaspar
Merse Gaspar 2023-8-29
As far as I know, this function does not use the standrad warning stuff. I has to do something with this:
MATLAB:optimfun:fminsearch:ExitingMaxFunctionEvals
But I don't know what is this, and how to disable it.
Steven Lord
Steven Lord 2023-8-29
As far as I know, this function does not use the standrad warning stuff.
That is correct. This message is not a warning.
I has to do something with this:
MATLAB:optimfun:fminsearch:ExitingMaxFunctionEvals
But I don't know what is this, and how to disable it.

请先登录,再进行评论。

采纳的回答

Matt J
Matt J 2023-8-29
fminsearch(___, optimset('Display','off'))

更多回答(1 个)

dpb
dpb 2023-8-29
编辑:dpb 2023-8-29
options = optimset('MaxIter',20);
fun = @(x)100*(x(2) - x(1)^2)^2 + (1 - x(1))^2;
x0 = [-1.2,1];
x = fminsearch(fun,x0,options)
Exiting: Maximum number of iterations has been exceeded - increase MaxIter option. Current function value: 2.002182
x = 1×2
-0.3720 0.1037
lastwarn
ans = 0×0 empty char array
options = optimset('Display','final','MaxIter',20);
[x,~,~,s] = fminsearch(fun,x0,options);
Exiting: Maximum number of iterations has been exceeded - increase MaxIter option. Current function value: 2.002182
options = optimset('Display','none','MaxIter',20);
[x,~,e,s] = fminsearch(fun,x0,options);
warning('off') doesn't work because the message isn't a warning; it's a normal informative output message.
As the above shows, the only way to suppress it is to turn output off entirely and then retrieve the result from the output variable. The exit flag variable, e will be 0 if this is the cause or the message content itself is a member of the output struct, s

类别

Help CenterFile Exchange 中查找有关 Scope Variables and Generate Names 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by