10.8 M´ ethodes de Runge-Kutta
411
Dans le premier cas, si on utilise une m´ ethode RK d’ordre p, on suppose qu’en
partant d’une donn´ ee exacte u n = y n (qui ne serait pas disponible si n ≥ 1),
l’erreur locale en t n+1 est inf´ erieure ` a une tol´ erance fix´ ee. On a la relation
suivante
y n+1 − u n+1 = Φ(y n )h
p+1 + O(h
p+2 ),
(10.70)
o` u Φ est une fonction inconnue ´ evalu´ ee en y n . (Remarquer que dans ce cas
particulier y n+1 − u n+1 = hτ n+1 (h)).
En effectuant le mˆ eme calcul avec un pas 2h en partant de x n−1 et en
notant la solution calcul´ ee
u n+1 , on trouve
y n+1 −
u n+1 = Φ(y n−1 )(2h)
p+1 + O(h
p+2 )
= Φ(y n )(2h)
p+1 + O(h
p+2 ),
(10.71)
o` u on a aussi d´ evelopp´ e y n−1 par rapport `
a t n . En retranchant (10.70) de
(10.71), on obtient
(2
p+1
− 1)h
p+1 Φ(y n ) = u n+1 −
u n+1 + O(h
p+2 ),
d’o` u
y n+1 − u n+1
u n+1 −
u n+1
(2 p+1 − 1)
= E.
Si |E| est inf´ erieur `
a une tol´ erance fix´ ee ε, on passe au pas de temps suivant,
autrement l’estimation est r´ ep´ et´ ee avec un pas de temps divis´ e par deux. En
g´ en´ eral, on double le pas de temps quand |E| est inf´ erieur `
a ε/2
p+1 .
Cette approche conduit `
a une augmentation consid´ erable de l’effort de
calcul, `
a cause des s−1 ´ evaluations fonctionnelles suppl´ ementaires n´ ecessaires
` a la construction de
u n+1 . De plus, si on doit diminuer le pas de discr´ etisation,
la valeur de u n doit ˆ etre recalcul´ ee.
Une alternative, qui ne requiert pas d’´ evaluations fonctionnelles suppl´ ementaires, consiste ` a utiliser simultan´ ement deux m´ ethodes RK ` a s ´ etapes,
respectivement d’ordre p et p + 1, poss´ edant les mˆ emes K i . On repr´ esente ces
m´ ethodes de mani` ere synth´ etique dans un tableau de Butcher modifi´ e
c A
b
T
b
T
E
T
(10.72)
o` u la m´ ethode d’ordre p est identifi´ ee par les coefficients c, A et b, celle d’ordre
p + 1 par c, A et
b, et o` u E = b −
b.
La diff´ erence entre les solutions approch´ ees en x n+1 fournit une estimation
de l’erreur de troncature locale du sch´ ema d’ordre le plus bas. Comme les
411
Dans le premier cas, si on utilise une m´ ethode RK d’ordre p, on suppose qu’en
partant d’une donn´ ee exacte u n = y n (qui ne serait pas disponible si n ≥ 1),
l’erreur locale en t n+1 est inf´ erieure ` a une tol´ erance fix´ ee. On a la relation
suivante
y n+1 − u n+1 = Φ(y n )h
p+1 + O(h
p+2 ),
(10.70)
o` u Φ est une fonction inconnue ´ evalu´ ee en y n . (Remarquer que dans ce cas
particulier y n+1 − u n+1 = hτ n+1 (h)).
En effectuant le mˆ eme calcul avec un pas 2h en partant de x n−1 et en
notant la solution calcul´ ee
u n+1 , on trouve
y n+1 −
u n+1 = Φ(y n−1 )(2h)
p+1 + O(h
p+2 )
= Φ(y n )(2h)
p+1 + O(h
p+2 ),
(10.71)
o` u on a aussi d´ evelopp´ e y n−1 par rapport `
a t n . En retranchant (10.70) de
(10.71), on obtient
(2
p+1
− 1)h
p+1 Φ(y n ) = u n+1 −
u n+1 + O(h
p+2 ),
d’o` u
y n+1 − u n+1
u n+1 −
u n+1
(2 p+1 − 1)
= E.
Si |E| est inf´ erieur `
a une tol´ erance fix´ ee ε, on passe au pas de temps suivant,
autrement l’estimation est r´ ep´ et´ ee avec un pas de temps divis´ e par deux. En
g´ en´ eral, on double le pas de temps quand |E| est inf´ erieur `
a ε/2
p+1 .
Cette approche conduit `
a une augmentation consid´ erable de l’effort de
calcul, `
a cause des s−1 ´ evaluations fonctionnelles suppl´ ementaires n´ ecessaires
` a la construction de
u n+1 . De plus, si on doit diminuer le pas de discr´ etisation,
la valeur de u n doit ˆ etre recalcul´ ee.
Une alternative, qui ne requiert pas d’´ evaluations fonctionnelles suppl´ ementaires, consiste ` a utiliser simultan´ ement deux m´ ethodes RK ` a s ´ etapes,
respectivement d’ordre p et p + 1, poss´ edant les mˆ emes K i . On repr´ esente ces
m´ ethodes de mani` ere synth´ etique dans un tableau de Butcher modifi´ e
c A
b
T
b
T
E
T
(10.72)
o` u la m´ ethode d’ordre p est identifi´ ee par les coefficients c, A et b, celle d’ordre
p + 1 par c, A et
b, et o` u E = b −
b.
La diff´ erence entre les solutions approch´ ees en x n+1 fournit une estimation
de l’erreur de troncature locale du sch´ ema d’ordre le plus bas. Comme les
