MathGroup Archive 2005

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

Search the Archive

Problem with circles in complex plane

  • To: mathgroup at
  • Subject: [mg61095] Problem with circles in complex plane
  • From: Daniele Lupo <danwolf80_no_spam_ at>
  • Date: Mon, 10 Oct 2005 02:39:56 -0400 (EDT)
  • Sender: owner-wri-mathgroup at

Hi to all the Mathematica's Masters.

I've a problem working with circles in the Complex Plane.

I hope that someone of you can help me.

I've these values of centers and rays

CF = G/(1 + Q); 
RF = (1/(1 + Q))*Sqrt[Q^2 + Q*(1 - Abs[G]^2)]; 

Cg = (g*Conjugate[P])/(1 - Abs[P]^2*(1 - g)); 
Rg = (Sqrt[1 - g]*(1 - Abs[P]^2))/(1 - Abs[P]^2*(1 - g)); 

I want to find the g parameter, to find a circle of the family (Cg,Rg)
that's tangent to the first circle.

G, P are complexes, with absolute value less than 1, while Q is a positive
real number.

To do this, I use this formula:

tangentray = Abs[CF - Cg] - RF

to find the ray of the tangent circle that depends of parameter. Then I use

sol = Solve[tangentray == Rg, g]

to find the g value that make these two rays equals. In this way I should
to find the value of g that identifies the tangent circle, right? I think
yes, but maybe I'm wrong... Probably it's so, but I don't know why.

The problem is that Mathematica returns me a list of four values, that are
complexes, whike I know that there MUST be a real value of g for which this
tangent circle exist. You can see this example:

rul = {G -> -0.4608904699810983 + 0.11491290040984217*I, Q -> 0.3, P ->
-0.8363463602974097 + 0.16256926406081632*I}

      (* Family of Circles depending on g *)
      Red, Circle[{Re[Cg /. rul], Im[Cg /. rul]}, Rg /. rul] /. {{g -> .8},
      g -> 0.9}, {g -> 0.94}},
      (* Fixed Circle *)
      Blue, Circle[{Re[CF /. rul], Im[CF /. rul]}, RF /. rul]
    ], AspectRatio -> Automatic]

In this case you can see that, for a value of g between 0.9 and 0.94 there
must be a tangent circle.

Then, I find the g value

sol = Solve[ray == Rg, g]

and, with the same values, I obtain

sol /. rul

that returns

{{g -> -0.19317892523624003 + 0.14313227060687864*
     I}, {g -> 0.9584729373799866 - 
 {g -> 0.22609724512769427 - 0.07178705469686383*
     I}, {g -> -0.36357640440949757 + 

As you can see, noone of g values is real, around 0.9.

So, what's wrong in things that I do? How can I find the correct value og g

Thanks for your answers


PS: I'm using Mathematica 5.1 on WinXP Home

  • Prev by Date: Re: Language vs. Library
  • Next by Date: Re: Reevaluation of conditional arguments when the condition has changed
  • Previous by thread: Re: SameTest in Union
  • Next by thread: Re: Problem with circles in complex plane