- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验三_FFT算法的应用_实验四_离散系统的变换域分析--华南理工大学--数字信号处理实验.
实验3 FFT算法的应用
1、2N点实数序列
N=64。用一个64点的复数FFT程序,一次算出,并绘出 的图形。x[n] (0n2N-1)中的奇数位取出来组成o[n] (0nN-1),把x[n] (0n2N-1)中的偶数位取出来组成e[n] (0nN-1)
②设v[n]=e[n]+j*o[n],对其做64点DSP得到V[k]
③则e[n]和e[n]的DSP分别为E[k]=(V[k]+V*[N-k])/2,O[k]=(V[k]-V*[N-k])/2
④则x[n]的DSP为
运行结果:
m代码:
clear;clf;
N=64;
n=0:2*N-1;
x=cos(2*pi*7*n/N)+cos(2*pi*19*n/N)/2;
subplot(3,2,1);
X=fft(x);
stem(real(x));
xlabel(?-D?o?x);
subplot(3,2,3);
stem(real(X));
xlabel(xμ?fftμ?êμ2?);
subplot(3,2,4);
stem(imag(X));
xlabel(xμ?fftμ?Dé2?);
for i=1:N
e(i)=x(2*i);
o(i)=x(2*i-1);
end;
v=o+j*e;
V=fft(v);
Vt=real(V)-j*imag(V);
for i=1:N
O(i)=(V(i)+Vt(mod((N+1-i),N)+1))/2;
E(i)=(V(i)-Vt(mod((N+1-i),N)+1))/(2*j);
end;
for i=1:2*N
X0(i)=O(mod(i-1,N)+1)+exp(-j*2*pi*(i-1)/(2*N))*E(mod(i-1,N)+1);
end;
subplot(3,2,5);
stem(real(X0));
xlabel(í¨1yE\O?????ùμ?μ?xμ?FFTμ?êμ2?);
subplot(3,2,6);
stem(imag(X0));
xlabel(í¨1yE\O?????ùμ?μ?xμ?FFTμ?Dé2?);
2、已知某序列在单位圆上的N=64等分样点的Z变换为:
。
用N点IFFT程序计算出和。clear;clf;
N=64;
k=0:N-1;
X=1./(1-0.8*exp(-j*2*pi*k/N));
subplot(3,1,1);
stem(abs(X));
xlabel(|X[k]|);
x=ifft(X);
subplot(3,1,2);
stem(abs(x));
xlabel(abs(x[n])=abs(ifft(X[k])));
subplot(3,1,3);
stem(abs(x));
xlabel(angle(x[n])=angle(ifft(X[k])));
实验4 离散系统的变换域分析
求系统
的零、极点和幅度频率响应和相位响应。clear;clf;
num=[0.0528 0.0797 0.1295 0.1295 0.797 0.0528];
den=[1 -1.8107 2.4947 -1.8801 0.9537 -0.2336];
N=128;
w=0:pi/N:pi;
[z,p,k]=tf2zp(num,den);
disp(á?μ?);disp(z);
disp(??μ?);disp(p);
disp(??ò?);disp(k);
subplot(2,2,1);
zplane(num,den);
xlabel(á???μ?í?);
H=freqz(num,den,w);
subplot(2,2,3);
plot(w/pi,abs(H));grid;
xlabel(·ù?μ?ìó|);
H=freqz(num,den,w);
subplot(2,2,4);
plot(w/pi,angle(H));grid;
xlabel(?à?μ?ìó|);
附加题:时域的乘积对应于频域的圆周卷积
运行结果:
M代码:
clear;clf;
N=64;
n=0:N-1;
x1=randn([1,N]);
subplot(4,1,1);
stem(x1);
xlabel(x1[n]);
x2=randn([1,N]);
subplot(4,1,2);
stem(x2);
xlabel(x2[n]);
y=x1.*x2;
subplot(4,1,3)
stem(abs(fft(y)));
xlabel(|fft(x1[n].*x2[n])|);
X1=fft(x1);
X2=fft(x2);
Y=cconv(X1,X2,N)/N;
subplot(4,1,4);
stem(abs(Y));
x
文档评论(0)