有限长序列线性卷积课程设计.doc

上传人:汽*** 文档编号:559484875 上传时间:2023-09-01 格式:DOC 页数:5 大小:2.69MB
返回 下载 相关 举报
有限长序列线性卷积课程设计.doc_第1页
第1页 / 共5页
有限长序列线性卷积课程设计.doc_第2页
第2页 / 共5页
有限长序列线性卷积课程设计.doc_第3页
第3页 / 共5页
有限长序列线性卷积课程设计.doc_第4页
第4页 / 共5页
有限长序列线性卷积课程设计.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《有限长序列线性卷积课程设计.doc》由会员分享,可在线阅读,更多相关《有限长序列线性卷积课程设计.doc(5页珍藏版)》请在金锄头文库上搜索。

1、 陕西理工学院课程设计 有限长序列线性卷积计算方法物电学院电信082班顾志龙1.有限长序列线性卷积原理1.1序列卷积的定义设给定两个有限长序列xk、yk;则xk*yk= 为两个序列的线性卷积。例:给定两个序列xk_=(1/2)k yk_=(-1/5)k 求它们的卷积。解:zk_xk_* yk_10/7(1/2)k+1-(-1/5)k+1)k;用mathematica软解求解,程序如下:Clearx,y,k;(*clear变量名x,y,z*)k_=UnitStepk;(*单位阶跃函数*)xk_=(1/2)kk;yk_=(-1/5)kk;p1=Tablek,xk,k,0,50,1;(*在直角坐标系

2、中画出p1的散点图,要求图形为蓝色;显示所有值的平面曲线图形;显示图形高度与宽度之比为1/4*)p2=Tablek,yk,k,0,50,1;ListPlotp1,Filling1Axis,Blue,PlotRangeAll,AspectRatio1/4ListPlotp2,Filling1Axis,Blue,PlotRangeAll,AspectRatio1/4运算结果如下: 1.2圆周卷积 圆周卷积的定义要求:两个序列一样长;假设两个序列可以作周期延拓而形成周期序列。 例:线性卷积解答:例:已知两个序列x=7,2,3,2,1、y=1,-2,3,-4,5,2,1;求它们的卷积用mathemat

3、ica软解求解:程序如下 Clearx,y,z;(*clear变量名x,y,z*)x=7,2,3,2,1;L1=5;y=1,-2,3,-4,5,2,1;L2=7;L=L1+L2-1;z=7,2,3,2,1.1,-2,3,-4,5,2,1,0,0,0,0,0,1,-2,3,-4,5,2,1,0,0,0,0,0,1,-2,3,-4,5,2,1,0,0,0,0,0,1,-2,3,-4,5,2,1,0,0,0,0,0,1,-2,3,-4,5,2,1第一种计算方法:ListConvolvex,y,1,-1,0(*直接计算出x,y的卷积*)运行结果如下:Out87= 7,-12,20,-26,33,16,

4、21,14,12,4,1第二种计算方法:ListPlotPadRightx,L1+L2-1,FillingAxis,AspectRatio1/5(*在直角左边系中画出长度为L1+L2-1的x的散点图,要求覆盖坐标系并且图形高度与宽度比为1/5*)ListPlotPadRighty,L1+L2-1,FillingAxis,AspectRatio1/5ListPlotz,FillingAxis,AspectRatio1/5运行结果如下:Out5= 7,-12,20,-26,33,16,21,14,12,4,1 结论: 由圆周卷积的定义可知:序列的L是一样长的,且这个长度是由人为规定的;圆周卷积的第

5、二个序列每一行的长度由L决定,它的行数与第一个序列的元素相等。用圆周卷积的方法解答:规定L=6时;程序如下:Clearx,y,z;(*clear变量名x,y,z*)x=7,2,3,2,1;y=1,-2,3,-4,5,2,1;L=6;xc=PadRightx,L;yc=PadRighty,L;zc=7,2,3,2,1.1,-2,3,-4,5,2,2,1,-2,3,-4,5,5,2,1,-2,3,-4,-4,5,2,1,-2,3,3,-4,5,2,1,-2;ListPlotPadRightx,L,FillingAxis,AspectRatio1/5ListPlotPadRighty,L,Filli

6、ngAxis,AspectRatio1/5ListPlotzc,FillingAxis,AspectRatio1/5运行结果如下:2.3快速傅立叶变换: 线性卷积不可用快速傅立叶变换计算;但是圆周卷积可以用快速傅立叶变换。所以线性卷积必须先转换为圆周卷积后才可以进行快速傅立叶变换。 根据时域循环卷积定理,x(n)与y(n)的线性卷积可以用循环卷积来代替。给出了一个基于快速傅里叶变换(FFT)的卷积的实现方法,如图1所示。分别对补零后的x(n)和y(n)进行FFT运算,得到对应的频域响应X(k)和Y(k),将X(k)和Y(k)相乘的结果再做IFFT,即可以得到x(n)和h(n)的卷积结果y(n)

7、。 FFT x(k) XXXXX X(K)IFFT Z(k) z(k)FFT y(k) Y(k) 有限长序列线性卷积框图用mathematica软解求解:当序列的长度较小时:Clearx,y,z,xc,yc,zc,XC,YC,ZC; (*clear变量名x,y,z,xc,yc,zc,XC,YC,ZC*)x=TableRandom,k,1,2;(*产生一个表随机给出闭区间0,1内的实数,k在(1,2)之间变化*)y=TableCos/26 (k-1),k,1,10/N;(*产生一个表通项公式Cos/26 (k-1),k在(1,10)之间变化*)L1=Lengthx;(*计算x的长度*)L2=Le

8、ngthy;d=0,0,0,3600,60,1;(*线性卷积*)t1=Date;z=TableSumxm+1If0=k-m=L2-1,yk-m+1,0,m,0,L1-1,k,0,L1+L2-2;(*对x,y用定义法进行卷积运算*)t2=Date;dt1=(t2-t1).d;(*定义法计算卷积耗时为dt1*)Print 按定义计算耗时:,dt1,秒;t3=Date;L=L1+L2-1;xc=PadRightx,L;yc=PadRighty,L;XC=Fourierxc,FourierParameters1,-1;(*对xc进行傅里叶变化*)YC=Fourieryc,FourierParamete

9、rs1,-1;ZC=XC YC;zc=FourierZC,FourierParameters-1,1/Chop;(*对ZC进行傅里叶逆变化*)t4=Date;dt2=(t4-t3).d(*用傅里叶变化计算卷积耗时dt2*)Print 按定义计算耗时:,dt2,秒;p=dt1/dt2pic1=ListPlotz,FillingAxis,PlotStyleRed,PointSize0.005 (*在直角坐标系中画出z的散点图,输出曲线为红色的点,且点的大小为0.005*)pic2=ListPlotzc,FillingAxisShowpic2,pic1(*在坐标系中显示pic2、pic1的图形*)z

10、-zc/Chop(*求z-zc的值/误差*)运行结果如下:按定义计算耗时 : 0.0010001秒 按定义计算耗时 : 0.0020002 秒 0.5000 0,0,0,0,0,0,0,0,0,0,0当序列的长度较大时:Clearx,y,z,xc,yc,zc,XC,YC,ZC;(*clear变量名x,y,z,xc,yc,zc,XC,YC,ZC*)x=TableRandom,k,1,1000;(*产生一个表随机给出闭区间0,1内的实数,k在(1,2)之间变化*)y=TableCos/26 (k-1),k,1,2000/N;(*产生一个表通项公式Cos/26 (k-1),k在(1,10)之间变化*

11、)L1=Lengthx;(*计算x的长度*)L2=Lengthy;d=0,0,0,3600,60,1;(*线性卷积*)t1=Date;z=TableSumxm+1If0=k-mL2-1,yk-m+1,0,m,0,L1-1,k,0,L1+L2-2;(*对x,y用定义法进行卷积运算*)t2=Date;dt1=(t2-t1).d;(*定义法计算卷积耗时为dt1*)Print 按定义计算耗时:,dt1,秒;t3=Date;L=L1+L2-1;xc=PadRightx,L;yc=PadRighty,L;XC=Fourierxc,FourierParameters1,-1;(*对xc进行傅里叶变化*)YC

12、=Fourieryc,FourierParameters1,-1;ZC=XC YC;zc=FourierZC,FourierParameters-1,1/Chop;(*对ZC进行傅里叶逆变化*)t4=Date;dt2=(t4-t3).d(*用傅里叶变化计算卷积耗时dt2*)Print 按定义计算耗时:,dt2,秒;p=dt1/dt2pic1=ListPlotz,FillingAxis,PlotStyleRed,PointSize0.005(*在直角坐标系中画出z的散点图,输出曲线为红色的点,且点的大小为0.005*)pic2=ListPlotzc,FillingAxisShowpic2,pic1(*在坐标系中显示pic2、pic1的图形*)z-zc/Chop(*求z-zc的值/误差*)运行结果:按定义计算耗时 : 28.4876294 秒 按定义计算耗时 : 0.0070004 秒 4069.40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,029320,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0故:由以上比较可知:当序列的长度较短时,用其定义解法花费的时间较短;当序列的长度较长时,用快速傅里叶解法花费的时间较短。第 2 页 共 5 页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号