2017-02-13 3 views
0

Ich habe den folgenden Code;NaN gibt Matlab

x = -12:1/32:12; 
y = -12:1/32:12; 
[X,Y] = meshgrid(x,y); 

z = (sin(sqrt(X.^2+Y.^2)))/(sqrt(X.^2+Y.^2)) 

Aus irgendeinem Grund gibt es immer NaN und ich verstehe es nicht, wenn ich

z = (sin(sqrt(X.^2+Y.^2))) 

mache ich Zahlen tatsächlich bekommen. Was ist das Problem?

+2

Ersetzen Sie '/' durch ['./'](https://mathworks.com/help/fixedpoint/ref/rdivide.html) – codeaviator

Antwort

2

Vielleicht sind Sie nach:

z = (sin(sqrt(X.^2+Y.^2)))./(sqrt(X.^2+Y.^2)); 

die elementweise Division eher als Matrix Division.