matlab问题,如图,怎么会多出0.0001呢?为什么

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/19 05:32:08
matlab问题,如图,怎么会多出0.0001呢?为什么matlab问题,如图,怎么会多出0.0001呢?为什么matlab问题,如图,怎么会多出0.0001呢?为什么fminbnd是通过数值方法求解

matlab问题,如图,怎么会多出0.0001呢?为什么
matlab问题,如图,怎么会多出0.0001呢?为什么

matlab问题,如图,怎么会多出0.0001呢?为什么

fminbnd是通过数值方法求解,无法保证得到的解绝对准确,只能是相对准确.

而这个相对量是由算法设置的TolX决定的,只要满足误差比TolX小,就认为得到的想要的结果.TolX的默认值是1e-4,上面求出的结果是满足这个要求的:

>> format long
>> fminbnd(@(x)2*x,3,9)
ans =
   3.000057869254071

应该指出的是,TolX并不是指求出的结果与精确解之间的误差——事实上,fminbnd函数并不知道精确解是多少,它只是按照一定的规则反复迭代,直到对于相邻的两次迭代,自变量x的变化足够小(小于TolX),就结束迭代,返回结果.