K2.09 z变换MATLAB计算
基于MATLAB的线性调频Z变换及应用

基于MATLAB的线性调频Z变换及应用圆滚性运动的等时性第4期轴的运动方程为:mgrsinO/2=一OL(3)式中r为小球的半径,为小球对瞬时转轴的回转半径,为小球的角加速度.利用关系式:n=r及n=d25(3)~NgN:=一管2sin0(4)严格讲,这里s是指小球中心运动轨迹的弧长,但当r甚小时,可忽略质心轨迹与轨道曲线之间的差别.这样,我们可以将(4)式改写:勾:d2sgr2一————一Cdt一4Rk2.这也是一个谐振动方程,周期与振幅无关度为4R的摆,如摆图3等时摆球较小,可作质点看待,则其周期与振幅无关.要证明这种摆运动的等时j生,只需证明摆球运动的轨迹也是一条圆滚线就够了,因为摆球的受力情况与上节所讨论的质点是一样的(图3).我们注意到,摆长恰好与一拱曲线的一半等长,故当摆球运动到任一位置P(,,,)时,切点A(,Y)以下的一段摆线P与OA等长,所以有,--2;一s.c.s—:R(0+sin0)一4Rsin—cos晏=R(0~sin0)二,:一s.'=一(1—0)一4R'n20YYsinKCOS(]Ksm.一s'—(1一一=一Rf1一cos0)以上两式证明摆球的轨迹确实是圆滚线.若改变摆长,即令Z=4R±A(A≠0),则轨道曲线的跨度和高度分别比原来增加±2A和△,不满足每一拱曲线的跨度与高度之比2.trR/2R=竹的几何性质,表明轨道不再是圆滚线,当然也就失去与振幅无关的等时性了.基于MATLAB的线性调频Z变换及应用赵刚(井冈山学院工学院江西吉安343009)M-JOoOo螺线作等角抽样,如图/5一,,,1所示.:—/0e为\斗/Z,:AW一:0.图1螺线采样.0e%ej如0=0e'8.‰(3)ZO=0e矗.:一1=Ao'一e'矗.'一.'第15卷技术物理教学():N∑-1():n:N∑-1()A—n样可将^(n)先补零值点到£,并以£为周期进.:..…行周期延拓,再取主值序列,如图3(b)所示.而0I!一,,,,,一,(5£歹,如;('.)由恒等式nk=[n+k一(k—n)]/2可得:"一",一~"~'X()=(n)A一3Chirp—Z变换的MATLAB仿真,,一丌,一,,Maflab是一种用于科学工程数值计算和可A6=∑『(n)叫1一.一().'Jr'卞上性LEL开1,视化的交互式和基于矩阵的体系,提供一个称如果定义:g(n)=(n)A为fit函数来计算(n)的DFT,格式为:Y:czt^(n):W号n:0.1,….N一1(7)(x,M,W,A),该函数返回信号的线性调频z则()=?.]})^(.]})]=k2?[磊N-1g(n)号沿着和A定h(k—n)]k=0,1,…,M一1(8)Matlab应用实例整个计算过程如图2所示假设序列()由4个频率分别为6H,6.3H,9H2Chirp—Z变换的实现和8H的正弦序列组合而成,抽样频率为40H,时域由式(8)可知,线性—抽样200点.应用线性调频Z变换计算Dl~r.系统h(n)点数为Ⅳ+Mi^f解:MATLAB源程序如下线;数h(n)的点数为2N+MJ2~'一2,用循环卷积代替线性卷积且不产生混叠失A:=98真条件是循环卷积的点数应大于或等于2N+,=:40;%抽样频率M一2.但我们只需要前M个值X(Z)(k=0,stepf=fiN;1,…,M一1),因此可将循环卷积的点数缩减到n=0:Ⅳ一1;最小为Ⅳ+M一1.对于基一2F~I'运算,循环卷t=2pim/Z; 积的点数应取:2≥Ⅳ+M一1的最小L这=0:.p/2一.pf;(d)32?DM一1图3Chirp—Z变换的圆周卷积=sin{f)+sinf)+sin$£)+sin$f);%直接求CZTM=Ⅳ:W=exp(一J$2pi/M):A:1;Y1=czt(,M,W,A);Subplot(3.1,1);plot(nl,abs(II1(1:N/2)));don;xlabel(Hz);ylabel(Magnitude);运行结果如图所示(见下页)本文利用Chirp—Z对z平面信号的某一频段进行了频谱分析.结果表明,该算法既可以减少DYF的运算量,也可在N与M不相等并且都不是2的正整数次幂时进行快速运算.基于MATLAB的线性调频Z变换及应用第4期此外,由于抽样点间的间隔可以任意选择,使得该算法在实际工程技术中有较广泛的应用.,,1.jLl|Hz谈山脉隆起的极限高度学光(江苏省太仓市明德高级中学215431)自从2005年我国地质部门发布了对珠穆郎玛峰的最新测量高度为8844.43米之后,在一些期刊上相继见到有关于从地质力学角度讨论山到底可能"长"到多高的文章,并有断言:9000米是山的极限高度.笔者读后对其核心论述初觉不妥,既而经查阅资料后再研究,形成了颇不同的观点.1对"压熔"说的质疑原文中论据的切入是这样的:山俞高就俞重,而山体太重则可能会下沉.山体下沉就会失去势能.这些释放出的势能如足够将石头熔掉,山便会继续下沉.因此"山的高度"可以从能量的角度考虑作出估计.上面这个说法称之为"压熔"说.我认为其切入点的选择是相当有新意的,但是其论述却颇多疑点. ①"山体因太重则可能会下沉"吗?为什么山体太重会下沉?无非是山体下部的基座支持不了山体之重.可是,在山脉亿万年的隆起过程中,整个山体不是像骆驼:身上的稻草那样从上面加上去,而是像竹笋一样是被基座支撑着从底下"长"起来的.这个基本事实告诉我们:不管山有多高,它都是基座所能支持得了的,何来下沉一说呢?②"压熔"说是不可能的实际上,山体基部的岩石早在地质年代就是在高温(1000~以上)和高压(10000个大气压以上,相当于l0万多米高的山对底部的压强)的条件下形成的.受过这样"苛刻" 的"洗礼",其抗压缩能力可想而知.因此怎么可能是万把米高的山体仅凭"冷加工"就可以压熔的呢?退一步讲,即使由于某种特定的地质事件,真的能够使得山体下降,释放的能量也足够多,也不能认定就会导致山底岩石会熔掉相应的一层.因为所释放出的重力势能终究会转化为内能,并必然会以热传递的形式向周围发散,不可能恰好被山底基座那相应厚的一层岩石吸收并全部用于熔解.因为这种"专款专用"式的能量过程有悖于热力学第二定律所蕴涵的自然哲学原理.如上所述,"压熔"是不可能的,那么"继续下沉"便无从谈起了.2从压缩强度的角度探讨难道说就没有什么因素制约山体的升高吗?有的,本文仅就与技术物理密切相关的一个因素——"压缩强度"做以下探讨:山体是被底部基座"托"起来.托得越高,基座受到的压强就越大.若由于某种原因(比如地震的纵波)使得压强增大到超过某一个"临界值".即组成基座的岩石所能承受的极限强度的时候,基座将"粉身碎骨",从而对山体的升高起到制约作用.多高的山体才能把岩石基座压碎.换句话说,就是当前岩石的坚固程度能支持多高的山体?岩石的坚固程度在材料力学里是用压缩强度来表征的.以喜马拉雅山为例,山底部的基座是地质学上所称的"高喜马拉雅结晶岩", 平均压缩强度不低于20kg~/mm,可换算为2.0x10N/m(Pa),这即是山的基座所能承受的最大压强P总.我们不妨先将喜马拉雅山设想为一排棱锥,则它对底部的压强为尸= phg/3.其中P与压缩强度等值,P为岩石密度(可取为2.7x10kg/m),h为"棱锥"的高度,g为重力加速度(可取为10N/kg).喜马拉雅山的几何模型可以分两层来看:下部,是可以视为棱柱的高原基座(h下),海拔高程目前约为4000m;上部,则可以看作是棱锥(hJ=),高出基座约33?。
matlab 时域信号z变换

Matlab 时域信号Z变换1. 介绍时域信号是指信号随时间变化的过程,而Z变换是一种用来分析时域信号的工具。
Matlab作为一种强大的科学计算软件,提供了丰富的函数和工具,可以对时域信号进行Z变换分析。
2. Z变换概述Z变换是一种将离散时间信号转换为Z域频率域的方法。
通过Z变换,可以将差分方程转换为传输函数,进而分析控制系统的稳定性和性能。
Z变换在数字信号处理、控制系统设计等领域有着广泛的应用。
3. Matlab中的Z变换函数在Matlab中,可以使用ztrans函数对离散时间信号进行Z变换。
该函数的语法如下:[H,p,k] = ztrans(h)其中,h为输入的差分方程,H为Z变换后的传输函数,p为极点,k 为常数项。
4. 示例以下是一个使用Matlab进行Z变换的示例:假设有一个差分方程:y[n] = 0.5*y[n-1] + x[n]使用Matlab进行Z变换,可以得到传输函数H:syms z;h = 0.5*z^(-1)/(1 - 0.5*z^(-1));[H,p,k] = ztrans(h)通过上述示例可以看出,Matlab提供了简洁方便的函数,可以快速计算得到Z变换后的传输函数。
5. Z变换的应用Z变换在数字信号处理、控制系统设计、滤波器设计等领域有着广泛的应用。
通过Z变换,可以分析系统的频率响应、稳定性、传输函数等重要特性。
在数字滤波器设计中,Z变换可以将滤波器的差分方程转换为传输函数,从而分析滤波器的频率响应和稳定性。
在控制系统设计中,Z变换可以将差分方程转换为传输函数,从而分析系统的稳定性和性能。
6. 结论Matlab提供了丰富的函数和工具,可以方便快速地进行时域信号的Z 变换分析。
Z变换在数字信号处理、控制系统设计等领域有着广泛的应用,对于工程领域的研究和应用具有重要意义。
通过学习和掌握Matlab中的Z变换函数,可以更好地应用Z变换分析信号与系统的特性,促进科学研究和工程应用的发展。
matlab z变换

八、部分和
若 f(k) ←→F(z) , <z<,则
i
f (i) z 1 F ( z )
f (k ) * (k )
k
z
, max(,1)<z<
k
证明
i
f (i ) (k i )
k i
i
f (i )
z
对因果序列f(k),
f (0) lim F ( z )
z
▲
■
第 21 页
证明
F ( z)
k
f (k ) z
k
k
k M
f (k ) z
f (M ) z
M
f ( M 1) z
( M 1)
f ( M 2) z
( M 2 )
k
k 0 k 0
的z变换
lim
N
(az ) lim
1 k k 0
N
1 (az ) 1 az
1
N 1
N
1
可见,仅当az-1<1,即 z >a 时,其z变换存在。
Fy ( z ) z za
jIm[ z]
收敛域为|z|>|a|
o
|a|
Re[z]
▲
■
第 6页
例3 求反因果序列 的z变换
解
F f ( z)
b k , f f (k ) 0,
k 0 k 0
b (k 1)
k
k
(bz
1
1 k
Matlab实验报告(离散信号与系统的Z变换分析)

一.
实验目的
1.
熟悉离散信号Z 变换的原理及性质。
2.熟悉常见信号的Z 变换。
3.了解正/反Z 变换的MATLAB 实现方法。
4.了解离散信号的Z 变换与其对应的理想抽样信号的傅氏变换和拉氏变换之间的关系。
5.了解利用MATLAB 实现离散系统的频率特性分析的方法。
二.实验内容
1.用MATLAB 的zplane (num ,den )函数,画出函数H (z )的零极点分布图、单位脉冲响应曲线、频率响应特性曲线、幅频响应和相频响应特性曲线,并判断系统的稳定性。
2.已知描述离散系统的差分方
() 1.2(1)0.35(2)()0.25(1)y k y k y k f k f k --+-=+-
请绘出系统的幅频和相频特性曲线,并说明系统的作用。
三.仿真分析
四.实验总结
1.进一步了解Z变换的原理及性质
2.进一步了解了信号的零极点分布与系统稳定性的关系。
z变换公式

z变换公式在信号处理领域中,z变换是一种将离散时间序列转换为复频域的工具。
它在数字信号处理、控制系统分析和通信工程等领域中广泛应用。
本文将详细介绍z变换的概念、特性以及常见的z变换公式。
一、z变换的概念z变换是对离散时间信号进行频域分析的一种方法。
它类似于傅里叶变换,但傅里叶变换只适用于连续时间信号,而z变换适用于离散时间信号。
通过将离散时间序列表示为z的幂级数形式,可以将离散时间信号在复频域中进行表示和分析。
z变换的定义如下:X(z) = Z{x(n)} = ∑[ x(n) * z^(-n)] (1)其中,x(n)是离散时间序列,X(z)是x(n)的z变换。
二、z变换的特性与傅里叶变换类似,z变换也具有线性性、时移性、共轭性和卷积性质。
下面对每个特性进行详细讨论。
1. 线性性z变换具有线性性质,即对于任意常数a和b以及离散时间序列x1(n)和x2(n),有以下公式成立:Z{a * x1(n) + b * x2(n)} = a * X1(z) + b * X2(z) (2)其中,X1(z)和X2(z)分别是x1(n)和x2(n)的z变换。
2. 时移性z变换具有时移性质,即对于离散时间序列x(n - k),其z变换为Z{x(n - k)} = z^(-k) * X(z)。
3. 共轭性z变换具有共轭性质,即如果x(n)的z变换为X(z),则x*(-n)的z 变换为X*(1/z*),其中,*表示共轭。
4. 卷积性质z变换具有卷积性质,即对于离散时间序列x1(n)和x2(n)的卷积序列y(n) = x1(n) * x2(n),其z变换为Y(z) = X1(z) * X2(z),其中,*表示乘法运算。
三、常见的z变换公式根据z变换的定义和特性,可以得到一些常见的z变换公式,下面将逐个进行介绍。
1. 常数序列对于常数序列x(n) = C,其z变换为X(z) = C * (1 - z^(-1)) / (1 - z^(-1))。
基于Matlab语言的线性离散系统的Z变换分析法

基于Matlab语言的线性离散系统的Z变换分析法实验一基于Matlab语言的线性离散系统的Z变换分析法班级: 姓名: 学号: 日期:一、实验目的:1、学习并掌握Matlab语言离散时间系统模型建立方法;2.学习离散传递函数的留数分析与编程实现的方法;3.学习并掌握脉冲与阶跃的编程方法;4.理解与分析离散传递函数不同极点的时间响应特点。
二、实验工具:1MATLAB软件(6、5以上版本);2每人计算机一台。
三、实验内容:1在Matlab语言平台上,通过给定的离散时间系统差分方程,理解课程中Z变换定义,掌握信号与线性系统模型之间Z传递函数的几种形式表示方法;2学习语言编程中的Z变换传递函数如何计算与显示相应的离散点序列的操作与实现的方法,深刻理解课程中Z变换的逆变换;3通过编程,掌握传递函数的极点与留数的计算方法,加深理解G(z)/z的分式方法实现过程;4通过系统的脉冲响应编程实现,理解输出响应的离散点序列的本质,即逆变换的实现过程;5通过编程分析,理解系统单位阶跃响应的Z变换就是系统的传递函数与单位阶跃函数Z变换,并完成响应的脉冲离散序列点的计算;6通过程序设计,理解课程中的不同的传递函数极点对系统动态行为的影响,如单独极点、复极点对响应的影响。
四、实验步骤:(一)传递函数的零极点程序: 结果:numg=[0、1 0、03 -0、07];deng=[1 -2、7 2、42 -0、72];g=tf(numg,deng,-1)get(g);[nn dd]=tfdata(g,'v')[zz,pp,kk]=zpkdata(g,'v')hold onpzmap(g), hold offaxis equal(二)留数法程序:numg=[2 -2、2 0、65];deng=[1 -0、6728 0、0463 0、4860];[rGoz, pGoz,other]=residue(numg,[deng 0])G=tf(numg,deng,-1)impulse(G)[y,k]=impulse(G);stem(k,y,'filled');impulse(G)结果:rGoz = 0、4905 + 0、0122i0、4905 - 0、0122i-2、31851、3374pGoz = 0、6364 + 0、6364i0、6364 - 0、6364i-0、6000other = []Transfer function:2 z^2 - 2、2 z + 0、65-----------------------------------z^3 - 0、6728 z^2 + 0、0463 z + 0、486Sampling time: unspecified(三)不同位置的根对系统的影响1)2个共轭极点(左圆内)+1实极点(圆内)P1 =0、6364 + 0、6364iP2=0、6364 - 0、6364iP3=-0、6000程序: 结果:zz3=[-0、2 0、4];pp3=[-0、6 0、6364+0、6364i 0、6364-0、6364i];kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,50);stem(k,y,'filled'),grid2)2个共轭极点(右圆内)+1实极点(圆内)P1= -0、8592 P2= -0、0932 + 0、4558i P3= -0、0932 - 0、4558i 程序: 结果:zz3=[-0、2 0、4];pp3=[-0、8592 -0、0932+0、4558i -0、0932-0、4558i]; kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,50);stem(k,y,'filled'),grid3)2个共轭极点(圆上)+1实极点(圆内)p1=0、6+0、8i p2=0、6-0、8i p3=-0、6程序: 结果:zz3=[-0、2 0、4];pp3=[-0、8592 -0、6+0、8i -0、6-0、8i];kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,100);stem(k,y,'filled'),grid4、2个共轭极点(虚轴上)+1实极点(圆内)p1=i p2= -i p3= -0、6程序: 结果:zz3=[-0、2 0、4];pp3=[-0、6 i -i];kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,100);stem(k,y,'filled'),grid5、2个实极点(圆内)+1个实极点(圆外)p1=2 p2=0、8 p3=-0、6程序: 结果:zz3=[-0、2 0、4];pp3=[2 0、8 -0、6];kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,100);stem(k,y,'filled'),grid6、2个实极点(圆内)+1个实极点(圆上)p1=1 p2=0、8 p3=-0、6程序: 结果:zz3=[-0、2 0、4];pp3=[1 0、8 -0、6];kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,100);stem(k,y,'filled'),gridp1=1 p2=-0、8 p3=-0、6程序: 结果:zz3=[-0、2 0、4];pp3=[1 0、8 -0、6];kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,100);stem(k,y,'filled'),grid五、实验报告要求1、根据实验结果,分析离散传递函数不同极点的时间响应特点2、通过程序设计,分析不同的传递函数极点如:单极点、复极点、重根极点对系统动态行为的影响3、分析留数法的意义,根据系统的阶跃响应判别系统的稳定性4、对Z变换的进一步思考六、实验结果:1、根据实验结果,分析离散传递函数不同极点的时间响应特点。
用matlab绘制差分方程Z变换-反变换-zplane-residuez-tf2zp-zp2tf-tf2sos-sos2tf-幅相频谱等等

《数字信号处理》(一) 实验目的使用ztrans,iztrans 函数分别求出离散时间信号的Z 变换和Z 反变换的结果,并用pretty 函数进行结果美化。
编写函数时养成良好的注释习惯,有利于对函数的理解。
复习MATLAB 的基本应用,如:help,可以帮助查询相关的函数的使用方法,巩固理论知识中的离散时间信号的传递函数与二次项式之间的转换,以及使用zplane 函数画出相关系统的零极点分布图,根据零极点的分布情况估计系统的滤波特性。
(二) 程序的运行与截图实验项目一Z 变换(1)求)(])31()21[()(n u n x nn += Z 变换clear all;close all;clc;syms nf=0.5^n+(1/3)^n; %定义离散信号F=ztrans(f) %z 变换pretty(F); 运算结果F(2)4)(n n x = Z 变换clear all ;close all ;clc;syms nf=n^4; %定义离散信号F=ztrans(f) %Z 变换 pretty(F)运算结果(3))sin()(b an n x += Z 变换clear all;close all;clc;syms a b nf = sin(a*n+b) %定义离散信号F=ztrans(f) %Z 变换pretty(F)运算结果实验项目二Z 反变换(1)2)2(2)(-=z z z X Z 反变换 clear all;close all;clc;syms k zFz=2*z/(z-2)^2; %定义Z 反变换表达式fk=iztrans(Fz,k) %Z 反变换pretty(fk);运算结果(2)12)1()(2++-=z z z z z X Z 反变换 clear all;close all;clc;syms k zFz=z*(z-1)/(z^2+2*z+1); %定义Z 反变换表达式fk=iztrans(Fz,k) %Z 反变换pretty(fk);运算结果f(3) 211cos 211)(---+-+=zz z z X ω Z 反变换 clear all;close all;clc;syms k z wFz=(1+z^(-1))/(1-2*z^-1*cos(w)+z^-2); %定义Z 反变换表达式fk=iztrans(Fz,k) %Z 反变换pretty(fk);运算结果实验项目三各种模型之间的变换2)2)(1(10)(--=z z z z H =4851023-+-z z z z (1)clear all;close all;clc;b=[0 0 10 0];%分子的系数数组a=[1 -5 8 -4]; %分母的系数数组zplane(b,a)% 使用zplane 函数绘制如下系统的零极点分布图 运算结果(2)clear all ;close all ;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组[r,p,c]=residuez(b,a) %使用matlab 中的residuez 函数,将)(z H 分解成为多个简单有理分式之和运算结果r =-15.00005.000010.0000p =2.00002.00001.0000c =(3)clear all;close all;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组[z,p,k]=tf2zp(b,a) %使用tf2zp求出系统函数的零、极点和增益运算结果z =p =2.00002.00001.0000k =10(4)clear all;close all;clc;z=[1;-3];%零点,列向量p=[2; -4];%极点,列向量k=5; %增益[b,a] = zp2tf(z,p,k) %根据求出的零、极点和增益,然后自学使用zp2tf还原出分子和分母的系数运算结果(5)clear all;close all;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组[sos,g]=tf2sos(b,a) %使用tf2sos将系统函数分解成一系列二阶子系统的级联形式运算结果sos =0 1.0000 0 1.0000 -2.0000 00 1.0000 0 1.0000 -3.0000 2.0000g =10(6)clear all;close all;clc;sos=[0 1.0000 0 1.0000 -2.0000 0;0 1.0000 0 1.0000 -3.0000 2.0000];g=10;%增益[b,a]=sos2tf(sos,g) %根据求出的一系列二阶子系统,使用sos2tf还原出H分子和分母的系数)(z运算结果b =0 0 10 0a =1 -5 8 -4(7)clear all;close all;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组n=(0:500)*pi/500; %在pi范围内取501个采样点[h,w]=freqz(b,a,n);%求系统的频率响应subplot(2,1,1),plot(n/pi,abs(h));grid %作系统的幅度频响图axis([0,1,1.1*min(abs(h)),1.1*max(abs(h))]);ylabel(‘幅度’);subplot(2,1,2),plot(n/pi,angle(h));grid %作系统的相位频响图axis([0,1,1.1*min(angle(h)),1.1*max(angle(h))]);ylabel(‘相位’);xlabel(‘以pi为单位的频率’);运行结果2221)(232+++++=z z z z z z H (1)clear all ;close all ;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组zplane(b,a)% 使用zplane 函数绘制如下系统的零极点分布图运行结果(2)clear all ;close all ;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组[r,p,k]=residuez(b,a) %使用matlab 中的residuez 函数,将)(z H 分解成为多个简单有理分式之和运行结果r =-0.4006-0.0497 - 0.1609i-0.0497 + 0.1609ip =-1.5437-0.2282 + 1.1151i-0.2282 - 1.1151ik =0.5000(3)clear all;close all;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组[z,p,k]=tf2zp(b,a) %使用tf2zp求出系统函数的零、极点和增益运行结果z =-0.5000 + 0.8660i-0.5000 - 0.8660ip =-1.5437-0.2282 + 1.1151i-0.2282 - 1.1151ik =1(4)clear all;close all;clc;z=[-0.5000 + 0.8660i-0.5000 - 0.8660i];p=[-1.5437-0.2282 + 1.1151i-0.2282 - 1.1151i ];k=1;[b,a]=zp2tf(z,p,k) %根据求出的零、极点和增益,使用zp2tf 还原出)(z H 分子和分母的系数运行结果b =0 1.0000 1.0000 1.0000a =1.00002.0001 2.0001 1.9999(5)clear all ;close all ;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组[sos,g]=tf2sos(b,a) %使用tf2sos 将系统函数分解成一系列二阶子系统的级联形式运行结果sos =0 1.0000 0 1.0000 1.5437 01.0000 1.0000 1.0000 1.0000 0.4563 1.2956g =1(6)clear all ;close all ;clc;sos=[ 0 1.0000 0 1.0000 1.5437 0;1.0000 1.0000 1.0000 1.0000 0.4563 1.2956];g=1;[b,a]=sos2tf(sos,g) %根据求出的一系列二阶子系统,自学使用sos2tf 还原出)(z H 分子和分母的系数运行结果b =0 1 1 1a =1.00002.0000 2.0000 2.0000(7)clear all;close all;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组n=(0:500)*pi/500; %在pi范围内取501个采样点[h,w]=freqz(b,a,n);%求系统的频率响应subplot(2,1,1),plot(n/pi,abs(h));grid %作系统的幅度频响图axis([0,1,1.1*min(abs(h)),1.1*max(abs(h))]);ylabel('幅度');subplot(2,1,2),plot(n/pi,angle(h));grid %作系统的相位频响图axis([0,1,1.1*min(angle(h)),1.1*max(angle(h))]);ylabel('相位');xlabel('以pi为单位的频率');运行结果实验项目四根据零极点分布图估计系统的滤波特性。
matlab z变换和预畸变校正

Matlab 中的 z 变换和预畸变校正1. 概述Matlab 是一款功能强大的科学计算软件,广泛应用于工程、数学、统计学等领域。
在信号处理和图像处理方面,Matlab 也提供了丰富的工具和函数,其中包括 z 变换和预畸变校正等功能。
本文将介绍 Matlab 中 z 变换和预畸变校正的原理、应用和实现方法。
2. z 变换的原理z 变换是一种离散时间信号处理技术,它可以将离散时间序列转换为 z 域中的函数。
在 Matlab 中,可以使用 ztrans() 函数进行 z 变换的计算。
3. z 变换的应用z 变换在数字滤波、系统建模和控制系统设计等方面有着广泛的应用。
在 Matlab 中,可以利用 z 变换对数字信号进行滤波处理,实现信号的数字化处理和分析。
4. z 变换的实现方法在 Matlab 中,进行 z 变换的实现方法主要包括直接计算、状态空间模型转换和差分方程转换等。
用户可以根据具体的需求和系统特性选择合适的方法进行 z 变换的实现。
5. 预畸变校正的原理预畸变校正是一种图像处理技术,它可以对摄像头镜头产生的畸变进行校正,使得图像的几何特征更加真实和准确。
在 Matlab 中,可以使用undistortImage()函数进行预畸变校正的操作。
6. 预畸变校正的应用预畸变校正在计算机视觉、机器人视觉和数字影像处理等领域都有着重要的应用。
在 Matlab 中,可以通过预畸变校正提高图像处理的准确性和稳定性。
7. 预畸变校正的实现方法在 Matlab 中,进行预畸变校正的实现方法主要包括摄像头标定、镜头畸变参数估计和图像畸变矫正等步骤。
用户可以根据具体的摄像头和图像特性选择合适的方法进行预畸变校正的实现。
8. 结论Matlab 中的 z 变换和预畸变校正是信号处理和图像处理中常用的技术,在工程和科学研究领域有着重要的应用。
通过本文的介绍,读者可以更加深入地了解 z 变换和预畸变校正的原理、应用和实现方法,为在实际项目中的应用提供有力的支持。
matlab广义z变换 -回复

matlab广义z变换-回复MATLAB广义Z变换广义Z变换是傅里叶变换的一种常见扩展,用于分析离散时间信号和系统。
MATLAB是一种强大的数学软件,提供了许多实用工具和函数,方便用户进行广义Z变换的计算和分析。
本文将分步介绍如何使用MATLAB进行广义Z变换的计算和应用。
第一步:安装MATLAB首先,需要在计算机上安装MATLAB软件。
MATLAB提供了免费试用版和学术版本,用户可以根据自己的需求选择。
第二步:理解广义Z变换的概念广义Z变换是傅里叶变换在离散时间上的推广。
它将离散时间信号和系统表示为复变量Z的函数。
广义Z变换可以用于离散时间信号的频域分析和滤波器设计。
第三步:使用MATLAB进行广义Z变换的计算MATLAB提供了一些函数来计算广义Z变换。
下面是一些常用的函数及其用法。
1. tf函数:可用于创建传输函数对象。
传输函数是描述离散时间系统的数学模型。
Example: H = tf([1 2 1],[1 0.5 0.1], 'Variable', 'z^-1')2. ztrans函数:用于计算离散时间信号的广义Z变换。
Example: syms n; x = ztrans((0.9^n)*heaviside(n), n, 'Variable', 'z^-1')3. iztrans函数:可用于计算广义Z变换的逆变换,将从频域转换回时域。
Example: syms z; x = iztrans(1/(z-0.9), 'Variable', 'n')第四步:广义Z变换的应用广义Z变换可以用于许多领域,如信号处理、通信系统和控制系统等。
下面是一些广义Z变换的应用示例。
1. 频域分析:通过广义Z变换,可以将离散时间信号转换为复平面上的函数。
这样,可以对信号进行频域分析,例如计算频谱、功率谱密度和滤波器频率响应等。
基于matlab的Z变换与反Z变换

《数字信号处理》(一) 实验目的(二)使用ztr a n s,iztra n s 函数分别求出离散时间信号的Z 变换和Z 反变换的结果,并用pre t ty 函数进行结果美化。
编写函数时养成良好的注释习惯,有利于对函数的理解。
复习MA T L AB 的基本应用,如:help,可以帮助查询相关的函数的使用方法,巩固理论知识中的离散时间信号的传递函数与二次项式之间的转换,以及使用z p lane 函数画出相关系统的零极点分布图,根据零极点的分布情况估计系统的滤波特性。
(三) 程序的运行与截图实验项目一Z 变换(1)求)(])31()21[()(n u n x nn += Z 变换clear all;close all;clc;syms nf=0.5^n+(1/3)^n; %定义离散信号F=ztran s (f) %z 变换prett y (F); 运算结果F(2)4)(n n x = Z 变换clear all ;close all ;clc;syms nf=n^4; %定义离散信号F=ztran s (f) %Z 变换prett y (F)运算结果(3))sin()(b an n x += Z 变换clear all;close all;clc;syms a b nf = sin(a*n+b) %定义离散信号F=ztran s (f) %Z 变换prett y (F)运算结果实验项目二Z 反变换(1)2)2(2)(-=z z z X Z 反变换 clear all;close all;clc;syms k zFz=2*z/(z-2)^2; %定义Z 反变换表达式fk=iztra n s(Fz,k) %Z 反变换prett y (fk);运算结果(2)12)1()(2++-=z z z z z X Z 反变换 clear all;close all;clc;syms k zFz=z*(z-1)/(z^2+2*z+1); %定义Z 反变换表达式fk=iztra n s(Fz,k) %Z 反变换prett y (fk);运算结果f(3) 211cos 211)(---+-+=z z z z X ω Z 反变换 clear all;close all;clc;syms k z wFz=(1+z^(-1))/(1-2*z^-1*cos(w)+z^-2); %定义Z 反变换表达式 fk=iztra n s(Fz,k) %Z 反变换prett y (fk);运算结果实验项目三各种模型之间的变换2)2)(1(10)(--=z z z z H =4851023-+-z z z z (1)clear all;close all;clc;b=[0 0 10 0];%分子的系数数组a=[1 -5 8 -4]; %分母的系数数组zplan e (b,a)% 使用zpl ane 函数绘制如下系统的零极点分布图 运算结果(2)clear all ;close all ;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组[r,p,c]=resid u ez(b,a) %使用mat l ab 中的r esid u ez 函数,将分解成为)(z H 多个简单有理分式之和运算结果r =-15.00005.000010.0000p =2.00002.00001.0000c =(3)clearall;closeall;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组[z,p,k]=tf2zp(b,a) %使用tf2z p求出系统函数的零、极点和增益运算结果z =p =2.00002.00001.0000k =10(4)clearall;closeall;clc;z=[1;-3];%零点,列向量p=[2; -4];%极点,列向量k=5; %增益[b,a] = zp2tf(z,p,k) %根据求出的零、极点和增益,然后自学使用zp2tf还原出分子和分母的系数运算结果(5)clearall;closeall;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组[sos,g]=tf2sos(b,a) %使用tf2s os将系统函数分解成一系列二阶子系统的级联形式运算结果sos =0 1.0000 0 1.0000 -2.0000 00 1.0000 0 1.0000 -3.0000 2.0000g =10(6)clearall;closeall;clc;sos=[0 1.0000 0 1.0000 -2.0000 0;0 1.0000 0 1.0000 -3.0000 2.0000];g=10;%增益[b,a]=sos2tf(sos,g) %根据求出的一系列二阶子系统,使用sos2tf还原出分子和分)H母的系数(z运算结果b =0 0 10 0a =1 -5 8 -4(7)clearall;closeall;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组n=(0:500)*pi/500; %在pi范围内取501个采样点[h,w]=freqz(b,a,n);%求系统的频率响应subplo t(2,1,1),plot(n/pi,abs(h));grid %作系统的幅度频响图axis([0,1,1.1*min(abs(h)),1.1*max(abs(h))]);ylabel(‘幅度’);subplo t(2,1,2),plot(n/pi,angle(h));grid %作系统的相位频响图axis([0,1,1.1*min(angle(h)),1.1*max(angle(h))]);ylabel(‘相位’);xlabel(‘以pi为单位的频率’);运行结果2221)(232+++++=z z z z z z H (1)clear all ;close all ;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组zplan e (b,a)% 使用zpl a ne 函数绘制如下系统的零极点分布图 运行结果(2)clear all ;close all ;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组[r,p,k]=resid u ez(b,a) %使用mat l ab 中的r esid u ez 函数,将分解成为)(z H 多个简单有理分式之和运行结果r =-0.4006-0.0497 - 0.1609i-0.0497 + 0.1609ip =-1.5437-0.2282 + 1.1151i-0.2282 - 1.1151ik =0.5000(3)clearall;closeall;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组[z,p,k]=tf2zp(b,a) %使用tf2z p求出系统函数的零、极点和增益运行结果z =-0.5000 + 0.8660i-0.5000 - 0.8660ip =-1.5437-0.2282 + 1.1151i-0.2282 - 1.1151ik =1(4)clearall;closeall;clc;z=[-0.5000 + 0.8660i-0.5000 - 0.8660i];p=[-1.5437-0.2282 + 1.1151i -0.2282 - 1.1151i ];k=1;[b,a]=zp2tf (z,p,k) %根据求出的零、极点和增益,使用zp2t f 还原出)(z H 分子和分母的系数运行结果b =0 1.0000 1.0000 1.0000a =1.00002.0001 2.0001 1.9999(5)clear all ;close all ;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组[sos,g]=tf2so s (b,a) %使用tf2s os 将系统函数分解成一系列二阶子系统的级联形式运行结果sos =0 1.0000 0 1.0000 1.5437 01.0000 1.0000 1.0000 1.0000 0.4563 1.2956g =1(6)clear all ;close all ;clc;sos=[ 0 1.0000 0 1.0000 1.5437 0;1.0000 1.0000 1.0000 1.0000 0.4563 1.2956];g=1;[b,a]=sos2t f (sos,g) %根据求出的一系列二阶子系统,自学使用s o s2tf 还原出分子)(z H 和分母的系数运行结果b =0 1 1 1a =1.00002.0000 2.0000 2.0000(7)clearall;closeall;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组n=(0:500)*pi/500; %在pi范围内取501个采样点[h,w]=freqz(b,a,n);%求系统的频率响应subplo t(2,1,1),plot(n/pi,abs(h));grid %作系统的幅度频响图axis([0,1,1.1*min(abs(h)),1.1*max(abs(h))]);ylabel('幅度');subplo t(2,1,2),plot(n/pi,angle(h));grid %作系统的相位频响图axis([0,1,1.1*min(angle(h)),1.1*max(angle(h))]);ylabel('相位');xlabel('以pi为单位的频率');运行结果实验项目四根据零极点分布图估计系统的滤波特性。
DSP第二章_z变换MATLAB(2007本科)

频率响应的MATLAB描述
频率响应的MATLAB描述
频率响应的MATLAB描述
频率响应的MATLAB描述
频率响应的MATLAB描述
频率响应的MATLAB描述
频率响应的MATLAB描述
频率响应的MATLAB描述
郑州大学物理工程学院 赵书俊
第二章学习目标
掌握z变换及其收敛域,掌握因果序列的概念及 判断方法 会运用任意方法求z反变换 理解z变换的主要性质 理解z变换与Laplace/Fourier变换的关系 掌握序列的Fourier变换并理解其对称性质 掌握离散系统的系统函数和频率响应,系统函数 与差分方程的互求,因果/稳定系统的收敛域
数字信号处理
Digital Signal Processing
第二章 z变换与DTFT_MATLAB
z变换的定义及收敛域 z反变换 z变换的基本性质与定理 序列的z变换与连续时间信号的Laplace变换、 Fourier变换的关系 序列的Fourier变换及其对称性质 周期性序列的傅立叶变换 离散系统的系统函数、系统的频率响应
z反变换
部分分式展开法求Z反变换matlab计算
z反变换
部分分式展开法求Z反变换matlab计算
z反变换
部分分式展开法求Z反变换matlab计算
z反变换
部分分式展开法求Z反变换matlab计算
Matlab求解差分方程
Matlab述
实验一 基于matlab语言的线性离散系统的z变换分析法1(1)

实验一基于MATLAB语言的线性离散系统的Z变换分析法一、实验目的1. 学习并掌握 Matlab 语言离散时间系统模型建立方法;2.学习离散传递函数的留数分析与编程实现的方法;3.学习并掌握脉冲和阶跃响应的编程方法;4.理解与分析离散传递函数不同极点的时间响应特点。
二、实验工具1. MATLAB 软件(6.5 以上版本);2. 每人计算机一台。
三、实验内容1. 在Matlab语言平台上,通过给定的离散时间系统差分方程,理解课程中Z变换定义,掌握信号与线性系统模型之间Z传递函数的几种形式表示方法;2. 学习语言编程中的Z变换传递函数如何计算与显示相应的离散点序列的操作与实现的方法,深刻理解课程中Z变换的逆变换;3. 通过编程,掌握传递函数的极点与留数的计算方法,加深理解G(z)/z 的分式方法实现过程;4. 通过系统的脉冲响应编程实现,理解输出响应的离散点序列的本质,即逆变换的实现过程;5. 通过编程分析,理解系统的Z传递函数等于单位脉冲响应的Z变换,并完成响应的脉冲离散序列点的计算;6. 通过程序设计,理解课程中脉冲传递函数极点对系统动态行为的影响,如单独极点、复极点对响应的影响。
四、实验步骤1.创建系统How to create digital system g Four examples are as follows:numg=[0.1 0.03 -0.07];deng=[1 -2.7 2.42 -0.72];g=tf(numg,deng,-1)get(g);[nn dd]=tfdata(g,'v')[zz,pp,kk]=zpkdata(g,'v')Unite circle region with distrbuting zeros points and poles points hold onpzmap(g), hold offaxis equal运行结果:2.转换为零极点标准形式Convert from tf(z-function) to zpk(z-function) Part C exercise form gg=zpk(g)[zz,pp,kk tts]=zpkdata(gg,'v')[z,p k,ts]=zpkdata(g,'v')运行结果:3.四个例子Four examples are as follows:Part A exerciseeg1mun=[1.25 -1.25,0.30];eg1den=[1 -1.05 0.80 -0.10];eg1=tf(eg1mun,eg1den,-1);eg1zpk=zpk(eg1);[zz1,pp1,kk1,tts1]=zpkdata(eg1zpk,'v');Part B exerciseeg2mun=[0.84 -0.062 -0.156 0.058];eg2den=[1 -1.03 0.22 0.094 0.05];eg2=tf(eg2mun,eg2den,-1);eg2zpk=zpk(eg2);[zz2,pp2,kk2,tts2]=zpkdata(eg2zpk,'v');Part C exercisezz3=[-0.2 0.4];pp3=[0.6 0.5+0.75i 0.5-0.75i 0.3];kk3=150;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);Part D exercisezz4=[-0.3 0.4+0.2i 0.4-0.2i];pp4=[-0.6 -0.3,0.5 0.6];kk4=5;tts4=-1;eg4zpk=zpk(zz4,pp4,kk4,tts4);eg4=tf(eg4zpk);4.留数法Residue method and impluse response numg=[2 -2.2 0.65];deng=[1 -0.6728 0.0463 0.4860]; [rGoz, pGoz,other]=residue(numg,[deng 0]) [mag_pGoz,theta_pGoz] =xy2p(pGoz)[mag-rGoz,theta-rGoz]=xy2p(rGoz)G=tf(numg,deng,-1)impulse(G)[y,k]=impulse(G);stem(k,y,'filled');impulse(G)运行结果:5.复杂极点响应When transfer function is G(Z) with complex ,t=t*ts;pole of z=e^(+-j*30*pi/3) and z=-0.5,as well as its gain value is unit step signal,its collecting cycle is 0.5 second,how to analyze its response.gcfts=0.3;num=[1 0.5];den=conv([1 -exp(i*pi/3)],[1 -exp(-i*pi/3)]);g1=tf(num,den,ts)[y,k]=impulse(g1,20);stem(k,y,'filled'),grid运行结果:6.重极点响应How to analyze response with repeating poles dtime=[0:90];y(k+2)-1.8y(k+1)+0.81y(k)=3u(k+1)-1.2u(k) yi=impulse(gstep,dtime)gcfnum=[3 -1.2];den=[1 -1.8 0.81];[rGoz, pGoz,other]=residue(num,[den 0])t=0:60;y=rGoz(2,1).*(t.*(pGoz(2,1).^(t-1)))+rGoz(1,1).*(pGoz(1,1).^(t)) y1=zeros(1,61);y1(1,1)=rGoz(3,1);y=y+y1;t=ts*t;stem(t,y,'filled'),gridSpecial example about difference real pole tosystem response[rGoz,pGoz,other]=residue(num,[den,0])num1=[rGoz(1) 0];den1=[1 -pGoz(1)]gg1=tf(num1,den1,ts)[y,t]=impulse(gg1,50)stem(t,y,'filled'),grid运行结果:7.阶跃响应numg=[2 -2.2 0.56];deng=[1 -0.6728 0.0463 0.4860];g=tf(numg,deng,1);numgstep=[numg 0];dengstep=conv(deng,[1 -1]);gstep=tf(numgstep,dengstep,1)dtime=[0:90];yi=impulse(gstep,dtime)subplot(2,1,1)stem(dtime,yi,'filled')ys=step(g,dtime);subplot(2,1,2)stem(dtime,ys,'filled')dcgain(g)ys_ss=ys(end)ys_ss=ys(max(dtime))运行结果:Example 1: Analysis of subsection input function subplot(1,1,1)num=[2 -2.2 0.56];den=[1 -0.6728 0.0463 0.4860];ts=0.2;g=tf(num,den,ts);dtime=[0:ts:8]';u=2.0*ones(size(dtime));ii=find(dtime>=2.0); u(ii)=0.5;y=lsim(g,u,dtime);stem(dtime,y,'filled'),gridhold onplot(dtime,u,'o')hold offtext(2.3,-1.8,'output')text(1.6,2.3,'input')运行结果:五、实验思考1、根据实验结果,分析离散传递函数不同极点的时间响应特点。
z变换和差分方程的matlab求解

一、概述在科学和工程领域,差分方程和离散时间系统模型的求解是非常常见和重要的问题。
差分方程是描述离散时间系统动态行为的数学模型,而z变换则是一种用于分析和求解差分方程的工具。
在matlab中,我们可以利用其强大的数值计算和符号计算功能来求解差分方程和进行z 变换分析,本文将介绍如何使用matlab来求解差分方程和进行z变换分析。
二、差分方程的matlab求解1. 差分方程的表示差分方程表示为:y(n) + a1*y(n-1) + a2*y(n-2) + ... + aN*y(n-N) = b0*x(n) +b1*x(n-1) + ... + bM*x(n-M)其中y(n)为系统的输出,x(n)为系统的输入,aN, aN-1, ..., a1, bM, bM-1, ..., b0为差分方程的系数。
2. 差分方程的matlab表示在matlab中,可以使用“filter”函数来求解差分方程。
该函数的用法为:y = filter(b, a, x)其中b为差分方程输出项的系数,a为差分方程输入项的系数,x为系统的输入。
该函数可以帮助我们求解差分方程,并得到系统的输出。
3. 示例假设有一个差分方程为:y(n) - 0.5*y(n-1) = x(n)其在matlab中的求解代码如下:输入信号x = randn(1, 100);系数b = 1;a = [1, -0.5];求解差分方程y = filter(b, a, x);通过以上代码,我们可以得到系统的输出y,从而求解了差分方程。
三、z变换和差分方程的关系1. z变换的定义z变换是一种用于分析和求解离散时间系统的工具,其定义为:Y(z) = Z{y(n)} = sum(y(n)*z^(-n), n=-inf to inf)其中Y(z)表示系统的z变换,y(n)表示系统的离散时间响应,z为复数变量。
2. z变换与差分方程的关系差分方程和z变换的关系可以表示为:Y(z) = H(z)X(z)其中Y(z)为系统的输出的z变换,H(z)为系统的传递函数的z变换,X(z)为系统的输入的z变换。
Z变换

8 z 19 X ( z) 2 z 5z 6
| z | 3
Z=sym('(8*z-19)/(z^2-5*z+6)'); x=iztrans(Z); simplify(x) ans= -19/6*charfcn[0](n)+5*3^(n-1)+3*2^(n-1) charfcn[0](n)是(n)函数在MATLAB符号工具箱中的表 示,反变换后的函数形式为:
三、实验原理
MATLAB实现
在MATLAB中系统函数的零极点就可通过函数roots得到, 也可借助DSP工具箱中的函数tf2zp得到,tf2zp的语句格 式为: [R,P,K]=tf2zp(B,A) 其中,B与A分别表示分子与分母多项式的系数向量。 它的作用是将H(z)的有理分式表示式转换为零极点增益 形式:
b=[0,0,1]; a=poly([1,1,2]); [r,p,k]=residuez(b,a);
得到 r= 1.0000 -0.0000 + 0.0000i -1.0000 + 0.0000i p=
2.0000 1.0000 + 0.0000i 1.0000 - 0.0000i []
%初始输入分子多项式的项数 %初始输入分子多项式的项数 %求三个系数[r,p,k]
X ( z)
0.36 0.24 0.4 1 0.5 z 1 1 0.3333z 1 (1 0.3333z 1 ) 2
x(n) [0.36 (0.5) n 0.24 (0.3333 ) n 0.4(n 1)(0.3333 ) n ]u(n)
三、实验原理n n x ( n ) Nhomakorabeaz
其中,符号表示取z变换,z是复变量。 相应地,单边z变换定义为:
实验五 Z变换

实验五 Z 变换一、实验目的利用MATLAB 进行序列的Z 变换及Z 反变换的计算。
二、实验原理及实验内容z 变换是时域离散信号和系统分析及设计的重要数学工具。
对于一个序列x(n),其z 变换定义为()()nn X z x n z∞-=-∞=∑这是个无穷级数,它存在着是否收敛和收敛条件的问题。
MA TLAB 作数值分析时,是无法求无限长度序列的z 变换的,这个问题要靠MATLAB 中的符号运算(Symbolic )工具箱才能解决。
如果z 变换是z 的有理分式,虽然其逆z 变换是无限序列,但求它的系数和指数都是数值计算的范畴,可以用MATLAB 解决。
如果序列x 的长度,即length(x)有限,其n=ns:nf ,则其z 变换为()()nfnn nsX z x n z-==∑它是一个z 的多项式,不存在收敛问题。
用MATLAB 的表达式可写成:()(1)^(1)(2)^(2)()^()X z x z n x z n x end z n end =*-+*-++*-这是MATLAB 中信号序列z 变换的典型形式。
它的逆z 变换一目了然,就是其系数向量x 和指数向量n 。
这也是和连续系统拉氏变换的不同之处。
在s 域,纯粹分子上的s 多项式属于非物理系统,分母上的s 的次数必定高于分子。
在z 域,有限长信号序列的z 变换必定是(纯粹分子上的)z 的多项式,无限长信号序列的z 变换则是z 的有理分式,而且其分母上的z 的次数可以低于分子。
用z 变换很容易求离散信号X(z)通过线性离散系统H(z)的输出Y(z):()()()()()B z Y z X z H z A z == 它必然是z 的有理分式1(1)1(1)()(1)(2)()(1)()()(1)(2)()(1)M MN NB z B B z B N z B N z Y z A z A A z A N z A N z --------+++++==+++++ (1) 通过长除或逆z 变换可求出其对应的时域序列。
实验4Z变换和系统频域特性的MATLAB实现

实验4Z变换和系统频域特性的MATLAB实现⼩实验4 Z 变换和系统频域特性的MATLAB 实现1. 实验⽬的学习通过Z 变换来分析离散系统的频率响应,并⽤MATLAB 实现。
加深对系统的零、极点分布概念的理解。
2. 实例分析2.1通过Z 变换分析求解系统的冲激响应()h n已知⽤线性常系数差分⽅程:1()()()NMk r k r y n a y n k b x n r ===-+-∑∑表⽰的线性时不变系统其系统函数为:01()()()1Mrr r N kk k b zY z H z X z a z-=-===-∑∑ (3-1)上式为两个关于1z -的多项式之⽐,即()H z 为有理分式。
同时,式可以表⽰成部分分式的形式:110()1NM Nkk k k k k R H z C z p z ---===+-∑∑ 则可以通过所熟悉的常见序列的Z 变换形式求得()H z 的Z 反变换,从⽽求得系统的冲激响应函数()h n 。
MATLAB 提供了⼀个内部函数residuez( ),来计算有理多项式的留数和直接项,residuez( )函数有⼏种调⽤⽅式:(1)[R,p,C] = residuez(b,a),在已知以分⼦⾏向量b 和分母⾏向量a 下,得到列向量R 含有留数,列向量p 是极点位置,⾏向量C 包含直接项;(2)[b,a] = residuez(R,p,C),将部分分式展开式转换到分⼦⾏向量b 和分母⾏向量a.MATLAB 还提供了⼀个内部函数impz(b,a,N),在已知分⼦⾏向量b 和分母⾏向量a 下,计算N 点的单位冲激响应()h n 。
例3.1 求系统:123412340.0018360.0073440.0110160.0073740.001836()1 3.0544 3.8291 2.29250.55075z z z z H z z z z z --------++++=-+-+的单位冲激响应()h n 。
用matlab绘制差分方程Z变换

axis([0,1,1.1*min(abs(h)),1.1*max(abs(h))]); ylabel(‘幅度’);
subplot(2,1,2),plot(n/pi,angle(h));grid %作系统的相位频响图
[z,p,k]=tf2zp(b,a) %使用tf2zp求出系统函数的零、极点和增益
运行结果
z=
-0.5000 + 0.8660i -0.5000 - 0.8660i
p=
-1.5437 -0.2282 + 1.1151i -0.2282 - 1.1151i
k=
1
(4)clear all;close all;clc;
axis([0,1,1.1*min(angle(h)),1.1*max(angle(h))]); ylabel(‘相位’);xlabel(‘以pi为单位的频率’);
运行结果
H (z)
z3
z2 2z2
z 1 2z
2
(1)clear all;close all;clc; b=[0 1 1 1]; %分子的系数数组 a=[1 2 2 2]; %分母的系数数组
%求出频率响应
subplot(3,1,3);
plot(w,abs(H))
xlabel('频率(Hz)');
ylabel('幅度');
title('幅频特性') %画出幅度频率响应
运算结果:由零极点分布及幅频特性可知,本系统为带通
(3) y(n) 0.2 y(n 1) x(n) 0.1x(n 1)