Re: Question about subscripts and polynomial
- To: mathgroup at smc.vnet.net
- Subject: [mg107369] Re: [mg107355] Question about subscripts and polynomial
- From: DrMajorBob <btreat1 at austin.rr.com>
- Date: Thu, 11 Feb 2010 05:16:49 -0500 (EST)
- References: <201002100836.DAA21317@smc.vnet.net>
- Reply-to: drmajorbob at yahoo.com
I'm not entirely sure what ordering you want, but here's something to get you on the way. You can tweak the "order" function if needed. First, your original expansion: poly = d^2*v; Subscript[q, 1] = poly /. {d -> Sum[Subscript[d, i], {i, 1, 3}]} /. {v -> Sum[Subscript[v, i], {i, 1, 3}]}; basicSum = Expand[Subscript[q, 1]] (ugly output omitted; it looks fine in Mathematica) Here's the same thing transformed to a List and sorted by the total order of each product: order[term_] := term /. Times -> Plus /. Power -> Times /. Subscript[_, k_] :> k listSum = SortBy[basicSum /. Plus -> List, order] (ugly output omitted; it looks fine in Mathematica) That's a List, not a sum; the following is also NOT a sum, but it looks like one, sorted the same as listSum: displaySum = Infix[listSum, "+"] (ugly output omitted; it looks fine in Mathematica) To get back the original: backToBasics = Plus @@ displaySum[[1]]; basicSum === backToBasics True Bobby On Wed, 10 Feb 2010 02:36:40 -0600, Luca Zanotti Fragonara <Luca.Zanottifragonara at polito.it> 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 > > > -- DrMajorBob at yahoo.com
- References:
- Question about subscripts and polynomial
- From: Luca Zanotti Fragonara <Luca.Zanottifragonara@polito.it>
- Question about subscripts and polynomial