MATLAB求最小值问题-1.08*(97.5+1.66*sin(8*3.14*x)+4.73*sin(40*3.14*x)+15.14*sin(160*3.14*x)) 这个函数我用fminbnd 求出来是多个值,不知道哪里有错?或者不应该用fminbnd?我是初初学者,谢谢各位朋友了.

来源:学生作业帮助网 编辑:作业帮 时间:2024/06/07 10:15:40
MATLAB求最小值问题-1.08*(97.5+1.66*sin(8*3.14*x)+4.73*sin(40*3.14*x)+15.14*sin(160*3.14*x)) 这个函数我用fminbnd 求出来是多个值,不知道哪里有错?或者不应该用fminbnd?我是初初学者,谢谢各位朋友了.
xTYOQ+8ٵ)ojCZ)i(X0`Q  ,j ι3_sYHLڗ 9ws x_M~94B$'@=eZ~뉍[LOx׈w- >imNK<il.zB/5mYlItCI}[F-J9*JVs A+֊lP.='%z$dibɭe3ith_Lz4e8C5,MTJv # &k߶PBt;btf:*ds RY<7A_hZv Jտ^"N|YqHbef#g zAÄD[90sGcn{8SGr>ƻ0$d} U)’B[)9X3ӎi2kV9 'NQP]--R\Y aר0ӎut!0vgϣMc?z`C3{U x#!=DHٲ5f}t K2ZN@&vAT31ȑdܭ'-f(I1l0q)G7EIAhSAw #U@k> JxmA+bx\vzUUoLm0EBg46Pf-2>46A2>D/74ƾ

MATLAB求最小值问题-1.08*(97.5+1.66*sin(8*3.14*x)+4.73*sin(40*3.14*x)+15.14*sin(160*3.14*x)) 这个函数我用fminbnd 求出来是多个值,不知道哪里有错?或者不应该用fminbnd?我是初初学者,谢谢各位朋友了.
MATLAB求最小值问题
-1.08*(97.5+1.66*sin(8*3.14*x)+4.73*sin(40*3.14*x)+15.14*sin(160*3.14*x)) 这个函数我用fminbnd 求出来是多个值,不知道哪里有错?或者不应该用fminbnd?我是初初学者,谢谢各位朋友了.

MATLAB求最小值问题-1.08*(97.5+1.66*sin(8*3.14*x)+4.73*sin(40*3.14*x)+15.14*sin(160*3.14*x)) 这个函数我用fminbnd 求出来是多个值,不知道哪里有错?或者不应该用fminbnd?我是初初学者,谢谢各位朋友了.
用fminbnd没有错,求最小值问题只能用这个函数,它的求解精度是比较高的.
fminbnd(fun,a,b)只能求解f(x)在[a,b]内的局部最小值.
例如:
>> fun=inline('-1.08*(97.5+1.66*sin(8*pi*x)+4.73*sin(40*pi*x)+15.14*sin(160*pi*x))','x');
>> x = fminbnd(fun,0,2) [0,2]内的局部最小值
x =
0.7656
>> x = fminbnd(fun,0,4) [0,4]内的局部最小值
x =
1.5033
>> x = fminbnd(fun,2,4) [2,4]内的局部最小值
x =
2.7656
所以,当x处于不同的区间,求出的局部最小值是不相同的.
因此,你得确定你要求在那个范围的最小值.

fminband求出来的是局部极小值点gko相当于导数为0的点eim使用时需要限制x的范围,求在某个范围内的局部极小值

fminband求出来的是局部极小值点,相当于导数为0的点,使用时需要限制x的范围,求在某个范围内的局部极小值这个我限制范围了,就是不知道是不是我限制的范围太小了。在你限制的范围内可能确实有多个极小值,把波形画出来看看波形,上面的朋友已经画出来,我是初初学者,只想求个最大值而已。...

全部展开

fminband求出来的是局部极小值点,相当于导数为0的点,使用时需要限制x的范围,求在某个范围内的局部极小值

收起