我想通过绘制以下信号的幅度和相位来找到频谱:
S=sin(2*pi*100*t)+cos(pi*500*t);
X=sinc(2*pi*t);
我应该注意这个问题有什么特别之处吗?
我们可以很容易地找到给出时域的光谱,例如
t=0:0.01:0.1;
fft并对两个信号使用命令
X=fft(S);
他们画出幅度和相位是什么意思?
我想通过绘制以下信号的幅度和相位来找到频谱:
S=sin(2*pi*100*t)+cos(pi*500*t);
X=sinc(2*pi*t);
我应该注意这个问题有什么特别之处吗?
我们可以很容易地找到给出时域的光谱,例如
t=0:0.01:0.1;
fft并对两个信号使用命令
X=fft(S);
他们画出幅度和相位是什么意思?
要绘制幅度谱与频率的关系,您可以使用以下脚本:
t = 0:0.001:0.2;
s = sin(2*pi*100*t)+cos(pi*500*t);
S = abs(fftshift(fft(s)));
Fs = 1000;
df = 1000/(length(s));
f = -Fs/2:df:Fs/2-df;
plot(f,S);
在这里,我使用了您的第一个信号并绘制了它的幅度谱。您必须注意您的信号min choosable Nyquist frequency是 500 Hz 但我们使用它的两倍(即 1000Hz),因为我们还希望在频谱中看到 f = 0 之前的部分。使用这个我们找到df(delta f)频率间隔。频率向量必须是 df 的倍数。通过这种方式,频谱将被正确绘制。
这是输出:

使用上述方法绘制幅度和相位,但进行以下(轻微)修改
S=fftshift(fft(s))
figure
plot(f,abs(S)); %Plot of magnitude
figure
plot(f,unwrap(angle(S))); %Plot of phase
注意 - unwrap() 尝试处理阶段中的任何 2*pi 跳跃。