RE: Multiplying large polynomials
- To: mathgroup at smc.vnet.net
- Subject: [mg14710] RE: [mg14685] Multiplying large polynomials
- From: "Ersek, Ted R" <ErsekTR at navair.navy.mil>
- Date: Tue, 10 Nov 1998 01:21:02 -0500
- Sender: owner-wri-mathgroup at wolfram.com
Thomas Bell wrote:
>
>I'm trying to multiply two huge polynomials, and memory is a major
>concern. I want to truncate the resulting polynomial to a specified
>power (N) in one of the variables (h), and I was wondering if it was
>possible to tell Mathematica to not bother multiplying two terms if the
>resulting power of h was greater than N. This is, of course, in the
>hope that this "automatic truncation" would save time and memory. For
>example, if
>
>
>poly1 = a h^2 + b;
>poly2 = d h + e;
>N = 2;
>
>then I would like to result to be
>
>result = a e h^2 + b d h + b e
>
>Instead, I have to write
>
>result = Expand[poly1 poly2]/.h^3 -> 0;
>
>which forces Mathematica to create the enormous product before
>truncating. Please cc to tombell at stanford.edu, and thanks in advance
>for any suggestions.
>
This should do it:
In[4]:=
Series[poly1*poly2,{h,0,2}]//Normal
Out[4]//InputForm=
b*e + b*d*h + a*e*h^2
I used InputForm for default output.
Cheers,
Ted Ersek