344
9 Solutions des exercices
Solution 7.19 Le système d’équations différentielles du second ordre se ramène au système du premier ordre
⎧
⎪ ⎪ ⎨
⎪ ⎪ ⎩
x
(t) = z(t),
y
(t) = v(t),
z
(t) = 2ω sin(Ψ )v(t) − k
2 x(t),
v
(t) = −2ω sin(Ψ )z(t) − k
2 y(t).
(9.5)
Si on suppose que le pendule est au repos au temps initial t0 = 0 et à la
position (1, 0), on doit imposer les conditions initiales suivantes au système
(9.5)
x(0) = 1, y(0) = 0, z(0) = 0, v(0) = 0.
En posant Ψ = π/4, qui est la latitude moyenne de l’Italie du nord, on utilise
la méthode d’Euler explicite :
[t , u ]= feuler ( @ffoucault ,[0 ,300] ,[1 0 0 0] ,N );
où N est le nombre de pas et ffoucault.m est la fonction suivante :
function fn = f f o u cault(t , y)
l =20; k2 =9.8/ l; psi= pi /4; omega =7.29*1. e -05;
[n , m ]= size ( y ); fn= zeros (n , m );
fn (1)= y (3); fn (2)= y (4);
fn (3)=2* omega * sin ( psi )*y (4) - k2*y (1);
fn (4)= -2* omega * sin ( psi )* y (3) -k2* y (2);
Avec quelques expériences numériques, on voit que la méthode d’Euler explicite
ne peut fournir de solutions acceptables pour ce problème, même pour des h
très petits. Par exemple, à gauche de la Figure 9.11, on représente le graphe
dans le plan de phase (x, y) du déplacement du pendule calculé avec N=30000,
c’est-à-dire h = 1/100. Comme prévu, le plan de rotation change avec le temps,
mais on observe aussi une augmentation de l’amplitude des oscillations. On
obtient des résultats analogues, pour des h plus petits, avec la méthode de
Heun. En fait, le problème modèle correspondant à ce problème comporte un
coefficient λ imaginaire pur. La solution correspondante (une sinusoïde) est
bornée mais ne tend pas vers zéro quand t tend vers l’infini.
Malheureusement, les méthodes d’Euler explicites et de Heun ont toutes
les deux une région de stabilité absolue qui ne contient aucun point de l’axe
imaginaire (excepté l’origine). Donc, pour avoir stabilité absolue, il faudrait
prendre la valeur extrême h = 0.
Pour une solution acceptable, il faut utiliser une méthode dont la région
de stabilité absolue contient une partie de l’axe imaginaire. C’est le cas par
exemple de la méthode adaptative de Runge-Kutta d’ordre 3, implémentée
dans la fonction MATLAB ode23. On peut l’invoquer avec la commande
suivante :
[t , u ]= ode23 ( @ffoucault ,[0 ,300] ,[1 0 0 0]);
Sur la Figure 9.11 (à droite), on représente la solution obtenue avec seulement
1022 pas d’intégration. Remarquer que la solution numérique est proche de la
solution exacte.
9 Solutions des exercices
Solution 7.19 Le système d’équations différentielles du second ordre se ramène au système du premier ordre
⎧
⎪ ⎪ ⎨
⎪ ⎪ ⎩
x
(t) = z(t),
y
(t) = v(t),
z
(t) = 2ω sin(Ψ )v(t) − k
2 x(t),
v
(t) = −2ω sin(Ψ )z(t) − k
2 y(t).
(9.5)
Si on suppose que le pendule est au repos au temps initial t0 = 0 et à la
position (1, 0), on doit imposer les conditions initiales suivantes au système
(9.5)
x(0) = 1, y(0) = 0, z(0) = 0, v(0) = 0.
En posant Ψ = π/4, qui est la latitude moyenne de l’Italie du nord, on utilise
la méthode d’Euler explicite :
[t , u ]= feuler ( @ffoucault ,[0 ,300] ,[1 0 0 0] ,N );
où N est le nombre de pas et ffoucault.m est la fonction suivante :
function fn = f f o u cault(t , y)
l =20; k2 =9.8/ l; psi= pi /4; omega =7.29*1. e -05;
[n , m ]= size ( y ); fn= zeros (n , m );
fn (1)= y (3); fn (2)= y (4);
fn (3)=2* omega * sin ( psi )*y (4) - k2*y (1);
fn (4)= -2* omega * sin ( psi )* y (3) -k2* y (2);
Avec quelques expériences numériques, on voit que la méthode d’Euler explicite
ne peut fournir de solutions acceptables pour ce problème, même pour des h
très petits. Par exemple, à gauche de la Figure 9.11, on représente le graphe
dans le plan de phase (x, y) du déplacement du pendule calculé avec N=30000,
c’est-à-dire h = 1/100. Comme prévu, le plan de rotation change avec le temps,
mais on observe aussi une augmentation de l’amplitude des oscillations. On
obtient des résultats analogues, pour des h plus petits, avec la méthode de
Heun. En fait, le problème modèle correspondant à ce problème comporte un
coefficient λ imaginaire pur. La solution correspondante (une sinusoïde) est
bornée mais ne tend pas vers zéro quand t tend vers l’infini.
Malheureusement, les méthodes d’Euler explicites et de Heun ont toutes
les deux une région de stabilité absolue qui ne contient aucun point de l’axe
imaginaire (excepté l’origine). Donc, pour avoir stabilité absolue, il faudrait
prendre la valeur extrême h = 0.
Pour une solution acceptable, il faut utiliser une méthode dont la région
de stabilité absolue contient une partie de l’axe imaginaire. C’est le cas par
exemple de la méthode adaptative de Runge-Kutta d’ordre 3, implémentée
dans la fonction MATLAB ode23. On peut l’invoquer avec la commande
suivante :
[t , u ]= ode23 ( @ffoucault ,[0 ,300] ,[1 0 0 0]);
Sur la Figure 9.11 (à droite), on représente la solution obtenue avec seulement
1022 pas d’intégration. Remarquer que la solution numérique est proche de la
solution exacte.
