• Aucun résultat trouvé

Analyse des approximations

7.5 Maillage

8.1.3 Analyse des approximations

Calcul des schémas de récurrence

Nous considérons dans ce paragraphe une situation un peu plus générale que les problèmes mo-dèles en appliquant les schémas ci-dessus à des systèmes différentiels issus de l’approximation d’une équation aux dérivées partielles.

Le schéma d’Euler explicite ne demande que des multiplications matrice - vecteur, et ne pose pas de problème particulier, à part la représentation de la matrice qui doit tenir compte de la forme creuse, voire tridiagonale de la matrice, le produit matrice vecteur étant écrit dans cette représentation (ma-trices “sparse” de Scilab ou MatLab).

Les schémas d’Euler implicite ou des trapèzes s’écrivent mathématiquement à l’aide d’une inversion de matricequ’on ne devra pas (jamais !) faireen pratique ; en effet l’inverse d’une matrice creuse est (en général et en particulier ici) pleine et la seule multiplication de la matrice inverse par un vec-teur exigeraitN2opération alors que l’opération que nous allons décrire ci-dessous est enO(N). Considérons par exemple le schéma d’Euler implicite, pour l’équation de la diffusion (donc A = −K), écrit sous la forme

(Id+τK)Un+1=Un

Pour calculerUn+1il faut à chaque pas résoudre un système à matrice tridiagonale symétrique définie positive (la matrice du système est tridiagonale comme l’est la matriceK)

(Id+τK)U=b

Il existe1alors une matriceLtriangulaire inférieure et bidiagonale telle que (Id+τK) =LLt

A chaque itération on résout les deux systèmes à matrice triangulaires bidiagonale

LY = b (8.25)

LtU = Y (8.26)

ce qui ne coûte que4N opérations.

Résultats expérimentaux

Comportement du schéma d’Euler explicite appliqué à l’équation de la diffusion:

Voir la figure 8.1. Le profil initial de température est parabolique. Pour un pas de tempsτ plus petit que0.02les résultats paraissent cohérents : la courbe de température est régulière, concave et décroît vers0. Pour un pas de temps de 0.02 une oscillation apparaît rapidement, puis la solution explose en oscillant.

Analyse:

1C’est la décomposition de Choleski, un sous-produit de la triangulation de la matriceApar la méthode du pivot de Gauss. Voir ([8], [9], [2])

Ci-contre Pas de temps τ τ τ τ = 0.019 Visualisation des 100 premières étapes,

repré-sentées de 10 en 10.

Pas de temps τ τ τ τ = 0.020 Visualisation des 100 premières étapes,

repré-sentées de 10 en 10.

Pas de temps τ τ τ τ = 0.020 Visualisation des 200 premières étapes,

repré-sentées de 10 en 10.

FIG. 8.1 – Comportement du schéma d’Euler explicite appliqué à l’équation de la diffusion. FixonsL= 1pour simplifier. Nous avons calculé (2.10) un développement en séries de Fourier de la solution exacte

u(x, t) =X k

akexp (−k2π2ct) sin (kπx)

d’où au point(jh, nτ)avech= N1+1 u(jh, nτ) =X

k

akexp (−k2π2cnτ) sin (kjπh)

On voit que les coefficients des différents harmoniques décroissent avec le temps, d’autant plus vite que la fréquence est élevée.

On peut calculer (paragraphe 8.1.5) les vecteurs et valeurs propres de la matriceM Vk= sinkjπh, µk= 1−4

h2(sin (kπ 2h))

2

on en déduit, en décomposant la position initialeU0j dans la base de vecteurs propres deM U0j =X

k

et donc

Unj =MnU0j =X k

ckk)nVk (8.27)

si h2 1/2 toutes les valeurs propres µk sont plus petites que1 en module, ce qui implique la décroissance des coefficients de chaque vecteur propre. Mais si h2 1/2,

µN = 1−4

h2(sin (Nπ 2h))

2 ∼1−4 h2

µN est inférieure à −1 et c’est la plus grande valeur propre, en valeur absolue. Le coefficient du vecteurVN dans (8.27) domine tous les autres et il tend vers l’infini : comme le vecteurVN définit une suite oscillante cela explique l’apparition des oscillations grandissantes sur la figure 8.1.

Schéma d’Euler explicite : une position et le mouvement du point milieu

Schéma d’Euler implicite : une position et le mouvement du point milieu

Schéma des trapèzes : une position et le mouvement du point milieu

-2 0 2 4 0 20 40 60 80 100 -1 -0.5 0 0.5 1 0 50 100 150 -1 -0.5 0 0.5 1 0 50 100 150 200 250

FIG. 8.2 – Comportement des trois schémas appliqués à l’équation des ondes. Comportement des trois schémas appliqués à l’équation des ondes.:

Voir la figure 8.2. Le calcul est mené avec une faible précision (10 pas). Avec le schéma d’Euler explicite la l’amplitude des oscillations est croissante. Avec le schéma d’Euler implicite la solution se “régularise” rapidement (suppression des petites irrégularités), ce qui n’est pas normal, et l’amplitude

décroît comme le montre le mouvement du point milieu. Avec le schéma des trapèzes il y a conserva-tion de l’amplitude et on observe des irrégularités qui correspondent au passage des harmoniques de fréquence élevées.

Conservation des propriétés qualitatives

Il y a plusieurs raisons pour construire des schémas d’approximation d’une équation aux déri-vées partielles qui conservent certaines propriétés qualitatives des solutions : la première étant que l’utilisateur d’un logiciel sera surpris de voir une grandeur physiquement positive devenir négative, même faiblement ! La deuxième étant que certaines propriétés qualitatives, comme par exemple la conservation d’une énergie ou la décroissance du maximum, assurent la stabilité et la convergence des approximations.

Équation de la diffusion

Nous avons vu (Prop. 59) que l’équation de la diffusion est dissipative, qu’en est-il des schémas ? −Le schéma explicite s’écrit

Un+1=Un−τKUn=Un h2K0Un

oùK0 est une matrice symétrique définie positive (cf. 8.10). Il n’est pas toujours dissipatif pour le produit scalaire canonique deRN, en effet

hUn+1,Un+1i=hUn,Uni+τ2hKUn,KUni −2τhKUn,Uni

si on choisit pourUnun vecteur propreVdeK0 de valeur propreλ >0, le second membre s’écrit (1 + c

2τ2

h4 λ2−2

h2λ)hV,Vi Le schéma est dissipatif si

cτ h2 < 2

λ

On peut montrer (8.33) queλ <4, ce qui conduit à la condition suffisante cτ

h2 < 1 2

En examinant la formule de récurrence (8.20) on vérifie que sous cette condition unj+1 est une moyenne des un

j, ce qui implique la décroissance du maximum et la positivité des valeurs si les valeurs initiales sont positives.

−Le schéma implicite s’écrit

Un+1−τKUn+1 =Un

Il est toujours dissipatif pour le produit scalaire canonique deRN, en effet, si nous prenons le carré scalaire de chaque membre du schéma

Le premier membre n’est formé que de termes positifs donc hUn+1,Un+1i<hUn,Uni Équation des ondes

Nous avons vu (8.2) que cette équation est conservative. −Le schéma explicite s’écrit

Xn+1=Xn+τAXn

oùAest une matrice antisymétrique pour le produit scalaire que nous avons noté., . . Prenons le carré scalaire de chaque membre

Xn+1,Xn+1 = Xn,Xn2 AXn,AXn −2τ AXn,Xn = Xn,Xn2 AXn,AXn

puisque pour une matrice antisymétrique AX,X = 0. Le schéma n’est pas conservatif : à chaque étape il rentre de l’énergie.

−Le schéma implicite s’écrit

Xn+1−τAXn+1=Xn

Prenons le carré scalaire de chaque membre

Xn+1,Xn+12 AXn+1,AXn+1 −2τ AXn+1,Xn+1 =Xn,Xn Donc

Xn+1,Xn+12 AXn+1,AXn+1 =Xn,Xn Les deux termes du premier membre étant positifs on en déduit

Xn+1,Xn+1 <Xn,Xn Le schéma implicite est toujours dissipatif.

Le schéma des trapèzes s’écrit

Xn+1=MXn avec M= (Id− τ 2A) −1(Id+τ 2A) On a hXn+1,Xn+1i=hMXn,MXni=hMtMXn,Xni

Montrons que la matriceMest orthogonale pour le produit scalaire ., . . En effet la matriceA

étant antisymétrique MtM = (Id+τ 2A) t(Id−τ 2A) −t(Id−τ 2A) −1(Id+τ 2A) = (Id−τ 2A)(Id+ τ 2A) −1(Id−τ 2A) −1(Id+τ 2A) = Id

(En tenant compte du fait que toutes ces matrice commutent). On en déduit que le schéma des trapèzes est conservatif en énergie.