Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2004
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2004

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: extracting powers and coefficients from a polynomial

  • To: mathgroup at smc.vnet.net
  • Subject: [mg49064] Re: [mg49040] extracting powers and coefficients from a polynomial
  • From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
  • Date: Wed, 30 Jun 2004 05:34:11 -0400 (EDT)
  • References: <200406290850.EAA18783@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

On 29 Jun 2004, at 17:50, AngleWyrm wrote:

> I have made a formula that produces a polynomial expansion, and I wish  
> to
> extract the powers and coefficients into a list.
>
> Expand[(Sum[x^i, {i, 6}])^3]
>   1x^3 + 3x^4 + 6x^5 + 10x^6 + 15x^7 + 21x^8 + 25x^9 + 27x^10 + 27x^11  
> + 25x^12
> + 21x^13 + 15x^14 + 10x^15 + 6x^16 + 3x^17 + 1x^18
>
> How do I make a table of the powers and coefficents?
> 3, 1
> 4, 3
> 5, 6
> 6, 10
> ....
>
> --  
> AngleWyrm
> The C++ hat random selection container:
> http://home.comcast.net/~anglewyrm/hat.html
>
>
>
If you do not mind using an undocumented function then probably the  
simplest way is:


Reverse[Flatten/@First[Internal`DistributedTermsList[f,x]]]

{{3,1},{4,3},{5,6},{6,10},{7,15},{8,21},{9,25},{10,27},{11,27},{12,25},{ 
13,21},{14,15},{15,10},{16,6},{17,3},{18,1}}

Or you can use CoefficientList as follows:



With[{l=CoefficientList[f,x]},Transpose[{Range[0,Length[l]-1],l}]]


{{0,0},{1,0},{2,0},{3,1},{4,3},{5,6},{6,10},{7,15},{8,21},{9,25},{10,27} 
,{
   11,27},{12,25},{13,21},{14,15},{15,10},{16,6},{17,3},{18,1}}

Note that the first three terms given above have coefficient 0. One  
could drop all leading 0 coefficient terms like this:

Flatten[Rest[Split[With[{
     l=CoefficientList[f,x]},Transpose[{Range[0,Length[l]-1],l}]],#1[[
               2]]==#2[[2]]&]],1]


{{3,1},{4,3},{
   5,6},{6,10},{7,15},{8,21},{9,25},{10,27},{11,27},{12,25},{13,21},{
   14,15},{15,10},{16,6},{17,3},{18,1}}


Andrzej Kozlowski
Chiba, Japan
http://www.mimuw.edu.pl/~akoz/


  • Prev by Date: Re: RE: Trigonometric simplification - newbe question
  • Next by Date: Re: Re: Printing "The Mathematica Book"
  • Previous by thread: extracting powers and coefficients from a polynomial
  • Next by thread: Re: extracting powers and coefficients from a polynomial