24小时热门版块排行榜    

查看: 3058  |  回复: 1

pj198811

铜虫 (小有名气)

[求助] matlab求曲面图最大值及其坐标问题

在matlab中,
x=[-1:0.25:1];
y=[-1:0.25:1];
[x,y]=meshgrid(x,y);
z=24959.10+375.84*x+1053.25*y-1028.42*x.^2-1042.23*y.^2-344.23*x*y;
surf(x,y,z);
shading flat;alpha(0.5);
axis square
得到一个最大的Z值,但是改变步长后,如:
x=[-1:0.1:1];
y=[-1:0.1:1];
[x,y]=meshgrid(x,y);
z=24959.10+375.84*x+1053.25*y-1028.42*x.^2-1042.23*y.^2-344.23*x*y;
surf(x,y,z);
shading flat;alpha(0.5);
axis square
z值最大值改变,是哪里出了问题,应该如何最大的Z值及其x,y的坐标。
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cae9219

金虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
pj198811: 金币+20 2013-07-04 20:24:48
你目前方法是用离散方法求得最大值,只能根据你离散的情况求出最大值。

所求的最大值根据你的精度不同,也就是你两次不同的mesh结果不同而不同。

简单的方法,你的精度越高,mesh的步长越小,你数值求得的最大值约准确。

[zmax,xm]=max(z) %会得到每个列向量的最大值。 xm是返回来的最大点的位置。

max(max(z)) 就是你全局的最大值了。
2楼2013-07-04 11:30:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 pj198811 的主题更新
信息提示
请填处理意见