使用MATLAB求系统单位冲激响应以及实现构型转化

使用MATLAB求系统单位冲激响应以及实现构型转化,第1张

列u(n),然后通过函数y=filter(b,a,u)直接求得系统单位阶跃响应y(n)。

2将上题中直接型IIR滤波器转换成级联型,求出系统函数,并作出结构图

%例:直接型向级联型转换

b=[1,-3,11,-27,18];

a=[16,12,2,-4,-1];

fprintf('级联型结构系数:')

[sos,g]=tf2sos(b,a)

程序运行输出为:

级联型结构系数:

sos

=

10000

-30000

20000

10000

-02500

-01250

10000

00000

90000

10000

10000

05000

g

=

00625

由级联结构系数写出H(z)的表达式为:

H(z)=?

请作出级联型结构图

由上例,完成FIR滤波器的直接型向级联型转换,系统函数为

写出系统表达式,并作出系统结构图。

嘿嘿,实验报告,实在不会弄……谢谢了哇……

即 狄拉克函数, 在0处是无穷大,其他地方是0

DIRAC Delta function

DIRAC(X) is zero for all X, except X == 0 where it is infinite

DIRAC(X) is not a function in the strict sense, but rather a distribution with int(dirac(x-a)f(x),-inf,inf) = f(a) and diff(heaviside(x),x) = dirac(x)

单位脉冲序列只在n=0 处有一个单位值1,其余点上皆为0;

单位阶跃序列只有在n>=0时,才取非零值1,当n<0时均取零值。

当激励为单位阶跃函数时,电路或者控制系统的零状态响应称为单位阶跃响应,简称阶跃响应。

单位阶跃函数即 f(t)=1, t≥0; f(t)=0, t<0。matlab阶跃响应函数为step(G)

而激励为冲击函数时,就叫做冲击响应。

冲击函数,f(t)=∞,t=0;f(t)=0, t≠0。并且在(0-,0+)区间冲击函数f(t)的积分∫f(t)dt为1。Matlab冲击响应函数为impulse(G)

扩展资料:

冲激函数可用于信号处理,通过冲激函数来表示复杂的信号,可以简化对复杂信号的一些特性的研究。冲激函数及其延时冲激函数的线性组合来表示或逼近,再利用系统的迭加原理,可以通过简单的信号如单位冲激函数的频谱,以及频域特性来讨论比较复杂信号的频谱。从而减少计算复杂信号频谱的难度。

-冲激函数

不确定你这个问题的用意是什么,假设不同目的回答你吧:

如果仅仅想用数值的方法产生这两个函数,阶跃函数比较容易(阶跃时间处可使用eps区分阶跃前后的时刻),但理想的冲激函数就不太好表示了(较新的版本有dirac函数,但实现并不太好);

事实上产生那两个函数并没有太大意义,重要的是用它们作为激励信号来求系统响应,那么,在控制系统工具箱中有step和impulse函数,分别用于求单位阶跃响应和单位冲激响应(仅对线性时不变系统);

如果想要求非线性系统的单位阶跃响应,可以使用Simulink,里面有step模块,提供阶跃输入信号,但理想的冲激函数仍然不是很容易表示(当然,可以用脉冲信号近似);

如果使用符号数学工具箱,heaviside可产生单位阶跃函数,ilaplace(sym(1))可产生单位冲激函数。

Matlab中符号计算中提供 : 单位阶跃函数heaviside, 单位脉冲函数dirac, 至于斜坡可以使用阶跃和直线方程构成 。另外,impulse 和step实现冲击和阶跃响应,lsim是零状态响应。

1impz

功能:求解数字系统的冲激响应。

调用格式:

[h,t]=impz(b,a);求解数字系统的冲激响应h,取样点数为缺省值。

[h,t]=impz(b,a,n);求解数字系统的冲激响应h,取样点数由n确定。

impz(b,a);在当前窗口用stem(t,h)函数出图。

>> syms w t

>> f=sin(wt)

f =

sin(wt)

>> f1=diff(f,'t')

f1 =

cos(wt)w

>>

求导时候,指出来对谁求导就行了,剩下的会自动当做常量处理。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/11671327.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存