User`s guide
Polynomial Stability Test
5-345
5Polynomial Stability Test
Purpose Determine whether all roots of the input polynomial are inside the unit circle 
using the Schur-Cohn algorithm. 
Library Math Functions / Polynomial Functions
Description The Polynomial Stability Test block uses the Schur-Cohn algorithm to 
determine whether all roots of a polynomial are within the unit circle. 
y = all(abs(roots(u)) < 1) % Equivalent MATLAB code
Each column of the M-by-N input matrix u contains M coefficients from a 
distinct polynomial,
arranged in order of descending exponents, u
1
, u
2
,…,u
M
. The polynomial has 
order M-1 and positive integer exponents.
Inputs can be frame-based or sample-based, and both represent the polynomial 
coefficients as shown above. For convenience, a length-M 1-D vector input is 
treated as an M-by-1 matrix.
The output is a 1-by-N matrix with each column containing the value
1 or 0. 
The value
1 indicates that the polynomial in the corresponding column of the 
input is stable; i.e., the magnitudes of all solutions to f(x) = 0 are less than 1. 
The value
0 indicates that the polynomial in the corresponding column of the 
input may be unstable; i.e., the magnitude of at least one solution to f(x) = 0 is 
greater than or equal to 1.
The output is always sample-based.
Applications
This block is most commonly used to check the pole locations of the 
denominator polynomial, A(z), of a transfer function, H(z). 
The poles are the n-1 roots of the denominator polynomial, A(z). If any poles are 
located outside the unit circle, the transfer function H(z) is unstable. As is 
fx() u
1
x
M 1–
u
2
x
M 2–
L u
M
+++=
Hz()
Bz()
Az()
------------
b
1
b
2
z
1–
… b
m
z
m 1–()–
+++
a
1
a
2
z
1–
… a
n
z
n 1–()–
+++
---------------------------------------------------------------------------==










