Re: Question about subscripts and polynomial
- To: mathgroup at smc.vnet.net
- Subject: [mg107387] Re: [mg107355] Question about subscripts and polynomial
- From: Daniel Lichtblau <danl at wolfram.com>
- Date: Thu, 11 Feb 2010 05:20:07 -0500 (EST)
- References: <201002100836.DAA21317@smc.vnet.net>
Luca Zanotti Fragonara wrote: > Hello everybody, > > I would like to write a Polynomial, in this way: > > Poly = d^2*v > Subscript[q, 1] = > Poly /. {d -> Sum[Subscript[d, i], {i, 1, 3}]} /. {v ->Sum[Subscript[v, > i], {i, 1, 3}]} > Expand[Subscript[q, 1]] > > In this way I will obtain a polynomial in this form: > > d_1^2 v_1+2 d_1 d_2 v_1+d_2^2 v_1+2 d_1 d_3 v_1+2 d_2 d_3 v_1+d_3^2 > v_1+d_1^2 v_2+2 d_1 d_2 v_2+d_2^2 v_2+2 d_1 d_3 v_2+2 d_2 d_3 v_2+d_3^2 > v_2+d_1^2 v_3+2 d_1 d_2 v_3+d_2^2 v_3+2 d_1 d_3 v_3+2 d_2 d_3 v_3+d_3^2 v_3 > > I would like to reorder the expanded polynomial in a way such that the > terms with lower subcripts indexes will be at the beginning of the > polynomial, and the terms with higher order of subscripts will be at the > end (a sort of order due to the subscript instead of the power terms). > So the order should be something: > > Order 3: d_1^2 v_1 > Order 4: 2 d_1 d_2 v_1+d_1^2 v_2+... > Order 5: d_2^2 v_1+2 d_1 d_3 v_1+... > Order 6: 2 d_2 d_3 v_1+... > > I've tried to figure it out but I don't know which way to turn!!! > > Thank you in advance. > > Luca Poly = d^2*v; Subscript[q, 1] = Poly /. {d -> Sum[Subscript[d, i], {i, 1, 3}]} /. {v -> Sum[Subscript[v, i], {i, 1, 3}]}; p2 = Expand[Subscript[q, 1]] Then you can get in the vicinity of the desired ordering using MonomialList with default (Lexicographic) term order, and a suitable ordering of the variables. I rewrote to remove subscripting, so that this could be readily depicted in email-friendly plain ascii. mlist = MonomialList[p2, Riffle[Table[Subscript[d, i], {i, 3}], Table[Subscript[v, i], {i, 3}]]]; In[13]:= mlist /. Subscript -> Compose Out[13]= {d[1]^2 v[1], d[1]^2 v[2], d[1]^2 v[3], 2 d[1] d[2] v[1], 2 d[1] d[3] v[1], 2 d[1] d[2] v[2], 2 d[1] d[2] v[3], 2 d[1] d[3] v[2], 2 d[1] d[3] v[3], d[2]^2 v[1], 2 d[2] d[3] v[1], d[3]^2 v[1], d[2]^2 v[2], d[2]^2 v[3], 2 d[2] d[3] v[2], 2 d[2] d[3] v[3], d[3]^2 v[2], d[3]^2 v[3]} Daniel Lichtblau Wolfram Research
- References:
- Question about subscripts and polynomial
- From: Luca Zanotti Fragonara <Luca.Zanottifragonara@polito.it>
- Question about subscripts and polynomial