Re: Complex arithmetic identity question
- To: mathgroup at smc.vnet.net
- Subject: [mg118895] Re: Complex arithmetic identity question
- From: Peter Pein <petsie at dordos.net>
- Date: Sat, 14 May 2011 03:09:50 -0400 (EDT)
- References: <iqj0vu$rag$1@smc.vnet.net>
Am 13.05.2011 12:26, schrieb Ralph Dratman: > Hi. I am new to the mailing list, trying to learn how to persuade > Mathematica to perform helpful algebraic manipulations. > > Here is a very very simple example. I think this should be easy, but so far > I have not been able to figure it out. > > Suppose c + I d = 1/(a +I b), where a, b, c, d are reals. Solve for c and d > in terms of a and b. > > For a human, the solution is easy. Multiply top and bottom by the complex > conjugate, then set real part equal to real part, imaginary part equal to > imaginary part. > > The result is c -> a/(a^2+b^2), d -> -b/(a^2+b^2). But is there a simple > way to get Mathematica to give me that answer in one step? > > If I help by solving for c by hand and plugging that in, Mathematica knows > how to finish the job: > > In[22]:= Solve[1/(a + I b) == a/(a^2 + b^2) + I d, d] > > Out[22]= {{d -> -(b/(a^2 + b^2))}} > > > But I was hoping Mathematica would be able to go all the way from the > equation to the solution in one step, with the use of Solve or something > similar. > > > Is this possible, and if so, how? If not, why not? > > > Thank you. > > Ralph Dratman Hi Ralph, you have to tell Solve, that a, b, c, d are real numbers: Simplify[Solve[c + d*I == 1/(a + I*b) && Element[a | b | c | d, Reals] && (a != 0 || b != 0), {c, d}], Element[a | b, Reals]] or you calculate directly: {Thread[{c, d} -> ComplexExpand[Through[{Re, Im}[1/(a + b I)]]]]} Peter