0% ont trouvé ce document utile (0 vote)
26 vues12 pages

Méthodes d'Adams en Équations Différentielles

Transféré par

Mahamadou Traoré
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
26 vues12 pages

Méthodes d'Adams en Équations Différentielles

Transféré par

Mahamadou Traoré
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Équations différentielles 2

c.i.
c.l.

Géraldine Faure
[Link]@[Link]

Université Clermont Auvergne

2020

L3PhysNum (EUPI) Équations différentielles 2 2020 1 / 12


Méthode d’Adams - Basforth

Adams-Bashforth
A partir du système 
dy
= f (y , t)
dt (1)
y (t0 ) = y0

Utilisons le développement en série de Taylor au point t = ti :

h2 00 h3 000
yi+1 = yi + hyi0 + y + y + ... (2)
2 i 3! i
avec y 0 (ti ) = yi0 = f (yi , ti ) et y 00 (ti ) = yi00 = f 0 (yi0 , ti ) etc

h2 0 h3 00
yi+1 = yi + hfi + f + f + ... (3)
2 i 3! i

Ordre 1
yi+1 = yi + hfi (4)
On retrouve la méthode d’Euler

L3PhysNum (EUPI) Équations différentielles 2 2020 2 / 12


Méthode d’Adams - Basforth

Ordre 2
h2 0
yi+1 = yi + hfi + f + O(h)3 (5)
2 i
f −f
Utilisons les différences à gauche pour la dérivée :fi0 = i hi−1 + O(h)
On obtient alors
h2 fi − fi−1
 
yi+1 = yi + hfi + + O(h) + O(h)3
2 h
h
yi+1 = yi + (3fi − fi−1 ) + O(h)3 (6)
2
Formule d’ordre 2 puisque l’on néglige les termes en h3
Pour calculer yi+1 il faut connaître fi et fi−1 .
Pour lancer le processus il faut connaître y0 et y1 .
y0 Ok c.i.
y1 on le calcule par une méthode vue précédemment du même ordre, ici on prendra RK2

L3PhysNum (EUPI) Équations différentielles 2 2020 3 / 12


Méthode d’Adams - Basforth

Ordre 3
h2 0 h3 00
yi+1 = yi + hfi + fi + f + O(h)4
2 3! i
On utilise les différences à gauche pour fi0 et fi00

fi − fi−1 h
fi0 = + fi00 + O(h)2
h 2

fi − 2fi−1 + fi−2
fi00 = + O(h)
h2
En reportant dans la relation précédente on trouve finalement :

h
yi+1 = yi + (23fi − 16fi−1 + 5fi−2 ) + O(h)4 (7)
12
Le calcul de y1 et y2 par RK4 (ordre 4), puis le processus de l’équation (7) peut être réalisé.

L3PhysNum (EUPI) Équations différentielles 2 2020 4 / 12


Méthode d’Adams - Basforth

Ordre n > 3
On calcule de la même façon et on obtient :
n
X
yi+1 = yi + h βnk fi−k + O(h)n+2 (8)
k=0

La formule la plus couramment utilisée est celle d’ordre 4

h
yi+1 = yi + (55fi − 59fi−1 + 37fi−2 − 9fi−3 ) + O(h)5 (9)
24

L3PhysNum (EUPI) Équations différentielles 2 2020 5 / 12


Méthode d’Adams - Basforth

k
0 1 2 3 4 5
n

0 1

3 −1
1 2 2

23 −16 5
2 12 12 12

55 −59 37 −9
3 24 24 24 24

1901 −2774 2616 −1274 251


4 720 720 720 720 720

4277 −7923 9982 −7298 2877 −475


5 1440 1440 1440 1440 1440 1440

Table – Coefficients βnk de l’équation (8) jusqu’à l’ordre 6 pour la méthode Adams-Bashforth

L3PhysNum (EUPI) Équations différentielles 2 2020 6 / 12


Méthode Adams fermée - Admas-Moulton

Adams-Mouton
Toujours en partant du développement en série de Taylor, mais cette fois-ci

h2 0 h3 00
yi = yi+1 − hfi+1 + f − f + ... (10)
2 i+1 3! i+1

h2 0 h3 00
yi+1 = yi + hfi+1 − fi+1 + f + ... (11)
2 3! i+1

Ordre 1
yi+1 = yi + hfi+1 + O(h)2 (12)
Pour calculer yi+1 il faut calculer fi+1 = f (yi+1 , ti+1 ) qui dépend de yi+1
Pour cela une méthode itérative est utilisée pour calculer yi+1 avec une précision ε donnée
(0) (1) (0)
• yi+1 dans (12), on obtient alors un nouvel yi+1 = yi + hf (yi+1 , ti+1 )
(2)
• puis calcul de yi+1 , ...
(r +1) (r )
• jusqu’à convergence à la précision souhaitée :|yi+1 − yi+1 | ≤ ε

L3PhysNum (EUPI) Équations différentielles 2 2020 7 / 12


Méthode Adams fermée - Admas-Moulton

Ordre n
On remplace les dérivées par les différences à gauche
n
X
yi+1 = yi + h γnk fi+1−k + O(h)n+2 (13)
k=0

A l’ordre 4 on a :
h
yi+1 = yi + (9fi+1 + 19fi − 5fi−1 + fi−2 ) + O(h)5 (14)
24

L3PhysNum (EUPI) Équations différentielles 2 2020 8 / 12


Méthode d’Adams - Moulton

k
0 1 2 3 4 5
n

0 1

1 1
1 2 2

5 8 −1
2 12 12 12

9 19 −5 1
3 24 24 24 24

251 646 −264 106 −19


4 720 720 720 720 720

475 1427 −798 482 −173 27


5 1440 1440 1440 1440 1440 1440

Table – Coefficients γnk de l’équation (13) jusqu’à l’ordre 6 pour la méthode Adams-Moulton

L3PhysNum (EUPI) Équations différentielles 2 2020 9 / 12


Méthode Prédicteur-Correcteur

Méthode
Combinaison d’un schéma explicite (prédicteur) avec un schéma implicite (correcteur)⇒ schéma
explicite
• avantage méthode fermée, très bonne précision,
• élimine les inconvénients des temps de calcul

Méthode prédicteur-correcteur Adams à l’ordre 4


• Prédicteur : Adams ouverte ordre 4
(0) h
yi+1 = yi + (55fi − 59fi−1 + 37fi−2 − 9fi−3 ) (15)
24
• Modificateur : (prédicteur amélioré par correction erreur de troncature)

(0) (0) 251 (0)


yi+1 = yi+1 − (yi − yi ) (16)
d
270
(0)
Avec yi la valeur du prédicteur au pas précédent
• correcteur : formule Adams fermée ordre 4
  
(r +1) h (r )
 yi+1 = yi + 24 9fi+1 + 19fi − 5fi−1 + fi−2
  (17)
 f (0) = f yd (0)
,t i+1
i+1 i+1
L3PhysNum (EUPI) Équations différentielles 2 2020 10 / 12
Méthode Prédicteur-Correcteur

(0)
Calcul de y1 , y2 , y3 , y3
Méthode Adams = méthode à plusieurs pas donc :
y1 , y2 , y3 : utilisation de RK4
(0)
y3 : n’existe pas, donc pas de modificateur pour calculer y4
(0)
Qu’à partir de y5 que l’on estime y5 puis faire les itérations de l’équation (17)

Erreur
L’erreur par pas dans le prédicteur-correcteur d’Adams au 4e ordre est
19
 
(0)
Ei+1 ≈ yi+1 − yi+1 (18)
270

L3PhysNum (EUPI) Équations différentielles 2 2020 11 / 12


Exercice

Comparaison de la méthode prédicteur-correcteur à l’ordre 4 et RK4 avec une itération pour le


correcteur.
 dy
+ y2 = 0
dt (19)
y (0) = 1
Prendre h = 0, 1 et comparer les résultats à t = 1.
La solution exacte est
1
y (t) =
1+t

conseil
• Écrire le schéma prédicteur-correcteur de Adams à l’ordre 4, avec une itération
• Écrire l’algorithme correspondant
• Écrire la fonction en python
• Utiliser la fonction RK4 précédemment écrire,
• puis comparer les résultats

L3PhysNum (EUPI) Équations différentielles 2 2020 12 / 12

Vous aimerez peut-être aussi