Adjusting a Sawtooth Graph and getting spectrum

2 次查看(过去 30 天)
I am trying to graph a traingle wave with a width of 8000pi (4000pi each way from 0) and get its spectrum. This is what I have but can't get figure 1 to look right. I am unsure what I am doing wrong, my best guess would be I need to change either T or the first variable in sawtooth but doing that keeps making it worse so I'm not sure. Thank you for your time!
T = 10*50;
fs = 2000;
t = 0:1/fs:T-1/fs;
x = sawtooth(pi*4000*t,1/2);
figure(1)
plot(t,x)
grid on
figure(2)
pspectrum(x,fs,'Leakage',0.91)

采纳的回答

Paul
Paul 2024-2-25
编辑:Paul 2024-2-25
Do you want a triangle or a sawtooth? Assuming the former as stated in the question, use tripuls
%T = 10*50;
fs = 2000;
t = -4000*pi:1/fs:4000*pi;
numel(t) % lots of data points
ans = 50265483
x = tripuls(t,pi*8000,0);
figure(1)
plot(t,x)
xline(4000*pi);xline(-4000*pi);
  3 个评论
Paul
Paul 2024-2-25
The time vector already spans -4000*pi to 4000*pi. I added some lines to the plot to make that clear.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by