Strange problem with InverseSeries
- To: mathgroup at smc.vnet.net
- Subject: [mg64709] Strange problem with InverseSeries
- From: Dan Goodman <usenetdog at fcbob.demon.co.uk>
- Date: Tue, 28 Feb 2006 01:49:42 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
Hi all,
I'm running Mathematica 4 and I have come across a very strange problem
with the InverseSeries function. The following works fine, and does
exactly what you'd expect.
p[X_] := -2 + 6*X - 9*X^2 + 8*X^3 - 6*X^4 + 2*X^5 - X^6;
X0 = X /. FindRoot[p[X] == 2, {X, 2 I}, MaxIterations -> 100];
s = Series[p[X], {X, X0, 10}];
InverseSeries[s];
Clear[c];
is = InverseSeries[SeriesData[X, X0, c /@ Range[0, 10]]];
(c[#1] = SeriesCoefficient[s, #1];) & /@ Range[0, 10];
is;
The second part just computes the general case of the inverse series,
and then substitutes the particular values. The two methods give the
same result.
However, if I replace this polynomial with the following one
p[X_] := I*(-2 + 7*X - 12*X^2 + 14*X^3 - 10*X^4 + 7*X^5 - 2*X^6 + X^7);
then InverseSeries[s]; just runs and runs and (as far as I can tell)
never stops. The second method works fine, but is very slow
(particularly if you try to compute more terms of the series than 10).
Any ideas why InverseSeries chokes on this second polynomial but not on
the first? My problem is that I want to run this calculation for much
higher degree polynomials (the ones I'm looking at all have the same
problem if the degree is 7 or higher), and compute many more than the
first 10 coefficients of the inverse series.
If someone can think of a clever and speedy workaround that would make
me a very happy and contented individual.
Many thanks,
Dan Goodman
University of Warwick