Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2013

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

Search the Archive

Re: How to get the Real and Imaginary part of an expression

  • To: mathgroup at smc.vnet.net
  • Subject: [mg129341] Re: How to get the Real and Imaginary part of an expression
  • From: Murray Eisenberg <murrayeisenberg at gmail.com>
  • Date: Sat, 5 Jan 2013 02:21:25 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-newout@smc.vnet.net
  • Delivered-to: mathgroup-newsend@smc.vnet.net
  • References: <20130103021627.CBD1368B0@smc.vnet.net> <88D3BD8B-2D73-4CDF-B003-7ACDA3F7D2A1@math.umass.edu>

I forgot that ComplexExpand can take an optional 2nd argument specifying 
any variables that should be treated as complex rather than as real. 
Hence you can also do the following (again with results shown in 
InputForm):

   ComplexExpand[Re[(w)/(s^2 + 2*z*w*s + w^2)], s]
w^3/((2*w*z*Im[s] + 2*Im[s]*Re[s])^2 + (w^2 - Im[s]^2 + 2*w*z*Re[s] + Re[s]^2)^
    2) - (w*Im[s]^2)/((2*w*z*Im[s] + 2*Im[s]*Re[s])^2 +
   (w^2 - Im[s]^2 + 2*w*z*Re[s] + Re[s]^2)^2) +
 (2*w^2*z*Re[s])/((2*w*z*Im[s] + 2*Im[s]*Re[s])^2 +
   (w^2 - Im[s]^2 + 2*w*z*Re[s] + Re[s]^2)^2) +
 (w*Re[s]^2)/((2*w*z*Im[s] + 2*Im[s]*Re[s])^2 +
   (w^2 - Im[s]^2 + 2*w*z*Re[s] + Re[s]^2)^2)

Perhaps that better suits your purposes (although to my eye it's a lot 
harder to read than my original version that replaces s by x + I y).


On Jan 3, 2013, at 9:17 AM, Murray Eisenberg <murray at math.umass.edu> wrote:

> Since there seems to be some typo or else some spurious control code 
("=882") in the numerator of your fraction, for purposes of 
explanation I'll change the numerator just to w.
>
> In general, the way to extract the real and imaginary parts of a 
complex number is to use ComplexExpand along with, of course, Re and Im. 
Here, though, you have both real and complex variables, so I think 
you'll need to express the complex s in the form x + I y. Then applying 
ComplexExpand will treat all the variables w, z, x, and y as real:
>
>   ComplexExpand[Re[(w)/(s^2 + 2*z*w*s + w^2) /. s -> x + I y]]
> w^3/((w^2 + x^2 - y^2 + 2*w*x*z)^2 + (2*x*y + 2*w*y*z)^2) +
> (w*x^2)/((w^2 + x^2 - y^2 + 2*w*x*z)^2 + (2*x*y + 2*w*y*z)^2) -
> (w*y^2)/((w^2 + x^2 - y^2 + 2*w*x*z)^2 + (2*x*y + 2*w*y*z)^2) +
> (2*w^2*x*z)/((w^2 + x^2 - y^2 + 2*w*x*z)^2 + (2*x*y + 2*w*y*z)^2)
>
> And similarly for Im.
>
> (I've shown the results in one-dimensional InputForm for purposes of 
this plain-text e-mail.)
>
>
> On Jan 2, 2013, at 9:16 PM, Eduardo M. A. M. Mendes 
<emammendes at gmail.com> wrote:
>
>> Hello
>>
>> I need to extract the real and imaginary part of the following 
expression
>>
>> (w=882)/(s^2+2*z*w*s+w^2)
>>
>> where w and z are positive constants.  s is a complex variable.
>>
>> Applying Re and Im to the expression does not do much.   By hand, one 
can easily find them.
>>
>> What am I missing?

---
Murray Eisenberg                     murrayeisenberg at gmail.com
80 Fearing Street                      phone 413 549-1020 (H)
Amherst, MA 01002-1912







  • Prev by Date: Re: How to get the Real and Imaginary part of an expression
  • Next by Date: Re: Attaching a notebook to a message
  • Previous by thread: Re: How to get the Real and Imaginary part of an expression
  • Next by thread: Re: How to get the Real and Imaginary part of an expression