matlab零状态、零输入响应

合集下载

信号与信号实验

信号与信号实验

信号与信号实验MATLAB 部分实验一:基本信号在MATLAB 中的表示和运算 一、 实验目的;1、学会用MATLAB 表示常用连续信号的方法;2、学会用MATLAB 进行信号基本运算的方法;3、学会用MATLAB 实现连续时间信号的卷积的方法。

二、 实验内容:1、绘出下列信号的时域波形(1)f(t)=(2-e-2t)u(t) (2)f(t)=cos(πt)[u(t)-u(t-1)] (3)f(t)=u(-3t+2) (4)f(t)= -(1/2)tu(t+2) 解:t1=0:0.01:5; y1=(2-exp(-2*t1)).*(t1>0); subplot(221);plot(t1,y1);grid; title('f(t)=(2-e-2t)u(t)'); t2=0:0.01:5; y2=cos(pi*t2).*((t2>0)-(t2>1)); subplot(222);plot(t2,y2);grid; title('f(t)=cos(πt)[u(t)-u(t-1)]'); t3=-2:0.01:5; y3=(-3*t3+2>0); subplot(223);plot(t3,y3);grid; title('f(t)=u(-3t+2)'); t4=-3:0.01:5; y4=(-1/2)*t4.*(t4>-2); subplot(224);plot(t4,y4);grid; title('f(t)=-(1/2)tu(t+2)');00.511.52f(t)=(2-e-2t)u(t)图 1-1f(t)=cos(πt)[u(t)-u(t-1)]图1-200.51f(t)=u(-3t+2)图1-3f(t)=-(1/2)tu(t+2)图 1-42、用MATLAB 绘出下列信号的卷积积分f1(t)*f2(t)的时域波形(1) f1(t)=tu(t), f2(t)=u(t) (2) f1(t)=u(t)-u(t-4), f2(t)=sin(πt)u(t) (3) f1(t)= e-2t u(t), f2(t)= e-t u(t) (4) f1(t)= e-t u(t), f2(t)=u(t) 解:(1)fs=1000; t=-1:1/fs:4; x1=stepfun(t,0); x2=x1.*t; y=conv(x1,x2)/fs; n=length(y1); tt=(0:n-1)/fs-2; subplot(311),plot(t,x1),grid; title('f1(t)=tu(t)'); subplot(312),plot(t,x2),grid; title(' f2(t)=u(t)'); subplot(313),plot(tt,y),grid on; title('f1(t) * f2(t)');(2)fs=1000; t=-1:1/fs:4; x1=(t>0)-(t>4); x2=sin(pi*t).*(t>0); x=conv(x1,x2)/fs; n=length(x); tt=(0:n-1)/fs-2; subplot(311);plot(t,x1);grid; title('f1(t)=u(t)-u(t-4))'); subplot(312);plot(t,x2);grid; title('f2(t)=sin(πt)u(t)'); subplot(313);plot(tt,x);grid; title('f1(t) * f2');(3)t=0:1/fs:4; x1=exp(-2*t).*(t>0); x2=exp(-t).*(t>0); x=conv(x1,x2)/fs; n=length(x); tt=(0:n-1)/fs-0; subplot(311);plot(t,x1);grid; title('f1(t)= e-2t u(t)'); subplot(312);plot(t,x2);grid; title('f2(t)= e-t u(t)'); subplot(313);plot(tt,x);grid; title('f1(t) * f2(t)');(4)t=0:1/fs:2; x1=exp(-2*t).*(t>0); x2=(t>0); x=conv(x1,x2)/fs; n=length(x); tt=(0:n-1)/fs-0; subplot(311);plot(t,x1);grid; title(' f1(t)= e-t u(t))'); subplot(312);plot(t,x2);grid; title('f2(t)=u(t)'); subplot(313);plot(tt,x);grid; title('f1(t)*f2(t)');0.51 1.52 2.53 3.540.51 1.52 2.53 3.5412345678-1 -0.5 00.51 1.52 2.53 3.54? 2-1 -1 -0.5 00.51 1.52 2.53 3.54? 2-2 -2-112 3 4 5678? 2-3实验二:连续时间LTI 系统的时域分析一、实验目的:学会用MATLAB 求解连续系统的零状态响应、冲击响应和阶跃响应。

MATLAB实验报告(1-4)

MATLAB实验报告(1-4)

信号与系统MATLAB第一次实验报告一、实验目的1.熟悉MATLAB软件并会简单的使用运算和简单二维图的绘制。

2.学会运用MATLAB表示常用连续时间信号的方法3.观察并熟悉一些信号的波形和特性。

4.学会运用MATLAB进行连续信号时移、反折和尺度变换。

5.学会运用MATLAB进行连续时间微分、积分运算。

6.学会运用MATLAB进行连续信号相加、相乘运算。

7.学会运用MATLAB进行连续信号的奇偶分解。

二、实验任务将实验书中的例题和解析看懂,并在MATLAB软件中练习例题,最终将作业完成。

三、实验内容1.MATLAB软件基本运算入门。

1). MATLAB软件的数值计算:算数运算向量运算:1.向量元素要用”[ ]”括起来,元素之间可用空格、逗号分隔生成行向量,用分号分隔生成列向量。

2.x=x0:step:xn.其中x0位初始值,step表示步长或者增量,xn 为结束值。

矩阵运算:1.矩阵”[ ]”括起来;矩阵每一行的各个元素必须用”,”或者空格分开;矩阵的不同行之间必须用分号”;”或者ENTER分开。

2.矩阵的加法或者减法运算是将矩阵的对应元素分别进行加法或者减法的运算。

3.常用的点运算包括”.*”、”./”、”.\”、”.^”等等。

举例:计算一个函数并绘制出在对应区间上对应的值。

2).MATLAB软件的符号运算:定义符号变量的语句格式为”syms 变量名”2.MATLAB软件简单二维图形绘制1).函数y=f(x)关于变量x的曲线绘制用语:>>plot(x,y)2).输出多个图像表顺序:例如m和n表示在一个窗口中显示m行n列个图像,p表示第p个区域,表达为subplot(mnp)或者subplot(m,n,p)3).表示输出表格横轴纵轴表达范围:axis([xmax,xmin,ymax,ymin])4).标上横轴纵轴的字母:xlabel(‘x’),ylabel(‘y’)5).命名图像就在subplot写在同一行或者在下一个subplot前:title(‘……’)6).输出:grid on举例1:举例2:3.matlab程序流程控制1).for循环:for循环变量=初值:增量:终值循环体End2).while循环结构:while 逻辑表达式循环体End3).If分支:(单分支表达式)if 逻辑表达式程序模块End(多分支结构的语法格式)if 逻辑表达式1程序模块1Else if 逻辑表达式2程序模块2…else 程序模块nEnd4).switch分支结构Switch 表达式Case 常量1程序模块1Case 常量2程序模块2……Otherwise 程序模块nEnd4.典型信号的MATLAB表示1).实指数信号:y=k*exp(a*t)举例:2).正弦信号:y=k*sin(w*t+phi)3).复指数信号:举例:4).抽样信号5).矩形脉冲信号:y=square(t,DUTY) (width默认为1)6).三角波脉冲信号:y=tripuls(t,width,skew)(skew的取值在-1~+1之间,若skew取值为0则对称)周期三角波信号或锯齿波:Y=sawtooth(t,width)5.单位阶跃信号的MATLAB表示6.信号的时移、反折和尺度变换:Xl=fliplr(x)实现信号的反折7.连续时间信号的微分和积分运算1).连续时间信号的微分运算:语句格式:d iff(function,’variable’,n)Function:需要进行求导运算的函数,variable:求导运算的独立变量,n:求导阶数2).连续时间信号的积分运算:语句格式:int(function,’variable’,a,b)Function:被积函数variable:积分变量a:积分下限b:积分上限(a&b默认是不定积分)8.信号的相加与相乘运算9.信号的奇偶分解四、小结这一次实验让我能够教熟悉的使用这个软件,并且能够输入简单的语句并输出相应的结果和波形图,也在一定程度上巩固了c语言的一些语法。

信号与系统仿真作业

信号与系统仿真作业

nGDOU-B—11—112广东海洋大学学生实验报告书(学生用表)课程名称课程号学院(系)信息学院专业班级学生姓名学号实验地点04002 实验日期实验一连时间信号的MATLAB表示和连续时间LTI系统的时域分析一、实验目的1.掌握MA TLAB产生常用连续时间信号的编程方法,并熟悉常用连续时间信号的波形和特性;2.运用MATLAB符号求解连续系统的零输入响应和零状态响应;3.运用MATLAB数值求解连续系统的零状态响应;4.运用MATLAB求解连续系统的冲激响应和阶跃响应;5.运用MATLAB卷积积分法求解系统的零状态响应。

二、实验原理1. 连续信号MATLAB实现原理从严格意义上讲,MA TLAB数值计算的方法并不能处理连续时间信号.然而,可用连续信号在等时间间隔点的取样值来近似表示连续信号,即当取样时间间隔足够小时,这些离散样值能够被MATLAB处理,并且能较好地近似表示连续信号.MATLAB提供了大量生成基本信号的函数.比如常用的指数信号、正余弦信号等都是MATLAB的内部函数。

为了表示连续时间信号,需定义某一时间或自变量的范围和取样时间间隔,然后调用该函数计算这些点的函数值,最后画出其波形图.三、实验内容1.实例分析与验证根据以上典型信号的MA TLAB函数,分析与验证下列典型信号MA TLAB程序,并实现各信号波形图的显示,连续信号的图形显示使用连续二维图函数plot().(1)正弦信号:用MA TLAB命令产生正弦信号2sin(2/4)ππ+,并会出时间0≤t≤3的波形图。

程序如下:K=2;w=2*pi ;phi=pi/4;t=0:0.01:3;ft=K*sin (w*t+phi );plot(t,ft ),grid on ;axis ([0,3,-2。

2,2.2])title (’正弦信号’)(2) 抽样信号:用MA TLAB 中的sinc(t)函数命令产生抽样信号Sa(t),并会出时间为66t ππ-≤≤的波形图。

零输入响应和零状态响应

零输入响应和零状态响应

计算方法
利用系统的传递函数和初始条 件进行计算。
通过求解常微分方程或差分方 程ห้องสมุดไป่ตู้找到系统的零输入响应。
在MATLAB/Simulink等仿真软 件中,可以通过设置系统的初 始状态来模拟零输入响应。
02 零状态响应
定义
零状态响应:是指在系统无输入 信号的情况下,系统对初始状态
产生的响应。
描述了系统在没有输入信号作用 时,其内部状态的变化情况。
零状态响应完全取决于系统本身 的特性,与输入信号无关。
产生原因
系统内部存在储能元件(如电容、电 感),当输入信号为零时,储能元件 的能量不会立即消失,而是会以某种 形式继续存在并产生响应。
系统参数(如电阻、电感、电容等) 发生变化,导致系统内部状态发生变 化,从而产生零状态响应。
计算方法
根据系统的传递函数 和初始状态进行计算。
针对复杂系统和多尺度问题,发展基于零输入响应和零状态响应的跨学科 解决方案,促进各领域之间的交流与合作。
探索零输入响应和零状态响应在可持续发展、环境保护、公共安全等领域 的潜在应用价值,为社会发展和人类福祉做出贡献。
技术创新
开发高效、稳定的零输入响应和零状态响应算 法,提高计算效率和精度,降低计算成本。
零状态响应
零状态响应描述的是系统在外部输入作用下的输出变化。通过研究零状态响应, 可以了解系统对不同类型输入的响应特性,进而设计出更好的控制系统。
系统建模与仿真
零输入响应
在系统建模与仿真中,零输入响应用 于描述系统的内部动态特性。通过分 析零输入响应,可以深入了解系统的 内部工作原理和稳定性。
零状态响应
零状态响应用于描述系统对外部输入 的响应特性。通过研究零状态响应, 可以预测系统在不同输入条件下的行 为表现,有助于优化系统的设计和控 制。

matlab求解零状态零输入响应

matlab求解零状态零输入响应

matlab求解零状态零输入响应在控制系统理论中,零状态零输入响应是关于一个特定系统的动态响应的一种模型。

这种响应是指在输入信号为零的情况下,考虑到初始状态对系统的影响而产生的响应。

对于多数控制问题,除非考虑到开始时就有输入信号的情况,否则零状态零输入响应会是我们更加感兴趣的一种状态,因为它考虑到了初值的影响并且可以帮助我们得到一个特定时间内的系统响应。

在这里,我们将主要介绍如何使用MATLAB软件包来解决零状态零输入响应问题。

考虑到这种响应是一个关于时间的函数,我们将讨论如何利用MATLAB的功能包来创建一个时间序列并生成相应的输出结果。

在MATLAB中,我们可以使用过渡矩阵法(State Transition Matrix)来求解零输入响应。

该方法是将系统的状态空间描述通过定义一个从时间t1到t2的矩阵转换,输入输出关系描述为超前作用器(feedforward action),并依次解决零输入和零状态响应的问题。

因此,我们可以将求解零状态零输入响应的问题转换为一个简单的线性代数问题。

在MATLAB中,我们需要定义一个描述系统的状态空间模型,并使用矩阵乘法来表示状态空间方程和状态转换。

在MATLAB中,有两种常用的方法可以解决零输入响应问题:直接使用转移矩阵法或使用MATLAB中的laplace变换。

1. 直接使用转移矩阵法在MATLAB中,我们可以使用矩阵操作命令来实现求解零输入响应时的状态转移过程。

具体步骤如下:a. 首先,需要定义系统的状态空间模型,包括矩阵A,B,C和D。

b. 接着,我们需要使用MATLAB中的expm命令来计算过渡矩阵。

c. 最后,利用在MATLAB中定义的C和D矩阵来计算响应。

例如,在以下控制系统中:x' = Ax + B1u1 + B2u2y = Cx + Du其中,A,B1,B2,C和D由以下矩阵给出:A = [0 1 0;0 0 1;0 0 0]B1 = [0;0;1]B2 = [1;0;0]C = [1 1 1]D = 0我们可以使用以下MATLAB命令来计算系统响应:%计算过渡矩阵t = 0:0.1:10;phi = expm(A*t);plot(t,y)2. 使用MATLAB中的laplace变换另一个解决零输入响应问题的方法是使用MATLAB中的laplace变换。

用MATLAB对RC、RL电路进行分析.

用MATLAB对RC、RL电路进行分析.

题目:用MATLAB 对RC 、RL 电路进行分析摘要: MATLAB 是美国Mathworks 公司开发的大型软件包,是MATrix LABoratory 的缩略语。

目前,MATLAB 广泛应用于线性代数、高等数学、物理、电路分析、信号与系统、数字信号处理、自动控制等众多领域,是当前国际上最流行的科学与工程计算的工具软件。

MATLAB 功能强大并且同其它高级语言相比具有语法规则简单、容易掌握、调试方便等特点。

Simulink 是MATLAB 软件的扩展,它是实现动态系统建模和仿真的一个软件包。

MATLAB 具有强大的图形处理功能、符号运算功能和数值计算功能。

其中系统的仿真(Simulink )工具箱是从底层开发的一个完整的仿真环境和图形界面。

在这个环境中,用户可以完成面向框图系统仿真的全部过程,并且更加直观和准确地达到仿真的目标。

本次主要介绍基于MATLAB 的一阶动态电路特性分析。

关键字:MATLAB ;仿真;图形处理;一阶动态电路。

一. RC 串联电路1.1 RC 串联电路的零输入响应动态电路中无外施激励电源,仅由动态元件初始储能所产生的响应,称为动态电路的零输入响应。

在图1所示的RC 电路中,开关S 打向2前,电容C 充电,U u u C R =+。

当开关S 打向2后,电压C R u u =,电容储存的能量将通过电阻以热能的形式释放出来【2】。

图1 RC 电路的零输入响应电路分析:由图可知 t RC o e R U i 1-=, t RC o C R e U u u 1-== t RC o R e R U R I p 222-==,t RC o C C e R U iu p 22-== 在MATALAB 的M 文件编写以下程序:U0=40;R=10;C=0.5; %输入给定参数U1=10;R1=5;C1=0.5; %输入给定参数t=[0:0.1:10]; %确定时间范围Uc1=U0*exp(-t/(R*C));Uc2=U1*exp(-t/(R*C)); %电容电压值Ur1=U0*exp(-t/(R*C));Ur2=U1*exp(-t/(R*C)); %电阻电压值I1=U0/R*exp(-t/(R*C));I2=U1/R*exp(-t/(R*C)); %计算电流值Pc1=U0^2/R*exp(-2*t/(R*C));Pc2=U1^2/R*exp(-2*t/(R*C)); %电容功率值 Pr1=U0^2/R*exp(-2*t/(R*C));Pr2=U1^2/R*exp(-2*t/(R*C)); %电阻功率值 figuresubplot(5,1,1);plot(t,Uc1,t,Uc2); title('Uc(t)的波形图')subplot(5,1,2);plot(t,Ur1,t,Ur2); title('Ur(t)的波形图')subplot(5,1,3);plot(t,I1,t,I2); title('I(t)的波形图')subplot(5,1,4);plot(t,Pc1,t,Pc2); title('Pc(t)的波形图')subplot(5,1,5);plot(t,Pr1,t,Pr2); title('Pr(t)的波形图')波形仿真图:图2 RC 串联电路零输入响应特性曲线蓝线表示U0=40;R=10;C=0.5情况下的特性曲线绿线表示U1=10;R1=5;C1=0.5情况下的特性曲线1.2 RC 串联电路的直流激励的零状态响应零状态响应就是电路在零初始状态下(动态元件初始储能为零)由外施激励引起的响应。

习题解析控制工程

习题解析控制工程

60°
45°
(3)
0
[s]
Re
2024/9/30
n=2s-1
20
Im
[s]
3.13
0
Re
0<<1
Im [s]
0
Re
-1<<0
2024/9/30
Im
[s]
0
Re
=1
Im [s]
0
Re
=-1
21
3.14
Gs
s2
9 s
9
s2
2
32 1
3s
32
6
n 31 /
0.167
s
M p 58.8%
t p 1.06s
xo t 10 t 0.1 0.1e10t
单位阶跃响应: (上式旳一阶导数)
xou t 10 1 e10t
单位脉冲响应:
(上式旳二阶导数或xou(t)旳一阶导数)
xoi t 100e10t
2024/9/30
8
系统旳闭环传递函数为:
3.8
GB
s
1
K 0G s K1Gs
15
3.11 内部局部闭环传递函数:
GB1s
s
2 n
2n
K
f n2
整个系统旳闭环传递函数:
GB
s
1
1 s
GB1s
1 s
GB1
s
s2
2 n
2 n
K
f
2 n
s
2 n
2024/9/30
16
GB s s2
n2
2 n
K
f
2 n
s

信号与系统matlab课后作业-北京交通大学

信号与系统matlab课后作业-北京交通大学

信号与系统MATLAB平时作业学院:电子信息工程学院班级::学号:教师:钱满义MATLAB 习题M3-1 一个连续时间LTI系统满足的微分方程为y ’’(t)+3y ’(t)+2y(t)=2x ’(t)+x(t)(1)已知x(t)=e -3t u(t),试求该系统的零状态响应y zs (t); (2)用lism 求出该系统的零状态响应的数值解。

利用(1)所求得的结果,比较不同的抽样间隔对数值解精度的影响。

解:(1) 由于''()3'()2()2'()(),0h t h t h t t t t δδ++=+≥则2()()()t t h t Ae Be u t --=+ 将()h t 带入原方程式化简得(2)()()'()2'()()A B t A B t t t δδδδ+++=+所以1,3A B =-=2()(3)()t t h t e e u t --=-+又因为3t ()()x t e u t -= 则该系统的零状态响应3t 23t 2t ()()()()(3)()0.5(6+5)()zs t t t y t x t h t e u t e e u t e e e u t ----=*=*-+=-- (2)程序代码 1、ts=0;te=5;dt=0.1;sys=tf([2 1],[1 3 2]);t=ts:dt:te;x=exp(-3*t).*(t>=0);y=lsim(sys,x,t)2、ts=0;te=5;dt=1;sys=tf([2 1],[1 3 2]);t=ts:dt:te;x=exp(-3*t).*(t>=0);y1=-0.5*exp(-3*t).*(exp(2*t)-6*exp(t)+5).*[t>=0];y2=lsim(sys,x,t)plot(t,y1,'r-',t,y2,'b--')xlabel('Time(sec)')legend('实际值','数值解')用lism求出的该系统的零状态响应的数值解在不同的抽样间隔时与(1)中求出的实际值进行比较将两种结果画在同一幅图中有图表 1 抽样间隔为1图表 2 抽样间隔为0.1图表 3 抽样间隔为0.01当抽样间隔dt减小时,数值解的精度越来越高,从图像上也可以看出数值解曲线越来越逼近实际值曲线,直至几乎重合。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1. 已知离散时间系统的差分方程为:2y(n) - y(n-1) - 3y(n-2)=2x(n) - x(n-1)x(n)= 0.5nu(n) , y(-1)=1,y(-2)=3 , 试用filter 函数求系统的零输入响应、零状态响应和全响应.解:将差分方程Z 变换得:12112()[()(1)]3[()(1)(2)]2()[()(1)]Y z z Y z y z Y z z y y X z z X z x -----+--+-+-=-+- (1)依题意有:x(-1)=0,x(-2)=0,y(-1)=1,y(-2)=3 ,X(z)=1110.50.5z z z -=-- 将上式变形如下: 1211(23)()[(1)3(1)3(2)](2)()z z Y z y z y y z X z --------+-+-=- ………..(2) 1211(23)()(2)()[(1)3(1)3(2)]z z Y z z X z y z y y ------=-+-+-+-1211(23)()(2)()[103]z z Y z z X z z ------=-++ (3)易得系统函数为H(z)= 12122222323z z z z z z z -----=---- ① 零输入时零输入时,x(n)=0,差分方程右边为0,z 变换后应为121(23)()103z z Y z z-----=+ 112103()23z Y z z z ---+=-- =2210323z z z z +-- =71835152z z z z ++- 将Y(z)进行Z 反变换,得到其零输入响应为: y(n)= 7183[(1)()]()552n n u n -+ ② 零状态时零状态时,将y(-1)=0,y(-2)=0代入上面的式(2)中,得Y(z)= 112223z z z ------X(z)= 112223z z z ------1110.5z --=22223z z z --=233 5152 z z z z++-将其Z反变换,得到零状态响应为:y(n)=233 [(1)()]() 552n n u n -+③全响应与上面同理,y(-1)=1,y(-2)=3 将上面式(3)变形得:Y(z)=2212323z zz z+--=92135152z zz z++-Z反变换得全响应为Y(n)=921[]()35152z zu n z z++-程序代码:%第二章Z变换第2.12题程序clear all;close all;num=[2 -1 0]; %系统函数分子的系数den=[2 -1 -3]; %系统函数分母的系数n=0:50;nl=length(n);%求零输入响应y01=[1 3]; %y的初始状态x01=[0 0]; %x 的初始状态x1=zeros(1,nl);zi1=filtic(num,den,y01,x01); %为filter函数准备初始值y1=filter(num,den,x1,zi1); %求零输入响应subplot(311);stem(n,y1,'r.');title('零输入响应');grid on;%求零状态响应y02=[0 0];x02=[0 0];x2=0.5.^n;zi2=filtic(num,den,y02,x02);y2=filter(num,den,x2,zi2);subplot(312);stem(n,y2,'r.');title('零状态响应');grid on;%求全响应y03=[1 3];x03=[0 0];x3=0.5.^n;zi3=filtic(num,den,y03,x03);y3=filter(num,den,x1,zi3);subplot(313);stem(n,y3,'r.');title('全响应');grid on;运行结果如下:2. 已知离散系统的系统函数分别为(1) 2321()21z z H z z --=- (2) 31()1z H z z +=- (3) 2322()2241z H z z z z +=+-+ (4) 332()0.20.30.4z H z z z z =+++ 试用MATLAB 实现下列分析过程:① 求出系统的零极点位置;② 绘出系统的零极点图,根据零极点图判断系统的稳定性;③ 绘出系统单位响应的时域波形,并分析系统稳定性与系统单位响应时域特性的关系。

解:程序代码如下:%%第二章Z变换第2.13题程序clear all;close all;%题(1)a1=[2 0 0 -1]; %系统函数分母的系数b1=[0 2 -2 -1]; %系统函数分子的系数p1=roots(a1), %求极点pa1=abs(p1), %求极点到坐标原点的距离,看它是否大于1,若有一个大于1, %则系统不稳定;若所有的都小于1,则系统稳定q1=roots(b1), %求零点h1=impz(b1,a1); %求单位响应subplot(421);zplane(b1,a1);%画零极点图title('(1)的零极点图');subplot(425);stem(h1,'.'); %单位响应的时域波形grid on;title('(1)的单位响应的时域波形');%题(2)a2=[3 0 0 -1];b2=[0 0 1 1];p2=roots(a2),pa2=abs(p2),q2=roots(b2),h2=impz(b2,a2);subplot(422);zplane(b1,a1);title('(2)的零极点图');subplot(426);stem(h2,'.');grid on;title('(2)的单位响应的时域波形');%题(3)a3=[1 2 -4 1];b3=[0 1 0 2];p3=roots(a3),pa3=abs(p3),q3=roots(b1),h3=impz(b3,a3);subplot(423);zplane(b3,a3);title('(3)的零极点图');subplot(427);stem(h3,'.');grid on;title('(3)的单位响应的时域波形');%题(4)a4=[1 0 0 0];b4=[1 0.2 0.3 0.4];p4=roots(a4),pa4=abs(p4),q4=roots(b4),h4=impz(b4,a4);subplot(424);zplane(b1,a1);title('(1)的零极点图');subplot(428);stem(h4,'.');grid on;title('(1)的单位响应的时域波形');运行结果如下:3. 已知描述离散系统的差分方程为:y(n) - y(n-1) - y(n-2)=4x(n) - x(n-1) - x(n-2)试用MATLAB绘出系统的零极点分布图,并绘出系统的幅频和相频特性曲线,分析该系统的作用解:程序代码如下:clear all;close all;num=[4,-1,-1];den=[1 -1 -1];[H,w]=freqz(num,den);subplot(311);zplane(num,den);subplot(312);plot(w/pi,abs(H));grid on;title('幅频响应曲线')subplot(313);plot(w/pi,angle(H));title('相频响应曲线');grid on;运行结果如下:4. 已知因果(单边)离散序列的Z 变换分别如下所示,试用MATLAB 求出其Z 反变换(1) 221()2z z F z z z ++=+- (2) 23221()12z z F z z z z-+=++(3) 2()F z = (4) 3243221()32321z z z F z z z z z +++=++++解:程序代码如下:clear all;close all;F1=sym('(z^2+z+1)/(z^2+z-2)');f1=iztrans(F1),F2=sym('(2*z^2-z+1)/(z^3+z^2+z/2)');f2=iztrans(F2),F3=sym('(z^2)/(z^2+sqrtm(2)*z+1)');f3=iztrans(F3),F4=sym('(z^3+2*z^2+z+1)/(3*z^4+2*z^3+3*z^2+2*z+1)');f4=iztrans(F4)运行结果如下:f1 =(-2)^n/2 - kroneckerDelta(n, 0)/2 + 1δ注:kroneckerDelta(n, 0)=()nf2 =2*kroneckerDelta(n - 1, 0) - 6*kroneckerDelta(n, 0) + 3*(-1)^n*2^(1 - n)*i*(i + 1)^(n - 1) - 3*(-1)^n*2^(1 - n)*i*(1 - i)^(n - 1)f3 =2*(-1)^n*cos(n*acos(sqrtm(2)/2)) + ((-1)^n*(sqrtm(2)/2 + (sqrtm(2)^2/4 - 1)^(1/2))^(n - 1))/(2*(sqrtm(2)^2/4 - 1)^(1/2)) - ((-1)^n*(sqrtm(2)/2 - (1/4*sqrtm(2)^2 - 1)^(1/2))^(n - 1))/(2*(sqrtm(2)^2/4 - 1)^(1/2))f4 =sum(-(r3*r3^n + r3^n + 2*r3^2*r3^n + r3^3*r3^n)/(2*r3^3 + 6*r3^2 + 6*r3 + 4), r3 in RootOf(z1^4 + (2*z1^3)/3 + z1^2 + (2*z1)/3 + 1/3, z1)) + kroneckerDelta(n, 0)sum( -(r3*r3^n + r3^n + 2*r3^2*r3^n + r3^3*r3^n)/(2*r3^3 + 6*r3^2 + 6*r3 + 4), r3 in RootOf(z1^4 + (2*z1^3)/3 + z1^2 + (2*z1)/3 + 1/3, z1) ) + kroneckerDelta(n, 0)注:r3 in RootOf(z1^4 + (2*z1^3)/3 + z1^2 + (2*z1)/3 + 1/3, z1)就是说r3是关于Z1的方程z1^4 + (2*z1^3)/3 + z1^2 + (2*z1)/3 + 1/3=0的根。

相关文档
最新文档