Visites depuis le 14 juin 2002
Table des matières
Joindre l'auteur


Chapitre VI : Résolution numériques des équations différentielles



Plan

1. Position du Problème

2. Méthodes de résolution des équations différentielles
    2.1. Méthode d'Euler
        2.2.1. Méthode de Runge-Kutta à l'ordre 2
        2.2.2. Méthode de Runge-Kutta à l'ordre 4
    2.2. Méthode de Runge-Kutta à pas unique
    2.3. Méthode d'Adams à pas multiple
        2.3.1. Formules d'Adams ouvertes
            2.3.1.1. Formules d'Adams à l'ordre 1
            2.3.1.2. Formules d'Adams à l'ordre 2
            2.3.1.3. Formules d'Adams à l'ordre 3
            2.3.1.4. Formules d'Adams à l'ordre plus élevé
        2.3.2. Formules d'Adams fermées
    2.4. Méthode de Prédicteur-Correcteur
    2.5. Problèmes avec des conditions aux limites : Méthode de TIR
    2.6. Problèmes avec des conditions aux limites : Méthode Matricielle
 


1. Position du Problème

Les méthodes analytiques ne sont pas suffisantes pour résoudre les problèmes d'équations différentielles. En effet, il existe plusieurs types d'équation différentielles. Chaque type nécessite une méthode de résolution particulière.

La résolution de la plupart des équations différentielles requiert donc l'utilisation de méthodes numériques. Chacune de ces méthodes peut être appliquée à la résolution de la plupart des équations différentielles.

Les équations différentielles peuvent être classées en deux catégories : les équations différentielles aux conditions initiales et les équations différentielles aux conditions aux limites.

Exemples :

1°) Soit l'équation différentielle suivante :

On donne en plus de cette équation différentielle les conditions initiales suivantes :

et 

Dans cette équation, la variable indépendante peut être le temps, mais aussi toute autre variable. Dans ce cas, on peut dire que toute équation différentielle d'ordre  avec des conditions initiales peut être remplacée par un système de  équations différentielles couplées du 1er ordre. En posant , le système précédent devient :

avec : 

Ainsi, un problème aux conditions initiales est donc de la forme :

où  et 

On obtient alors un système de  équations à  inconnues. Ce système peut être résolu par rapport à une seule variable (le temps par exemple) :

Les méthodes employées pour la résolution du système précédent se généralisent de façon immédiate pour résoudre les systèmes de  équations à  inconnues.

2°) Soit l'équation de la propagation de la chaleur le long d'une barre :

Ce problème est à conditions aux limites.

Dans de nombreux cas, on trouve des problèmes où les conditions aux limites (ou les conditions initiales) n'ont pas de sens physique.
 

2. Méthodes de résolution des équations différentielles

2.1. Méthode d'Euler

La méthode d'Euler est la méthode la plus simple et la moins précise.
Soit à résoudre l'équation différentielle suivante :

En supposant  connue à l'instant t, le développement en série de Taylor de au voisinage de  donne :

à l'ordre 1, on obtient :

Pour  constant, on a :

est connue à , donc, la fonction y peut être déterminée à tout autre instant ultérieur.

Exemple :

Résoudre l'équation différentielle du 1er ordre suivante :

La solution exacte de ce système est :

Selon la méthode d'Euler, la solution de ce système s'écrit :

car 

Dans le tableau ci-dessous, donne une comparaison entre la solution numérique et la solution exacte obtenue analytiquement pour un pas de temps s :
 
i
ti
yi exact
yi Méthode d'Euler
% Err. relative
1
0,1
0,90909091
0,90000000
1,00
2
0,2
0,83333333
0,81900000
1,72
3
0,3
0,76923077
0,75192390
2,25
4
0,4
0,71428571
0,69538494
2,65
5
0,5
0,66666667
0,64702892
2,95
7
0,7
0,58823529
0,56854190
3,25
9
0,9
0,52631579
0,50746495
3,58
11
1,1
0,47619048
0,45850815
3,71

D'après ce tableau, on remarque que l'erreur augmente au fur et à mesure que  augmente. Donc, cette méthode est peu précise. Elle n'est pas utilisée dans la résolution numérique des équations différentielles. Nous l'avons utilisée pour introduire les autres méthodes et donner une simple idée sur l'erreur commise.
 

2.2. Méthode de Runge-Kutta à pas unique

Les méthodes de Runge-Kutta sont bien utilisée dans la pratique, car elles présentent plusieurs avantages (facilité de programmation, stabilité de la solution, modification simple du pas et la connaissance de  suffit pour intégrer l'équation différentielle). Les inconvénients de cette méthode se résument au temps de calcul lent et à la difficulté de l'estimation de l'erreur locale.

2.2.1. Méthode de Runge-Kutta à l'ordre 2

Cette méthode est obtenue en prenant les différences centrées au 1er ordre :

Or  est inconnue. Dans ce cas, on remplace  par sa valeur estimée  dans l'équation précédente, et on obtient :

Pour évaluer , la fonction  doit être calculée deux fois, d'où l'appellation "Formule d'ordre 2" : la première fois pour l'obtention de  et la seconde fois pour évaluer .
 

2.2.2 Méthode de Runge-Kutta à l'ordre 4

Dans la plupart des cas, la méthode de Runge-Kutta utilisée est celle d'ordre 4 :

Le calcul de  nécessite alors 4 évaluations de la fonction , et par suite pour les fonctions compliquées le temps de calcul devient important.
 

2.3. Méthode d'Adams à pas multiple

Cette méthode est l'une des catégories à pas multiples. Elle peut être classée en formules ouvertes ou formules fermées.

2.3.1. Formules d'Adams ouvertes

Soit l'équation différentielle suivante :

(1)

Le développement en série de Taylor autour de  donne :

Dans l'équation différentielle (1), on a :

où :
                                                                                        (2)
 

2.3.1.1. Formules d'Adams à l'ordre 1

Dans l'équation (2), on garde les deux premiers termes (à l'ordre 1) :

                                                                                                                                                                                 (3)

C'est l'équation d'Euler (ou méthode d'Euler).
 

2.3.1.2. Formules d'Adams à l'ordre 2

On utilise les trois premiers termes de l'équation (2) :

                                                                                                                                                  (4)

On remplace  par son expression en fonction des différences finies à gauche, et on obtient :

et l'expression (3) devient :

ou encore :

Les termes d'ordre 3 sont négligés. Donc, la formule est d'ordre 2. Pour calculer , il faut connaître  et . On remarque que ne peut pas être déterminée car on ne connaît pas . Pour démarrer cette méthode, il faut utiliser une autre méthode pour évaluer  (méthode de Runge-Kutta à l'ordre 2 par exemple).
 

2.3.1.3. Formules d'Adams à l'ordre 3

On utilise les 4 premiers termes de l'équation (2) :

On exprime  et  par leurs formules obtenues à partir des différences à gauches, et on trouve :

D'où la solution devient après regroupement des différents termes :

On a la même remarque que précédemment, on calcule  et  en utilisant la méthode de Runge-Kutta à l'ordre 4.

2.3.1.4. Formules d'Adams à l'ordre plus élevé

En utilisant le même principe, on peut exprimer, par une formule générale d'ordre  en fonction de  et  :
                                                                                                                      (4)

Dans le tableau suivant, on donne les valeurs de  jusqu'à , ce qui correspond à une formule d'ordre 6.
 
0
1
2
3
4
5
Ordre de la méthode
0
1
         
1
1
       
2
2
     
3
3
   
4
4
 
5
5
6

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


 

2.3.2. Formules d'Adams fermées

Dans ces formules, on utilise le développement en série de Taylor "en arrière" :

Dans ce développement en série de Taylor, on remarque que :

D'où pour , on a :

Ainsi, on obtient :

Cette formule est dite "fermée" car pour obtenir l'inconnue , il faut calculer  qui dépend lui même en général de . On utilise donc une méthode itérative. Pour cela, on injecte une première valeur estimée  de .

On obtient alors une nouvelle  :

(pour l'ordre 1 par exemple)

Ensuite, on injecte  pour calculer . On arrête les calculs quand la convergence est réalisée. Si cette convergence s'effectue quand la précision est inférieure à une valeur  donnée, on a donc :

à l'ordre , on obtient la formule généralisée suivante :

Les valeurs de  sont donnée par le tableau ci-dessous jusqu'à .
 
0
1
2
3
4
5
Ordre de la méthode
0
1
         
1
1
       
2
2
     
3
3
   
4
4
 
5
5
6

La méthode la plus couramment utilisée est celle à l'ordre 4, c'est à dire :

On constate que les formules fermées, qui sont itératives, demandent plus de temps de calcul que les formules ouvertes, puisqu'il faut calculer  de telle sorte que la différence converge vers .
 

Pour le même ordre, ces formules sont bien plus précises et plus stables que celles dites "ouvertes". Leur convergence est d'autant plus rapide que l'estimation initiale  est plus proche de la valeur exacte .
 

2.4. Méthode de Prédicteur-Correcteur

La combinaison des deux méthodes précédentes (formules d'Adams ouvertes et formules d'Adams fermées) constitue la méthode de prédicteur-correcteur. Il suffit de trouver une valeur estimée  proche de la valeur finale . Le prédicteur  est obtenu par une formule ouverte de même ordre. Cette valeur  est introduite dans la méthode à formule fermée. Ceci permet d'accélérer la convergence vers la solution. Ainsi, on profite des avantages liés à la méthode d'Adams : temps de calcul réduit et erreur estimée de troncature réduite considérablement.
 

Pour la méthode d'Adams au 4ème ordre, on a :
 

Prédicteur : formules d'Adams ouvertes au 4ème ordre :

                                                                                                                             (5)

au pas précédent, on a  qui est la valeur du prédicteur (modificateur)

                                                                                                                                                              (6)

Correcteur : obtenu à partir de la formule d'Adams fermée (au 4ème ordre par exemple) :

                                                                                                                               (7)

Les valeurs  et  peuvent être calculées à partir des formules de Runge-Kutta. Étant donné que  n'existe pas, la valeur  est calculée à partir des équations (5) et (6) et  va initialiser les calculs d'itérations (formule (7)). À partir de , on estime  par l'équation (5), puis  par la formule (6). Cette valeur est injectée dans la formule (7) pour amorcer les itérations.
 

Exercice :

Résoudre l'équation différentielle suivante par la méthode de Runge-Kutta à l'ordre 4, puis par la méthode de prédicteur-correcteur d'ordre 4 en se limitant à une itération pour le correcteur. On prendra  et on comparera les résultats obtenus par les deux méthodes pour  par exemple :


 

2.5. Problèmes avec des conditions aux limites : Méthode de TIR

La méthode de TIR consiste à remplacer le problème de conditions aux limites par un problème de conditions initiales. Les conditions aux limites qui ne sont pas des conditions initiales ne peuvent se concevoir que pour des équations différentielles d'ordre au moins égal à 2, ou pour les systèmes d'équations différentielles du 1er ordre.

Soit l'équation différentielle du second ordre suivante :

                                                                                                                              (8)

avec les conditions aux limites suivantes :

On remplace ces conditions aux limites par des conditions initiales :

         où  est arbitraire

En utilisant les méthodes décrites précédemment, la résolution de (8) donne une solution  qui, pour , prend la valeur . Cette solution est une fonction de , et on cherche  de telle sorte qu'on ait :

Ainsi, le problème devient une équation dont on est amené à chercher sa racine.

Pour résoudre l'équation (8), on donne 2 valeurs arbitraires  et ; ce qui donne  et  puis on déduit une valeur  par interpolation linéaire. Ayant obtenu  et  à partir de  et , on en déduit  dans le cas général par :

                                                                                                                              (9)

La convergence est réalisée quand  et  seront suffisamment proches l'une de l'autre.
 

Exemples :


Cette équation du 3ème ordre peut être ramenée à un système de 3 équations du 1er ordre, en posant :

d'où :

avec : 

Ce système est à conditions aux limites. Pour le résoudre, on le transforme en un système aux conditions initiales :

avec : 

Ce système peut être résolu par l'une des méthodes décrites précédemment (prédicteur-correcteur avec initialisation ou Runge-Kutta) ensuite on détermine la valeur de  pour que  soit égal à 1.

On dit qu'une équation différentielle est non linéaire si , …,  apparaissent à des puissances différentes de 1, comme par exemple :
                                                                                                                                              (10)

Si l'équation est à coefficients dépendants de l'inconnue, peut s'écrire sous la forme suivante par exemple :

Ces équations peuvent être résolues par décomposition en un système de  équations à  inconnues du 1er ordre, comme c'est le cas de l'exemple précédent (équation 10) :

Cette équation peut être écrite sous la forme :

et on remplace l'ensemble des conditions aux limites par des conditions initiales.
 

2.6. Problèmes avec des conditions aux limites : Méthode Matricielle

Equation différentielle du second ordre : différences finies

Soit à résoudre l'équation différentielle du second ordre suivante :

                                                                                                                              (11)

On suppose connues :

(conditions aux limites)

On divise l'intervalle  en  intervalles égaux à .

On utilise les formules d'ordre 2 aux différences centrées :

L'équation (11) devient en  et pour  :

Après regroupement des différents termes, on obtient :

équation qui peut être écrite aussi sous la forme suivante la plus simple :

Pour  variant de 1 à , on obtient un système de  équations à  inconnues  (où ). La première équation de ce système correspond à  et la dernière correspond à . Ces deux équations s'écrivent, puisqu'on connaît les conditions aux limites  et  :

Ainsi, le système d'équations (12) devient :


 

Ce système est défini par une matrice tridiagonale. Sa résolution est simple et rapide : ( équations à  inconnues ). Pour aboutir à la précision recherchée, on résout le système plusieurs fois avec des pas , etc. jusqu'à la convergence souhaitée.