Multivariable Polynomial Matrix Spectral Factorization

by Member tomnz ‎11-11-2009 09:33 PM - edited ‎01-30-2017 09:09 AM

Overview

This program solves the polynomial matrix spectral factorization problem.


Introduction

The multivariable spectral factorization problem can be mathematically defined as follows:

Given

A(z^-1)A'(z)+R = D(z^-1)R~D'(z) ,

where

A(z^-1)=A0+A1z^-1+A2z^-2

R is a matrix and ' is transpose,

we find the polynomial matrix spectral factor:

D(z^-1)=D0+D1z^-1+D2z^-2

using feedback. This algorithm is useful for optimal Wiener filtering problems and H infinity filtering/control.

2.jpg

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

Requirements

Software

LabVIEW 8.6 or newer

Hardware

N/A

Additional Notes

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**