MATLAB: Error in writing an equation (sin function)

sinfunction

Hello everyone,
I can't seem to successfully obtain a graph of the following equation: f(x,y)=sin(x)sin(y)/(x*y). I think it's because the equation is written wrongly but I can't seem to figure out what I did wrong.
Thank you.
>> x=linspace(0, 2*pi);
>> y=linspace(0, 2*pi);
>> [X,Y]=meshgrid(x,y);
>> Z=sin(X)*sin(Y)/(X*Y).;
>> meshz(X,Y,Z)

Best Answer

The line
Z=sin(X)*sin(Y)/(X*Y).;
is the trouble. You need dots there:
Z=sin(X).*sin(Y)./(X.*Y);
so as to produce element-by-element operations. As it stands. it is performing matrix multiplication and matrix division which you don’t want here. Also that trailing dot does not belong there.
Also note that at the single point x = 0 and y = 0 you will produce a NaN from a zero-divided-by-zero operation there.