Re: Conjugate of symbolic expressions
- To: mathgroup at smc.vnet.net
- Subject: [mg108098] Re: [mg108034] Conjugate of symbolic expressions
- From: Joe Gwinn <joegwinn at comcast.net>
- Date: Mon, 8 Mar 2010 06:14:22 -0500 (EST)
- References: <28745811.1267954710914.JavaMail.root@n11>
David, At 9:30 AM -0500 3/7/10, David Park wrote: > >Have you tried ComplexExpand? It assumes that all symbols are Reals, unless >specified otherwise. Also check its TargetFunctions option. I had tried ComplexExpand some time ago and had forgotten it, because it too overachieved, yielding trig. A number of people have suggested it in response to my query, so I tried it again. I just tried TargetFunctions, but Exp isn't an allowed function, and {Re,Im} allowed the trig answers. What seems to work is ComplexExpand[]//TrigToExp. Thanks, Joe >David Park >djmpark at comcast.net >http://home.comcast.net/~djmpark/ > > > > >From: Joseph Gwinn [mailto:joegwinn at comcast.net] > >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