from
Hurwitz-Schur Stability Test of 2-D Polynomials
by Yang Xiao
This program can test the Hurwitz-Schur Stability of 2-D Polynomials.
|
| Hurwitz_Schur_ST2D.m |
% Hurwitz-Schur Stability Test of 2-D Polynomials
% Copyright (C) Yang XIAO, Beijing Jiaotong University, Aug.8, 2007, E-Mail: yxiao@bjtu.edu.cn.
% The stability of 2-D continuous-discrete systems and time-delay systems
% can be determined by the Hurwitz-Schur Stability of characteristic polynomials of the
% systems [1-3].
% The characteristic polynomials can be expressed as a
% 2-D Polynomial in s-z domain: B(z1,z2)=[1 z^(-1) z^(-2)]*B*[1 s s^2]'.
% This program derived from the main results of Ref. [1-3], and can test
% the Hurwitz-Schur Stability of 2-D Polynomials.
% [1] Y. Xiao; Stability test for 2-D continuous-discrete systems, Proceedings
% of the 40th IEEE Conference on Decision and Control, 2001. Volume 4,4-7 Dec. 2001
% Page(s):3649 - 3654 vol.4
% [2] Y. Xiao Yang, 2-D stability test for time-delay systems, Proceedings of 2001 International Conferences
% on Info-tech and Info-net, 2001. ICII 2001 - Beijing. Volume 4, 29 Oct.-1 Nov. 2001 Page(s):203 - 208 vol.4
% [3] Y. Xiao; 2-D algebraic test for stability of time-delay systems, Proceedings
% of the 2002 American Control Conference, 2002. Volume 4, 8-10 May 2002 Page(s):3351 - 3356 vol.4
% [4] Y. Xiao, Stability Analysis of Multidimensional Systems, Shanghai Science and Technology Press, Shanghai, 2003.
%
% The papers [1-3] can be downloaded from Web site of IEEE Explore.
clear;
i=sqrt(-1);
M=512; % The nubber of discrete frequency points on unit circle
w=0;
for n=1:M
w=pi*n/M;
z=exp(j*2*pi*(n-1)/M);
%---------------------------
%stable
B=[12 6 3; % The coefficients of a 2-D polynomial
10 5 2;
2 0 1]
%----------------------
bb=B*[1 z^(-1) z^(-2)]';
%aa=a*[1 z z^2 z^3]'
B0=bb(1);
B1=bb(2);
B2=bb(3);
BZ=[B0 B1 B2]; % The complex varible polynomial coefficients B0(z), B1(z) and B2(z) of the 2-D polynomial
x(n)=max(real(roots(BZ)));
if x(n)>0
e=x(n)
end
end
xmax=max(x)
fprintf('Display the real part of the roots of the given polynomial\n')
if xmax>0
fprintf('The 2-D polynomial is not Hurwitz-Schur stable')
else
fprintf('The 2-D polynomial is Hurwitz-Schur stable')
end
plot(x)
ylabel('The real part of the roots of the polynomial');
xlabel('The discrete frequency points on unit circle');
|
|
Contact us at files@mathworks.com