信号与系统课程设计报告华科电气95分报告Word文档格式.docx
《信号与系统课程设计报告华科电气95分报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《信号与系统课程设计报告华科电气95分报告Word文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
1原理学习………………………………………………4
1.1循环卷积…………………………………………..5
1.2离散卷积…………………………………………..5
2程序流程图……………………………………………6
3c语言编程与计算
3.1c语言程序………………………………………...7
3.2计算结果…………………………………………..8
4验证计算结果
4.1验算循环卷积……………………………………9
4.2验算离散卷积……………………………………9
四体会与感想……………………………………………..10
五参考文献………………………………………………..10
设计题目:
循环卷积和离散卷积的计算机计算
设计目的:
通过理论课的学习和自己查阅资料学习,能掌握不少理论知识和实际应用知识。
对于一个未来的工程技术人员来说,如何运用所学知识去分析和解决实际问题至关重要,本课程设计的目的也正是如此。
信号与系统课程设计是本专业学生在校学习期间第一次进行的设计,对学生的独立的工作能力及灵活运用所学知识分析问题和解决问题的能力是一次很好的锻炼机会,是培养电气技术人员的一个重要坏节。
通过设计,学生应培养和掌握正确的设计思想和认真负责的设计态度设计应结合实际进行,力求准确、实用和可靠。
具体步骤:
1明确设计目的、任务及内容
2分析离散卷积与循环卷积的特点与不同
3画出程序流程图
4用C语言编程并计算
5用所学知识验证该计算结果
6分析与体会
实现方法:
通过学习课本及参阅相关书籍以及网络,从理论上分析离散卷积和循环卷积的特点;
学习用Word设计程序流程图,C语言编程进行计算,并验证计算结果。
二设计目标
设有两离散序列
和
,则两序列的循环卷积和离散卷积分别为:
画出计算此两卷积的程序框图,并用C语言编写计算程序,计算出结果。
学生用C语言编程,分析计算结果。
离散卷积和循环卷积的计算机计算
1原理学习
卷积关系最重要的一种情况,就是在信号与线性系统或数字信号处理中的卷积定理。
利用该定理,可以将时间域或空间域中的卷积运算等价为频率域的相乘运算,从而利用FFT等快速算法,实现有效的计算,节省运算代价。
1.1循环卷积
循环卷积比起线性卷积,在运算速度上有很大的优越性,它可以采用快速傅里叶变换(FFT)技术,若能利用循环卷积求线性卷积,会带来很大的方便。
一般情况下,n≧N时x[n]*v[n]并不等于零,x[n]*v[n]的N点DFT和这些值不一致。
因此,有必要定义一种卷积运算,使得n=0,1,…,N-1之外的卷积信号x[n]*v[n]等于零,这就引出循环卷积的概念。
离散卷积和循环卷积之间的唯一区别是:
用折叠位移(模N)信号代替了离散卷积式中的折叠位移信号。
对于循环卷积来说,不仅要知道这两组数而且要确定N值。
1.2离散卷积
信号与线性系统中,定义x[n],v[n],其卷积为
计算离散卷积时,首先将x[n],v[n]中的离散时间序号n改为i,得到信号x[i],v[i],下一步确定v[n-i]和乘积x[i]v[n-i]。
信号v[n-i]是信号v[i]的反折和平移,通过对x[i]v[n-i]中的i求和即可计算出来,式中i取一定范围的的整数。
计算离散卷积时需要用户输入x[n]和v[m]的值,这样便可以得到所要求的离散卷积的值
3c语言编程与计算
3.1c语言程序
#include<
stdio.h>
conio.h>
voidmain()
{
inti,j;
i=j=0;
intt;
staticfloata[100],b[100],c[200];
printf("
计算循环卷积y\n"
);
请输入N的值\n"
scanf("
%d"
&
t);
请输入x[n]\n"
for(i=0;
i<
=t-1;
i++)
scanf("
%f"
a[i]);
请输入v[m]\n"
b[i]);
for(j=0;
j<
j++)
for(i=0;
if((j-i)>
=0)
c[j]+=a[i]*b[j-i];
elseif((j-i)<
0)
c[j]+=a[i]*b[j-i+t];
循环卷积y[n]为\n"
printf("
y[%d]=%f\n"
j,c[j]);
intn,m,k,q;
n=m=k=q=0;
staticfloatx[100],y[100],z[200];
计算离散卷积y\n"
请输入x[n]的长度\n"
n);
请输入v[m]的长度\n"
m);
for(k=0;
k<
=n-1;
k++)
x[k]);
=m-1;
y[k]);
for(q=0;
q<
=m+n-2;
q++)
for(k=0;
if((q-k)>
z[q]+=x[k]*y[q-k];
离散卷积y[n]为\n"
q,z[q]);
其余值均为0\n"
getch();
}
3.2计算结果
4验证计算结果
4.1验算循环卷积
=x[0]v[0]+x[1]v[2]+x[2]v[1]=11,n=0
y[n]=x[n]③v[m]=x[0]v[1]+x[1]v[0]+x[2]v[2]=11,n=1
=x[0]v[2]+x[1]v[1]+x[2]v[0]=14,n=2
4.2验算离散卷积
阵列方法:
123
321
64
9
3814
y[0]=3,n=0
y[1]=8,n=1
y[n]=x[n]*v[n]=y[2]=14,n=2
y[3]=8,n=3
y[4]=3,n=4
其他为0
验算结果与编程计算结果一致。
四体会与感想
在本次课程设计中,通过运用信号与系统、Word以及c语言的有关知识,对所学的内容有了更为清楚的认识,学会了如何利用图书馆、网络及各种常用软件,了解研究报告的格式。
我们不仅要学好学校里所学到的知识,还要不断从生活中,实践中学其他知识,不断地从各方面武装自已,才能在竞争中突出自已,表现自已。
在这次实践中,我感受很深的一点是,在学校理论的学习很多,而且是多方面的,几乎是面面俱到;
而在实际工作中,可能会遇到书本上没学到的,又可能是书本上的知识一点都用不上的情况。
总而言之,在课程设计过程中受益匪浅,不仅巩固了以前学习过的知识,还学习到了新知识,而且学以致用,将所学知识转化成了实际应用。
五参考书目
1.FundamentalsofSignalsandSystems-UsingtheWebandMATLAB
EdwardW.KamenBonnieS.Heck著科学出版社
2.中文版office2003实用教程徐贤军著
清华大学出版社
3.《c程序设计(第三版)》谭浩强著清华大学出版社