Fractals/Iterations in the complex plane/def cqp

Definitions


Angle

Types

Compare different types of angles :

external angle internal angle plain angle
parameter plane  arg(\Phi_M(c))  \,  arg(\rho_n(c)) \,  arg(c) \,
dynamic plane  arg(\Phi_c(z)) \,  arg(z) \,

where :

↑Jump back a section

Circle

Inner circle

Unit circle

Unit circle \partial D\, is a boundary of unit disk[1]

\partial D = \left\{ w: abs(w)=1  \right \}

where coordinates of w\, point of unit circle in exponential form are :

w = e^{i*t}\,


↑Jump back a section

Jordan curve

Illustration of the Jordan curve theorem. The Jordan curve (drawn in black) divides the plane into an "inside" region (light blue) and an "outside" region (pink).

Jordan curve = a simple closed curve that divides the plane into an "interior" region bounded by the curve and an "exterior" region containing all of the nearby and far away exterior points[2]

↑Jump back a section

Lamination

Lamination of the unit disk is a closed collection of chords in the unit disc, which can intersect only in an endpoint of each on the boundary circle[3][4]

It is a model of Mandelbrot or Julia set.


A lamination, L, is a union of leaves and the unit circle which satisfies :[5]

  • leaves do not cross (although they may share endpoints) and
  • L is a closed set.
↑Jump back a section

Leaf

Chords = leaves = arcs

A leaf on the unit disc is a path connecting two points on the unit circle. [6]


↑Jump back a section

Ray

External ray

Internal ray

Dynamic internal and external rays

Internal rays are :

  • dynamic ( on dynamic plane , inside filled Julia set )
  • parameter ( on parameter plane , inside Mandelbrot set )

Spider

A spider S is a collection of disjoint simple curves called legs [7]( extended rays = external + internal ray) in the complex plane connecting each of the post-critical points to infnity [8] See spider algorithm for more.

Derivative

Derivative of Iterated function (map)

↑Jump back a section

Derivative with respect to c

On parameter plane :

  • c is a variable
  • z_0 = 0 is constant
\frac{d}{dc} f^{(p)} _c (z_0) = z'_p \,

This derivative can be found by iteration starting with


z_0 = 0 \,
z'_0 = 1 \,


and then

z_p = z_{p-1}^2 + c \,
z'_p = 2 \cdot z_{p-1}\cdot z'_{p-1} + 1 \,

This can be verified by using the chain rule for the derivative.

  • Maxima CAS function :


dcfn(p, z, c) :=
  if p=0 then 1
  else 2*fn(p-1,z,c)*dcfn(p-1, z, c)+1;


Example values :

z_0 = 0 \qquad\qquad z'_0 = 1 \,
z_1 = c \qquad\qquad z'_1 =  1 \,
z_2 = c^2+c \qquad z'_2 = 2c+1 \,


↑Jump back a section

Derivative with respect to z

z'_n\, is first derivative with respect to c.


This derivative can be found by iteration starting with

z'_0 = 1 \,

and then :

z'_n= 2*z_{n-1}*z'_{n-1}\,


Iteration

Iteration

Magnitude

magnitude of the point = it's distance from the origin

Multiplier

Multiplier of periodic z-point : [9]

Math notation :

\lambda_c(z) = \frac{df_c^{(p)}(z)}{dz}\,

Maxima CAS function for computing multiplier of periodic cycle :

m(p):=diff(fn(p,z,c),z,1);

where p is a period. It takes period as an input, not z point.

period f^p(z) \, \lambda_c(z) \,
1 z^2 + c \, 2z \,
2 z^4 + 2cz^2 + c^2 + c 4z^3 + 4cz
3 z^8 + 4cz^6 + 6c^2z^4 + 2cz^4 + 4c^3z^2 + 4c^2z^2 + c^4 + 2c^3 + c^2 + c 8z^7 + 24cz^5 + 24c^2z^3 + 8cz^3 + 8c^3z + 8c^2z


It is used to :

  • compute stability index of periodic orbit ( periodic point) = |\lambda| = r ( where r is a n internal radius
  • multiplier map

Map

  • Iterated function = map[10]
  • an evolution function[11] of the discrete nonlinear dynamical system[12]
z_{n+1} = f_c(z_n)  \,

is called map f_c :

f_c : z \to z^2 + c. \,


↑Jump back a section

Complex quadratic map

Forms

c form : z^2+c

quadratic map[13]

  • math notation : f_c(z)=z^2+c\,
  • Maxima CAS function :
f(z,c):=z*z+c;
(%i1) z:zx+zy*%i;
(%o1) %i*zy+zx
(%i2) c:cx+cy*%i;
(%o2) %i*cy+cx
(%i3) f:z^2+c;
(%o3) (%i*zy+zx)^2+%i*cy+cx
(%i4) realpart(f);
(%o4) -zy^2+zx^2+cx
(%i5) imagpart(f);
(%o5) 2*zx*zy+cy

Iterated quadratic map

  • math notation


 \ f^{(0)} _c (z) =   z = z_0
 \ f^{(1)} _c (z) =   f_c(z) = z_1

...

 \ f^{(p)} _c (z) =   f_c(f^{(p-1)} _c (z))

or with subscripts :

 \ z_p =  f^{(p)} _c (z_0)
  • Maxima CAS function :
fn(p, z, c) :=
  if p=0 then z
  elseif p=1 then f(z,c)
  else f(fn(p-1, z, c),c);
zp:fn(p, z, c);

lambda form :  z^2+\lambda z

Maxima CAS code ( here m not lambda is used )  :

(%i2) z:zx+zy*%i;
(%o2) %i*zy+zx
(%i3) m:mx+my*%i;
(%o3) %i*my+mx
(%i4) f:m*z+z^2;
(%o4) (%i*zy+zx)^2+(%i*my+mx)*(%i*zy+zx)
(%i5) realpart(f);
(%o5) -zy^2-my*zy+zx^2+mx*zx
(%i6) imagpart(f);
(%o6) 2*zx*zy+mx*zy+my*zx

Switching between forms

Start from :

  • internal angle \theta = \frac {p}{q}
  • internal radius r

Multiplier of fixed point :

\lambda = r e^{2 \pi \theta i}


When one wants change from lambda to c :[14]

c = c(\lambda) = \frac {\lambda}{2} \left(1 - \frac {\lambda}{2}\right) = \frac {\lambda}{2} - \frac {\lambda^2}{4}

or from c to lambda :

\lambda = \lambda(c) = 1 \pm  \sqrt{1- 4 c}

Example values :

\theta r c fixed point alfa z_c \lambda fixed point z_{\lambda}
1/1 1.0 0.25 0.5 1.0 0
1/2 1.0 -0.75 -0.5 -1.0 0
1/3 1.0 0.64951905283833*i-0.125 0.43301270189222*i-0.25 0.86602540378444*i-0.5 0
1/4 1.0 0.5*i+0.25 0.5*i i 0
1/5 1.0 0.32858194507446*i+0.35676274578121 0.47552825814758*i+0.15450849718747 0.95105651629515*i+0.30901699437495 0
1/6 1.0 0.21650635094611*i+0.375 0.43301270189222*i+0.25 0.86602540378444*i+0.5 0
1/7 1.0 0.14718376318856*i+0.36737513441845 0.39091574123401*i+0.31174490092937 0.78183148246803*i+0.62348980185873 0
1/8 1.0 0.10355339059327*i+0.35355339059327 0.35355339059327*i+0.35355339059327 0.70710678118655*i+0.70710678118655 0
1/9 1.0 0.075191866590218*i+0.33961017714276 0.32139380484327*i+0.38302222155949 0.64278760968654*i+0.76604444311898 0
1/10 1.0 0.056128497072448*i+0.32725424859374 0.29389262614624*i+0.40450849718747 0.58778525229247*i+0.80901699437495


One can easily compute parameter c as a point c inside main cardioid of Mandelbrot set :

 c = c_x + c_y*i

of period 1 hyperbolic component ( main cardioid) for given internal angle ( rotation number) t using this c / cpp code by Wolf Jung[15]

double InternalAngleInTurns;
double InternalRadius;
double t = InternalAngleInTurns *2*M_PI; // from turns to radians
double R2 = InternalRadius * InternalRadius;
double Cx, Cy; /* C = Cx+Cy*i */
// main cardioid
Cx = (cos(t)*InternalRadius)/2-(cos(2*t)*R2)/4; 
Cy = (sin(t)*InternalRadius)/2-(sin(2*t)*R2)/4; 

or this Maxima CAS code :

 
/* conformal map  from circle to cardioid ( boundary
 of period 1 component of Mandelbrot set */
F(w):=w/2-w*w/4;

/* 
circle D={w:abs(w)=1 } where w=l(t,r) 
t is angle in turns ; 1 turn = 360 degree = 2*Pi radians 
r is a radius 
*/
ToCircle(t,r):=r*%e^(%i*t*2*%pi);

GiveC(angle,radius):=
(
 [w],
 /* point of  unit circle   w:l(internalAngle,internalRadius); */
 w:ToCircle(angle,radius),  /* point of circle */
 float(rectform(F(w)))    /* point on boundary of period 1 component of Mandelbrot set */
)$

compile(all)$

/* ---------- global constants & var ---------------------------*/
Numerator :1;
DenominatorMax :10;
InternalRadius:1;

/* --------- main -------------- */
for Denominator:1 thru DenominatorMax step 1 do
(
 InternalAngle: Numerator/Denominator,
 c: GiveC(InternalAngle,InternalRadius),
 display(Denominator),
 display(c),
  /* compute fixed point */
 alfa:float(rectform((1-sqrt(1-4*c))/2)), /* alfa fixed point */
 display(alfa)
 )$


↑Jump back a section

Doubling map

definition [16]

  • Maxima CAS function using numerator and denominator as an input
doubling_map(n,d):=mod(2*n,d)/d $

or using rational number as an input

DoublingMap(r):=
  block([d,n],
        n:ratnumer(r),
        d:ratdenom(r),
        mod(2*n,d)/d)$


  • Common Lisp function
(defun doubling-map (ratio-angle)
" period doubling map =  The dyadic transformation (also known as the dyadic map, 
 bit shift map, 2x mod 1 map, Bernoulli map, doubling map or sawtooth map "
(let* ((n (numerator ratio-angle))
       (d (denominator ratio-angle)))
  (setq n  (mod (* n 2) d)) ; (2 * n) modulo d
  (/ n d))) ; result  = n/d
  • Haskell function[17]
-- by Claude Heiland-Allen
-- type Q = Rational
 double :: Q -> Q
 double p
   | q >= 1 = q - 1
   | otherwise = q
   where q = 2 * p
  • C++
//  mndcombi.cpp  by Wolf Jung (C) 2010. 
//   http://mndynamics.com/indexp.html 
// n is a numerator
// d is a denominator
// f = n/d is a rational fraction ( angle in turns )
// twice is doubling map = (2*f) mod 1
// n and d are changed ( Arguments passed to function by reference)
 
void twice(unsigned long long int &n, unsigned long long int &d)
{  if (n >= d) return;
   if (!(d & 1)) { d >>= 1; if (n >= d) n -= d; return; }
   unsigned long long int large = 1LL; 
   large <<= 63; //avoid overflow:
   if (n < large) { n <<= 1; if (n >= d) n -= d; return; }
   n -= large; 
   n <<= 1; 
   large -= (d - large); 
   n += large;
}
↑Jump back a section

First return map

"In contrast to a phase portrait, the return map is a discrete description of the underlying dynamics. .... A return map (plot) is generated by plotting one return value of the time series against the previous one "[18]

"If x is a periodic point of period p for f and U is a neighborhood of x, the composition f^{\circ p}\, maps U to another neighborhood V of x. This locally defined map is the return map for x." ( W P Thurston : On the geometry and dynamics of Iterated rational maps)

↑Jump back a section

Multiplier map

Multiplier map  \lambda gives an explicit uniformization of hyperbolic component \Eta by the unit disk \mathbb{D}  :

 \lambda : \Eta \to \mathbb{D}

Multiplier map is a conformal isomorphism.[19]

Orbit

Critical orbit[20] is a forward orbit of critical point[21][22]

Here are images of critical orbits

Period

The smallest positive integer value k for which this equality

 f^k(z_0) = z_0 

holds is the period of the orbit.[23]

More is here

Plane

↑Jump back a section

Dynamic plane

  • z-plane for fc(z)= z^2 + c
  • z-plane for fm(z)= z^2 + m*z
↑Jump back a section

Parameter plane

See :[24]


Points

↑Jump back a section

Biaccessible point

If there exist two distinct external rays landing at point we say that it is a biaccessible point. [30]

↑Jump back a section

Center

Center of hyperbolic component

A center of a hyperbolic component H is a parameter  c_0 \in H\, ( or point of parameter plane ) such that the corresponding periodic orbit has multiplier= 0." [31]

Center of Siegel Disc

Center of Siegel disc is a irrationally indifferent periodic point.

Mane's theorem :

"... appart from its center, a Siegel disk cannot contain any periodic point, critical point, nor any iterated preimage of a critical or periodic point. On the other hand it can contain an iterated image of a critical point." [32]

↑Jump back a section

Critical point

Critical point [33]

↑Jump back a section

Cut point, ray and angle

The "neck" of this eight-like figure is a cut-point.

Cut point k of set S is a point for which set S-k is dissconected ( consist of 2 or more sets).[34] This name is used in a topology.

Examples :

  • root points of Mandelbrot set
  • Misiurewicz points of boundary of Mandelbrot set
  • cut points of Julia sets ( in case of Siegel disc critical point is a cut point )

These points are landing points of 2 or more external rays.

Point which is a landing point of 2 external rays is called biaccesible


Cut ray is a ray which converges to landing point of another ray. [35] Cut rays can be used to construct puzzles.

Cut angle is an angle of cut ray.

↑Jump back a section

Periodic point

Point z has period p under f if :

 z : \ f^{p} (z) =   z


↑Jump back a section

Pinching points

"Pinching points are found as the common landing points of external rays, with exactly one ray landing between two consecutive branches. They are used to cut M or K into well-defined components, and to build topological models for these sets in a combinatorial way. " ( definition from Wolf Jung program Mandel )

See for examples :

  • period 2 = Mandel, demo 2 page 3.
  • period 3 = Mandel, demo 2 page 5 [36]
↑Jump back a section

A post-critical point

A post-critical point is a point

 z = p(p(p( ... (z_{cr})))) 

where z_{cr} is a critical point. [37]

Radius

↑Jump back a section

Conformal radius

Conformal radius of Siegel Disk [38][39]

↑Jump back a section

Escape radius ( ER)

Escape radius ( ER ) or bailout value is a radius of circle target set used in bailout test

Minimal Escape Radius should be grater or equal to 2 :

 ER  =  max ( 2 , |c| )\,

Better estimation is :[40][41]

ER = \frac{1}{2} +\sqrt{\frac{1}{4} + |c| }


↑Jump back a section

Inner radius

Inner radius of Siegel Disc

  • radius of inner circle, where inner circle with center at fixed point is the biggest circle inside Siegel Disc.
  • minimal distance between center of Siel Disc and critical orbit
↑Jump back a section

Internal radius

Internal radius is a:

Set

↑Jump back a section

Continuum

definition[42]

↑Jump back a section

Component

Components of parameter plane

Hyperbolic component of Mandelbrot set

Boundaries of hyperbolic components of Mandelbrot set

Domain is an open connected subset of a complex plane.

"A hyperbolic component H of Mandelbrot set is a maximal domain (of parameter plane) on which f_c\, has an attracting periodic orbit.

A center of a H is a parameter  c_0 \in H\, ( or point of parameter plane ) such that the corresponding periodic orbit has multiplier= 0." [43]

A hyperbolic component is narrow if it contains no component of equal or lesser period in its wake [44]

Wake

Wake is the region of parameter plane enclosed by its two external rays

Components of dynamical plane

In case of Siegel disc critical orbit is a boundary of component containing Siegel Disc.

↑Jump back a section

Domain

Domain in mathematical analysis it is an open connected set

↑Jump back a section

Planar set

a non-separating planar set is a set whose complement in the plane is connected.[45]

↑Jump back a section

Target set

How target set is changing along internal ray 0

Elliptic case

Target set in elliptic case = inner circle

For the elliptic dynamics, when there is a Siegel disc, the target set is an inner circle

Hyperbolic case

Infinity is allways hyperbolic attractor for forward iteration of polynomials. Target set here is an exterior of any shape containing all point of Julia set ( and it's interior). There are also other hyperbolic attractors.


In case of forward iteration target set T\, is an arbitrary set on dynamical plane containing infinity and not containing points of filled Julia set.

For escape time algorithms target set determines the shape of level sets and curves. It does not do it for other methods.

Exterior of circle

This is typical target set. It is exterior of circle with center at origin z = 0 \, and radius =ER :


T_{ER}=\{z:abs(z) > ER \} \,

Radius is named escape radius ( ER ) or bailout value.

Circle of radius=ER centered at the origin is :  \{z:abs(z) = ER \} \,

Exterior of square

Here target set is exterior of square of side length s\, centered at origin

T_s=\{z: abs(re(z)) > s  ~~\mbox{or}~~  abs(im(z))>s \} \,

Parabolic case

In the parabolic case target set is a petal


↑Jump back a section

Trap

Trap is an another name of the target set. It is a set which captures any orbit tending to point inside the trap ( fixed / periodic point ).

Test

↑Jump back a section

Bailout test

Two sets after bailout test: escaping white and non-escaping black
Distance to fixed point for various types of dynamics

It is used to check if point z on dynamical plane is escaping to infinity or not. It allows to find 2 sets :

  • escaping points ( it should be also the whole basing of attraction to infinity)[46]
  • not escaping points ( it should be the complement of basing of attraction to infinity)

In practice for given IterationMax and Escape Radius :

  • some pixels from set of not escaping points may contain points that escape after more iterations then IterationMax ( increase IterMax )
  • some pixels from escaping set may contain points from thin filaments not choosed by maping from integer to world ( use DEM )


If z_n is in the target set T\, then z_0 is escaping to infinity ( bailouts ) after n forward iterations ( steps).[47]

The output of test can be :

  • boolean ( yes/no)
  • integer : integer number (value of the last iteration)

References

  1. Unit circle in wikipedia
  2. wikipedia : Jordan curve theorem
  3. Modeling Julia Sets with Laminations: An Alternative Definition by Debra Mimbs
  4. Laminations of the unit disk with irrational rotation gaps by John C. Mayer
  5. Rational maps represented by both rabbit and aeroplane matings Thesis submitted in accordance with the requirements of the University of Liverpool for the degree of Doctor in Philosophy by Freddie R. Exall July 2010
  6. Rational maps represented by both rabbit and aeroplane matings Thesis submitted in accordance with the requirements of the University of Liverpool for the degree of Doctor in Philosophy by Freddie R. Exall July 2010
  7. Iterated Monodromy Groups of Quadratic Polynomials, I Laurent Bartholdi, Volodymyr V. Nekrashevych
  8. GROWTH OF GROUPS DEFINED BY AUTOMATA : ASHLEY S. DOUGHERTY, LYDIA R. KINDELIN, AARON M. REAVES, ANDREW J. WALKER, AND NATHANIEL F. ZAKAHI
  9. Multiplier at wikipedia
  10. Iterated function (map) in wikipedia
  11. evolution function
  12. the discrete nonlinear dynamical system
  13. Complex quadratic map in wikipedia
  14. Michael Yampolsky, Saeed Zakeri : Mating Siegel quadratic polynomials.
  15. Mandel: software for real and complex dynamics by Wolf Jung
  16. wikipedia : Dyadic transformation
  17. lavaurs' algorithm in Haskell with SVG output by Claude Heiland-Allen
  18. General principles of chaotic dynamics by P.B. Persson , C.D. Wagner
  19. Conformal Geometry and Dynamics of Quadratic Polynomials Mikhail Lyubich
  20. wikipedia : Complex quadratic polynomial : Critical orbit
  21. Wikipedia : Complex quadratic polynomial - Critical point
  22. MandelOrbits - A visual real-time trace of Mandelbrot iterations by Ivan Freyman
  23. scholarpedia : Periodic Orbit for a Map
  24. Alternate Parameter Planes by David E. Joyce
  25. mu-ency : exponential map by R Munafo
  26. Exponential mapping and OpenMP by Claude Heiland-Allen
  27. Linas Vepstas : Self Similar?
  28. the flattened cardioid of a Mandelbrot by Tom Rathborne
  29. Twisted Mandelbrot Sets by Eric C. Hill
  30. On biaccessible points in the Julia set of the family z(a+z^{d}) by Mitsuhiko Imada
  31. Surgery in Complex Dynamics by Carsten Lunde Petersen, online paper
  32. Siegel disks by Xavier Buff and Arnaud Ch ́ritat e Univ. Toulouse Roma, April 2009
  33. wikipedia : Critical point of complex quadratic polynomial
  34. Cut point in wikipedia
  35. On local connectivity for the Julia set of rational maps : Newton’s famous example By P. Roesch
  36. http://www.mndynamics.com/indexp.html%7C program Mandel by Wolf Jung , demo 2 page 3
  37. GROWTH OF GROUPS DEFINED BY AUTOMATA : ASHLEY S. DOUGHERTY, LYDIA R. KINDELIN, AARON M. REAVES, ANDREW J. WALKER, AND NATHANIEL F. ZAKAHI
  38. wikipedia : Conformal radius
  39. scholarpedia : Quadratic Siegel disks
  40. Julia Sets of Complex Polynomials and Their Implementation on the Computer by Christoph Martin Stroh
  41. fractalforums: bounding circle of julia sets by knighty
  42. wikipedia : Continuum in set theory
  43. Surgery in Complex Dynamics by Carsten Lunde Petersen, online paper
  44. Internal addresses in the Mandelbrot set and irreducibility of polynomials by Dierk Schleicher
  45. A. Blokh, X. Buff, A. Cheritat, L. Oversteegen The solar Julia sets of basic quadratic Cremer polynomials, Ergodic Theory and Dynamical Systems , 30 (2010), #1, 51-65
  46. wikipedia : Escaping set
  47. fractint doc : bailout
↑Jump back a section
Last modified on 21 April 2013, at 09:44