Ensemble Mandelbrot et Julia Python

Réponses à toutes vos questions de la 2nde à la Terminale toutes séries
Alessandra
Membre Naturel
Messages: 32
Enregistré le: 07 Jan 2021, 17:54

Ensemble Mandelbrot et Julia Python

par Alessandra » 11 Jan 2021, 18:24

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



pascal16
Membre Légendaire
Messages: 6663
Enregistré le: 01 Mar 2017, 13:58
Localisation: Angoulème : Ville de la BD et du FFA. gare TGV

Re: Ensemble Mandelbrot et Julia Python

par pascal16 » 11 Jan 2021, 22:13

Il y a plusieurs façon de représenter graphiquement l'espace de Mandelbrot.

ici, c'est via une méthode type "monte Carlo".

ie :-> on choisi un nombre complexe au hasard zc
on itère la suite z0= 0 et Zn+1=Zn^2+zc.
On sait que la divergence est grossière si la norme devient>2, donc on peut s'en servir comme condition d'arrêt. La suite diverge alors.
Comme pour savoir si une suite converge, il faut calculer une infinité de termes, on fixe le niveau de convergence pour 50 itérations (si la suite n'est pas divergente avant la 50ième itération, on la considère dans l'espace de Mandelbrot).

on va obtenir une image mono couleur avec la forme connue de l'espace de MandelBrot.

PS : c'est la façon la plus lente de le faire et le résultat est assez frustrant coté beauté graphique (c'est pas les exemple avec la map de couleur lava qu'on voit sur le net).

pascal16
Membre Légendaire
Messages: 6663
Enregistré le: 01 Mar 2017, 13:58
Localisation: Angoulème : Ville de la BD et du FFA. gare TGV

Re: Ensemble Mandelbrot et Julia Python

par pascal16 » 11 Jan 2021, 22:19

le premier message était pour la partie question du prof.
pour toi

quand tu tapes "for i in range (n):" et que tu fais entrée, le programme doit mettre une tabulation automatique.
si tu met à la place des espaces, le compilateur ne comprend rien, il faut absolument une tabulation.

Alessandra
Membre Naturel
Messages: 32
Enregistré le: 07 Jan 2021, 17:54

Re: Ensemble Mandelbrot et Julia Python

par Alessandra » 11 Jan 2021, 22:28

Cela ne fonctionne toujours pas même lorsque je change quelques éléments du programme.
Je ne sais pas si cela est en rapport avec matplotlib car je ne sais pas s'il est installé.

issoram
Membre Naturel
Messages: 94
Enregistré le: 01 Déc 2020, 19:18

Re: Ensemble Mandelbrot et Julia Python

par issoram » 15 Jan 2021, 00:18

Bonsoir,

Vous avez résolu votre problème?
Si matplotlib n'est pas installé, le compilateur va vous le signifier lors de l'import de votre module...(message d'erreur)

Alessandra
Membre Naturel
Messages: 32
Enregistré le: 07 Jan 2021, 17:54

Re: Ensemble Mandelbrot et Julia Python

par Alessandra » 15 Jan 2021, 00:21

Bonsoir, oui j’ai résolu le problème.
Merci

 

Retourner vers ✎✎ Lycée

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 42 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite