Path: news.mathworks.com!newsfeed-00.mathworks.com!kanaga.switch.ch!switch.ch!news-fra1.dfn.de!newsfeed.pionier.net.pl!pwr.wroc.pl!panorama.wcss.wroc.pl!not-for-mail
From: pisz_na.mirek@dionizos.zind.ikem.pwr.wroc.pl
Newsgroups: comp.soft-sys.matlab
Subject: Re: Polynomial roots
Date: Thu, 7 Sep 2006 10:44:55 +0000 (UTC)
Organization: WUT
Lines: 30
Message-ID: <edot77$47$1@panorama.wcss.wroc.pl>
References: <ef40263.-1@webcrossing.raydaftYaTP> <edoosg$rb2$2@panorama.wcss.wroc.pl> <ef40263.3@webcrossing.raydaftYaTP>
NNTP-Posting-Host: infrared.zind.ikem.pwr.wroc.pl
X-Trace: panorama.wcss.wroc.pl 1157625895 135 156.17.14.223 (7 Sep 2006 10:44:55 GMT)
X-Complaints-To: abuse@news.pwr.wroc.pl
NNTP-Posting-Date: Thu, 7 Sep 2006 10:44:55 +0000 (UTC)
User-Agent: tin/1.7.8-20050315 ("Scalpay") (UNIX) (Linux/2.4.26 (i686))
Xref: news.mathworks.com comp.soft-sys.matlab:368495



Pawel <prulikowski@removegmail.com> wrote:
> 
> Hello Mirek,
> 
> Thanks a lot for all your suggestions - the problem is slightly more
> complicated as the actual, proper equation looks like this:
> 
> _N
> ||[(1-dk*x^(-1))*(1-conj(dk)*x)]-b^2=0
> k=1
> 
> How would you handle this problem ?


Is -b^2 outside of Pi (multiplication)? If so then your complex term is
equivalent to
                               2        2
                           dk x  + (- dk  - 1) x + dk
(%o125)                  - --------------------------
                                       x

You can remove denominator by multipling your equation by x^N. So matlab
solution is

p=1;
for k=1:N
  p=conv(p,[ -d(k), d(k)^2+1, -d(k) ]);
end;
p(end-N)=p(end-N)+(-b^2); % add -b^2*x^N
roots(p)