图表中的差异3D图表与功能

时间:2017-02-21 05:02:17

标签: matlab wolframalpha

我有这个功能:

enter image description here

在WolframAlpha中,这是图表:

Wolfram

在MatLab中我使用此代码:

clc; clear; close all
[x,y]=meshgrid(-1:.1:1);
e = exp(1);
z=(e^-x^2)+((e^-2)*(y^2))
surf(x,y,real(z));

打印此图表:

MatLab

为什么会出现这种差异?我做错了什么?

1 个答案:

答案 0 :(得分:4)

执行x^2y^2时,您无意中执行了矩阵乘法。要执行矩阵的元素平方,请执行x.^2y.^2

此外,虽然从技术上讲不是错误,但e=exp(1)只有在exp已经可用时才有效。

总之,

[x,y]=meshgrid(-1:.1:1);
z=exp(-x.^2)+(y.^2)./exp(2); 
surf(x,y,z);

输入都是真实的,所以我删除了对real的调用。在这种情况下,./可以只是/,因为exp(2)是一个标量,但我更喜欢正确。