Problem with ploting exp function

조회 수: 3 (최근 30일)
Dinh Le Dung
Dinh Le Dung 2022년 5월 2일
댓글: Dinh Le Dung 2022년 5월 3일
I try to plot t(x,y) = (x^2 - 2y^2)*e^(x-y) in Matlab and i use the following code
t=@(x,y)((x.^2-2*y.^2).*exp(x-y));
x = -1:2/50:1;
y = -2:4/50:2;
[X, Y] = meshgrid(x, y);
surf(X, Y, t(X,Y));
rotate3d on;
I got the result but it is not the same as i drawn in Geogebra
I think there is a problem with .*exp(x-y)
  댓글 수: 4
Walter Roberson
Walter Roberson 2022년 5월 3일
Very different plotting ranges.
Dinh Le Dung
Dinh Le Dung 2022년 5월 3일
I see, thanks for your help sir!

댓글을 달려면 로그인하십시오.

채택된 답변

Stephen23
Stephen23 2022년 5월 3일
편집: Stephen23 2022년 5월 3일
"I think there is a problem with .*exp(x-y)"
I doubt that. Did you look at the domains and ranges that you are plotting?
Your Geogebra example shows that you plotted over x = -8..+8 and y = -8..+8. Then in MATLAB you plotted over x = -1..1 and y = -2..2. And then you did not limit the Z axes to the same range as your example plot. Lets try that now:
x = -8:0.5:8;
y = -8:0.5:8;
[X,Y] = meshgrid(x,y);
T = (X.^2-2*Y.^2).*exp(X-Y);
surf(X,Y,T);
zlim([-3,6])

추가 답변 (1개)

Catalytic
Catalytic 2022년 5월 2일
If I had to guess, you have x and y reversed.
[X, Y] = ndgrid(x, y);
surf(X, Y, t(X,Y));
  댓글 수: 1
Dinh Le Dung
Dinh Le Dung 2022년 5월 3일
i dont think so :((, but thanks for your help!

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Graphics Performance에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by