當傳遞函數很複雜的時候,我們不可能手算,這個時候我們可以使用以下命令來求解:
The MATLAB command:
>> [z,p,K] = tf2zp(num,den)
其中字母的一些含義:
- z代表
zeros
零點 - p代表
poles
極點 - K代表增益
Consider the system defined by:
爲了獲得零點,極點,增益,使用以下命令:
>> num = [4 16 12];
>> den = [1 12 44 48 0];
>> [z,p,K] = tf2zp(num,den)
得到:
z =
-3
-1
p =
0
-6.0000
-4.0000
-2.0000
K =
4
如果已經給定零點,極點和增益,如下的MATLAB
程序就會生成原來的num
和den
數列:
>> z = [-3;-1];
>> p = [0;-6;-4;-2];
>> K = 4;
>> [num,den] = zp2tf(z,p,K)
num =
0 0 4 16 12
den =
1 12 44 48 0
還可以使用printsys
命令顯示出函數:
>> printsys(num,den,'s')
num/den =
4 s^2 + 16 s + 12
----------------------------
s^4 + 12 s^3 + 44 s^2 + 48 s