Problem with ploting exp function

9 vues (au cours des 30 derniers jours)
Dinh Le Dung
Dinh Le Dung le 2 Mai 2022
Commenté : Dinh Le Dung le 3 Mai 2022
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 commentaires
Walter Roberson
Walter Roberson le 3 Mai 2022
Very different plotting ranges.
Dinh Le Dung
Dinh Le Dung le 3 Mai 2022
I see, thanks for your help sir!

Connectez-vous pour commenter.

Réponse acceptée

Stephen23
Stephen23 le 3 Mai 2022
Modifié(e) : Stephen23 le 3 Mai 2022
"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])

Plus de réponses (1)

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

Connectez-vous pour commenter.

Catégories

En savoir plus sur Graphics Performance dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by