This program solves the polynomial matrix spectral factorization problem.
The multivariable spectral factorization problem can be mathematically defined as follows:
A(z^-1)A'(z)+R = D(z^-1)R~D'(z) ,
R is a matrix and ' is transpose,
we find the polynomial matrix spectral factor:
using feedback. This algorithm is useful for optimal Wiener filtering problems and H infinity filtering/control.
The example VI shows the original zeros of A and the zeros of the spectral factor D. When R=0 the two sets of zeros will of course coincide (except in the case when A has non-minimum phase terms in which case any non-minimum phase zeros get reflected back inside the unit circle of the z-plane).
Steps to Implement or Execute Code
1. Open msfact.llb
2. Run the main.vi
LabVIEW 8.6 or newer
See A control theoretical approach to the multivariable spectral factorization problem for more details.
**This document has been updated to meet the current required format for the NI Code Exchange. For more details visit this discussion thread**