Re: Extracting Real Parts from NN Expression
- To: mathgroup at smc.vnet.net
- Subject: [mg51173] Re: [mg51149] Extracting Real Parts from NN Expression
- From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
- Date: Thu, 7 Oct 2004 05:25:55 -0400 (EDT)
- References: <200410060834.EAA24222@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
On 6 Oct 2004, at 17:34, Carlos Felippa wrote: > Thank you very much to those who replied to early posts on the subject > title and help me fix several mistakes. Finally got a robust > extraction function that has worked on a series of problems: > > RealPart[c_]:=ComplexExpand[(c+Conjugate[c])/2,TargetFunctions- > >{Re,Im}]; > > I used this in expressions such as > Solve[RealPart[expr]==0,{unknowns}], in which expr is a complicated > nonnumeric complex-valued expression, to solve some stability > transition problems in C&G. (If the real part becomes positive > stability is lost). > > To see what happens with built-in Re[], a simple example is > instructive: > > expr=x^2-a^2+2*I*x*y; > > Print[ Solve[Re[expr]==0,x] //InputForm]; > Solve returns unevaluated > > Print[ Solve[RealPart[expr]==0,x] //InputForm]; > {{x -> -a}, {x -> a}} > > Note: a similar imaginary part extractor > > ImagPart[c_]:=ComplexExpand[-I*(c-Conjugate[c])/2,TargetFunctions- > >{Re,Im}]; > > is still iffy, but I dont need it for my application. It could > certainly be improved. > By why do you insist on this: > (c+Conjugate[c])/2 if Solve[ComplexExpand[Re[expr], TargetFunctions -> {Re, Im}] == 0, x] {{x -> -a}, {x -> a}} works just as well? The same applies to yout ImagPrart, why not just: ComplexExpand[Im[expr], TargetFunctions -> {Re, Im}] ??? Andrzej Kozlowski Chiba, Japan http://www.akikoz.net/~andrzej/ http://www.mimuw.edu.pl/~akoz/
- References:
- Extracting Real Parts from NN Expression
- From: carlos@colorado.edu (Carlos Felippa)
- Extracting Real Parts from NN Expression