Résolution numérique des équations différentielles – Maths BTS
Retour aux cours
Calcul et Analyse Numérique

Résolution numérique des équations différentielles

La résolution numérique des équations différentielles consiste à utiliser des méthodes algorithmiques pour approcher les solutions d’équations différentielles lorsque les solutions analytiques sont difficiles ou impossibles à obtenir. Des méthodes comme Euler ou Runge-Kutta permettent de calculer approximativement l’évolution d’un système. La vidéo YouTube en présente un exemple de résolution avec Python.

Résolution numérique des équations différentielles


1. Aspects théoriques


On considère \(y'(t)=f(t,y(t))\) avec \(f:I\times\Omega\to\mathbb{R}^d\). Une solution est un couple \((y,J)\) avec \(J\subset I\) intervalle, \(y:J\to\Omega\) dérivable.

Cauchy-Lipschitz

Si \(f\) est continue et localement lipschitzienne en \(y\), pour tout \((t_0,y_0)\) il existe une unique solution maximale \((y,]T_-,T_+[)\). Si \(T_+\) inférieur à \(\sup I\) alors \(y(t)\) sort de tout compact (explosion si \(\Omega=\mathbb{R}^d\)).

Cas linéaire

\(y'=A(t)y+B(t)\) avec \(A,B\) continues sur \(I\). Alors le problème de Cauchy admet une unique solution globale sur \(I\).

Lemme de Gronwall (continu)

Soient \(\phi,\psi\ge0\) et \(\phi(t)\le\alpha+\int_a^t\psi(s)\phi(s)\,ds\) pour \(t\ge a\). Alors \(\phi(t)\le\alpha\exp\bigl(\int_a^t\psi(s)\,ds\bigr)\).

2. Schéma d’Euler explicite


Discrétisation uniforme \(t_n=t_0+nh\), \(h=T/N\) :
\[
y_{n+1}=y_n+hf(t_n,y_n),\qquad y_0=y(t_0).
\]
Erreur de consistance : \(\epsilon_n=y(t_{n+1})-y(t_n)-hf(t_n,y(t_n))\). Si \(f\in C^1\) alors \(\|\epsilon_n\|\le\frac{h^2}{2}\sup\|y''\|\).
Stabilité : \(\|y_n-\tilde y_n\|\le e^{LT}\|y_0-\tilde y_0\|\) (car \(f\) est \(L\)-lipschitzienne).
Convergence : \(\|e_n\|\le h\,\frac{e^{LT}-1}{2L}\sup\|y''\|\) → ordre 1.

3. Méthodes à un pas


Forme générale : \(y_{n+1}=y_n+h\Phi(t_n,y_n,h)\).
Exemples :

  • Euler : \(\Phi=f\).

  • Taylor d’ordre 2 : \(\Phi=f+\frac{h}{2}\bigl(\frac{\partial f}{\partial t}+\frac{\partial f}{\partial y}f\bigr)\).

  • Point milieu : \(\Phi=f\bigl(t+\frac{h}{2},y+\frac{h}{2}f(t,y)\bigr)\).



Consistance : schéma consistant ssi \(\Phi(t,y,0)=f(t,y)\).

Stabilité : si \(\Phi\) est globalement lipschitzienne en \(y\) (constante \(\Lambda\)), alors stable avec constante \(S=e^{\Lambda T}\).

Convergence : consistant + stable ⇒ convergent.

Ordre : on dit qu’un schéma est d’ordre \(p\) si pour toute solution \(y\) on a \(\|\epsilon_n\|\le C h^{p+1}\). Alors \(\sup_n\|y(t_n)-y_n\|=O(h^p)\).

Caractérisation : définissons \(f^{[0]}=f\), \(f^{[k+1]}=\frac{\partial f^{[k]}}{\partial t}+\frac{\partial f^{[k]}}{\partial y}\,f\). Alors la méthode est d’ordre \(p\) ssi
\[
\frac{\partial^k\Phi}{\partial h^k}(t,y,0)=\frac{1}{k+1}f^{[k]}(t,y),\]
\(0\le k\le p-1.\)

4. Méthodes de Runge‑Kutta


Principe : on utilise des quadratures pour approcher \(\int_{t_n}^{t_{n+1}}f(s,y(s))\,ds\). On introduit des points intermédiaires \(t_{n,i}=t_n+c_ih\) et des approximations \(y_{n,i}\) :
\[
y_{n,i}=y_n+h\sum_{j=1}^q a_{i,j}f(t_{n,j},y_{n,j}),
\]
\[
y_{n+1}=y_n+h\sum_{i=1}^q b_i f(t_{n,i},y_{n,i}).
\]
Le tableau de Butcher résume les coefficients \((a_{i,j},b_i,c_i)\). On parle de méthode RK explicite si \(a_{i,j}=0\) pour \(j\ge i\) (triangulaire stricte).

Consistance : \(\sum b_i=1\).

Ordre 2 (pour \(f\in C^2\)) : conditions
\[
\sum b_i=1,\quad \sum b_i c_i=\frac12,\]
\[
\sum_{i,j} b_i a_{i,j}=\frac12.
\]
RK2 (famille à deux étages) : avec \(c_1=0\), \(a_{2,1}=c_2\), \(b_1=1-\alpha\), \(b_2=\alpha\), \(c_2=1/(2\alpha)\). Cas particuliers :

  • \(\alpha=1\) : méthode du point milieu.

  • \(\alpha=1/2\) : méthode de Heun (trapèzes).



RK4 classique : tableau
\[
\begin{array}{c|cccc}
0 & 0 & 0 & 0 & 0\\
1/2 & 1/2 & 0 & 0 & 0\\
1/2 & 0 & 1/2 & 0 & 0\\
1 & 0 & 0 & 1 & 0\\
\hline
& 1/6 & 2/6 & 2/6 & 1/6
\end{array}
\]
Soit
\[
\begin{aligned}
k_1 &= f(t_n,y_n),\\
k_2 &= f(t_n+\tfrac{h}{2},y_n+\tfrac{h}{2}k_1),\\
k_3 &= f(t_n+\tfrac{h}{2},y_n+\tfrac{h}{2}k_2),\\
k_4 &= f(t_n+h,y_n+hk_3),\\
y_{n+1}&=y_n+\tfrac{h}{6}(k_1+2k_2+2k_3+k_4).
\end{aligned}
\]
C’est une méthode d’ordre 4.
Pour plus de détails, consulter le PDF ci-joint.
Discuter sur le forum

Testez vos connaissances

Répondez aux questions ci-dessous, puis cliquez sur « Soumettre ».

1. Le théorème de Cauchy-Lipschitz garantit l’existence et l’unicité d’une solution au problème de Cauchy $y' = f(t,y)$, $y(t_0)=y_0$ sous quelles hypothèses ?

(Indication : Le théorème (Théorème 4.6) requiert $f$ continue et localement Lipschitzienne en $y$. )

2. Le schéma d’Euler explicite pour $y' = f(t,y)$ avec un pas constant $h$ s’écrit :

(Indication : La méthode d’Euler explicite utilise le taux d’accroissement à gauche : $y_{n+1} = y_n + h f(t_n, y_n)$. )

3. L’erreur de consistance $\epsilon_n$ d’un schéma à un pas est définie par :

(Indication : Définition 4.13 : $\epsilon_n$ est l’erreur commise à l’étape $n$ si la valeur au point $t_n$ est exacte. )

4. La méthode d’Euler explicite est convergente à l’ordre :

(Indication : L’estimation (4.14) montre que l’erreur globale est en $O(h)$. C’est un schéma d’ordre 1. )

5. Un schéma à un pas $y_{n+1} = y_n + h\Phi(t_n, y_n, h)$ est consistant si et seulement si :

(Indication : Théorème 4.18 : la condition nécessaire et suffisante de consistance est $\Phi(t,y,0)=f(t,y)$. )

6. Pour qu’une méthode de Runge-Kutta explicite à $q$ étapes soit d’ordre au moins $2$, les coefficients $(b_i)$ et $(c_i)$ doivent vérifier, outre $\sum b_i = 1$ :

(Indication : Proposition 4.27 : les conditions d’ordre 2 sont $\sum b_i = 1$, $\sum b_i c_i = 1/2$ et $\sum b_i a_{i,j} = 1/2$. )

7. L’équation différentielle $y' = y^2$, $y(0)=1$ a pour solution maximale définie sur :

(Indication : La solution est $y(t)=1/(1-t)$, définie pour $t$ inférieur à 1. C’est un exemple d’explosion en temps fini (Théorème 4.8). )

8. La méthode de Heun (Runge-Kutta d’ordre 2 avec $\alpha=1/2$) correspond à la fonction $\Phi$ :

( Indication : La méthode de Heun est obtenue pour $\alpha=1/2$ dans la famille RK2 (voir Section 4.4.2). )

9. Un schéma numérique est dit stable s’il existe une constante $S$ (indépendante de $h$) telle que pour toute perturbation $(\delta_n)$ sur le schéma, on ait :

( Indication : Définition 4.15 : la stabilité contrôle l’accumulation des erreurs locales. )

10. La méthode de Runge-Kutta d’ordre 4 (RK4) utilise, pour chaque pas de temps, un nombre d’évaluations de la fonction $f$ égal à :

(Indication : Le tableau de Butcher de RK4 montre quatre pentes $P_1, P_2, P_3, P_4$ (voir Section 4.4.3). )

Avis et commentaires

Partagez votre avis sur ce cours ou posez une question.

Laisser un commentaire
Soyez le premier à laisser un commentaire !
Lien copié !