Fractal Generator Project

De la génération des fractales
Théorie et Applications

John Bonobo
PhD Applied Mathematics
Bonobo Future Systems Inc. - Nancy, Berlin, 2000-2004.


Table des matières


Notations

1. Introduction


2. Construction d'un ensemble fractal par itération d'une fonction complexe

2.1. Construction théorique, définitions et propriétés élémentaires
2.1.1. Orbites et ensemble fractal
2.1.2. Stabilité des orbites
2.2. Quelques exemples
2.2.1. Les fractales de Mandelbrot et de Julia
2.2.2. Les fractales de Mandelbrot et Julia généralisées
2.2.3. Les fractales de Newton
2.3. Algorithmes de représentation
2.3.1. Premier temps de sortie
2.3.2. Estimateurs de distance
2.3.3. Temps d'entrée (ou pièges à orbites)
2.3.4. Angle de sortie, courbure
2.3.5. Statistiques
2.3.6. Suites de Cauchy et orbites périodiques
2.3.7. Densité des orbites

3. Les fractales de Lyapunov

3.1. Formule d'itération
3.2. Exposant de Lyapunov

4. Transformations du plan

4.1. Effet de loupe gaussienne
4.2. Inversion du plan complexe
4.3. Projection sur la sphère de Riemann

Références


Notations

L'emploi du HTML rend problématique l'affichage de certains symboles mathématiques, par simplicité nous utiliserons les notations suivantes :

N Ensemble des entiers naturels : 0,1,2,3,...
R Ensemble des nombres réels
Rd Espace euclidien à d dimensions
C Ensemble des nombres complexes (de la forme z = x + iy, avec x et y dans R et i2= −1)
  
Dans tout ce texte on ne fera pas la distinction entre l'ensemble R2 et le plan complexe C, autrement dit on assimile tout couple (x,y) ∈ R2 au nombre complexe z = x + iy ∈ C correspondant. On ne refera pas la théorie des nombres complexes, qui permettent ici une écriture plus naturelle et plus simple des formules.

 x 
Racine carrée de x
||(x,y)|| Norme du vecteur (x,y)∈R2, autrement dit la distance entre (x,y) et l'origine (0,0). 
Par le théorème de Pythagore, ||(x,y)|| =  √  x2 + y2 .
z Complexe conjugué de z : si z = x + iy alors z = x − iy.
|z| Module du nombre complexe z : si z = x + iy alors |z|=||(x,y)||.
Infini
f(n)(x)  f itérée n fois : f(n)(x)=f(f(f(...f(x)...)))
  
F Ensemble fractal générique
M Ensemble fractal de Mandelbrot
J(C) Ensemble fractal de Julia "plein" (de paramètre C dans C)
N(P) Ensemble fractal de Newton (associé au polynome complexe P)

Rappels sur les nombres complexes :
On introduit le nombre "imaginaire" i tel que i2= −1.

Forme cartésienne :
z = x + i y avec x et y dans R.
x est la partie réelle de z et y la partie imaginaire de z.

Forme polaire : (on mesure ici les angles en radians, on rappelle que π radians = 180 degrés)
z = r e avec r > 0 et θ∈[0;2π[.
r est le module ou la norme de z (notée |z|) et θ l'argument de z.

Passage d'une forme à l'autre :
On a e = cos(θ) + i sin(θ) (formule d'Euler), d'où
x = r cos θ et y = r sin θ.
D'autre part, grâce au théorème de Pythagore,
r = |z| =  √  x2 + y2 
et, dans un triangle rectangle la tangente est le rapport entre le coté adjacent et le coté opposé à l'angle droit, autrement dit tg(θ)=y/x, donc en tenant compte de l'orientation et en traitant à part le cas x=0,
si x ≠ 0 :     θ = arctg (y/x) si x > 0
θ = arctg (y/x) +π     si x < 0
 
si x = 0 : θ = π/2 si y > 0
θ = 3π/2 si y < 0.


Représentation cartésienne et polaire d'un nombre complexe

Représentation cartésienne et polaire d'un nombre complexe z
Règles de calcul :
Soient z = x + i y = r e et z′ = x′ + i y′ = r′ eiθ′.

Addition : z + z′ = (x + x′) + i(y + y′)
Multiplication : z z′ = (x x′ − y y′) + i(x y′ + x′ y) = r r′ ⋅ ei(θ + θ′)
Division : z/z′ = (x x′ + y y′)/(x′2 + y′2) + i(&minus x y′ + x′ y)/(x′2 + y′2) = r/r′ ⋅ ei(θ - θ′)
Puissance : zz′ = e z′(log r + iθ) = e x′ log r − y′ θ [ cos (x′ θ + y′ log r ) + i sin (x′ θ + y′ log r ) ]


2. Construction d'un ensemble fractal par itration d'une fonction complexe

2.1. Construction thorique, dfinitions et proprits lmentaires

2.1.1. Orbites et ensemble fractal


L'ide gnrale est la suivante : On commence par dfinir une dynamique dans un plan, une manire de faire bouger chaque point au cours du temps. Partant de tout point du plan, on construit de cette faon une trajectoire, une orbite. On ne garde alors que les points dont la trajectoire ne s'loigne pas indfiniment. Si la dynamique choisie n'est pas trop simple (comme une rotation ou une translation), cet ensemble est dit "fractal".

Construction thorique des orbites par une formule de rcurrence :

Pour chaque point du plan, de coordonnes cartsiennes (x,y), on construit une suite de points (Xn,Yn)n∈N, appele l'orbite (ou la trajectoire) de (x,y) sous l'itration de la fonction f, par une formule rcurrente de type :

X0 = x
Y0 = y

soit, en notation vectorielle :
(X0,Y0) = (x,y)
et, pour n=0,1,2,3,...

Xn+1 = fx (Xn,Yn)
Yn+1 = fy (Xn,Yn).

soit, en notation vectorielle :
(Xn+1,Yn+1) = f(Xn,Yn).
o fx et fy sont deux fonctions quelconques valeurs relles, dfinies sur le plan R2 (on peut donc considrer le couple f=(fx,fy) comme une fonction vectorielle du plan R2 dans le plan R2).


Plus gnralement, on peut considrer une formule d'itration prenant en compte plusieurs termes de la suite (pas seulement le dernier), par exemple :

Xn+1 = fx (Xn−1,Yn−1,Xn,Yn)   ou   Xn+1 = fx (X0,Y0,Xn,Yn)
Yn+1 = fy (Xn−1,Yn−1,Xn,Yn)   ou   Yn+1 = fy (X0,Y0,Xn,Yn).

Suivant le point de dpart (x,y), l'orbite peut avoir diffrents types de comportement. On dira que :


Etant donn la fonction f, s'il existe des points (x,y) dont l'orbite est constante ou priodique, certains de ces points peuvent tre faciles identifier, il suffit d'tudier les points fixes de f, c'est dire de rsoudre l'quation :

f(x,y) = f(x,y), soit fx(x,y) = x et fy(x,y) = y.

Ces points vont jouer un rle important : partant de points proches de tels (x,y), les orbites peuvent se rapprocher de l'orbite de (x,y) (voir la section suivante sur la stabilit des points fixes).
On dira que :


Lorsqu'il existe une suite convergente (ventuellement vers un p-cyple, ou en particulier une suite constante ou priodique), on appelle attracteur l'ensemble des points limites de cette suite. [...]

Dfinition de l'ensemble fractal :

On construit l'ensemble F des points dont l'orbite sous l'itration de f = (fx,fy) reste borne, c'est dire dont l'orbite n'est pas divergente, ne fuit pas l'infini :

F = F(f) = { (x,y) ∈ R2 tels que limsupn→+∞ ||(Xn,Yn)|| < +∞ }.

On peut aussi dire que F est l'ensemble de tous les (x,y) tels que la suite (Xn,Yn) reste indfiniment dans F, ou que F est le plus grand sous-ensemble de R2 stable par f.


Sous certaines conditions sur les fonctions fx et fy , on observe que l'ensemble F a des proprits fractales (par exemple, la dimension fractale de sa frontire est non-entire), et, sans chercher donner de dfinition prcise, on dira pour simplifier que F est un ensemble fractal, un fractal ou une fractale.


Une condition importante est qu'il existe au moins une orbite convergente (eventuellement vers un p-cycle), c'est dire que fx et fy admettent au moins un point fixe, et qu'il existe au moins une orbite divergente (c'est dire que l'infini soit un attracteur). Dans ce cas, l'ensemble fractal ne sera pas vide, puisqu'il contient le bassin d'attraction du point stable, et il ne sera pas gal tout l'espace R2 puisqu'il y a des orbites divergentes. En particulier, les transformations linaires, comme les translations, les rotations, dont donc peu intressantes ici.


Le tableau suivant donne quelques exemples classiques pour les fonctions fx et fy intervenant dans la formule d'itration, dvelopps dans les sous-sections suivantes. On remarquera qu'il est intressant de choisir les fonctions fx et fy intervenant dans la formule d'itration comme les parties relles et imaginaires d'une fonction holomorphe en z. Cette dernire relation impose une harmonie spatiale entre abcisse et ordonne.

Quelques fonctions classiques itrer :
  • Pour les fractales de type Julia : Cx et Cy sont des constantes quelconques.
  • Pour les fractales de type Mandelbrot, Cx et Cy sont fonctions du le point de dpart de l'orbite : Cx=X0 et Cy=Y0.

Fractale   fx(x,y)   fy(x,y)  
Mandelbrot/Julia classique x2 − y2 + Cx 2 x y + Cy
Mandelbrot/Julia cube x3 − 3 x y2 + Cx 3 x2 y − y3 + Cy
Mandelbrot/Julia de sinus sin(x) ⋅ [ (Cx−Cy ) exp(y) + (Cx+Cy ) exp(−y) ] sin(x) ⋅ [ (Cx+Cy ) exp(y) − (Cx−Cy ) exp(−y) ]
Newton (polynme z3−1)  x − ( x5 − 10 x3 y2 + 5 x y4 − x2 + y2 ) / 3( x4 + 4 x2 y2 + y4 )  y − ( 5 x4 y − 10 x2 y3 + y5 − 2 x y ) / 3( x4 + 4 x2 y2 + y4 ) 

2.1.2. Stabilit des orbites

On s'intresse maintenant plus particulirement l'itration d'une fonction complexe. La suite complexe (Zn)n∈N=(Xn + iYn)n∈N, assimile la suite de points (Xn,Yn)n∈N de R2, est dfinie par :
Z0 = z = x+iy ∈C
Zn+1 = f(Zn),
o f est une fonction dfinie sur C valeurs dans C (Dans cette section on suppose que f est holomorphe, c'est dire drivable par rapport la variable complexe z).

On note f(n) la nime itre de f, c'est--dire :
f(0)(z) = z, f(1)(z) = f(z), f(2)(z) = f(f(z)), f(3)(z) = f(f(f(z))), etc...
Avec cette notation, on a clairement Zn=f(n)(z).

On appelle point fixe de f, un point α∈C tel que f(α) = α.

Evidemment, l'orbite d'un point fixe α est constante puisque
f(n)(α) = f(n−1)(f(α)) = f(n−1)(α) = ... = f(α) = α.
Intressons nous aux orbites des points voisins d'un point fixe. Pour cel, considrons un nombre complexe h de "petit" module, ainsi le point α+h est un point "proche" de α ( une distance |h|). La formule de Taylor nous apprend que quand |h| est petit, la diffrence entre f(α+h) et f(α) est proportionnelle |h|, donc petite.
f(α+h) − f(α) = h ⋅ f′(α) + o(h),       (la notation o(h) dsigne un terme ngligeable devant h quand h est arbitrairement proche de 0)
donc, puisque f(α) = α, en ne conservant que le module de cette expression,
|f(α+h) − α| = |h| ⋅ |f′(α)| + o(|h|),
ceci signifie qu'en appliquant f un point proche de α, le point rsultant est toujours proche de α. L'loignement aprs avoir appliqu f est proportionnel l'loignement initial, et le coefficient de proportionnalit est la drive de f en α : Plus cette drive est petite, plus f va rapprocher et concentrer le voisinage du point fixe.

En accord avec l'intuition, on va voir que ce phnomne s'accentue avec le nombre d'itrations. Aprs n itrations de f, la formule de Taylor donne :
f(n)(α+h)  − f(n)(α) = h ⋅ ∂/∂z f(n)(α) + o(h),
d'o, puisque f(n)(α)=α,
|f(n)(α+h) − α| = |h| ⋅ |∂/∂z f(n)(α)| + o(|h|).
On doit donc s'intresser au comportement des drives des itres de f au point fixe α. Par la formule de drivation des fonctions composes, on a
∂/∂z f(2)(α) = f′(f (α)) f′(α) = f′(α)2.
On peut facilement montrer par rcurrence qu'au point α, les drives des itres successives de f forment une suite gomtrique :
∂/∂z f(n)(α) = f′(α)n.
On conclut ainsi :
|f(n)(α+h) − α| = |h| ⋅ |f′(α)|n + o(|h|).
On voit ainsi que si |h| est petit, c'est--dire si le point α+h est proche du point fixe α, le comportement de l'orbite f(n)(α+h) dpend fortement de f′(α) quand n est grand. En particulier,
si |f′(α)| < 1 alors f′(α)n → 0 et donc f(n)(α+h) → α quand n → ∞,
autrement dit, si f′(α) est petit, chaque itration les points voisins de α se rapprochent sans cesse de α. A l'inverse, si f′(α) est plus grand que 1 en module, alors la suite f′(α)n diverge et le point α+h s'loigne de α.

On classe ainsi les points fixes suivant la grandeur de la drive de f en ce point : On verra que l'tude de la stabilit des orbites apporte des informations sur l'ensemble fractal sous-jacent.


Haut de page - Page précédente : - Page suivante : - - Sommaire - Notations

Références

Livres et articles

[Bar88] "Fractals Everywhere", Michael Barnsley, Academic Press, San Diego, 1988.

[CEJ91] "Fractals and chaos", A. J. Crilly, R. A. Earnshaw, H. Jones, editors, Springer-Verlag, New York, 1991.

[CM89] "Complex Universality" de Cvitanovic et Myrheim, Comm. Math. Phys. 121, 225-254 (1989)

[Dev89] "An Introduction to Chaotic Dynamical Systems", R. Devaney, Addison-Wesley, 1989.

[DK89] "Chaos and fractals: the mathematics behind the computer graphics", Robert L. Devaney, and Linda Keen, editors, American Mathematical Society, Providence, RI, 1989.

[Fei80] "Universal Behavior in Nonlinear Systems" Feigenbaum M.J., Los Alamos Science 1, 4-27 (1980)

[FR92] "A Generalized Mandelbrot Set and the Role of Critical Points", M. Frame and J. Robertson, Computers and Graphics 16,No. 1 (1992), pages 35-40.

[Gle87] "La théorie du chaos : vers une nouvelle science" de James Gleick, traduit par Christian Jeanmougin (1999) (original : "Chaos : Making a New Science", Viking Press, New York, 1987)

[Jul18] "Mémoire sur l'itération des fractions rationnelles" de Gaston Julia, Journal de Mathématiques Pures et Appliquées, No. 8 (1918), pages 47-245

[JPS92] "Chaos and Fractals: New Frontiers of Science", H. Jürgens, H.-O. Peitgen, and D. Saupe, Springer, New York, 1992.

[Man75] "Les objets fractals : forme, hasard et dimension, survol du langage fractal" de Benoît Mandelbrot (1975)

[Man77] "The Fractal Geometry of Nature", B. B. Mandelbrot, Freeman, New York, 1977, 1982, 1983.

[PR86] "Beauty of Fractals: Images of Complex Dynamical Systems" de Heinz-Otto Peitgen et Peter H. Richter Springer, Berlin, New York, Tokyo (1986)

[PS89] "The Science of Fractal Images", H.-O. Peitgen and D. Saupe, Springer, Berlin, New York, 1989.

[H94]"A First Course in Discrete Dynamical Systems", R. Homlgren, Springer-Verlag, 1994.

Pages web

Un magnifique PDF sur la génération des fractales
Sur la coloration
Sur la coloration (nombreux liens)
Sur la coloration avec une texture
Lina's Art Gallery - Images et considérations mathématiques
Sur les lignes de champs
Benoît Mandelbrot
Benoît Mandelbrot (autre)
Gaston Julia
The Mandelbrot Set and Julia Sets
An introduction to fractals
Complex Analysis
A virtual investigation with interactive pictures : The Mandelbrot and Julia sets Anatomy and Chaotic dynamics (autre lien), références.
Fractal Frequently Asked Questions and Answers
A short walk through the Mandelbrot Set
Vocabulaire combinatoire de l'imagerie fractale (PDF)


Last modification : John Bonobo @ Tue 10 Dec 2013, 12:12:50.
Cette page respecte les standards définis par le W3C.