極點不同的情況
考慮到這個傳遞函數:
分子和分母的係數矩陣分別爲:
>> num = [2 5 3 6];
>> den = [1 6 11 6];
使用以下命令:
>> [r,p,k] = residue(num,den)
即可對分式進行展開,展開後有多項,每一項的分子一定是數字,而分母則爲一個多項式
r
稱爲留數p
稱爲極數k
稱爲單獨項
r =
-6.0000
-4.0000
3.0000
p =
-3.0000
-2.0000
-1.0000
k =
2
命令residue
還能用來根據分式展開式得到多項式,例如我們有以下傳遞函數的展開式:
我們使用以下命令將其寫成兩個多項式之比的形式:
>> clear
>> r = [-6 -4 3];
>> p = [-3 -2 -1];
>> k = 2;
>> [num1,num2] = residue(r,p,k)
num1 =
2 5 3 6
num2 =
1 6 11 6
結果還是不太明顯,因爲這只是分子和分母的係數,我們新建一個變量s來將其寫成分子分母之比的形式,這樣就更加的直觀:
>> printsys(num1,num2,'s')
num/den =
2 s^3 + 5 s^2 + 3 s + 6
-----------------------
s^3 + 6 s^2 + 11 s + 6
通過對比發現,分子和分母的係數剛好與上面的矩陣匹配。
極數相等
上面的例子都是分母極數不相等的,所以分母都是一次多項式,但如果考慮到另一種情況,分母也稱爲特徵多項式,如果這個特徵多項式有重根,那麼分母就不會再是一次多項式:
重複上述操作:
>> clear
>> num1 = [0 1 2 3];
>> num2 = [1 3 3 1];
>> [r,p,k] = residue(num1,num2)
r =
1.0000
0.0000
2.0000
p =
-1.0000
-1.0000
-1.0000
k =
[]
可以看到p
的值有三個,而且都相等,說明這三個極數相等,那麼分母將不再是一次多項式,而是:
得到原函數:
>> [A,B] = residue(r,p,k)
A =
1 2 3
B =
1.0000 3.0000 3.0000 1.0000
>> printsys(A,B,'s')
num/den =
s^2 + 2 s + 3
---------------------
s^3 + 3 s^2 + 3 s + 1