班 级09电班 学号 姓 名 组
实验日期 室温 气压 成 绩
实验题目: 实验3 快速傅立叶变换应
实验目
(1) 理学基础通实验加深FFT理解熟悉MATLAB重点关函数
(2) 应FFT典型信号进行频谱分析
(3) 解应FFT进行信号频谱分析程中出现问题便实际中正确应FFT
(4) 应FFT实现序列线性卷积相关
二实验仪器:
微型计算机 (包含MATLAB软件) 台
三快速傅里叶变换原理
数字信号傅里叶变换通常采离散傅里叶变换(DFT)方法DFT 存足计算量太难进行实时处理计算N 点DFT 般需次复数法N(N1)次复数加法运算N较求信号进行实时处理时难实现需运算速度1965年JWCoolyJWTukey发现DFT种快速算法学者进步改进 快形成套高效运算方法现通快速傅里叶变换 简称FFT( The Fast Fourier Transform)快速傅里叶变换实质利式(1)中权函数称性周期性N点DFT进行系列分解组合整DFT计算程变成系列叠代运算程DFT运算量简化DFT数字信号实时处理应创造良条件
快速傅里叶变换算法:
(1)式知n计算X(n)须作N次复数法N1次复数加法完成组变换需次法N(N1)次复数加法介绍快速傅里叶变换算法减少运算次数提高工作效率
时nk二进制数表示:
记 (1)式改写
(2)
式中:
(3)
(2)改成
(4)
(5)
式(5)式(4)分解形式初始数代入式(5)第等式组计算数般痗L1组计算数代入式(5)第L等式计算第L组计算数(L=12…γ)计算公式表示
(6)
式中 (7)
根式(6)第L数组中 计算赖数组两数两数标号相差两数计算第L数组中标号数(等号右端二进制数)分取01时分组两数计算两新数储存原位置计算程中需N存储器称第L数组中偶结点计算偶结点需次法事实式(6)
式中: 式(7)中取01时应P值偶结点关系:
式(6)表示
P求法:中i写成二进制数右移位成
颠倒位序式(5)吕前面γ等式等式均应组数进行计算组数N2结点根式(9)结点需作1次法2次加法组数需N2次法N次加法完成γ组数计算需Nγ2次法Nγ次加法
四实验容
实验中应序列号:
(1)观察高斯序列时域幅频特性固定信号中参数p8改变q值q分等248观察时域幅频特性解q取值时信号序列时域幅频特性影响固定q8改变pp分等81314观察参数p变化信号序列时域幅频特性影响注意p等少时会发生明显泄漏现象混叠否出现?记录实验中观察现象绘出相应时域序列幅频特性曲线
解:程序:
n0115
p8变q变化(248)
p8q2 p8q2
xa1exp(((np)^2)q)
subplot(521)
plot(nxa1'*')
xlabel('tT')
ylabel('xa(n)')
title('p8 q2')
xk1abs(fft(xa1))
subplot(522)
stem(nxk1)
xlabel('k')
ylabel('Xa(k)')
title('p8 q2')
p8q4 p8q4
xa1exp(((np)^2)q)
subplot(523)
plot(nxa1'*')
xlabel('tT')
ylabel('xa(n)')
title('p8 q4')
xk1abs(fft(xa1))
subplot(524)
stem(nxk1)
xlabel('k')
ylabel('Xa(k)')
title('p8 q4')
p8q8 p8q8
xa1exp(((np)^2)q)
subplot(525)
plot(nxa1'*')
xlabel('tT')
ylabel('xa(n)')
xk1abs(fft(xa1))
title('p8 q8')
subplot(526)
stem(nxk1)
xlabel('k')
ylabel('Xa(k)')
title('p8 q8')
q8变p变化(81314)
p8q8 p8q8
xa1exp(((np)^2)q)
subplot(525)
plot(nxa1'*')
xlabel('tT')
ylabel('xa(n)')
xk1abs(fft(xa1))
title('p8 q8')
subplot(526)
stem(nxk1)
xlabel('k')
ylabel('Xa(k)')
title('p8 q8')
p13q8 p13q8
xa1exp(((np)^2)q)
subplot(527)
plot(nxa1'*')
xlabel('tT')
ylabel('xa(n)')
xk1abs(fft(xa1))
title('p13 q8')
subplot(528)
stem(nxk1)
xlabel('k')
ylabel('Xa(k)')
title('p13 q8')
p14q8 p14q8
xa1exp(((np)^2)q)
subplot(529)
plot(nxa1'*')
xlabel('tT')
ylabel('xa(n)')
title('p14 q8')
xk1abs(fft(xa1))
subplot(5210)
stem(nxk1)
xlabel('k')
ylabel('Xa(k)')
title('p14 q8')
分析:
高斯序列表达式知np期称轴p取固定值时时域图关n8称截取长度周期整数倍没发生明显泄漏现象存混叠q2增加8程中时域图形变化越越缓中间包络越越函数周期开始增加频率降低渐渐fs2混叠减弱
q值固定变p变化时时域称中轴右移截取时域长度渐渐周期整数倍开始法代表周期泄漏现象越明显图形越越偏离真实值p14时泄漏现象明显混叠出现
(2)观察衰减正弦序列 时域幅频特性a01f00625检查谱峰出现位置否正确注意频谱形状绘出幅频特性曲线改变ff分等0437505625观察两种情况频谱形状谱峰出现位置混叠泄漏现象?说明产生现象原
解:程序:
n10115
xb1exp(01*n1)*sin(2*pi*00625*n1)
subplot(321)
plot(n1xb1'*')
xlabel('n')
ylabel('x(n)')
title('f00625')
xk1abs(fft(xb1))
subplot(322)
stem(n1xk1)
xlabel('k')
ylabel('X(k)')
title('f00625')
n20115
xb2exp(01*n2)*sin(2*pi*04375*n2)
subplot(323)
plot(n2xb2'*')
xlabel('n')
ylabel('x(n)')
title('f04375')
xk2abs(fft(xb2))
subplot(324)
stem(n2xk2)
xlabel('k')
ylabel('X(k)')
title('f04375')
n30115
xb3exp(01*n3)*sin(2*pi*05625*n3)
subplot(325)
plot(n3xb3'*')
xlabel('n')
ylabel('x(n)')
title('f05625')
xk3abs(fft(xb3))
subplot(326)
stem(n3xk3)
xlabel('k')
ylabel('X(k)')
title('f05625')
分析:
ff100625时谱峰位置出现正确存混叠现象时域采样周期满足采样定理
f0437505625时时域图关Y轴称频域完全相频域图取绝值结果完全相外时域采样6半周期满足采样定理混叠截取长度周期整数倍出现泄漏
(5) FFT卷积分计算(p8q2)(a01f00625)16点循环卷积线性卷积
解:
程序:
n10115
xexp((n18)^22)
yexp(01*n1)*sin(2*pi*00625*n1)
Nlength(x)
n0N1
n20130
Xfft(x)
Yfft(y)
x32[x zeros(116)]
y32[y zeros(116)]
X32fft(x32)
Y32fft(y32)
z16ifft(X*Y)
z32ifft(X32*Y32)
subplot(221)
plot(nz16'o')
xlabel('n')ylabel('z(n)')
title('循环卷积结果')
subplot(222)
plot(n2z32(12*N1)'o')
xlabel('n')ylabel('z(n)')
title('线性卷积结果')
rm16real(ifft(conj(X)*Y))
rm32_0real(ifft(conj(X32)*Y32))
rm32[rm32_0(N+22*N) rm32_0(1N)]
mn
subplot(223)
plot(mrm16'o')
xlabel('m')ylabel('rm')
title('循环相关结果')
m(N1)N1
subplot(224)
plot(mrm32'o')
xlabel('m')ylabel('rm')
title('线性相关结果')
(7) FFT卷积分计算(p8q2)(a01f00625)16点循环相关线性相关问少结果间异点
解:程序:p8
q2
N16
for i1N
Xa(i)exp(((i1p)^2)q)
end
a01
f00625
for i1N
Xb(i)exp(a*i)*sin(2*pi*f*i)
end
Xakfft(XaN)
Xbkfft(XbN)
rmreal(ifft(conj(Xak)*Xbk))
m0N1
subplot(221)
stem(mrm)
title('循环相关x前')
rmreal(ifft(conj(Xbk)*Xak))
m0N1
subplot(222)
stem(mrm)
title('循环相关y前') Xakfft(Xa2*N)
Xbkfft(Xb2*N)
rmreal(ifft(conj(Xak)*Xbk))
rm[rm((N+2)2*N) rm(1N)]
mN+1N1
subplot(223)
stem(mrm)
title('线性相关x前')
rmreal(ifft(conj(Xbk)*Xak))
rm[rm((N+2)2*N) rm(1N)]
mN+1N1
subplot(224)
stem(mrm)
title('线性相关y前')
分析:
通实验结果知2种结果循环相关x前结果轴轴旋转180度循环相关y前结果线性相关x前结果轴轴旋转180度线性相关y前结果
(8)FFT卷积分计算(p8q2)(a01f00625)相关函数
解:程序
n0115
xanexp((n8)^22)
xbnexp(01*n)*sin(2*pi*00625*n)
klength(xan)
xakfft(xan2*k)
xbkfft(xbn2*k)
rm1real(ifft(conj(xak)*xak))
rm1[rm1(k+22*k) rm1(1k)]
rm2real(ifft(conj(xbk)*xbk))
rm2[rm2(k+22*k) rm2(1k)]
m(k+1)(k1)
subplot(211)
stem(mrm1)
xlabel('m')
ylabel('幅度')
title('xa(n)相关函数')
subplot(212)
stem(mrm2)
xlabel('m')
ylabel('幅度')
title('xb(n)相关函数')
五实验总结
通次实验理学基础加深FFT理解熟悉MATLAB重点关函数应FFT典型信号进行频谱分析解应FFT进行信号频谱分析程中出现问题应FFT实现序列线性卷积相关
文档香网(httpswwwxiangdangnet)户传
《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档