Re: efficient term collection algorithm
- To: mathgroup at smc.vnet.net
- Subject: [mg69170] Re: efficient term collection algorithm
- From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
- Date: Fri, 1 Sep 2006 06:40:14 -0400 (EDT)
- Organization: The Open University, Milton Keynes, UK
- References: <ed68a7$jci$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Blake Laing wrote: > Dear Math Group > > I wish to combine terms in a expression which share a denominator, such > as in the following simple case: > > In[1]:= > a/i+b/j+c/i//.Plus[Times[A_.,Power[denom_,-1]],Times[B_.,Power[denom_,-1]]]:> > Factor[Plus[A,B]Power[denom,-1]]//InputForm > Out[1]//InputForm= > (a + c)/i + b/j > > The actual expression I am working with contains thousands of terms, and > a pairwise algorithm such as this is wholly inadequate. Will one of you > please suggest a more efficient way to combine each additive term in a > large expression with a shared denominator? Hi Blake, You could try the following: In[1]:= expr = a/i + b/j + c/i; Apart[Together[expr]] Out[2]= a + c b ----- + - i j Regards, Jean-Marc