快速傅立叶变换FFT的实现

该博客通过Matlab程序展示了如何对连续信号x(t) = cos(200πt) + sin(100πt) + cos(50πt)进行快速傅立叶变换(FFT),并得到了符合预期的频谱分析结果。
摘要由CSDN通过智能技术生成

使用Matlab软件来做频谱分析。

题目:已知连续信号x(t) = cos(200πt) + sin(100πt) + cos(50πt) ,用FFT对该信号做频谱分析。

Matlab参考程序如下:

clear; close all
fs = 400; T = 1 / fs;
Tp = 0.04; N = Tp * fs;
N1 = [N,4*N,8*N];
st = ['|X1(jf)|';'|X4(jf)|';'|X8(jf)|'];
for m = 1 : 3
    n = 1 : N1(m);
    xn = cos(200*pi*n*T) + sin(100*pi*n*T) + cos(50*pi*n*T) + cos(50*pi*n*T);
    Xk = fft(xn,4096);
    fk = [0:4095] / 4096 / T;
    subplot(3,2,2*m-1)
    plot(fk,abs(Xk)/max(abs(Xk)));ylabel(st(m,:))
    if m == 1
        title('矩形窗截取');
    end
end
for m = 1 : 3
    n = 1 : N1(m);
    wn = hamming(N1(m));
    xn = (cos(200*pi*n*T) + sin(100*pi*n*T) + cos(50*pi*n*T)).*wn';
    Xk = fft(xn,4096);
    fk
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值