[Date Index]
[Thread Index]
[Author Index]
polynomial long division using Series[] and changing polynomial default
*To*: mathgroup at smc.vnet.net
*Subject*: [mg112391] polynomial long division using Series[] and changing polynomial default
*From*: "Nasser M. Abbasi" <nma at 12000.org>
*Date*: Mon, 13 Sep 2010 03:13:37 -0400 (EDT)
*Reply-to*: nma at 12000.org
Mathematica experts:
I need a way to tell Mathematica to reverse the default ordering it uses
for polynomial.
The problem:
I have 2 uni-variants polynomials num(z) and den(z), I can do the
polynomial num(z)/den(z) long division using the Series command
Series[num/den,{z,0,n}]
Where n is the maximum number of terms I want to see in the long
division. This is a small example
---------------
num = 2 + z;
den = z^2 + 2*z + 1;
Normal[Series[num/den, {z, 0, 4}]]
2 - 3*z + 4*z^2 - 5*z^3 + 6*z^4
----------------
But due to Mathematica default ordering of polynomial, which is from low
to high degree, the above is long division done as follows, when done by
hand:
+----------
1+ 2*z + z^2 | 2 + z
---------------+
What I want is to do the long division as follows
+----------
z^2 + 2*z + 1 | z + 2
---------------+
Which, when done by hand, would result in : z^-1 - z^-3 + 2 z^-4 +....
The reason, is that I am using long division to find the inverse Z
transform of H(z) = num(z)/den(z), and this is a causal discrete system,
hence I need the result of the long division to come out in negative
powers of z.
Once the result comes out in negative powers of z, then I can read the
impulse response h(n) from the corresponding coefficients of z's.
Notice that Z transform is H(z)= Sum[ h(n) * z^(-n) ,{n,0,Infinity}].
So, I need the long division to happen as in the second form above.
i.e. I need the ordering of the polynomials to be from large degree to
low degree (reverse what the default is).
I did not know how to tell Mathematica Series command to do the division
num/den using this ordering.
I read this
http://reference.wolfram.com/mathematica/tutorial/PolynomialOrderings.html
But it is hard for me to understand how to use the above information in
the context of what I am trying to do.
Is there any easy way to change this ordering so that Series[] will
return the answer that I wanted? Is there Some option or may be some
global setting I need to set?
thanks
--Nasser
Prev by Date:
**Re: FindRoots?**
Next by Date:
**Re: an issue of consistency**
Previous by thread:
**Spreadsheet-like data manipulation**
Next by thread:
**Re: polynomial long division using Series[] and changing polynomial default**
| |