Mathématice, intégration des Tice dans l'enseignement des mathématiques  
Sommaire > N°11 - Septembre 2008 > Exemple d’étude d’une suite récurrente complexe (...)

Exemple d’étude d’une suite récurrente complexe de la forme un+1 = f(un) à l’aide de MathGraph32.
Moteur de recherche
Mis en ligne le 23 septembre 2008, par Yves Biton

Voyez aussi le nouvel article d’Yves Biton sur MathGraph32.

A propos de l’applet MathGraph32 pour Java.

Présentation

En testant le logiciel MathGraph32 je suis tombé sur des résultats inattendus. C’est la preuve qu’on peut encore faire des découvertes mathématiques en utilisant un logiciel de ce type.

Le premier concerne les propriétés d’une transformation barycentrique du plan (un article est paru dans le bulletin de l’APMEP à ce sujet). Vous pouvez en trouver une présentation complète sur le site du CNDP à l’adresse suivante : http://www.cndp.fr/maths et en cliquant sur l’onglet Théorème découvert grâce à MathGraph32. Ce premier résultat semble totalement original. Le résultat fondamental découle du théorème de Ptolémée.

Le second concerne un type particulier de suite récurrente complexe. Je suis « tombé » sur ce résultat en testant le fonctionnement de MathGraph32 avec les nombres complexes. Je ne certifie pas que ce deuxième résultat soit original mais jusqu’à présent les gens à qui je l’ai présenté ne le connaissaient pas.

Un résultat connu est en effet que, si p est un réel positif, la suite réelle définie par son premier terme u0 et la relation de récurrence $u_{n+1} = \frac 1 2 (u_n + \frac p {u_n})$ converge vers $\sqrt p$ (ce résultat est connu depuis l’Antiquité pour p=2 sous le nom d’algorithme de Babylone).

Nous allons nous intéresser à la suite récurrente complexe (zn) dont le premier terme est un complexe z0 donné et définie par la relation de récurrence $z_{n+1} = \frac 1 2 (z_n + \frac {2i} {z_n})$, puis nous généraliserons notre étude.

MathGraph32 va nous servir à étudier visuellement une telle suite et à émettre des conjectures. Je vous proposerai à la fin de cet article des démonstrations des résultats observés, puis une généralisation.

Création de deux figures illustrant cette situation avec MathGraph32

Démarrez MathGraph32 et utilisez l’icône pour créer une nouvelle figure munie d’un repère orthonormal avec pointillés. Cochez la case Repère avec vecteurs et comme nom des vecteurs du repère : entrez classiquement u et v. Validez par OK.

A l’aide de l’icône , créez un point libre. Utilisez l’icône pour nommer ce point M0.

Nous allons mesurer l’affixe de ce point dans notre repère. Pour cela utilisez l’icône .

Cliquez sur le point M0. Un message vous confirme la création de cette affixe.

Pour plus de commodité, nous allons définir un calcul complexe nommé z0 qui contiendra l’affixe précédemment mesurée.

Utilisez pour cela le menu Calculs >> Nouveau calcul dans C >> Calcul complexe (raccourci clavier : Ctrl + Maj + E).

Une boîte de dialogue s’ouvre. Dans le champ Nom du calcul, entrez z0. Utilisez le bouton Valeurs pour entrer dans le champ formule Aff(M0,O,I,J) qui représenta l’affixe que nous venons de mesurer. Validez par OK.

Nous allons définir la suite récurrente complexe (zn) de premier terme z0 donné et définie par la relation de récurrence $z_{n+1} = \frac 1 2 (z_n + \frac {2i} {z_n})$.

Avant cela nous devons créer une fonction complexe f d’une variable complexe définie par $f(t) = \frac 1 2 (t + \frac{2i} t)$.

On utilise le menu Calculs >> Nouveau calcul dans C >> Fonction complexe (raccourci clavier : Ctrl + G).

Une boîte de dialogue s’ouvre. Entrez f dans le champ Nom de la fonction et t dans le champ Variable formelle. Dans le champ Formule, entrez 1/2*(t+2*i/t). Validez par OK.

Créons maintenant la suite récurrente.

Utilisez pour cela le menu Calculs >>Nouveau calcul dans C >> Suite complexe u(n+1) = f[u(n)]. Une boîte de dialogue s’ouvre.

Dans le champ Nom de la suite, entrez z. Dans la liste des fonctions complexes existantes, la fonction f est déjà sélectionnée. Utilisez le bouton Valeurs pour entrer z0 dans le champ Premier terme. Entrez 50 comme nombre de termes et validez par OK.

Nous allons maintenant créer le graphe de cette suite récurrente complexe. Chaque terme de la suite sera visualisé par une marque de points et ces marques seront jointes par des segments.

Dans la palette de couleurs, activez le rouge, puis le style de trait pointillé dans la palette de style de trait.

Dans la palette de style de point, activez le « petit rond » (ceci n’est pas indispensable).

Utilisez le menu Créer >> Graphe d’une suite récurrente >> Complexe. Le graphe apparaît.

Utilisez l’icône pour capturer le point M0.

La figure obtenue figure ci-dessous animée avec le moteur JavaScript de MathGraph32 (Vous pouvez capturer le point M0).

Pour la figure ci-dessus, la suite semble converger vers 1 + i. Pour d’autres positions de M0, la suite semble converger vers – 1 – i.

Est-ce étonnant si l’on se souvient que 1 + i et – 1 – i sont les deux complexes dont le carré est 2i ?

Lorsque le point M0 se rapproche de la droite d’équation y = – x, un comportement spécial semble apparaître. Étudions cela avec MathGraph32.

Dans la palette de couleurs, activez le noir.

Traçons d’abord la droite d’équation y = – x (que nous appellerons D). Pour cela utilisons l’icône de création d’une droite par son coefficient directeur .

Cliquez ensuite sur le point O.

Dans la boîte de dialogue qui s’ouvre, entrez – 1 dans le champ Coefficient directeur. Validez par OK. La droite apparaît.

En capturant le point M0, on s’aperçoit que, lorsque M0 n’est pas sur la droite D, tous les points du graphe de la suite semblent rester dans le même demi-plan de bord D que le point M0.

Regardons maintenant ce qui se passe lorsque M0 est sur la droite D.

Utilisez pour cela le menu Modifier >> Création d’une liaison >> Entre un point et un objet. Cliquez sur le point M0, puis sur la droite D. Le point M0 est maintenant devenu un point lié à la droite D.

Voici la figure obtenue (Vous pouvez capturer le point M0) :

Capturez le point M0 à l’aide de l’icône . Il semble que tous les points d’affixe zn restent sur la droite D et que le comportement de cette suite soit « chaotique ».

Justification mathématique des résultats observés ci-dessus

La suite de cet article peut être lue par une élève de terminale S en admettant que :

- Une suite (zn) de nombres complexes converge vers un complexe l lorsque $\lim_{n \rightarrow +\infty}|z_n - l|=0$.

- Les théorèmes usuels concernant les opérations sur les suites convergentes dans R se généralisent à C.

Posons a = 1+ i et b = -a = -1-i. Appelons A et B les points d’affixes respectives a et b = – a.

Pour tout naturel n, on a : $z_{n+1} - a = \dfrac 1 2 \left(z_n + \frac{a^2}{z_n}\right) - a$ $=\frac 1 2 \left(\frac{z_n^2 + a^2 - 2az_n }{z_n}\right)$ $= \frac 1 {2z_n} \left(z_n - a\right)^2$.

Et on obtient de même $z_{n+1} - b = \frac 1 {2z_n} \left(z_n - b\right)^2$.

On en déduit alors que $\frac{z_{n+1}-a}{z_{n+1}+a} = \left(\frac{z_n -a}{z_n+a}\right)^2$.

On peut alors montrer par récurrence que, pour tout naturel n, $\frac{z_{n}-a}{z_{n}+a} = \left(\frac{z_0 -a}{z_0+a}\right)^{2^n}$. On en déduit que $\left|\frac{z_{n}-a}{z_{n}+a}\right| = \left|\frac{z_0 -a}{z_0+a}\right|^{2^n}$.

Supposons que le point M0 est dans le demi-plan ouvert de frontière D qui contient A. Cela revient à dire que M0 est plus proche de A que de B c’est-à-dire que $|z_0-a| < |z_0-b|$ et donc que $\left|\frac{z_0-a}{z_0+a}\right| < 1$. On en déduit alors que $\lim_{n \rightarrow 0}\left|\frac{z_n -a}{z_n+a}\right| = 0$ et que la suite de complexes $\left(\frac{z_n-a}{z_n+a}\right)$ converge vers 0.

Or $\frac{z_n - a}{z_n + a} = \frac{z_n + a - 2a}{z_n + a} = 1 - \frac{2a}{z_n + a}$ ce qui entraîne que $z_n + a = \frac{2a}{1 - \frac{z_n - a}{z_n + a}}$ . En appliquant les théorèmes relatifs aux opérations sur les limites, on en déduit que (zn + a) converge vers 2a et donc que (zn) converge vers a.

L’exposant 2n explique l’extrême rapidité de la convergence de la suite vers a = 1 + i.

On montre de la même façon que quand M0 est dans le demi-plan ouvert de frontière D qui contient A, la suite converge vers b = – a.

Intéressons-nous maintenant à ce qui se passe quand le point M0 est sur la droite D.

Appelons Mn le point d’affixe zn.

Montrons d’abord que lorsque que le point Mn est sur D, le point Mn+1 est encore sur D.

Si Mn est sur D, c’est que zn est de la forme zn = xia avec x réel (en effet le vecteur d’affixe i.a est orthogonal au vecteur $\overrightarrow{OA}$ d’affixe a).

On a alors $z_{n+1} = \frac 1 2 \left(xia + \frac{a^2}{xia}\right)$ $=\frac 1 2\left( xia - \frac {ia} x \right)$ $=\frac 1 2 \left( x - \frac 1 x \right) \times ia$, ce qui prouve que est encore sur D.

Par récurrence on en déduit alors que tous les points Mn sont sur D.

Posons alors zn = xnia. On a alors, pour tout n, $x_{n+1} = \frac 1 2 \left(x_n - \frac 1 {x_n}\right)$.

MathGraph32 va maintenant nous aider à expliquer le comportement chaotique de la suite des points Mn lorsque M0 est sur D.

Démarrez MathGraph32 et utilisez l’icône pour créer une nouvelle figure avec un repère orthonormal non quadrillé.

Utilisez l’icône pour créer une fonction f définie par $f(t) = \frac 1 2 (t - \frac 1 t)$. Laissez cochée la case Tracer courbe.

La courbe apparaît (c’est un fait un lieu de points).

Traçons maintenant la droite d’équation y = x à l’aide de l’icône de création d’une droite par son coefficient directeur (raccourci Ctrl + Maj + D). Cliquez d’abord sur le point O puis entrez 1 dans le champ Coefficient directeur de la boîte de dialogue qui s’ouvre. Validez par OK.

Dans la palette des couleurs, activez la couleur rouge.

Utilisez l’icône de création d’un point lié pour créer un point lié à l’axe des abscisses. Utilisez l’icône <imgimg9467> pour nommer ce point x0.

Cliquez sur l’icône qui sert à mesurer l’abscisse d’un point sur une droite. Cliquez ensuite sur O, sur I, puis sur le point x0. Un message vous confirme la création de cette mesure qui est noté x0(O,I).

Créons maintenant la suite récurrente via le menu Calculs >> Nouveau calcul dans R >> Suite réelle u(n+1)=f[u(n)].

Comme Nom de la suite, entrez u. Utilisez le bouton Valeurs pour entrer x0(O,I) dans le champ Premier terme. Entrez 50 dans le champ Nombre de termes puis validez par OK.

Créons maintenant le graphe de cette suite.

Dans la palette de style de trait, activez le style de trait pointillé.

Utilisez le menu Créer >> Graphe d’une suite récurrente >> Réelle. Une boîte de dialogue s’ouvre. Laissez cochée la case Traits de rappels en abscisse et validez par OK.

Vous pouvez maintenant capturer le point x0 à l’aide de l’icône pour constater que le comportement de la suite semble chaotique quel que soit son premier terme.

Voici la figure obtenue (Vous pouvez capturer le point x0) :

Essayons d’expliquer ce phénomène chaotique :

La suite ne peut pas converger vers un réel non nul L car sinon, f étant continue, L vérifierait f(L) = L $\Leftrightarrow L - \frac 1 L = L$ ce qui est impossible.

Il est évident que, pour x > 0, on a f(x)<x et que, pour x < 0, on a f(x)>x. On en déduit que si, par exemple, le premier terme de la suite est positif, la suite va commencer par décroître avec des termes positifs. Mais comme la suite ne peut pas converger, elle ne peut pas être minorée. Il y aura donc à partir d’un certain indice un terme qui sera négatif. Alors à partir de ce terme la suite va se remettre à croître avec des termes négatifs. Mais comme elle n’est pas convergente elle n’est pas majorée et à partir d’un certain rang un terme deviendra positif et ainsi de suite.

On peut aussi remarquer que pour certaines valeurs du premier terme x0 , la suite peut ne pas être définie, par exemple pour x0 = 0, ou pour x0 = 1.

Généralisation du résultat

Les résultats précédents peuvent facilement se généraliser avec la suite définie par $z_{n+1} = \frac 1 2 \left(z_n + \frac{a^2}{z_n}\right)$ où a désigne un complexe non nul. En effet nos calculs précédents n’utilisaient pas la valeur particulière de a.

En appelant A le point d’affixe a et B le point d’affixe – a, D la médiatrice du segment [AB] (qui a un vecteur directeur d’affixe ia), on montre facilement que les résultats précédents sont encore vrais :

Si la suite est bien définie :

Si M0 est dans le demi-plan ouvert de bord D qui contient A, la suite converge vers a.

Si M0 est dans le demi-plan ouvert de bord D qui contient B, la suite converge vers -a.

Si M0 est sur la droite (AB) alors tous les points Mn d’affixe zn sont sur cette droite avec un comportement chaotique.

Illustrons ce résultat général avec une nouvelle figure MathGraph32. La construction sera au départ identique à notre première figure.

Démarrez MathGraph32 et utilisez l’icône pour créer une nouvelle figure avec un repère orthonormal, avec pointillés et vecteurs.

Une boîte de dialogue vous demande le nom des vecteurs du repère : entrez classiquement u et v et validez par OK.

A l’aide de l’icône , créez un point libre. Utilisez l’icône pour nommer ce point M0.

Nous allons maintenant mesurer l’affixe de ce point dans notre repère. Pour cela utilisez l’icône .

Cliquez sur le point M0. Un message vous confirme la création de cette affixe.

Pour plus de commodité, nous allons maintenant un calcul complexe nommé z0 qui contiendra l’affixe précédemment mesurée.

Utilisez pour cela le menu Calculs >> Nouveau calcul dans C >> Calcul complexe (raccourci clavier : Ctrl + Maj + E).

Une boîte de dialogue s’ouvre. Dans le champ Nom du calcul, entre z0. Utilisez le bouton Liste des valeurs pour entre dans le champ formule Aff(M0,O,I,J) qui représenta l’affixe que nous venons de mesurer. Validez par OK.

A l’aide de l’icône , créez un point libre. Utilisez l’icône pour nommer ce point A.

Utilisez l’icône pour créer l’image du point A dans la symétrie centrale de centre O (pour cela, cliquez d’abord sur O, puis sur A).

Nommez ce point B.

Utilisez l’icône pour créer le segment [AB] puis l’icône pour créer la médiatrice du segment [AB].

Mesurez maintenant l’affixe de ce point A.

Nous allons maintenant un calcul complexe nommé a qui contiendra l’affixe précédemment mesurée.

Utilisez pour cela le menu Calculs >> Nouveau calcul dans C >> Calcul complexe (raccourci clavier : Ctrl + Maj + z).

Une boîte de dialogue s’ouvre. Dans le champ Nom du calcul, entrez a. Utilisez le bouton Valeurs pour entrer dans le champ formule Aff(A,O,I,J) qui représenta l’affixe que nous venons de mesurer. Validez par OK.

Avant cela nous devons créer une fonction complexe f d’une variable complexe définie par $f(t) = \frac 1 2 (t + \frac {a^2} t)$.

On utilise le menu Calculs >> Nouveau calcul dans C >> Fonction complexe (raccourci clavier Ctrl + G).

Une boîte de dialogue s’ouvre. Entrez f dans le champ Nom de la fonction et t dans le champ Variable formelle. Dans le champ Formule, entrez 1/2*(t+a^2/t). Validez par OK.

Créons maintenant la suite récurrente.

Utilisez pour cela me menu Calculs >> Nouveau calcul dans C >> Suite complexe u(n+1) = f[u(n)]. Une boîte de dialogue s’ouvre.

Dans le champ Nom de la suite, entrez z. Dans la liste des fonctions complexes existantes, la fonction f est déjà sélectionnée. Utilisez le bouton Valeurs pour entrer z0 dans le champ Premier terme. Entrez 50 comme nombre de termes et validez par OK.

Nous allons maintenant créer le graphe de cette suite récurrente complexe.

Dans la palette de couleurs, actives le rouge et activez le style de trait pointillé dans la palette de style de trait.

Dans la palette de style de point, activez le « petit rond » (ceci n’est pas indispensable).

Utilisez maintenant le menu Créer >> Graphe de suite récurrente >> Complexe. Le graphe apparaît.

Vous pouvez maintenant capturer le point A et le point M0 et constater que le résultat précédent se généralise bien.

Voici la figure obtenue (Vous pouvez capturer le point A et le point M0) :

Regardons maintenant ce qui se passe quand on est sur la médiatrice du segment [AB].

Utilisez l’icône pour créer l’image du point A dans la symétrie centrale de centre O (pour cela, cliquez d’abord sur O, puis sur A).

Nommez ce point B.

Utilisez l’icône pour créer le segment [AB] puis l’icône pour créer la médiatrice du segment [AB].

Maintenant liez le point M0 à cette médiatrice.

Vous constaterez que tous les points de la représentation graphique de la suite (il peut arriver que certains points s’écartent de la droite : c’est dû à des phénomènes d’accumulation d’erreurs d’arrondi).

Voici la figure obtenue (Vous pouvez capturer le point A et le point M0.) :

Conclusion

Nous avons vu sur cet exemple que MathGraph32 est un outil très pratique pour faire des figures sophistiquées en quelques clics de souris.
Reste ensuite le plaisir d’essayer de démontrer ce qu’on a pu observer.

MathGraph32 est ainsi un outil particulièrement adapté à la préparation de l’épreuve pratique en classe de terminale scientifique, grâce à ses capacités à calculer sur les nombres complexes et les représenter graphiquement.

La pratique régulière d’un tel outil devrait encourager chez nos élèves le plaisir de conjecturer et d’expérimenter et ce dès le collège. (MathGraph32 peut s’adapter au niveau collège en choisissant ce mode dans le menu Préférences >> Niveau du logiciel).


Réagir à cet article
Vous souhaitez compléter cet article pour un numéro futur, réagir à son contenu, demander des précisions à l'auteur ou au comité de rédaction...
À lire aussi ici
MathémaTICE est un projet
en collaboration avec
Suivre la vie du site Flux RSS 2.0  |  Espace de rédaction  |  Nous contacter  |  Site réalisé avec: SPIP  |  N° ISSN 2109-9197