我正在使用contentinject.js
求解方程组。有时fsolve
会警告我,目标函数返回fsolve
并尝试新点。我想弄清楚我的等式在生成警告时如何传递NaN
特定的猜测fsolve put。有没有办法在那时停止fsolve并获得猜测值?
我尝试了NaN
,但它没有多大帮助,因为我的函数中有一些位置会生成等于dbstop if naninf
或NaN
的中间变量。我很困惑为什么方程最终返回Inf
。
答案 0 :(得分:0)
如果您有大量迭代,它不是最佳的,但您可以设置Display
fsolve
选项以在每次迭代后显示参数:
options = optimoptions('fsolve','Display','iter');
[x,fval] = fsolve(@fun,x0,options)
答案 1 :(得分:0)
感谢上述答案,但他们并没有真正解决我的问题。我刚刚提出了一个简单的修复:检查函数中的输出是否包含NaN
;如果是,请使用全局变量检索参数值并生成错误。