Don't get what is happening in matlab sin() function. need to know difference between sin(2*50*pi*t) and sin(2*1*pi*t)

8 ビュー (過去 30 日間)
Hi,
I am using Matlab to plot the sin graph. But when I put sin(2*50*pi*t) it shows something else than the sinusoidal curve. Can you please help me to find out why it is happening? Thanks in advance.
Code:
t = 0:0.1:20;
x = sin(2*50*pi*t);
y = sin(2*1*pi*t);
subplot(2,1,1)
plot(t,x)
subplot(2,1,2)
plot(t,y)
  1 件のコメント
Steven Lord
Steven Lord 2022 年 9 月 9 日
It wouldn't help in this case but if you're computing the sine of pi times some angle, consider using the sinpi function instead of explicitly computing pi times the angle and calling sin.

サインインしてコメントする。

採用された回答

Torsten
Torsten 2022 年 9 月 9 日
t1 = 0:0.001:1;
x = sin(2*50*pi*t1);
t2 = 0:0.1:1;
y = sin(2*1*pi*t2);
subplot(2,1,1)
plot(t1,x)
subplot(2,1,2)
plot(t2,y)
  3 件のコメント
John D'Errico
John D'Errico 2022 年 9 月 9 日
編集済み: John D'Errico 2022 年 9 月 9 日
@William Rose - I almost wish you had made your comment an answer. While @Torsten is completely correct, he has not made this important point explicit, as did you. And while I could move your comment to an answer, I'd rather let you do it, or not as you desire.

サインインしてコメントする。

その他の回答 (1 件)

William Rose
William Rose 2022 年 9 月 9 日
In your original code, you were evaluating sin(t) at integer multiples of pi, and therefore sin(t)=0 at each point. Due to round-off error, the values are not exactly zero, but are <10^-12.
@Torsten demonstrates that by changing the values of t, you can see that it is a normal sine wave.

カテゴリ

Help Center および File ExchangeMATLAB についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by