Vous êtes sur la page 1sur 15

Université de Provence, Année 2011/2012

Licence Mathématiques-Informatique,
parcours Mécanique-3ème année

T.D. de Calcul Scientifique

Corrigé des exercices de la feuille n˚ 2

Exercice 1 :
Soit le système d’équations différentielles
du1
= 2u1
dt
du2
= 3u1 − u2 .
dt
(1)

avec des conditions initiales données en t = 0. Résoudre ce système d’équations différentielles


de deux manières.
1a) Déterminer u1 par la première équation est injecter le résultat dans la deuxième équation.

Corrigé : La solution de la première équation est bien sûr

u1 = e2t a

avec a la condition initiale u1 (0) = a. Injectant cette solution dans la deuxième équation on doit
résoudre
du2
= 3e2t a − u2 . (2)
dt
Comme il a été rappelé dans le chapitre 1.1 de la partie 4 du cours, la solution u2 = v + w est
la somme d’une solution générale v de l’équation homogène et d’une solution particulière w.
Donc, v est solution de
dv
= −v
dt
et donc v = e−t b (avec b par exemple la condition initiale u2 (0) = b). La solution particulière
s’écrit, par la méthode de la variation de la constante, w = c(t)e−t et si on injecte cette fonction
dans l’équation (2), on trouve
dc dc
e−t = 3e2t a, donc = 3ae3t
dt dt
et une solution qui s’annule en t = 0 (dans ce cas la constante b de la solution générale corres-
pond bien à la condition initiale u2 (0)) est
Z t
c(t) = 3a e3s ds = a(e3t − 1) et w = a(e2t − e−t ).
0

1
Par conséquent,
u2 (t) = e−t b + a(e2t − e−t ).

1b) Ecrire le système sous la forme


d
u = Au
dt
et trouver la solution à l’aide de etA .

Corrigé : La matrice A s’écrit  


2 0
A=
3 −1
et les valeurs propres de cette matrice sont λ1 = 2 et λ2 = −1 (en effet, A est triangulaire et les
éléments sur la diagonale d’une matrice triangulaire sont aussi les valeurs propres de la matrice).
On rappelle que si x est vecteur propre associé à la valeur propre λ d’une matrice, alors x est
solution (non nulle) de l’équation (A − λI)x = 0. Ici, pour λ1 = 2 on trouve

3x1 − 3x2 = 0

et donc x(1) = (1, 1)T est vecteur propre associé à λ1 . Pour λ2 = −1 on trouve 2x1 = 0 et donc
x(2) = (0, 1)T est vecteur propre associé à λ2 . Soit donc
 
1 0
P=
1 1

la matrice dont les colonnes sont les vecteurs propres, alors

A = PDP−1

avec    
2 0 −1 1 0
D= , P = .
0 −1 −1 1
Comme il a été démontré dans la partie cours, on peut écrire etA = PetD P−1 ; l’exponentielle
d’une matrice D diagonale se calcule aisément et ici
 2t 
tD e 0
e =
0 e−t

d’où en définitive
e2t
 
tA 0
e = −t
2t
e −e e−t
Soit donc u(0) = (u1 (0), u2(0))T = (a, b)T , alors u(t) = etA u(0) et on retrouve bien u1 (t) = e2t a,
u2 (t) = (e2t − e−t )a + e−t b.

2
Exercice 2 :
Soit maintenant le système d’équations différentielles
du1
= 2u1
dt
du2
= 3u1 + 2u2 .
dt
(3)

avec des conditions initiales données en t = 0. Résoudre ce système d’équations différentielles


de deux manières.
2a) Déterminer u1 par la première équation est injecter le résultat dans la deuxième équation.

Corrige : On trouve u1 = e2t a et on injecte cette solution dans la deuxième équation, donc
du2
= 3e2t a + 2u2 .
dt
A nouveau u2 = v + w avec v = e2t b solution générale de l’équation homogène et w = c(t)e2t :
injectant cette expression dans l’équation, on trouve
dc
= e−2t 3e2t a = 3a
dt
dont la solution qui s’annule en t = 0 est c(t) = 3at et donc

u2 (t) = e2t b + 3ate2t .

2b) Ecrire le système sous la forme


d
u = Au.
dt
Décomposer A    
2 0 0 0
A= +
0 2 3 0
et en déduire etA ainsi que la solution du système.

Corrigé : Bien sûr  


2 0
A= .
3 2
Cette matrice a λ1 = 2 comme valeur propre double et on peut montrer que la matrice n’est pas
diagonalisable. La décomposition ci-dessus est de la forme

A = 2I + N

3
avec I matrice unité 2 × 2 et  
0 0
N=
3 0
et on peut facilement se convaincre que N 2 = 0 est la matrice identiquement égale à zéro. Les
matrices I et N commutent et (voir cours, partie 4, chapitre 1.2)

etA = et2I etN .

Evidemment,
e2t 0
 
t2I
e =
0 e2t
et etN se calcule aisément car la série est une somme finie, étant donné que N 2 = 0 (et donc
N k = 0, k ≥ 2)  
tN 1 0
e = I + tN = .
3t 1
Opérant le produit de ces deux matrices, on trouve bien
 2t 
tA e 0
e =
3te2t e2t

et on retrouve u(t) = etA u0 avec u0 = (a, b)T la condition initiale.

Exercice 3 : Deux ressorts couplés.


Deux masses égales m1 = m2 = m sont reliées entre elles et à un support fixe par des res-
sorts de même constante k. Les élongations u1 (t) et u2 (t) des masses à partir de leurs positions
d’équilibre sont, en l’absence de forces extérieures régies par le système différentiel
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111

0
1
11111
00000
m
1 00001
11110
0
1
u1

0
1

0
1
0
1
1111
0000
00001
m 2 11110
0
1
u
2
0
1

d 2 u1
m = k(u2 − u1 ) − ku1
dt 2
d 2 u2
m 2 = −k(u2 − u1 )
dt
Trouver la solution du système, qui vérifie la condition initiale
du1 du2
u1 (0) = 1, u2 (0) = 0, (0) = 0, (0) = 0.
dt dt

4
Indication : On cherchera la solution sous la forme (u1 , u2 ) = eλt (a, b).

Corrigé : Il s’agit ici de deux équation différentielles linéaires à coefficients constants d’ordre
deux et ce système pourrait être écrit sous la forme de 4 équations d’ordre 1. Il a été vu dans
la partie cours que les composantes de la solution d’un système d’équations différentielles
linéaires à coefficients constants s’écrivent comme une combinaison linéaire de etλ avec λ les
valeurs propres de la matrice qui définit le système d’équations différentielles. Pour trouver ces
valeurs propres λ, il est donc légitime de poser (u1 , u2 ) = eλt (a, b) et d’injecter cette expression
dans l’équation. On trouve

mλ2 aeλt = k(b − a)eλt − kaeλt


mλ2 beλt = −k(b − a)eλt

ce qui donne lieu au système

(mλ2 + 2k)a − kb = 0
−ka + (mλ2 + k)b = 0.

On cherche évidemment à écrire les conditions pour que ce système ait une solution (a, b) 6=
(0, 0), ce qui est le cas si le déterminant du système est nul et donc

(mλ2 + 2k)(mλ2 + k) − k2 = 0

et en posant µ = λ2 , on doit résoudre

m2 µ2 + 3kmµ + k2 = 0.

Par conséquent
√ ! √ !
k −3 + 5 k −3 − 5
µ1 = , µ2 = .
m 2 m 2
Ces deux solutions sont négatives et étant donné que λ2 = µ, on trouve

λ1 = iω1 , λ2 = −iω1 , λ3 = iω2 , λ4 = −iω2 ,

avec les fréquences


r s √ r s √
k 3− 5 k 3+ 5
ω1 = , ω2 = .
m 2 m 2
Les valeurs de λ sont imaginaires pures et conjuguées complexes : au lieu d’écrire la solution
(réelle) comme une combinaison linéaire des fonctions e±iω j t , il est plus commode de l’écrire
comme une somme de sinus et cosinus et

u1 (t) = A1 cos(ω1t) + B1 sin(ω1t) +C1 cos(ω2t) + D1 sin(ω2t)


u2 (t) = A2 cos(ω1t) + B2 sin(ω1t) +C2 cos(ω2t) + D2 sin(ω2t).

5
Or, dans ces expressions apparaissent 8 constantes à déterminer, mais la condition initiale ne
fournit que 4 conditions. Il convient donc d’injecter la forme générale de la solution ci-dessus
dans une des deux équations différentielles du système, par exemple la deuxième, ce qui donne
les relations

(−ω21 m + k)A2 = kA1 (4)


(−ω21 m + k)B2 = kB1 (5)
(−ω22 m + k)C2 = kC1 (6)
(−ω22 m + k)D2 = kD1 . (7)
du1
Ecrivons les relations provenant des conditions initiales. La condition dt (0) = 0 donne

ω1 B1 + ω2 D1 = 0 (8)
du2
tandis que dt (0) = 0 permet d’écrire

ω1 B2 + ω2 D2 = 0.

Or, les équations (5) et (7) permettent d’exprimer B2 en fonction de B1 et D2 en fonction de D1


et donc
kω1 kω2
B1 + D1 = 0. (9)
k − ω1 m
2 k − ω22 m
Utilisant (8) pour exprimer D1 en fonction de B1 on trouve
 
kω1 kω1
B1 − =0
k − ω21 m k − ω22 m
ce qui équivaut à, en mettant l’expression entre parenthèses sur le dénominateur commun,

B1 ω21 − ω22 = 0


et donc B1 = 0 et ensuite D1 = B2 = D2 = 0 car ω21 6= ω22 . La condition u1 (0) = 1 donne lieu à


l’équation
A1 +C1 = 1 (10)
et enfin u2 (0) = 0 à
A2 +C2 = 0.
Utilisant (4) et (6) dans cette dernière équation, on trouve
k k
A 1 + C1 = 0
k − ω21 m k − ω22 m
et exprimant C1 en fonction de A1 donne en injectant le résultat obtenu dans (10)

k − ω22 m (ω22 − ω21 )m


 
A1 1 − = A 1 =1
k − ω21 m k − ω21 m

6
d’où
k − ω21 m ω22 m − k k k
A1 = , C1 = , A2 = 2 , C2 = − 2 .
(ω2 − ω1 )m
2 2 (ω2 − ω1 )m
2 2 (ω2 − ω1 )m
2 (ω2 − ω21 )m
D’où la solution
k − ω21 m ω22 m − k
u1 (t) = cos(ω1 t) + cos(ω2t),
(ω22 − ω21 )m (ω22 − ω21 )m
k
u2 (t) = (cos(ω1t) − cos(ω2t)) .
(ω2 − ω21 )m
2

Exercice 4 : Erreur dans un schéma d’Euler explicite.


4a) Soit le problème à valeur initiale
u′ = t − t 3 , u(0) = 0.
Supposons que nous utilisons la méthode d’Euler explicite avec un pas de temps h afin de
déterminer une solution approchée U j de u(t j ) avec t j = jh. Trouver une expression explicite
pour U j et pour l’erreur E(t j , h) = U j − u(t j ). Soit maintenant t fixé, et hn = nt de façon à ce que
tn = t. Evaluer l’erreur E(t, hn) et montrer que l’erreur tend vers zéro quand n → ∞.

Corrigé : Soit t j = jh ; le schéma d’Euler explicite pour la résolution d’une équation différentielle
avec condition initiale u′ (t) = f (t, u(t)), u(0) = u0 s’écrit simplement
U j+1 = U j + h f (t j ,U j ), j = 0, 1, · · ·, U0 = u0 .
Ici f (t, u(t)) = t − t 3 et donc
U j+1 = U j + h(t j − t 3j )
et en itérant
U j+1 = U j−1 + h(t j−1 − t 3j−1 + t j − t 3j )
etc. Finalement on trouve
j−1 j−1 j−1
U j = U0 + h ∑ (tk − tk3 ) = h2 ∑ k − h ∑ k34
k=0 k=0 k=0

j−1 j( j−1)
car tk = kh et ici la condition initiale U0 = 0. Or, il est bien connu que ∑k=0 k = 2 et
j−1 j2 ( j−1)2
∑k=0 k3 = 4 et par conséquent

j( j − 1) j2 ( j − 1)2
U j = h2 − h4 .
2 4
t2 4
Pour cet exemple l’équation différentielle s’intègre aisément, la solution étant u(t) = 2 − t4 et
donc
j2 j4
u(t j ) = h2 − h4
2 4
7
de façon à ce que
j( j − 1) j2 j2 ( j − 1)2 j4 2 j3 − j2
   
2 4 j
E(t j , h) = U j − u(t j ) = h − −h − = −h2 + h4 .
2 2 4 4 2 4
Soit t et hn = nt , alors tn = nhn = t. D’après l’expression ci-dessus (prenant j = n et h = hn )
3 2  
2 n 4 2n − n 2 1 4 1 1
E(t, hn) = −hn + hn = −t +t − .
2 4 2n 2n 4n2
On remarque que l’on peut aussi écrire cette erreur au temps t (entre la solution obtenue par le
schéma d’Euler explicite et la solution exacte) en termes de hn et
t3 − t t2
E(t, hn) = hn − h2n .
2 4
On remarque que le terme dominant de l’erreur est bien en O(hn ) comme démontré dans la
partie cours et bien sûr E(t, hn) → 0 quand hn → 0 (et hn → 0 si et seulement si n → ∞).

4b) Maintenant on considère l’équation différentielle


du
= u, u(0) = 1.
dt
Soit t un temps donné et n un entier positif ; on note hn = t/n de façon à ce que tn = nhn = t.
On note Un l’approximation de u(t), obtenue au temps tn = t par la méthode d’Euler explicite.
Montrer que Un = exp (tϕ(hn)) pour une fonction ϕ(hn ) que l’on précisera. Montrer que ϕ(hn )
est développable en une série de la variable hn qui converge pour n assez grand tel que |hn| < 1.
En déduire que l’on peut alors écrire Un sous la forme

Un = ∑ τi (t)hin,
i=0

convergente (t étant fixé), si |hn | < 1. Expliciter τi (t) pour i = 0, 1, 2. Interpréter le résultat.

Corrigé : Appliquant le schéma d’Euler explicite à cette équation (ici f (t, u(t)) = u(t)) on
obtient
Un+1 = Un + hnUn = (1 + hn )Un
et en itérant
Un+1 = (1 + hn )2Un−1
etc. pour obtenir
Un = (1 + hn )nU0 = (1 + hn )n
car la condition initiale U0 = 1. Tenant compte de hn = nt on peut écrire
 
t/hn t ln(1 + hn )
Un = (1 + hn ) = exp = exp (tϕ(hn )) .
hn

8
Par le développement en série

hin
ln(1 + hn ) = ∑ (−1)i+1
i=1 i

convergente pour |hn | < 1 on a


∞ ∞
ln(1 + hn ) hi−1 hi
ϕ(hn ) = = ∑ (−1)i+1 n = ∑ (−1)i n
hn i=1 i i=0 i+1

Cette série converge pour |hn | < 1 et la fonction exponentielle eu étant développable en série
entière convergente pour tout u, on déduit que pour t fixé la fonction exp (tϕ(hn)) est développable
en série entière et on peut écrire

Un = ∑ τi (t)hin,
i=0
convergente si |hn | < 1. Pour calculer les premiers coefficients τi (t), il suffit d’observer que

!
h i
exp (tϕ(hn)) = exp t ∑ (−1)i n = exp(t) exp(−thn /2) exp(th2n/3) · · ·
i=0 i + 1

et par le développement bien connu de la fonction exponentielle



t 2 
2t t 
exp (tϕ(hn)) = exp(t) 1 − hn + hn + O(hn ) 1 + h2n + O(h3n ) · · ·
3
2 8 3
Regroupant les termes on trouve

t t2 2
 
t
Un = exp(t) − exp(t) hn + exp(t) + hn + · · ·
2 3 8

On observe ici que le terme exp(t) est en fait la solution exacte u(t) de l’équation différentielle
et donc
t t2 2
 
t
E(t, hn) = Un − u(t) = − exp(t) hn + exp(t) + hn + · · ·
2 3 8
L’erreur entre la solution numérique et la solution exacte est donc bien en O(hn ) et donc (pour t
donné) E(t, hn) → 0 quand hn → 0. Cependant, lorsqu’on écrit − exp(t) 2t hn = O(hn ), il faut
être conscient que hn apparaı̂t en produit avec la fonction − exp(t) 2t de t. Pour la solution
u(t) = exp(t) l’erreur relative entre la solution du schéma d’Euler et la solution exacte est plus
significative que l’erreur absolue et

t t2 2
 
E(t, hn) t
= − hn + + hn + · · ·
exp(t) 2 3 8

9
Exercice 5 : Ordre d’un schéma de Runge-Kutta et stabilité absolue.
On cherche à résoudre l’équation différentielle

u′ (t) = f (t, u(t)), u(t0) = u0 , (11)

par une méthode à un pas du type Runge-Kutta. Ici f : R2 → R est supposée 3 fois continûment
dérivable dans R2 . On note ti = t0 +ih et Ui l’approximation de u(ti ), avec Ui solution du schéma

U0 = u0
Ui+1 = Ui + hF(ti,Ui , h) (12)
ti+1 = ti + h, i = 0, 1, ....

avec

F(ti ,Ui , h) = b1 k1 + b2 k2 avec


k1 = f (ti ,Ui ), k2 = f (ti + hc2 ,Ui + c2 hk1 ), (13)

b1 , b2 , c2 étant des nombres réels.

5a) On note
u(t + h) − u(t)
τ(t, h) = − F(t, u(t), h),
h
u(t) étant la solution exacte de (11). Déterminer les conditions sur b1 , b2 , c2 pour que le schéma
(18) soit d’ordre 2, i.e. τ(t, h) = O(h2).

Corrigé : Ecrivons les premiers termes du développement de Taylor en h (pour t fixé)

u(t + h) − u(t) h h2
= u′ (t) + u′′ (t) + u′′′ (t) + · · · (14)
h 2 6
et u(t) étant solution exacte de l’équation différentielle (11), on peut écrire, pour les 2 premiers
termes du développement
u′ (t) = f (t, u(t))
et
∂f ∂f ∂f ∂f
u′′ (t) = (t, u(t)) + (t, u(t))u′(t) = (t, u(t)) + (t, u(t)) f (t, u(t)).
∂t ∂u ∂t ∂u
Par conséquent

∂f ∂f
 
u(t + h) − u(t) h
= f (t, u(t)) + (t, u(t)) + (t, u(t)) f (t, u(t)) + O(h2 ) (15)
h 2 ∂t ∂u

Par ailleurs le développement de ϕ(h) = F(t, u(t), h) en h pour t fixé s’écrit

∂F h2 ∂2 F
ϕ(h) = F(t, u(t), 0) + h (t, u(t), 0) + (t, u(t), 0) + O(h3) (16)
∂h 2 ∂h2

10
La fonction F(t, u(t), h) s’écrit ici

F(t, u(t), h) = b1 f (t, u(t)) + b2 f (t + hc2 , u(t) + c2h f (t, u(t)))

et donc
F(t, u(t), 0) = (b1 + b2 ) f (t, u(t))
et
∂F ∂f ∂f
(t, u(t), 0) = b2 c2 (t, u(t)) + b2 (t, u(t))c2 f (t, u(t)).
∂h ∂t ∂u
Injectant ces expression dans (16) et soustrayant (16) de (15) on obtient

τ(t, h) = (1 − b1 − b2 ) f (t, u(t))


∂f ∂f
  
1
+ h − b2 c2 (t, u(t)) + (t, u(t)) f (t, u(t)) + O(h2 )
2 ∂t ∂u
On déduit aisément que le schéma est d’ordre 2, si
1
b1 + b2 = 1, et b2 c2 =
2

5b) Montrer qu’il n’est pas possible de trouver des coefficients b1 , b2 , c2 pour que l’ordre général
du schéma soit égal à 3.
Indication : Evaluer par exemple τ(t, h) pour la fonction f (t, u) = u.

Corrigé : Pour montrer que l’ordre général du schéma n’est pas égal à 3 il suffit de trouver
un contre-exemple et en suivant l’indication, on évalue le terme en h2 dans (14) pour la fonction
f (t, u(t)) = u(t). On a donc u′ (t) = u(t) et ensuite u′′ (t) = u′ (t) = u(t) et u′′′ (t) = u(t). Donc,
ici
u(t + h) − u(t) h h2
= u(t) + u(t) + u(t) + O(h3).
h 2 6
Si f (t, u(t)) = u(t), alors

F(t, u(t), h) = b1 u(t) + b2(u(t) + c2hu(t)) = (b1 + b2 )u(t) + b2c2 hu(t).

Il a été vu que si b1 + b2 = 1 et b2 c2 = 21 alors le schéma est d’ordre 2. Pour ces valeurs des
coefficients
u(t + h) − u(t) h2
− F(t, u(t), h) = u(t) + O(h3)
h 6
2
et le schéma est bien d’ordre 2, mais le terme dominant de τ(t, h) est ici h6 u(t) qui n’est pas en
O(h3 ). En conclusion, l’ordre général du schéma ne peut pas être égal à 3.

5c) Soient des coefficients b1 , b2 , c2 tels que le schéma (18) est d’ordre 2. On considère l’équation
différentielle
u′ = λu, u(0) = 1, avec λ < 0. (17)

11
Ecrire la solution exacte u(t) et observer que u(t) → 0 quand t → ∞. On note Ui l’approxima-
tion, donnée par le schéma (18), de la solution exacte u(ti), ti = ih. Montrer que Ui → 0 quand
i → ∞, si et seulement si −2 < λh < 0.
Remarque : la contrainte sur le pas de temps −2 < λh < 0 est une condition dite de stabilité
absolue du schéma.

Corrigé : La solution exacte de l’équation différentielle est évidemment u(t) = eλt et bien
entendu, si λ < 0, alors u(t) → 0 quand t → 0. Pour f (t, u(t)) = λu(t) et pour b1 + b2 = 1 et
b2 c2 = 21 on peut écrire

h
F(ti ,Ui , h) = b1 λUi + b2 λ(Ui + c2 hλUi ) = λUi + λ2Ui .
2
Par conséquent,

r2
   
h 2
Ui+1 = Ui + h λUi + λ Ui = 1 + r + Ui , r = λh.
2 2

En itérant cette relation, tenant compte de la condition initiale U0 = 1, on trouve


i
r2

Ui = 1 + r + , r = λh.
2

Par conséquent, pour que Ui → 0 quand i → ∞ avec ti = ih, c’est-à-dire pour que la solution
numérique reproduise la comportement de la vraie solution pour t → ∞, il faut et il suffit que
2

1 + r + r < 1, r = λh.

2

Donc, il faut et il suffit que


r2
−1 < 1 + r + <1
2
Alors par l’inégalité de droite,
r2  r
r+ = r 1+ <0
2 2
2
ce qui est vérifié, si et seulement si −2 < r < 0. Le minimum de r + r2 est atteint pour r = −1
et alors la fonction prend la valeur −1/2 et donc on aura toujours

r2
−2 < r +
2
et l’inégalité à gauche est toujours vérifiée. Donc Ui → 0 quand i → ∞, si et seulement si

−2 < r = λh < 0,

12
ou encore, tenant compte que λ < 0,
2
0<h<− .
λ
On constate ici que plus −λ = |λ| sera grand, plus la condition de stabilité absolue mettra une
borne sur des valeurs possibles de h.

Exercice 6 : schéma de Runge-Kutta d’ordre 3.


On considère le schéma de Runge-Kutta donné par le tableau ci-après.
0 0 0 0 0
1/2 1/2 0 0 0
1 0 1 0 0
1 0 0 1 0
1/6 2/3 0 1/6

6a) Expliciter ce schéma, c.-à-d. donner la fonction F(t, u(t), h) telle que l’approximation au
temps ti = t0 +ih, notée Ui , de la solution de l’équation du/dt = f (t, u(t)), u(t0) = u0 est donnée
par le schéma

U0 = u0
Ui+1 = Ui + hF(ti,Ui , h) (18)
ti+1 = ti + h, i = 0, 1, ....

Corrigé : Les schémas de Runge-Kutta sont discutés dans la chapitre 2.2 de la partie 4 du cours.
Avec les notations du cours, ici

c1 = 0, c2 = 1/2, c3 = 1, c4 = 1,

a 21 = 1/2, a 32 = 1, a 43 = 1,
(les autres coefficients ai j étant nuls) et

b1 = 1/6, b2 = 2/3, b3 = 0, b4 = 1/6.

Par conséquent, avec les notations du cours,

Ui,1 = Ui
h
Ui,2 = Ui + f (ti ,Ui,1)
2  
h
Ui,3 = Ui + h f ti + ,Ui,2
2
Ui,4 = Ui + h f (ti + h,Ui,3)

13
et finalement
   
1 2 h 1
Ui+1 = Ui + h f (ti ,Ui,1) + f ti + ,Ui,2 + f (ti + h,Ui,4)
6 3 2 6
On observe qu’il s’agit bien d’un schéma explicite, dans la mesure où partant de Ui,1 = Ui on
peut déterminer Ui,2 , ensuite Ui,3 et enfin Ui,4.

6b) Vérifier à partir des relations données en cours que ce sch éma est bien d’ordre 3.

Corrigé : On rappelle (voir partie cours) que pour qu’un schéma de Runge-Kutta soit d’ordre
3, les conditions suivantes doivent être satisfaites
q q q
1
∑ bi = 1, ci = ∑ ai j , i = 1, · · ·, q, ∑ bici = 2
i=1 j=1 i=1

ainsi que
q q q
1 1
∑ bic2i = 3 , ∑ ∑ bi ai j c j = 6 .
i=1 i=1 j=1
Ici q = 4, les coefficients sont donnés ci-dessus ; les deux premières relations sont vérifiées et
on a bien
4
1 1 1 4 2 1 1 4 4 1
∑ i i 3 6 2 ∑ i i 12 6 = 3 , ∑ ∑ bi ai j c j = 6 .
b c = + = , b c2
= +
i=1 i=1 i=1 j=1

6c) On considère le cas particulier d’une équation différentielle de la forme du/dt = λ u avec λ
un nombre réel. Montrer directement, en évaluant pour cet exemple
u(t + h) − u(t)
τ(t, h) = − F(t, u(t), h),
h
que le schéma appliqué à cette équation différentielle est d’ordre 3.

Corrigé : Evaluant pour f (t, u(t)) = λu(t) la fonction F(t, u(t), h) on obtient
     
1 2 h 1 h
F(t, u(t), h) = λu(t)+ λ u(t) + λu(t) + λ u(t) + hλ u(t) + hλ u(t) + λu(t) .
6 3 2 6 2
Regroupant les termes on obtient
1 1 1
F(t, u(t), h) = λu(t) + h λ2 u(t) + h2 λ3 u(t) + h3 λ4 u(t).
2 6 12
Cette expression est à comparer avec le développement de
u(t + h) − u(t) h h2 h3
= u′ (t) + u′′ (t) + u′′′(t) + u(4) (t) + 0(h4)
h 2 6 24
h h 2 h3
= λu(t) + λ2 u(t) + λ3 u(t) + λ4 u(t) + O(h4)
2 6 24

14
car u′ (t) = λu(t), u′′ (t) = λu′ (t) = λ2 u(t) etc. On en déduit que pour cette équation différentielle

h3 4
τ(t, h) = − λ u(t) + O(h4).
24
Cette expression est bien en O(h3 ) ce qui vérifie l’ordre du schéma pour cet exemple. Cepen-
dant, l’ordre général du schéma n’est pas 4 dans la mesure où pour cet exemple d’équation
différentielle avec f (t, u(t)) = λu(t), l’expression τ(t, h) 6= O(h4 ).

15

Vous aimerez peut-être aussi