Ceci est une ancienne révision du document !
Warning: Undefined array key 1 in /home/goupillf/wiki.goupill.fr/lib/plugins/codeprettify/syntax/code.php on line 172
Warning: Undefined array key 2 in /home/goupillf/wiki.goupill.fr/lib/plugins/codeprettify/syntax/code.php on line 214
Warning: Undefined array key 2 in /home/goupillf/wiki.goupill.fr/lib/plugins/codeprettify/syntax/code.php on line 214
Table des matières
Dessin du flocon de Von Koch
Le type ''complex'' en Python
Pour travailler en Python avec les nombres complexes, on dispose du type natif complex que l'on complète en important le module cmath.
Voici quelques exemples testés en console :
>>> import cmath as cp >>> z = complex (1, 2) # z = 1 + 2i >>> z (1+2j) # j est utilisé pour le nombre tel que j**2 = -1 >>> z.real 1 >>> z.imag 2.0 >>> type(z) <class 'complex'> >>> (1+1j).conjugate() (1-1j) >>> (1+2j) + (2-3j) (3-1j) >>> (1+2j) * (2-3j) (8+1j) >>> (1+2j) / (2-3j) (-0.30769230769230776+0.5384615384615384j) >>> (1+2j)**7 (29+278j) >>> abs(3-4j) 5.0 >>> cp.polar(1-1j) (1.4142135623730951, -0.7853981633974483) >>> cp.rect(1 , 2*cp.pi/3) (-0.4999999999999998+0.8660254037844387j)
Un motif
On sait que dans le plan complexe l'image d'un point $M$ d'affixe $z$ par une rotation de centre $\Omega$ d’affixe $\omega$ et d’angle $\theta$ est le point $M'$ d'affixe $z'$ telle que $z' - \omega = \text{e}^{i\,\theta} (z - \omega)$, c'est-à-dire $z' = \omega + \text{e}^{i\,\theta} (z - \omega)$.
Ici on part d'un segment $[A, B]$ donné par les affixes (complexes) $a$ et $b$ de $A$ et $B$, on divise ce segment en trois segments de même longueur et on remplace le segment du milieu par les deux autres côtés d'un triangle équilatéral construit sur ce segment, pour obtenir le motif suivant – pour $a = 0$ et $b = 3$.
On utilise le module pyplot de la bibliothèque matplotlib et on précise que
- le tracé d'un segment d'extrémités
A1 = (x1, y1)etA2 = (x2, y2)s'obtient parplt.plot([x1,x2], [y1,y2],'k'), avec'k'pour noir (black) - le tracé d'une ligne brisée
A1A2…An, avecAi = (xi, yi), s'obtient avec la commande
plt.plot([x1,x2,...,xn],[y1,y2,...,yn], 'r') (en rouge).
On crée d'abord une fonction qui réalise une rotation plane connaissant son centre et son angle. Avec un angle de $\frac{\pi}{3}$, $A$ et $B$ étant donnés, on construit ainsi un point $C$ tel que $ABC$ soit un triangle équilatéral qui tourne dans le sens trigonométrique positif.

