Des méthodes plus précises
Depuis le 18ème siècle, on utilise des méthodes numériques pour approcher les solutions d'une équation. Depuis que les ordinateurs se chargent des calculs, leur efficacité et leurs performances sont remarquables.
Dans la pratique, on utilise des méthodes analogues à la méthode d'Euler, mais plus élaborées et donc plus précises (elles donnent, pour un pas du même ordre, une bien meilleure approximation de la solution cherchée).
Qu'est-ce qu'une méthode numérique ?
Une méthode numérique de résolution d'une équation différentielle \(y' = f(x, y)\) est un processus permettant, au moyen d'opérations élémentaires, d'évaluer la valeur en un point \(x_0 + a\) de la solution \(u(x)\) d'une équation donnée, connaissant sa valeur \(y_0 = u(x_0)\) au point \(x_0\). Généralement, on se fixe un pas \(h\) petit et constant, et la méthode consiste à évaluer de proche en proche, en itérant un même processus, les valeurs de \(\displaystyle{u(x_0 + h), u(x_0 + 2h), u(x_0 + 3h)}\), etc ... La méthode d'Euler que nous venous de voir est la plus simple, mais ce n'est pas celle qui fournit les meilleurs résultats.
Fondamental : Ordre d'une méthode numérique
Soit \(u\) la solution de l'équation \(y' = f(x, y)\) vérifiant \(u(x_0) = y_0\).
Lorsqu'on effectue un pas de la méthode d'Euler pour évaluer la valeur \(u(x_0 + h)\), l'erreur commise sur l'évaluation de \(u(x_0 + h)\) est de l'ordre de \(h^2\), c'est-à-dire qu'elle peut être majorée par \(Kh^2\), où \(K\) est une certaine constante ; si on se donne par exemple la valeur \(u(0) = y_0\) et qu'on cherche à approximer \(u(1)\), le nombre de pas à effectuer est environ \(1/h\); on montre sous certaines hypothèses que l'erreur commise sur \(u(1)\) peut être majorée par \(C h\), où \(C\) est une constante :
on dit que la méthode d'Euler est de l'ordre \(1\), puisque l'erreur est de l'ordre de \(h\) à la puissance \(1\).
Plus généralement, on dit qu'une méthode est d'ordre \(p\) si l'erreur commise à chaque pas entre \(x_k\) et \(x_k + h\) est de l'ordre de \(h^{p+1}\) (et en général, pour \(x_1\) et \(x_0\) donnés, l'erreur totale dans le calcul de \(u(x_1)\) connaissant \(u(x_0)\) est de l'ordre de \(h^p\)).
Comme \(h\) est petit, plus \(p\) est grand et plus cette erreur sera petite, donc plus la méthode sera précise.