How to set linspace to infinity

20 vues (au cours des 30 derniers jours)
verzhen Ligai
verzhen Ligai le 8 Mai 2016
Commenté : verzhen Ligai le 8 Mai 2016
Good day, everyone!
This is my code for the 3D plot of the equation Z= (X^2+3*Y^2)*exp(-X^2-Y^2). In my code, I set my linspace to (-2,2) as an example. But I was wondering if there is a way to set the linspace for x, y to (0, inf). If I have tried writing that way, no change occurred. (I assume it's an error). Following is my code. x=linspace(-2,2); y=linspace(-2,2); [X,Y] = meshgrid(x,y); Z=(X.^2+3*Y.^2)*exp(-X.^2-Y.^2); meshz(X,Y,Z)
Thank you.

Réponse acceptée

jgg
jgg le 8 Mai 2016
Modifié(e) : jgg le 8 Mai 2016
No, this isn't possible because linspace generates a uniformly spaced vector over the two endpoints. Such a vector on (0,Inf) would have an infinite number of entries and would not be practical. (For example, if would take an infinite amount of memory).
A good alternative would be to identify a limit where the behaviour of your function is "close" to the limiting behavior you want to view then using that point instead. Since your function is exponential, something like:
x = linspace(0,10); y = linspace(0,10);
is probably sufficient.
  4 commentaires
Star Strider
Star Strider le 8 Mai 2016
Give logspace a go. It might at least help you describe your function at extreme values.
verzhen Ligai
verzhen Ligai le 8 Mai 2016
Thank you for your kind answer.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Creating and Concatenating Matrices 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