离散时间系统的时域分析--一阶和二阶差分方程求解9页word文档
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计任务书
目录
1 引言 (1)
2 Matlab7.0入门 (1)
3 利用Matlab 7.0实现一阶和二阶差分方程求解的设计 (2)
3.1 设计原理分析 (2)
3.1.1 差分方程定义 (2)
3.1.2 差分方程的意义与应用 (2)
3.1.3 用MATLAB仿真时用的相关函数说明 (3)
3.2 一阶和二阶差分方程求解的编程设计及实现 (4)
3.2.1 设计函数思路 (4)
3.2.2 理论计算 (4)
3.2.3 设计过程记录及运行结果 (4)
4 结论 (5)
5 参考文献 (6)
1引言
人们之间的交流是通过消息的传播来实现的,信号则是消息的表现形式,消息是信号的具体内容。
《信号与系统》课程是一门实用性较强、涉及面较广的专业基础课,该课程是将学生从电路分析的知识领域引入信号处理与传输领域的关键性课程,对后续专业课起着承上启下的作用. 该课的基本方法和理论大量应用于计算机信息处理的各个领域,特别是通信、数字语音处理、数字图像处理、数字信号分析等领域,应用更为广泛。
近年来,计算机多媒体教序手段的运用逐步普及,大量优秀的科学计算和系统仿真软件不断涌现,为我们实现计算机辅助教学和学生上机实验提供了很好的平台。通过对这些软件的分析和对比,我们选择MATLAB语言作为辅助教学工具,借助MATLAB 强大的计算能力和图形表现能力,将《信号与系统》中的概念、方法和相应的结果,以图形的形式直观地展现给我们,大大的方便我们迅速掌握和理解老师上课教的有关信号与系统的知识。
2Matlab7.0入门
MATLAB的名称源自Matrix Laboratory,它是一种科学计算软件,专门以矩阵的形式处理数据。MATLAB将高性能的数值计算和可视化集成在一起,并提供了大量的内置函数,从而被广泛地应用于科学计算、控制系统、信息处理等领域的分析、仿真和设计工作,而且利用MATLAB产品的开放式结构,可以非常容易地对MATLAB的功能进行扩充,从而在不断深化对问题认识的同时,不断完善MATLAB产品以提高产品自身的竞争能力。
Matlab7.0比Matlab的老版本提供了更多更强的新功能和更全面、更方便的联机帮助信息。当然也比以前的版本对于软件、硬件提出了更高的要求。
在国内外Matlab已经经受了多年的考验。Matlab7.0功能强大,适用范围很广。其可以用来线性代数里的向量、数组、矩阵运算,复数运算,高次方程求根,插值与数值微商运算,数值积分运算,常微分方程的数值积分运算、数值逼近、最优化方法等,即差不多所有科学研究与工程技术应用需要的各方面的计算,均可用Matlab来解决。
MATLAB是MATLAB产品家族的基础,它提供了基本的数学算法,例如矩阵运算、数值分析算法,MATLAB集成了2D和3D图形功能,以完成相应数值可视化的工作,并且提供了一种交互式的高级编程语言——M语言,利用M语言可以通过编写脚本或者函数文件实现用户自己的算法。
利用M语言还开发了相应的MATLAB专业工具箱函数供用户直接使用。这些工具箱应用的算法是开放的可扩展的,用户不仅可以查看其中的算法,还可以针对一些算法进行修改,甚至允许开发自己的算法扩充工具箱的功能。目前MATLAB产品的工具箱有四十多个,分别涵盖了数据采集、科学计算、控制系统设计与分析、数字信号处理、数字图像处理、金融财务分析以及生物遗传工程等专业领域。
综上,在进行信号的分析与仿真时,MATLAB7.0无疑是一个强大而实用的工具。尤其对于信号的分析起到了直观而形象的作用,非常适合与相关课题的研究与分析。·3 利用Matlab 7.0实现一阶和二阶差分方程求解的设计
3.1 设计原理分析
3.1.1 差分方程定义
含有未知函数y(t)=f(t)以及yt的差分Dy(t),D2y(t),…的函数方程,称为常差分方程(简称差分方程);出现在差分方程中的差分的最高阶数,称为差分方程的阶。n阶差分方程的一般形式为F(t,y(t),D y(t),…,Dn y(t))=0,其中F是t,y(t), D y(t),…,Dn y(t)的已知函数,且Dnyt一定要在方程中出现。
含有两个或两个以上函数值y(t),y(t+1),…的函数方程,称为(常)差分方程,出现在差分方程中未知函数下标的最大差,称为差分方程的阶。n阶差分方程的一般形式为F(t,y(t),y(t+1),…,y(t+n))=0,其中F为t,y(t),y(t+1),…,y(t+n)的已知函数,且y(t)和y(t+n)一定要在差分方程中出现。
3.1.2 差分方程的意义与应用
差分方程模型有着广泛的应用。实际上,连续变量可以用离散变量来近似逼近1,从而微分方程模型就可以近似于某个差分方程模型。差分方程模型有着非常广泛的实际背景。在经济金融保险领域、生物种群数量结构规律分析、疫病和病虫害的控制与防治、遗传规律的研究等许许多多的方面都有着非常重要的的作用。可以这样讲,只要牵涉到关于变量的规律,性质,就可以适当的用差分方程模型来表现体与分析求解。
3.1.3 用MATLAB仿真时用的相关函数说明
在用MATLAB仿真离散系统的差分方程时可以用函数y=filter(p,d,x)实现差分方程的仿真,用y=impz(p,d,N)求系统的冲激响应。
(1)利用filter函数实现差分方程说明:
filter([1,2],1,[1,2,3,4,5])实现y[k]=x[k]+2*x[k-1]
y[1]=x[1]+2*0=1%(x[1]之前状态都用0)
y[2]=x[2]+2*x[1]=2+2*1=4
(2)用filter函数求该差分方程y[n]+0.75y[n-1]+0.125y[n-2]=x[n]-x[n-1]的单位冲激响应和单位阶跃响应说明:
单位冲激响应:
a1=[1,0.75,0.125];
b1=[1,-1];
n=0:20;
x1=[1,zeros(1,20)];
y1filter=filter(b1,a1,x1);
stem(n,y1filter);
title('y1filter');
xlabel('x');
ylabel('y');
单位阶跃响应:
a1=[1,0.75,0.125];
b1=[1,-1];
n=0:20;
2x2=ones(1,21);
y1filter=filter(b1,a1,x2);
stem(n,y1filter);
title('y1filter_step');
xabel('x');
ylabel('y');