Bonjour, pouvez-vous m'aider à ce DM sur l'ensemble de Mandelbrot et Julia s'il vous plaît ?
Partie A : Ensemble de Mandelbrot
Dans le plan complexe muni d'un repère d'origine O, on considère un point C d'affixe zc. A partir de ce point, on construit la suite de points Mn dont les affixes zn sont définie par la suite de nombres complexes suivantes:
{z0= 0 et Zn+1=Zn^2+zc pour tout n appartenant à N
Concernant le comportement d'une telle suite, on peut démontrer que deux cas peuvent se présenter:
- Soit la distance OMn=|zn| diverge vers + l'infini, dans ce cas, le point C fixé au départ n'appartient pas à l'ensemble de Mandelbrot;
- Soit la distance OMn= |zn| est bornée et dans ce cas, le point C fixé au départ appartenant à l'ensemble de Mandelbrot.
Programme Python:
import matplotlib.pyplot as plt
from random import random
def mandelbrot (n):
for i in range (n):
c=complex(4*random()-2,4*random()-2)
z=0
k=0
while abs(z)<2 and k<50:
z=z**2+c
k=k+1
if k==50:
plt.plot(c.real,c.imag, 'r.' , ms=0.5)
plt.xlim(-2,2)
plt.ylim(-2,2)
ax=plt.gca()
ax.spines['bottom'].set_position(('data',0))
ax.spines['left'].set_position(('data',0))
plt.show()
1) Soit C le point d'affixe 1+i. Monter, à l'aide du logiciel python, que M5 a pour affixe -9407-193i. Que peut-on alors conjecturer concernant le point C ?
2) Soit C(0,1+0,2i). Ce point C semble-t-il appartenir à l'ensemble de Mandelbrot ?
3) On admet le résultat suivant: "s'il existe un entier n tel que la distance OMn soit supérieure à 2, alors, la suite |zn| tend vers + l'infini quand n tend vers + l'infini. En revanche, si la distance OMn reste inférieure à 2 pour n assez grand, la suite |zn| est bornée (entre 0 et 2)."
a. Expliquer la ligne 6 de la fonction python ci-contre.
b. Quel est le rôle du nombre 50 à la ligne 9?
c. Pourquoi affiche-t-on un point uniquement si k=50 ?
4) Programmer cette fonction et observer le nuage de points obtenu pour n assez grand.
Partie B: Ensembles de Julia
Dans le plan complexe muni d'un repère d'origine O, soit A un point du plan d'affixe a et c un nombre complexe donné. On construit la suite de points Mn dont les affixes zn sont définies par la suite de nombres complexes suivante:
{z0=a et zn+1=zn^2+c pour tout n appartenant à N
L'ensemble des points A d'affixe a tels que |zn| est bornée est appelé un ensemble de Julia. En admettant le même type de résultats que précédemment, créer une fonction Julia qui prend comme argument c et n et qui affiche une partie de l'ensemble de Julia associé.
Lorsque je mets en marche python pour la Partie A cela ne fonctionne pas et je n'arrive pas à m'avancer, en espérant que vous puissiez m'aider.
Merci d'avance
-----