Licence Physique Recherche 99-2000
Licence Physique Recherche 99-2000
Option chaos et morphogénèse.
Chaouqi Misbah et Frédéric Faure.
TD n01
Oscillateur de Van-der-Pool et Fonction de premier retour
1 Oscillateur de Van-Der-Pool
L'équation de mouvement de l'oscillateur à une dimension x(t) Î R est:
|
d2x dt2
|
-(e-x2) |
dx dt
|
+x = 0 |
| (1) |
- En posant v = dx/dt , transformer l'équation (1) pour obtenir
deux équations différentielles du premier ordre.
- Le programme mouvement.cc de l'annexe A (2), (en C++ et utilisant
la librairie graphique ROOT sur phcarism), permet d'intégrer les équations de
mouvement dx/dt = v , dv/dt = 0 à l'aide de l'algorithme de
Runge Kutta à l'ordre 4, à pas variable. Lire, comprendre, copier et exécuter
ce programme, et vérifier son bon fonctionnement.
- En modifiant le programme précédent de façon adéquate, créer un programme VanDerPool.cc
qui permet d'intégrer les équations 1.
- A l'aide de votre programme VanDerPool.cc, tracer la trajectoire x(t),v(t)
dans l'espace des phases, et la courbe x(t) pour les valeurs e = 0, 0.1, 1, 5 .
Observer le cycle limite. (Aide: pour accélérer le graphisme, n'utiliser la
commande Update() qu'à la fin du calcul.)
2 L'application de premier retour
On considère l'application
- Pour quelles valeurs de g , a t-on une application f:[ 0,1] ® [ 0,1] ?
- Le programme retour1.cc de l'annexeB (2), dessine la fonction
f(x) et la bissectrice y = x . Lire, comprendre, copier et exécuter
ce programme, et vérifier son bon fonctionnement.
- Ecrire le code de la fonction Dessin_Trajectoire(double x0,long i)
qui doit dessiner une trajectoire x0,x1,x2,¼,xi à partir
d'une condition initiale x0 donnée. Précisement,à chaque iteration
on trace deux segments dans le plan (x,y) : S1: (x,x)® (x,f(x))
et S2: (x,f(x))® (f(x),f(x)) .
Aide: on trace un segment à l'aide du code:
TLine *l;
l=new TLine(x1,y1,x2,y2);
l->SetLineColor(2); // 2=rouge
l->Draw("same"); // superpose au dessin précédent
- Tracer la trajectoire et observer les points limites pour x0 = 2 , puis
pour x0 = 3.2 et x0 = 3.5 . Préciser les valeurs de x0
qui sont à la frontière entre ces différents types de points limites. Dessiner
les fonctions f(x) , fof(x) et fofofof(x) . Quel rapport
voyez vous?
- On veut dessiner la position des points limites dans le plan (g,x) . Compléter
le code de la fonction Dessin_attracteurs() qui pour differents g ,
et differents x0 , calcule les itérés xn pour n = 10000® 11000
et affiche les points (g,xn) . Observer les bifurcations précédentes.
Aide: on dessine un point à l'aide de
TMarker *m;
m=new TMarker(g,X,6); // petit cercle
m->SetMarkerColor(2); // rouge
m->Draw();
Annexe A: programme ``mouvement.cc''
mouvement.cc
Annexe B: programme ``retour1.cc''
retour1.cc
File translated from
TEX
by
TTH,
version 2.57.
On 2 Mar 2000, 11:13.