实验五线性卷积与循环卷积的计算_第1页
实验五线性卷积与循环卷积的计算_第2页
实验五线性卷积与循环卷积的计算_第3页
实验五线性卷积与循环卷积的计算_第4页
实验五线性卷积与循环卷积的计算_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验五线性卷积与循环卷积的计算、实验目的1、进一步加深对线性卷积的理解和分析能力;2、通过编程,上机调试程序,进一步增强使用计算机解决问题的能力;3、掌握线性卷积与循环卷积软件实现的方法,并验证二者之间的关系。 、实验原理1、线性卷积线性时不变系统(Lin ear Time-I nvaria nt System, or L. T. I系统)输入、输出 间的关系为:当系统输入序列为 x(n),系统的单位脉冲响应为h(n),输出序列 为y(n),则系统输出为:y(n) - ' x(m)h(n-m) = x(n)*h(n)m :-boy(n) = ' h(m)x(n -m) = h(

2、n)* x(n)m :上式称为离散卷积或线性卷积。图6.1示出线性时不变系统的输入、输出关系M) L. T. I > h(n)-boy(n) = ' x(m)h(n -m-m)图6.1线性时不变系统的输入、输出关系2、循环卷积设两个有限长序列x1 (n)和X2(n),均为N点长xMn) df t xMk)x2( n) D F T X2(k)如果 X3(k) =XMk) X2(k)-NJX3(n) = Q X1(m)X2(n m) Rn(n)贝 y_mN 4二為 xdm) X2 kn - m)N 丨m -0=x1 (n) n x2(n)0 乞 n 乞 N -1上式称为循环卷积或圆周

3、卷积注:i(n)为Xi(n)序列的周期化序列;i(n)Rn(n)为i(n)的主值序列。 上机编程计算时,X3 (n)可表示如下:nNX3(n) _、Xi(m)x2(n _m)x(m)X2(N n _ m)m 30m 出:(13、两个有限长序列的线性卷积序列Xl(n)为L点长,序列X2(n)为P点长,X3(n)为这两个序列的线性卷积, 则X3(n)为-box3(n) = ' x-i (m)X2 (n-m)m -.:且线性卷积x3(n)的最大长L P -1,也就是说当n乞-1和n _ L P -1时X3(n) =0 04、循环卷积与线性卷积的关系序列Xi(n)为l点长,序列x2(n)为P点

4、长,若序列Xi(n)和X2(n)进行n点的 循环卷积,其结果是否等于该两序列的线性卷积,完全取决于循环卷积的长度:当N L P -1时循环(圆周)卷积等于线性卷积,即Xi(n) NX?(n) =Xi(n)*x?(n)当N : L P -1时,循环卷积等于两个序列的线性卷积加上相当于下式的时 间混叠,即f'、x3(n rN) O n < N -1X3N (n)=r =joO0其它n三、实验方法对于无限长序列不能用 MATLAB直接计算线性卷积,在MATLAB内部只 提供了一个conv函数计算两个有限长序列的线性卷积。对于循环卷积MATLAB内部没有提供现成的函数,我们可以按照定义式

5、直接编程计算例6.1 :已知两序列:0.8n0 兰 n <11x(n)=廿宀0其它10兰n兰5h(n)甘宀卫其它求它们的线性卷积循环卷积 yc=h(n)* x(n)n,MATLAB实现程序:yl(n)=h(n)*x(n)和 N 点的并研究两者之间的关系(1)循环卷积的函数function yc=circ onv (x1,x2,N)%realize circular convo luti on use direct method %y=circo nv(x1,x2,N)%y:output seque nces%x1,x2:i nput seque nces%N:circulati on l

6、en gthif len gth(x1)>N');');x1(n)使其长度为error( N must not be less than length of x1endif len gth(x2)>Nerror( N must not be less than length of x2end%以上语句判断两个序列的长度是否小于Nx仁x1,zeros(1,N-length(x1);% 填充序列N1+N2-1(序列%h(n)的长度为N1,序列x(n)的长度为N2)x2=x2,zeros(1,N-le ngth(x2); n=0:1:N-1;x2=x2(mod(- n,N

7、)+1); H=zeros(N,N);for n=1:1:NH( n,:)=cirshiftd(x2, n-1,N); end yc=x1*H '%填充序列x2(n)使其长度为N1+N2-1%生成序列x2(-n)N%该矩阵的k行为x2(k-1-n)N%计算循环卷fun ctio n y=cirshiftd(x,m,N)%directly realize circular shift for seque nee x %y=cirshiftd(x,m,N);%x:i nput seque nee whose len gth is less tha n N %m:how much to sh

8、ift%N:circular len gth%y:output shifted seque neeif len gth(x)>Nerror('le ngth of x must be less tha n N'); endx=x,zeros(1,N-le ngth(x); n=0:1:N-1;y=x(mod( n-m,N)+1);(2)研究两者之间的关系clear all;n=0:1:11;m=0:1:5;N仁 le ngth( n);N2=le ngth(m);xn=0.8.A n;%生成x(n)hn=o nes(1,N2);%生成h(n)yln=conv(xn,hn)

9、;%直接用函数conv计算线性卷积ycn=circ onv(xn,hn, N1);%用函数circonv计算N1点循环卷积ny1= 0:1:le ngth(yl n)-1;ny2=0:1:le ngth(ycn)-1;subplot(2,1,1);%画图stem( ny1,yl n);subplot(2,1,2);stem (ny 2,yc n);axis(0,16,0,4);运行结果四、实验语句及结果function yc=circ on v(x1, x2, N)if len gth(x1)>Nerror('N必须大于等于 x1的长度');endif len gth(x

10、2)>Nerror('N必须大于等于 x2的长度');endx1=x1, zeros(1,N-le ngth(x1);x2=x2, zeros(1,N-length(x2);n=0:1:N-1;x2=x2(mod(-n, N)+1); H=zeros(N, N);for n=1:1:NH(n, :)=cirshiftd(x2, n-1, N);%计算圆周卷积endyc=x1*H:fun ctio n y=cirshiftd(x, m, N)if len gth(x)>Nerror('x的长度必须小于 N'); endx=x, zeros(1, N-l

11、e ngth(x);n=0:1:N-1;y=x(mod( n-m,N)+1); x(n) y(n)clear allxn=1 2 3 4 5;hn=1 2 1 2;N1=le ngth(x n);N2=le ngth(h n);y1n=conv(xn, hn);yen=circ onv(xn, hn, 5);n y仁0:1:le ngth(y1 n)-1; ny2=0:1:le ngth(ycn)-1; subplot(2,1,1);stem (n y1, yin);subplot(2,1,2);stem (ny2, yen);205Tstem (n y1, yin);ylabel('

12、线性卷积');subplot(2,1,2);stem (ny 2,yc n);ylabel('圆周卷积);20stem (n y1, yin);ylabel('线性卷积');subplot(2,1,2);stem (ny 2,yc n);ylabel('圆周卷积);20 x(n) y(n)clear all ;N1=5;N2=4;xn=1 2 3 4 5;hn=1 2 1 2; yln=conv(xn,hn);yen=circ onv(xn,hn, 6); ny1= 0:1:le ngth(yl n)-1; ny2=0:1:le ngth(ycn)-1;

13、 subplot(2,1,1);stem (n y1, yin);ylabel('线性卷积');subplot(2,1,2);stem (ny 2,yc n);ylabel('圆周卷积);205T x(n) y(n)clear all ;N1=5;N2=4;xn=1 2 3 4 5;hn=1 2 1 2; yln=conv(xn,hn);yen=circ onv(xn,hn ,9); ny1= 0:1:le ngth(yl n)-1; ny2=0:1:le ngth(ycn)-1; subplot(2,1,1);stem (n y1, yin);ylabel('

14、线性卷积');subplot(2,1,2);stem (ny 2,yc n);ylabel('圆周卷积);20 x(n) y(n)clear all ;N1=5;N2=4;xn=1 2 3 4 5;hn=1 2 1 2; yln=conv(xn,hn);yen=circ onv(xn,hn ,10); ny1= 0:1:le ngth(yl n)-1; ny2=0:1:le ngth(ycn)-1; subplot(2,1,1);stem (n y1, yin);ylabel('线性卷积');subplot(2,1,2);stem (ny 2,yc n);ylabel('圆周卷积);202020五、思考题解答(4) 线性卷积运算一般步骤为:求x1(n)与x2 (n)的线性卷积;对 x1(m)或x2 ( m)先进行镜像移位x1(-m),对移位后的序列再进行从左至右的依次平移x(n-m),当n=0,1,2N-1时,分别将x(n-m)与x2 (m)相乘,并在 m=0,1,2.N-1的区间求和,便得到 y (n)。圆周卷积运算一般步骤为:在圆周卷积过程中, 求和变量为 mn为参变量,先将x2(m)周期化,形成x2(m)N,再反转形成x2(-m)N,取主值

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论