next up previous contents
suivant: Schémas explicites d'Euler monter: Méthode de Lax précédent: Présentation   Table des matières

Etude de la stabilité

L'étude de la stabilité de ce schéma va nous servir d'exemple pour présenter deux notions importantes, la dissipation artificielle (liée au comportement en amplitude de l'erreur) et la dispersion (liée au comportement en phase de l'erreur).

Avant toute chose, il est nécessaire de remarquer que l'erreur numérique et la solution exacte ont les mêmes propriétés de croissance dans le temps. Les erreurs dans un système stable ne croissent donc pas dans le temps.

La méthode de stabilité est celle de von Neumann (ou de Fourier). L'erreur initiale (à $t=0$) y est décrite sous la forme d'une série de Fourier :

\begin{displaymath}
\epsilon(x,0)= \sum_m \epsilon_m (x,0) = \sum_m \epsilon_{0_m} \exp{[i \frac{2 \pi x_j}{\lambda_m}]}
\end{displaymath}

avec $\lambda_m$ une longueur d'onde et $k_m=\frac{2 \pi}{\lambda_m}$ le nombre d'onde correspondant. Le maillage implique :

\begin{displaymath}
\left\{
\begin{array}{lcl}
\lambda_{min} = \Delta x & \textr...
...\textrm{ soit } & k_{min} = \frac{2 \pi}{L}
\end{array}\right.
\end{displaymath}

$\lambda_{min}$ et $\lambda_{max}$ représentent le min. et le max. de la gamme finie de longueurs d'ondes. Cette gamme contient $\frac{L}{ \Delta x}$ points de discrétisation.

On suppose que l'erreur pour chaque mode de Fourier est sous la forme :

\begin{displaymath}
\epsilon_m (x,t) = \epsilon_{0_m} g^n \exp{(i k_m x_j)}
\end{displaymath}

de sorte que $\epsilon_m(x,0) = \epsilon_{0_m} \exp{(ik_mx_j)}$. Il faut bien noter ici le terme $g$ puissance $n$ ($n$ l'itération). L'équation de l'erreur est :

\begin{displaymath}
\epsilon_{j}^{n+1} =\frac{\epsilon_{j+1}^{n}+\epsilon_{j-1}^...
...\left[ \frac{\epsilon_{j+1}^{n}-\epsilon_{j-1}^{n}}{2} \right]
\end{displaymath}

En développant (avec $\epsilon_j^n = g^n e^{i k_m j \Delta x}$), on obtient :

\begin{displaymath}
g = cos(K_m \Delta x) - \frac{c \Delta t}{\Delta x} [i \sin{(k_m \Delta x)}]
\end{displaymath}

Or, on a :

\begin{displaymath}
g = \frac{(\epsilon_m)_j^{n+1}}{(\epsilon_m)_j^{n}}
\end{displaymath}

$g$ est le facteur d'amplification pour le mode de Fourier $m$. La condition de stabilité est donc :

\begin{displaymath}
\vert g\vert = \vert \cos{(k_m \Delta x)} - i \nu \sin{(k_m \Delta x)} \vert \leqslant 1
\end{displaymath}

$\nu = \frac{c \Delta t}{\Delta x}$ est le nombre de courant.

Une condition équivalente de stabilité est $\vert\nu\vert \leqslant 1$ (poser $\vert g\vert^2 \leqslant 1$).

Le facteur d'amplification peut aussi se poser sous la forme :

\begin{displaymath}
g = \vert g\vert e^{i \varphi} =
\underbrace{\sqrt{\cos{(k_...
...\tan^{-1}[- \nu \tan{(k_m \Delta x)}]}}_{\textrm{d\'ephasage}}
\end{displaymath}

Le déphasage s'interprète comme la translation de chaque mode de Fourier dans le schéma.

\includegraphics[width=5in]{IMAGES/dispersion1.eps}
Solution exacte

\includegraphics[width=5in]{IMAGES/dispersion2.eps}
Solution approchée numériquement

Si $\vert g\vert = 1$ et $\varphi = 0$ (pour chaque mode de Fourier) on n'a pas d'erreur d'amplitude ni de phase. On observe donc ni dissipation artificielle (erreur d'amplitude) ni dispersion (erreur de phase).


next up previous contents
suivant: Schémas explicites d'Euler monter: Méthode de Lax précédent: Présentation   Table des matières
RISSER Laurent 2006-02-04