MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [MATLAB基础] 求助:如何画出分段函数曲面? (https://www.labfans.com/bbs/showthread.php?t=9850)

SFWQ1120 2009-10-10 10:23

求助:如何画出分段函数曲面?
 
题目图片的截图地址如下:
[url]http://www.yupoo.com/photos/view?id=ff808081132e9d9701133e237f841c4a[/url]

我编的M文件是:
[x,y]=meshgrid(-5:0.5:5,-5:0.5:5);
if (x+y)>1;
z=0.54*exp(-0.75*x*x-3.75*y*y-1.5*y);
mesh(z);
end
if (x+y)>-1&(x+y)<=1;
z=0.7575*exp(-1*x*x-6*y*y);
mesh(z);
end
if (x+y)<=-1;
z=0.5457*exp(-0.75*x*x-3.75*y*y+1.5*y);
mesh(z);
end
运行后没有反应,为什么呢?

freedomlh 2009-10-10 21:48

回复: 求助:如何画出分段函数曲面?
 
[x,y]=meshgrid(-5:0.5:5,-5:0.5:5);
for i=1:length(x)
if (x(i)+y(i))>1
z=0.54*exp(-0.75*x*x-3.75*y*y-1.5*y);
end
if (x(i)+y(i))>-1 and (x(i)+y(i))<=1;
z=0.7575*exp(-1*x*x-6*y*y);
mesh(z);
end
if (x(i)+y(i))<=-1;
z=0.5457*exp(-0.75*x*x-3.75*y*y+1.5*y);
mesh(z);
end
end


所有时间均为北京时间。现在的时间是 12:42

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.