Error in writing an equation (sin function)

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)

 Akzeptierte Antwort

Roger Stafford
Roger Stafford am 8 Mai 2016
Bearbeitet: Roger Stafford am 8 Mai 2016

0 Stimmen

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 Kommentare

verzhen Ligai
verzhen Ligai am 8 Mai 2016
Bearbeitet: verzhen Ligai am 8 Mai 2016
Thank you very much for your reply. I modified it and ran it again. However, the result graph is not what I expected.
The graph that I wanted to get is shown in the black/white picture below.
Thank you.
The diagram shows negative and positive coordinates, but you have only plotted over positive coordinates.
verzhen Ligai
verzhen Ligai am 8 Mai 2016
Oh! that makes sense. You are right!!!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by