MATLAB实验报告运用MATLAB求解和分析线性时不变系统DOC.docx
《MATLAB实验报告运用MATLAB求解和分析线性时不变系统DOC.docx》由会员分享,可在线阅读,更多相关《MATLAB实验报告运用MATLAB求解和分析线性时不变系统DOC.docx(15页珍藏版)》请在冰豆网上搜索。
![MATLAB实验报告运用MATLAB求解和分析线性时不变系统DOC.docx](https://file1.bdocx.com/fileroot1/2023-6/9/afc5c99c-7c5f-4975-97bc-681b577c1865/afc5c99c-7c5f-4975-97bc-681b577c18651.gif)
MATLAB实验报告运用MATLAB求解和分析线性时不变系统DOC
MATLAB实验报告
课程名称MATLAB程序设计实验日期2015年05月11日
学生姓名
学号班级
实验名称
运用MATLA求解和分析线性时不变系统
实验仪器
MATLAB7.1WindowsXP
实验目的
1.熟悉线性时不变LTI系统在典型激励信号下的响应及其特征。
2.掌握线性LTI系统单位冲激响应的求解方法。
3.熟悉MATLA的相关函数的调用格式和作用。
4.会用MATLA对系统进行时域分析。
实验基本
原理
1.Impulse函数
功能:
计算并画出系统的冲激响应。
调用格式:
Impulse(sys):
其中sys可以是利用命令tf,zpk或
ss建立的系统函数。
Impulse(sys,t)计算并画出系统在向量t定义的时间内的冲激响应。
Y二impulse(sys,t):
保存系统的输出值。
2.Step函数
功能:
计算并画出系统的阶跃响应曲线。
调用格式:
Step(sys):
其中sys可以是利用命令tf,zpk,或ss建立的系统。
Step(sys,t):
计算并画出系统在向量t定义的时间内的阶跃响应。
3.Lsim函数
功能:
计算并画出系统在任意输入下的零状态响应。
调用格式:
Lsim(sys,x,t):
其中sys可以是利用命令tf,zpk或ss建立的系统函数,x是系统的输入,t定义的是时间范围。
Lsim(sys,x,t,zi):
计算出系统在任意输入和零状态下的全响应,sys必须是状态空间形式的系统函数,zi是系统的原始状态。
4.roots函数
功能:
计算齐次多项式的根。
调用格式:
r=roots(b):
计算多项式b的根,r为多项式的根。
5.impz函数
功能:
求离散系统单位脉冲响应,并绘制其时域波形。
调用格式:
impz(b,a):
以默认方式绘出向量a,b定义的离散系统的单位脉冲响应的离散时域波形.
impz(b,a,n):
绘出由向量a,b定义的离散系统在0—n(n必须
为整数)离散时间范围内的单位序列响应的时域波形.
impz(b,a,n1:
n2):
绘出由向量a,b定义的离散系统在n1—n2
(n1,n2必须为整数,且n1波形。
y=impz(b,a,n1:
n2):
并不绘出系统单位序列响应的时域波形,而是求出向量a,b定义的离散系统在n1—n2(n1,n2必须为在整数,且n15.filter函数
功能:
对输入数据数字滤波.
调用格式:
y=filter(b,a,x):
返回向量a,b定义的离散系统在
输入为x时的零状态响应.如果x是一个矩阵,那么函数filter对矩阵x的列进行操作;如果x是一个N维数组,函数filter对数组中的一个非零量进行操作[y,zf]=filter(b,a,x):
返回了一个状态
向量的最终值zf.
[y,zf]=filter(b,a,x,zi):
指定了滤波器的初始状态向量
zi.
[y,zf]=filter(b,a,x,zi,dim)则是给定x中要进行滤波
的维数dim.如果要使用零初始状态,则将zi设为空向量。
实践内容:
1.
例12.4-1
)16?
(t)12(t)=et)
dt的齐次
d札7d2r(t)
(1)用MATLAB在时域中求解dtd*
解。
输入响应。
dr(t)+r(t)=e(t)3、...
用户MATLA在时域中求解dt,e(t)=(1e)u(t)的零响
入相应。
4.例12.4-5
用MATLAB^解方程零状态响应分量,已知系统差分方程为
y(n2)-0.7y(n-1)0.1y(n)=7x(n-2)-2x(n1)系统的激励序列x(n)=u(n)
1.例12.4-1
(1)用MATLAB在时域中求解
常呼嘅12叫齐次
数据记录
及分析
程序截图:
(2)
运行图像截图:
2.例12.4-2
求连续时间系统
d2r(t)
dt2
2-dr(t)3r(t)e(t)
dtdt
2
当e(t)=t时的特解
运行图像截图:
la-EdiIYiiLnsArtToolsDAsktapViEtdwiHdlp
D3E◎
口闻
:
1O
900
300
700
3.例12.4-3
用户MATLA在时域中求解
dr(t)
dt
r(t)=e(t)
e(t)=(1+e)u(t)的零响
入相应
解法一:
程序截图:
#FiEure1
Z3旦x
£ile£ditViewInsertXc^s加£臥珂^iindov[felp
DHats殴农帶◎逼口因a□
解法二:
用MATLAB勺dsolve函数直接获得零状态响应的表达式
程序截图:
3Editde一C:
\DocuaBntsand.SettinRaXAdaijiistr面tUnmlM£dL脇吐缸(L・
•帥
运行图像截图:
Figiarr1
匚闫X
解法三:
程序截图:
运行图像截图:
4.例12.4-5
用MATLA求解方程零状态响应分量,已知系统差分方程为
y(n2)-0.7y(n-1)0.1y(n)=7x(n-2)-2x(n1)系统的激励序列x(n)=u(n)
程序截图:
运行图像截图:
igure1
13回冈
tileEditYi"InserttoolsfiesktoplindovHelpDQGI寻k題Q的◎近□0"a□
igure2
tile
EditYi“
Insertloolsfiesktop
findovHelp
DQ
口目|■口
25
20
15
§apn_c6e乏
1°00102030405060708091
(Sa更?
p)aseuQ
实验注意
事项
每一次M-file的修改后,都要存盘。
1、实验例题12.4-1中最初没搞清楚roots的用法,耗费了较长时间,经过咨询老师后才知道原来本例题并不复杂,加之由于书本印刷错误导致在本例题用去了很多时间,但也说明对于程序的认识较浅,不能够很好的发现问题。
2、感觉在编写过程中还是无法脱离教材,按照教材样式将程序输进电脑,但搞到进步的是很多函数基本可以搞清楚用途、
3、实验过程中还是出现了程序自己核对正确但无法运行的情况,经过尝试重新输入解决了问题,同时学会了通过系统查找程序错误的方法。
实验心得
4、程序中出现的变量名应该和定义里已经给出的变量名保持一致,否则程序会出现没有定义的错误。
在试验中,发生“I”和“1”,“0”和“0”分不清的问题,以后需要注意。
5、通过本次matlab实验使我学习掌握了许多知识,本次实验是我们MATLA程序设计课程的第二次实验,虽然对MATLAB^件的运用还不是很熟练,但通过老师的讲解和对课本例题的分析,实验还是一步步地完成了。
实验中遇到的问题经过老师的讲解与和同学的交流一个个的解决了,也得出了实验结果。
本次实验基本达到了实验要求,同时通过此次实验,掌握了MATLA的基本使用,颇有收获。