欢迎来到天天文库
浏览记录
ID:12702678
大小:118.00 KB
页数:11页
时间:2018-07-18
《信号与系统课程设计报告--循环卷积和离散卷积的计算机计算new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数字信号处理学院学院班级电学号U201012067姓名李晓东目录一设计概述1设计题目………………………………………………32设计目的………………………………………………33具体步骤………………………………………………3114实现方法………………………………………………4二设计目标…………………………………………………4三设计内容1原理学习………………………………………………41.1循环卷积…………………………………………..51.2离散卷积…………………………………………..52程序流程图……………………………………………
2、63c语言编程与计算3.1c语言程序………………………………………...73.2计算结果…………………………………………..84验证计算结果4.1验算循环卷积……………………………………94.2验算离散卷积……………………………………9四体会与感想……………………………………………..10五参考文献………………………………………………..10一设计概述设计题目:循环卷积和离散卷积的计算机计算11设计目的:1、自学C语言以及巩固信号与系统离散卷积与循环卷积的内容;2、培养独立思考以及灵活应用所学知识的能力;3、培养和掌握正确
3、的设计思想和认真负责的设计态度;4、自行检验与调试出精确、简便、实用、可靠的设计方法。具体步骤:①仔细分析设计题目、目的及内容;②分析离散卷积与循环卷积的特点与异同;③分析计算步骤并画出流程图;④用C语言进行编程并用VC6.0进行演算;⑤自行计算进行验算;⑥分析结果并分享体会运用软件:officeword2003VC6.0实现方法:通过学习课本及参阅相关书籍以及网络,从理论上分析离散卷积和循环卷积的特点;学习用Word设计程序流程图,C语言编程进行计算,并验证计算结果。二设计目标设有两离散序列和,则两序列的循环卷积和离散卷
4、积分别为:11画出计算此两卷积的程序框图,并用C语言编写计算程序,计算出结果。学生用C语言编程,分析计算结果。三设计内容离散卷积和循环卷积的计算机计算1原理学习卷积关系最重要的一种情况,就是在信号与线性系统或数字信号处理中的卷积定理。利用该定理,可以将时间域或空间域中的卷积运算等价为频率域的相乘运算,从而利用FFT等快速算法,实现有效的计算,节省运算代价。1.1循环卷积循环卷积比起线性卷积,在运算速度上有很大的优越性,它可以采用快速傅里叶变换(FFT)技术,若能利用循环卷积求线性卷积,会带来很大的方便。一般情况下,n≧N时
5、x[n]*v[n]并不等于零,x[n]*v[n]的N点DFT和这些值不一致。因此,有必要定义一种卷积运算,使得n=0,1,…,N-1之外的卷积信号x[n]*v[n]等于零,这就引出循环卷积的概念。离散卷积和循环卷积之间的唯一区别是:用折叠位移(模N)信号代替了离散卷积式中的折叠位移信号。11对于循环卷积来说,不仅要知道这两组数而且要确定N值。1.2离散卷积信号与线性系统中,定义x[n],v[n],其卷积为计算离散卷积时,首先将x[n],v[n]中的离散时间序号n改为i,得到信号x[i],v[i],下一步确定v[n-i]和乘
6、积x[i]v[n-i]。信号v[n-i]是信号v[i]的反折和平移,通过对x[i]v[n-i]中的i求和即可计算出来,式中i取一定范围的的整数。计算离散卷积时需要用户输入x[n]和v[m]的值,这样便可以得到所要求的离散卷积的值112程序流程图开始输入n,m,x[n],v[m]输入N,x[n],v[m]i=0i<=m+n-2j=0j<=n-1j<=iy[i]+=x[j]*v[i-j]j++i++j=0j<=N-1i=0i<=N-1j>=iy[j]+=x[i]*v[j-i]y[j]+=x[i]*v[j-i+t]i++j++循
7、环卷积y[n]离散卷积y[n]假真真假假真假真假真真假计算循环卷积计算离散卷积113c语言编程与计算3.1c语言程序#include#includevoiddiscreat();voidcircle();voidmain(){inti;printf("欢迎使用卷积计算程序");printf("请进行选择,输入1进行循环卷积计算,输入2进行离散卷积计算:");scanf("%d",&i);printf("");while(i!=1&&i!=2){printf("输入错误,请重新选
8、择:");scanf("%d",&i);}if(i=1)circle();elsediscreat(),i--;if(i=1)discreat();elsecircle();printf("感谢使用");system("pause");}voidcircle(){inti,j;i=j=0;intt;
此文档下载收益归作者所有