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