fastest way of calculating the roots of a polynomium??
CASTalk.com Forum Index CASTalk.com
Discussion of DSP, FPGA, storage and embedded system.
 
 FAQFAQ   MemberlistMemberlist     RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 
 
Google
 
Web castalk.com
fastest way of calculating the roots of a polynomium??

 
Post new topic   Reply to topic    CASTalk.com Forum Index -> DSP
Author Message
John
Guest





Posted: Wed Nov 23, 2005 5:16 pm    Post subject: fastest way of calculating the roots of a polynomium?? Reply with quote

Hello

I am working on a speech enhancement algorithm. Part of my algorithm has to
do with 10th order LPC-analysis that provides me with the real coefficients
[a1,a2,.....,a10] for a 10th order polynomium
A(z)=1+a1*(z^-1)+a2*(z^-2)+......+a10*(z^-10)

Is there a way to do fast calculation of all the roots of A(z) such that
they are written on the complex form x+j*y ??

Thank you in advance...
Back to top
Rune Allnor
Guest





Posted: Wed Nov 23, 2005 5:16 pm    Post subject: Re: fastest way of calculating the roots of a polynomium?? Reply with quote

John wrote:
Quote:
Why do you want them? If it is to check for stability, that is

It is not to check for stability....It is because I am more interested in
finding the roots than the LPC-coefficients. If I have the roots I can
quickly calculate the LPC-coefficients if I want to....so I am looking for a
_fast_ way of determining the roots of a 10th order polynomial...I see that
matlab solves it as an eigenvalue-problem....Is this the fastest way?

I have solved roots in polynomials by using Laguerre's method. It works

reasonably well for 5th order polynomials, but requires a fair amount
of
fiddling to obtain a stable, robust method.

Before embarking on implementing such a routine, you should consider
why you want these roots. Do you *really* need them? Having spent a
bit of time with these things recently, I find it hard to justify the
effort
without a very compelling reason. For the record: The reason why I did
these things was that I wanted to represent IIR bandpass and bandstop
filters as a sequence of 2nd order sections. I am still debugging the
routines, three months after I started to implement them.

Rune
Back to top
John
Guest





Posted: Wed Nov 23, 2005 5:16 pm    Post subject: Re: fastest way of calculating the roots of a polynomium?? Reply with quote

Quote:
Why do you want them? If it is to check for stability, that is

It is not to check for stability....It is because I am more interested in
finding the roots than the LPC-coefficients. If I have the roots I can
quickly calculate the LPC-coefficients if I want to....so I am looking for a
_fast_ way of determining the roots of a 10th order polynomial...I see that
matlab solves it as an eigenvalue-problem....Is this the fastest way?
Back to top
Emile
Guest





Posted: Wed Nov 23, 2005 5:16 pm    Post subject: Re: fastest way of calculating the roots of a polynomium?? Reply with quote

John wrote:
Quote:
Why do you want them? If it is to check for stability, that is


It is not to check for stability....It is because I am more interested in
finding the roots than the LPC-coefficients. If I have the roots I can
quickly calculate the LPC-coefficients if I want to....so I am looking for a
_fast_ way of determining the roots of a 10th order polynomial...I see that
matlab solves it as an eigenvalue-problem....Is this the fastest way?




I have had a course on computerarithmetics, there we used iterative
methods to gradually come closer to the root(s) up to some arbitrary
small error (by using the output of one iteration as input for the next,
and stop when 2 successive iterations differ very little (other stopping
conditions may be better but its usable), the fastest algorithm we've
seen was the Newton-Raphson method (maybe not the fastest that exists).
More numerical algorithms can be found here (maybe not the most complete
explanation, but it should get u started):

http://mathworld.wolfram.com/topics/Root-Finding.html

grtz
Emile Vrijdags
Back to top
dbell
Guest





Posted: Wed Nov 23, 2005 5:16 pm    Post subject: Re: fastest way of calculating the roots of a polynomium?? Reply with quote

Why do you want them? If it is to check for stability, that is
normally done by checking the reflection coefficients which generated
for a lattice filter implementation.

Dirk
Back to top
Guest






Posted: Wed Nov 23, 2005 6:05 pm    Post subject: Re: fastest way of calculating the roots of a polynomials?? Reply with quote

In article <43847dd4$0$67257$157c6196@dreader2.cybercity.dk>,

"John" <johnjohn@sucker.com> writes:
Quote:
Why do you want them? If it is to check for stability, that is

It is not to check for stability....It is because I am more interested in
finding the roots than the LPC-coefficients. If I have the roots I can
quickly calculate the LPC-coefficients if I want to....so I am looking for a
_fast_ way of determining the roots of a 10th order polynomial...I see that
matlab solves it as an eigenvalue-problem....Is this the fastest way?

Just went to a talk by Ron Shafer last night, and he talked about the problem
of finding roots of very high degree polynomials (up to order 1 million) using
a technique published in "Factoring Very High Degree Polynomials," IEEE Signal
Processing Magazine, November 2003. You can get more info at
http://www-dsp.rice.edu/software/fvhdp.shtml

Regards,
Karl Molnar
Back to top
Karl Molnar
Guest





Posted: Wed Nov 23, 2005 8:43 pm    Post subject: Re: fastest way of calculating the roots of a polynomials?? Reply with quote

In article <1132777446.921670.252430@o13g2000cwo.googlegroups.com>,
"Randy Yates" <yates@ieee.org> writes:
Quote:
Karl,

I'm sorry I missed him. Was it a good meeting?

--Randy


Randy,

It was interesting - he spoke about the history and application of the cepstrum.
As an added bonus, we also met Jim Kaiser.

Karl
Back to top
John
Guest





Posted: Wed Nov 23, 2005 11:31 pm    Post subject: Re: fastest way of calculating the roots of a polynomium?? Reply with quote

Yes.


-----
< Do you *really* need them? Having spent a
Back to top
Bob Cain
Guest





Posted: Thu Nov 24, 2005 1:16 am    Post subject: Re: fastest way of calculating the roots of a polynomium?? Reply with quote

John wrote:
Quote:
Why do you want them? If it is to check for stability, that is

It is not to check for stability....It is because I am more interested in
finding the roots than the LPC-coefficients. If I have the roots I can
quickly calculate the LPC-coefficients if I want to....so I am looking for a
_fast_ way of determining the roots of a 10th order polynomial...I see that
matlab solves it as an eigenvalue-problem....Is this the fastest way?

No. See:

http://www.dsp.rice.edu/software/fvhdp.shtml


Bob
--

"Things should be described as simply as possible, but no simpler."

A. Einstein
Back to top
Randy Yates
Guest





Posted: Thu Nov 24, 2005 1:16 am    Post subject: Re: fastest way of calculating the roots of a polynomials?? Reply with quote

Karl,

I'm sorry I missed him. Was it a good meeting?

--Randy
Back to top
John
Guest





Posted: Thu Nov 24, 2005 1:17 am    Post subject: Re: fastest way of calculating the roots of a polynomium?? Reply with quote

Thank you to you all :o)
Back to top
glen herrmannsfeldt
Guest





Posted: Sun Nov 27, 2005 1:16 am    Post subject: Re: fastest way of calculating the roots of a polynomium?? Reply with quote

Emile wrote:

(snip)

Quote:
I have had a course on computerarithmetics, there we used iterative
methods to gradually come closer to the root(s) up to some arbitrary
small error (by using the output of one iteration as input for the next,
and stop when 2 successive iterations differ very little (other stopping
conditions may be better but its usable), the fastest algorithm we've
seen was the Newton-Raphson method (maybe not the fastest that exists).

For a simple root, that is fine. For a multiple root the derivative
goes to zero at the root, which is inconvenient for Newton's method.

-- glen
Back to top
Randy Yates
Guest





Posted: Fri Dec 09, 2005 1:16 am    Post subject: Re: fastest way of calculating the roots of a polynomials?? Reply with quote

I should've gone. Cool stuff, venerable men.

--Randy
Back to top
Rick Lyons
Guest





Posted: Fri Dec 09, 2005 7:35 am    Post subject: Re: fastest way of calculating the roots of a polynomials?? Reply with quote

On Wed, 23 Nov 2005 20:43:09 +0000 (UTC), molnar@rtp.ericsson.se (Karl
Molnar) wrote:

Quote:
In article <1132777446.921670.252430@o13g2000cwo.googlegroups.com>,
"Randy Yates" <yates@ieee.org> writes:
Karl,

I'm sorry I missed him. Was it a good meeting?

--Randy


Randy,

It was interesting - he spoke about the history and application of the cepstrum.
As an added bonus, we also met Jim Kaiser.

Karl

Hi,

meeting Schafer and Kaiser must have been like
a baseball fan meeting Ted Williams & Mickey Mantle.

Neat.

[-Rick-]
Back to top
 
Post new topic   Reply to topic    CASTalk.com Forum Index -> DSP All times are GMT
Page 1 of 1

 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum




VoIP Electronics Powered by phpBB