matlab绘制函数图形如何表现最大值

求函数y=-4.3949*x.^2+29.2961*x-44.0220的最大值是6.6659,在matlab上绘制函数图形,最大值是4.7994。如何在matlab上绘制最大值是6.6659的图像

用最小值函数fminbnd,可得到精确值。
计算时将函数改写为-y=4.3949*x^2-29.2961*x+44.0220的形式,求解
>> fun=inline('4.3949*x^2-29.2961*x+44.0220','x');[x,f]=fminbnd(fun,2,4)
>>
x =
3.3330
f =
-4.7994
所以,我们得到函数的最大值是4.7994。
函数y=-4.3949*x.^2+29.2961*x-44.0220的最大值是6.6659,是错误的。
这种现象时常会有的,要相信自己的判断力。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-03-21

这个最大值是4.7994,不知道6.6659是怎么算出来的呢。很是好奇呢,x=-10:0.0001:10;y=-4.3949*x.^2+29.2961*x-44.0220;plot(x,y,'b'),max(y)

ans =

    4.7994

图片如下:

本回答被提问者和网友采纳
第2个回答  2012-03-21
ezplot('y=-4.3949*x.^2+29.2961*x-44.0220')
或者
>> x=-10:0.1:10;
>> y=-4.3949*x.^2+29.2961*x-44.0220;
>> plot(x,y)

但是不可能是6.66...的 你配方一看就知道了 估计是你算数哪里弄错了 使用二次函数配方:x0=-0.5b/a
>> x0=-(29.2961)/(-2*4.3949)
x0 =
3.333
>> y0=-4.3949*x0.^2+29.2961*x0-44.0220
y0 =
4.7994
>>
第3个回答  2012-03-21
这涉及x的取值范围的问题(有时也与matlab坐标系定义有关)。
x的取值范围最好关于二次曲线的对称轴对称。