[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Roots() and factorizing large polynomials

From: Børge Strand-Bergesen
Subject: Roots() and factorizing large polynomials
Date: Mon, 8 Feb 2010 17:15:03 +0100


Im using roots() to factorize a long filter impulse responce
(polynomial in z). Reassembling the filter from the roots works for
short impulse responses (see below) but fails for longer ones. Any
suggestions for better factorization of polynomials?

The reason I'm doing this is that I want to take a generic FIR filter
and convert it to a minimum-phase filter. (By finding the roots,
inverting those with abs()>1, and assembling them to an impulse
response again.)


a = [1 1 -6];
roots_a = roots(a);
b = [1];
for n=1:length(roots_a)
    b = conv(b, [1 -roots_a(n)]);

> b
b =

   1   1  -6

reply via email to

[Prev in Thread] Current Thread [Next in Thread]