求助用matlab画出一个函数的等高线
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/07/14 08:10:01
求助用matlab画出一个函数的等高线
f(x1,x2)=exp(x1+3*x2-0.1) + exp(x1-3*x2-0.1) + exp(-x1 - 0.1)
我的程序是这样的:
[X,Y] = meshgrid((-10:1:10),(-10:1:10));
Z = exp(X+3.*Y-0.1)+exp(X-3.*Y-0.1)+exp(-X-0.1);
%Z = X.*exp(-X.^2-Y.^2);
[C,h] = contour(X,Y,Z, 15);
但画出来十分奇怪,不知道为何
f(x1,x2)=exp(x1+3*x2-0.1) + exp(x1-3*x2-0.1) + exp(-x1 - 0.1)
我的程序是这样的:
[X,Y] = meshgrid((-10:1:10),(-10:1:10));
Z = exp(X+3.*Y-0.1)+exp(X-3.*Y-0.1)+exp(-X-0.1);
%Z = X.*exp(-X.^2-Y.^2);
[C,h] = contour(X,Y,Z, 15);
但画出来十分奇怪,不知道为何
![求助用matlab画出一个函数的等高线](/uploads/image/z/8782253-53-3.jpg?t=%E6%B1%82%E5%8A%A9%E7%94%A8matlab%E7%94%BB%E5%87%BA%E4%B8%80%E4%B8%AA%E5%87%BD%E6%95%B0%E7%9A%84%E7%AD%89%E9%AB%98%E7%BA%BF)
你的程序没问题,问题在于这个函数的图像比较怪,你可以试试:
ezmesh('exp(x1+3*x2-0.1) + exp(x1-3*x2-0.1) + exp(-x1 - 0.1)')
画等高线也可以使用下面的做法:
ezcontour('exp(x1+3*x2-0.1) + exp(x1-3*x2-0.1) + exp(-x1 - 0.1)')
建议:
1、确定函数表达式有没问题;
2、如果函数没问题,建议选择一个合理的绘图坐标范围.
ezmesh('exp(x1+3*x2-0.1) + exp(x1-3*x2-0.1) + exp(-x1 - 0.1)')
画等高线也可以使用下面的做法:
ezcontour('exp(x1+3*x2-0.1) + exp(x1-3*x2-0.1) + exp(-x1 - 0.1)')
建议:
1、确定函数表达式有没问题;
2、如果函数没问题,建议选择一个合理的绘图坐标范围.