文档详情

离散时间信号通过线性时不变系统实验报告讲述.doc

发布:2017-03-31约字共12页下载文档
文本预览下载声明
离散时间信号通过线性时不变系统 1.1 实验目的 1、通过本实验,进一步加深对离散线性时不变系统的理解。 2、掌握利用线性卷积求解离散线性时不变系统输出的方法。 3、掌握利用差分方程求解离散线性时不变系统输出的方法。 1.2 实验原理与方法 离散时间系统的输出信号与输入信号之间的关系为: 离散时间线性时不变系统的特点是系统具有线性性质和线性时不变性质。即满足线性叠加定理: 系统对输入信号的运算关系在整个过程中不随时间变化,即系统是时不变系统: 对于LTI系统,设系统的单位脉冲响应为h(n),则系统输入输出满足线性卷积关系: 还可以用一个N阶线性常系数差分方程来表示: 当a=0时,系统输入输出满足线性卷积的关系。 1.3 实验内容及步骤 1、编制信号产生、卷积、求解差分方程和显示子程序 设模拟正弦信号:,现以T为周期,对其进行采样,得到正弦序列为: 其中f为数字频率,w为数字角频率。 产生两个信号: N取大于500. 设两个离散时间线性时不变系统分别为: 系统1: 系统2: 其中: 2、实验内容 (1)令分别通过1、2(注意:通过系统1可以用线性卷积求解,通过系统2必须用差分方程求解),注意系统1、2输出信号的区别和共性。 #includestdio.h #includegraphics.h #includemath.h #define pi 3.1415926 void conv(float u[],float v[],float w[], int m, int n); //void plot(int xlenth,float *y,char *name,int gain,char *xlabel,char *ylabel); void main() { int i,j; int m,n; int gain=1; int y11,y22; char name=f; char xlabel=X,ylabel=Y; float xa[650]={0.0},xb[650]={0.0},h[650]={0.0},y1[650]={0.0},y2[650]={0.0}; for(i=0;i600;i++) xa[i]=sin(2*pi/55.0*i); for(i=0;i600;i++) xb[i]=sin(2*pi/55.0*i)+sin(2*pi*20.0/55.0*i); for(j=0;j=49;j++) h[j]=1.0; m=sizeof(xa)/sizeof(xa[0]); n=sizeof(xb)/sizeof(xb[0]); //a=sizeof(h)/sizeof(h[0]); y11=sizeof(y1)/sizeof(y1[0]); y22=sizeof(y2)/sizeof(y2[0]); conv(xa,h,y1,m,n); conv(xb,h,y2,m,n); y11=sizeof(y1)/sizeof(y1[0]); y22=sizeof(y2)/sizeof(y2[0]); //plot(y11,y1,s,gain,xlabel,ylabel); initgraph(1000,500); initgraph(960,480,SHOWCONSOLE);//初始化图像 setbkcolor(WHITE);// 用背景色清空屏幕 cleardevice();// 用背景色清空屏幕 setcolor(BLACK); outtextxy(480, 10, name);//图像名 outtextxy(900, 220, xlabel);// outtextxy(5, 10, ylabel);// line(0,240,960,240);//画横坐标轴 line(30,0,30,480);//画纵坐标轴 setlinestyle(PS_DASHDOT); setlinestyle(PS_SOLID); setlinecolor(BLUE); for(i=0;i650;i++) line(100+i,50,100+i,xa[i]*25+50); for(i=0;i650;i++) line(100+i,150,100+i,xb[i]*25+150); for(i=0;i650;i++) line(100+i,280,100+i,y1[i]*5+280); for(i=0;i650;i++) line(100+i,400
显示全部
相似文档