Re: Conjugate of symbolic expressions
- To: mathgroup at smc.vnet.net
- Subject: [mg108097] Re: [mg108034] Conjugate of symbolic expressions
- From: Joe Gwinn <joegwinn at comcast.net>
- Date: Mon, 8 Mar 2010 06:14:11 -0500 (EST)
- References: <20100307085436.N6PU7.671613.imail@eastrmwml42>
Bob, At 8:54 AM -0500 3/7/10, Bob Hanlon wrote: >Use ComplexExpand > >S1 = Exp[k1*x + I*omega*(t + tau)]; > >S1 // Conjugate > >E^Conjugate[I*omega*(t + tau) + k1*x] > >S1 // Conjugate // ComplexExpand > >E^(k1*x)*Cos[omega*(t + tau)] - > I*E^(k1*x)*Sin[omega*(t + tau)] > >S1 // Conjugate // ComplexExpand // FullSimplify > >E^(k1*x - I*omega*(t + tau)) I recall trying ComplexExpand, but it always worked too well, giving trig, just as with FullSimplify[], so I had forgotten it. But ComplexExpand[]//TrigToExp seems to work, and isn't too ugly. Thanks, Joe >Bob Hanlon > >---- Joseph Gwinn <joegwinn at comcast.net> wrote: > >============= >I have been using Mathematica 7 to do the grunt work in solving some >transmission-line problems, using the exponential form of the equations. > >A typical form would be S1 = Exp[k1*x + I*omega*(t+tau)], describing >signal one, >where K1 is the attenuation in nepers per meter, I is the square root of minus >one, omega is the angular frequency in radians per second, t is time >and tau is >a fixed time delay, t and tau being in seconds. > >Often I need the complex conjugate of S1, so I write Conjugate[S1]. >The problem >is that Mathematica does nothing useful, leaving the explicit >Conjugate[] in the >output expression, which after a very few steps generates a mathematically >correct but incomprehensible algebraic hairball. > >Clearly Mathematica feels that it lack sufficient information to proceed. In >particular, it has no way to know that all variables are real until explicitly >told. > >One way to solve this problem is >FullSimplify[Conjugate[S1],Element[_Symbol,Reals]], and this often works. > >But equally often, it works too well, yielding the trignometric >expansion of the >desired exponential-form answer. Nor is it clear why it sometimes works and >sometimes works too well. > >Using Simplify[] instead of FullSimplify[] doesn't seem to work at all. > > >So my questions are: > >1. What controls FullSimplify[]'s behaviour here? > >2. What other ways are there to cause Mathematica to apply the Conjugate[] >without holding back? > > >Thanks, > >Joe Gwinn