Error in writing an equation (sin function)

3 views (last 30 days)
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)

Accepted Answer

Roger Stafford
Roger Stafford on 8 May 2016
Edited: Roger Stafford on 8 May 2016
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.
  3 Comments
Walter Roberson
Walter Roberson on 8 May 2016
The diagram shows negative and positive coordinates, but you have only plotted over positive coordinates.
verzhen Ligai
verzhen Ligai on 8 May 2016
Oh! that makes sense. You are right!!!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!