Matlab的residuez和residue的区别,举例
看了网上很多的博客都没有说的很清楚这两个函数的区别,于是自己动手试了一下
一、residue函数
1. 概念:在部分分式展开式和多项式系数之间转换。(Convert between partial fraction expansion and polynomialcoefficients)。
[r,p,k] = residue(b,a)
[b,a] = residue(r,p,k)
源网址:https://ww2.mathworks.cn/help/matlab/ref/residue.html
有H(z) = { -4 + 8z^(-1)}/{ 1 + 6z^(-1) + 8z^(-2)} ,即b = [-4 8 0];a = [1 6 8];
部分展开结果如图:
执行residue后得
b = [-4 8 0];
a = [1 6 8];
[r,p,k] = residue(b,a)
r =
48
-16
p =
-4
-2
k =
-4
验证了我们计算计算结果!
二、residuez函数
可以发现这个不同于上一个是,分母上是z-1,而前一个分母上是s,所以说写出部分分式展开的结果也会不同。 可以写出部分分式展开的格式:
H(z) = -12/(1 + 4z^(-1) ) + 8/(1 + 2z^(-1))
代码执行结果:
b = [-4 8 0];
a = [1 6 8];
[r,p,k] = residuez(b,a)
r =
-12
8
p =
-4
-2
k =
0
结论
显而易见,两个函数只是部分分式展开式展开方式的不同,residuez是z-1形式的展开