isStable
Determine stability of lag operator polynomial
Syntax
[
indicator
,eigenvalues
]
= isStable(A
)
Description
[
takes a lag operator
polynomial object indicator
,eigenvalues
]
= isStable(A
)A
and checks if it is stable.
The stability condition requires that the magnitudes of all roots
of the characteristic polynomial are less than 1 to within a small
numerical tolerance.
Input Arguments
|
Lag operator polynomial object, as produced by |
Output Arguments
|
Boolean value for the stability test. |
|
Eigenvalues of the characteristic polynomial associated with A(L).
The length of |
Examples
Tips
Zero-degree polynomials are always stable.
For polynomials of degree greater than zero, the presence of NaN-valued coefficients returns a
false
stability indicator and vector ofNaN
s ineigenvalues
.When testing for stability, the comparison incorporates a small numerical tolerance. The indicator is
true
when the magnitudes of all eigenvalues are less than1-10*eps
, whereeps
is machine precision. Users who wish to incorporate their own tolerance (including0
) may simply ignoreindicator
and determine stability as follows:[~,eigenvalues] = isStable(A); indicator = all(abs(eigenvalues) < (1-tol));
for some small, nonnegative tolerance
tol
.
References
[1] Hamilton, J. D. Time Series Analysis. Princeton, NJ: Princeton University Press, 1994.