sigma function plot of an unstable system
1 次查看(过去 30 天)
显示 更早的评论
I encountered the following problem when I applied the sigma function to plot the frequency response of a system.
clear all
s = tf('s');
n = 3;
D1 = [0;0;0.1];
C = [-0.1 0.1 0.2; 0.4 0.01 0; 0.1 0.21 0.1]; D2 = [0; 0.1; 0];
A = eye(n);
H = ( s*eye(n) - A )^(-1);
H = C*H*D1 + D2;
sigma(H)
The system considered here is clearly unstable. However, sigma() function returned finite values in its plot. Could somebody tell me where it went wrong here ?
0 个评论
采纳的回答
Suhan
2017-5-25
编辑:Suhan
2017-5-25
Hi Qian,
Note that sigma(TF) is an extension of bode(TF) for MIMO systems. So sigma(TF) is same as the gain plot of bode(TF) for SISO systems. To know more about sigma() and it's usage, refer to the following documentation:
But I would like to clarify your doubt on why sigma(H), for the case of an unstable system, gives finite values.
Let us consider an unstable system with the following transfer function:
H = tf([1],[1,-5]);
Now plot in MATLAB bode(H); (whose magnitude plot is same as sigma(H)).
As you would see, although this is an unstable system, the magnitudes in the magnitude plot are finite. This is because the output magnitude is:
1/ ((j*w)-5)) (where j = sqrt(-1) and w is frequency).
This is equal to 1/sqrt(25+w^2)
So, you see, the denominator is never zero for any value of the frequency 'w'. It's always finite for all values of 'w'. Hence, the system is unstable doesn't mean the gains should be infinity. Rather, it means that the output of the system explodes over time.
Using the analogy, you can figure out why the sigma(H) gave finite values for your system.
I hope you will find this explanation helpful.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Control System Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!