matlab求解函数最小值时自变量的取值

求解函数D最小值时k的取值(E1,E2为分段函数积分),k取值范围为(0,pi/2)

题主用fminbnd函数去求解最小值问题是合理的,但由于题主给出的表达式含有积分过程,所以用句柄函数去表示是不恰当的,其不符合fminbnd函数所要求的函数形式。

建议题主,以function函数体来自定义给出的表达式,即

function D = myfunc(k)

。。。。

D=E2-E1.^2;

end

建立后再运行下来语句

[k,fval,exitflag] = fminbnd(@(k)myfunc(k),0,pi/2)

运行结果

追问

非常感谢!我在网上查到integral只能对数值进行积分,为什么此处可以用来进行变限积分呢

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-03-22
还是我求职的话,这个是需要一个公式套路就可以了。