MathGroup Archive 2007

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

Search the Archive

Re: Simplifying the exponents

  • To: mathgroup at smc.vnet.net
  • Subject: [mg80067] Re: Simplifying the exponents
  • From: dimitris <dimmechan at yahoo.com>
  • Date: Sat, 11 Aug 2007 02:22:35 -0400 (EDT)
  • References: <f9gv3l$b5e$1@smc.vnet.net>

On 10    , 09:03, "Jung-Tsung Shen" <jus... at gmail.com> wrote:
> Hello, I would like to ask a question which I haven't been able to
> find a solution that does not need human intervening.
>
> I would like to simplify the following expression
>
> Exp[I (q1 y1 + q2 y2 + q3 y3) - I (qp1 y1 + qp2 y2 + qp3 y3)]
>
> according to y1, y2, and y3 so it would look like
>
> Exp[I (q1-qp1) y1+ I (q2-qp2) y2 + I (q3-qp3) y3], or
>
> Exp[I (q1-qp1) y1] * Exp[I (q2-qp2) y2] * Exp[I (q3-qp3) y3]
>
> How could I achieve this in an efficient way?
>
> Thanks.
>
> JT

Hello.

Say, ox1 is your expression

In[83]:=
ox1 = Exp[I*(q1*y1 + q2*y2 + q3*y3) - I*(qp1*y1 + qp2*y2 + qp3*y3)]

Out[83]=
E^(I*(q1*y1 + q2*y2 + q3*y3) - I*(qp1*y1 + qp2*y2 + qp3*y3))

Then the first you request, can be taken by

In[87]:=
ox2 = ox1 /. E^(a_) :> E^(Collect[a, {y1, y2, y3}] /. (b_)*(c_) :>
Simplify[b]*c)

Out[87]=
E^(I*(q1 - qp1)*y1 + I*(q2 - qp2)*y2 + I*(q3 - qp3)*y3)

For the second request, you must enter HoldForm in the "game" as
follows

In[93]:=
ox3=(HoldForm[#1]*HoldForm[#2]*HoldForm[#3] & ) @@ (ox2 /. E^(a_) :>
(E^#1 & ) /@ List @@ a)

Out[93]=
HoldForm[E^(I*(q1 - qp1)*y1)]*HoldForm[E^(I*(q2 -
qp2)*y2)]*HoldForm[E^(I*(q3 - qp3)*y3)]

However,

In[95]:=
ReleaseHold[ox3]

Out[95]=
E^(I*(q1 - qp1)*y1 + I*(q2 - qp2)*y2 + I*(q3 - qp3)*y3)

Cheers
Dimitris




  • Prev by Date: rotation angles from rotation matrix
  • Next by Date: Re: How to get the real and imaginary parts of a power series?
  • Previous by thread: Re: Simplifying the exponents
  • Next by thread: DisplayForm Problem