$$\newcommand{\mtn}{\mathbb{N}}\newcommand{\mtns}{\mathbb{N}^*}\newcommand{\mtz}{\mathbb{Z}}\newcommand{\mtr}{\mathbb{R}}\newcommand{\mtk}{\mathbb{K}}\newcommand{\mtq}{\mathbb{Q}}\newcommand{\mtc}{\mathbb{C}}\newcommand{\mch}{\mathcal{H}}\newcommand{\mcp}{\mathcal{P}}\newcommand{\mcb}{\mathcal{B}}\newcommand{\mcl}{\mathcal{L}} \newcommand{\mcm}{\mathcal{M}}\newcommand{\mcc}{\mathcal{C}} \newcommand{\mcmn}{\mathcal{M}}\newcommand{\mcmnr}{\mathcal{M}_n(\mtr)} \newcommand{\mcmnk}{\mathcal{M}_n(\mtk)}\newcommand{\mcsn}{\mathcal{S}_n} \newcommand{\mcs}{\mathcal{S}}\newcommand{\mcd}{\mathcal{D}} \newcommand{\mcsns}{\mathcal{S}_n^{++}}\newcommand{\glnk}{GL_n(\mtk)} \newcommand{\mnr}{\mathcal{M}_n(\mtr)}\DeclareMathOperator{\ch}{ch} \DeclareMathOperator{\sh}{sh}\DeclareMathOperator{\th}{th} \DeclareMathOperator{\vect}{vect}\DeclareMathOperator{\card}{card} \DeclareMathOperator{\comat}{comat}\DeclareMathOperator{\imv}{Im} \DeclareMathOperator{\rang}{rg}\DeclareMathOperator{\Fr}{Fr} \DeclareMathOperator{\diam}{diam}\DeclareMathOperator{\supp}{supp} \newcommand{\veps}{\varepsilon}\newcommand{\mcu}{\mathcal{U}} \newcommand{\mcun}{\mcu_n}\newcommand{\dis}{\displaystyle} \newcommand{\croouv}{[\![}\newcommand{\crofer}{]\!]} \newcommand{\rab}{\mathcal{R}(a,b)}\newcommand{\pss}[2]{\langle #1,#2\rangle} $$
Bibm@th

Méthode d'Euler

  Bien souvent, on ne sait pas résoudre exactement une équation différentielle, c'est-à-dire qu'on ne sait pas donner la forme explicite des solutions. Il faut alors recourir à des méthodes qui donnent des solutions approchées. La méthode d'Euler est l'une d'entre elles. L'idée principale est d'approcher, au voisinage d'un point (x0,y0), une fonction inconnue par sa tangente, qui elle est connue.

  Précisons : u'=f(x,u) est une équation différentielle de condition initiale y0=u(x0). Si u est solution de cette équation différentielle, on a u'(x0)=f(x0,y0), et la tangente en (x0,y0) à la courbe représentative de u a pour équation y=f(x0,y0)(x-x0)+y0. Sur un petit intervalle [x0,x1], on remplace la courbe représentative de u par cette tangente. Au point (x1,y1) [y1 est l'ordonnée du point d'abscisse x1 sur la tangente], on recommence en prenant cette fois la droite de coefficient directeur f(x1,y1).

  Ainsi, si b>x0, et si on souhaite obtenir une valeur approchée de u(b), on procède de la sorte : on choisit un nombre de pas n, et on pose h=(b-x0)/n le pas. On définit par récurrence des suites (xp) et (yp) avec :
xp+1=xp+h, yp+1=hf(xp,yp)+yp
On a xn=b, et on prouve que si f est C1, pour h petit, yn constitue une bonne approximation de u(b).

  Voici le résultat sur l'applet java suivante. On considère l'équation différentielle u'=xu, avec u(0)=1, dont l'unique solution est u(x)=exp(x2/2). La solution exacte est représentée en rouge, et la solution approchée en bleu. Voyez comment, quand le nombre de pas augmente, la solution approchée colle de plus en plus à la solution exacte!



  Il existe des méthodes plus évoluées que la méthode d'Euler, comme la méthode de Runge-Kutta. Elles sont employées dans les logiciels de calcul formel comme Maple.

Source : Francois Liret,Dominique Martinais, Mathématiques pour le Deug, Analyse 2ième année.