1、第 1 页数字信号处理 MATLAB 习题第 2 页数字信号处理 MATLAB 习题M1-1 已知 , , ,以抽1()cos6)gtt2(cos14)gtt3(cos26)gtt样频率 对上述三个信号进行抽样。在同一张图上画出 ,0samfHz 1(gt和 及抽样点,对所得结果进行讨论。2()gt3t解:第 3 页从以上两幅图中均可看出,三个余弦函数的周期虽然不同,但它们抽样后相应抽样点所对应的值都相同。那么这样还原回原先的函数就变成相同的,实际上是不一样的。这是抽样频率太小的原因,我们应该增大抽样频率才能真实还原。如下图:f=50Hz第 4 页程序代码f=10;t=-0.2:0.001:0
2、.2;g1=cos(6.*pi.*t);g2=cos(14.*pi.*t);g3=cos(26.*pi.*t);k=-0.2:1/f:0.2;h1=cos(6.*pi.*k);h2=cos(14.*pi.*k);h3=cos(26.*pi.*k);% subplot(3,1,1);% plot(k,h1,r.,t,g1,r);% xlabel(t);% ylabel(g1(t);% subplot(3,1,2);% plot(k,h2,g.,t,g2,g);% xlabel(t);% ylabel(g2(t);% subplot(3,1,3);% plot(k,h3,b.,t,g3,b);%
3、xlabel(t);% ylabel(g3(t);plot(t,g1,r,t,g2,g,t,g3,b,k,h1,r.,k,h2,g.,k,h3,b.)第 5 页xlabel(t);ylabel(g(t);legend(g1(t),g2(t),g3(t);M2-1 利用 DFT 的性质,编写一 MATLAB 程序,计算下列序列的循环卷积。(1) gk=1,-3,4,2,0,-2,hk=3,0,1,-1,2,1;(2) xk=cos( k/2),yk=3k,k=0,1,2,3,4,5。解:(1)循环卷积结果6.0000 -3.0000 17.0000 -2.0000 7.0000 -13.0000
4、程序代码第 6 页g=1 -3 4 2 0 -2;h=3 0 1 -1 2 1;l=length(g);L=2*l-1;GE=fft(g,L);HE=fft(h,L);y1=ifft(GE.*HE);for n=1:lif n+l=Ly2(n)=y1(n)+y1(n+l);elsey2(n)=y1(n);endendy2stem(0:l-1,y2)xlabel(k)ylabel(y(k)title(循环卷积)(2)循环卷积结果-71.0000 -213.0000 89.0000 267.0000 73.0000 219.0000第 7 页程序代码k=0:5;x=cos(pi.*k./2);y=
5、3.k;l=length(x);L=2*l-1;GE=fft(x,L);HE=fft(y,L);y1=ifft(GE.*HE);for n=1:lif n+l=Ly2(n)=y1(n)+y1(n+l);elsey2(n)=y1(n);endendy2stem(0:l-1,y2)xlabel(k)ylabel(y(k)title(循环卷积)第 8 页M2-2 已知序列 cos(/2),|0kNx其 他(1)计算序列 DTFT 的表达式 ,并画出 N=10 时, 的曲()jXe()jXe线。(2)编写一 MATLAB 程序,利用 fft 函数,计算 N=10 时,序列xk的 DTFT 在 的抽样值
6、。利用 hold 函数,将抽样点画2/mN在 的曲线上。()jXe解:(1) ()cos(/2)Nj jk jkkeDTFxeke程序代码N=10;k=-N:N;x=cos(k.*pi./(2*N);W=linspace(-pi,pi,512);第 9 页X=zeros(1,length(W);for k=-N:NX1=x(k+N+1).*exp(-j.*W.*k);X=X+X1;endplot(W,abs(X)xlabel(W);ylabel(abs(X);(2)程序代码N=10;k=-N:N;x=cos(k.*pi./(2*N);X_21=fft(x,21);L=-10:10;W=lins
7、pace(-pi,pi,1024);X=zeros(1,length(W);for k=-N:NX1=x(k+N+1).*exp(-j.*W.*k);X=X+X1;end第 10 页plot(W,abs(X);hold on;plot(2*pi*L/21,fftshift(abs(X_21),o);xlabel(W);ylabel(abs(X);M2-3 已知一离散序列为 。用长00coscs()xkAkBk度 N=64 的 Hamming 窗对信号截短后近似计算其频谱。试用不同的 A和 B 的取值,确定用 Hamming 窗能分辨的最小的谱峰间隔中 c 的值。2wN解:f1=100Hzf2=120Hz 时f2=140Hz 时