• Aucun résultat trouvé

M2 2010/2011 Sujets des TP

N/A
N/A
Protected

Academic year: 2021

Partager "M2 2010/2011 Sujets des TP"

Copied!
34
0
0

Texte intégral

(1)

volu mes

fin is .

P roblèmes

h yp erbol

iqu es ,

V UST

&

V ISIT

M2

2010/2011

Sujets des TP

G. F ACC

ANO NI

(2)

Gloria FACCANONI

IMATH Bâtiment U-318 T0033 (0)4 94 14 23 81

Université du Sud Toulon-Var

Avenue de l’université [email protected]

83957 LA GARDE - FRANCE ihttp://faccanoni.univ-tln.fr

(3)

Table des matières

1 TP1 - résolution de l’équation de transport 5

1.1 Exercice. . . 6

1.2 Code . . . 6

2 TP2 - résolution de l’équation de Burgers 10 2.1 Rappels . . . 10

2.2 Exercice. . . 12

2.3 Code . . . 13

3 TP3 - systèmes hyperboliques 14 3.1 Exemple . . . 14

3.2 Exercice. . . 24

3.2.1 Approximation numérique . . . 24

3.2.2 Code . . . 25

3.2.3 Calcul de la solution exacte du problème de Riemann . . . 25

(4)
(5)

1 TP1 - résolution de l’équation de transport

Les TP seront évalués. Vous avez jusqu’au 16 février 2011 pour rendre un rapport avec le code associé pour rendre compte de votre travail. Vous pouvez écrire le rapport seul ou en binôme avec un autre membre de votre groupe.

On considère le problème (c est une constante réelle positive)

(∂tu(x, t ) + c∂xu(x, t ) = 0 pour (x, t) ∈ ]0;L[ × ]0;T [, u(x, 0) = g (x) pour x ∈]0;L[.

Afin de se débarrasser du problème des conditions au bord on prendra des conditions périodiques : u(L, t ) = u(0, t) pour tout t ∈]0;T [

Soitα := c∆t∆xet unj ≈ u( j ∆x, n∆t ) la solution approchée au point ( j ∆x, n∆t ). On considérera les schémas aux différences finies suivants :

¶ le schéma décentré à gauche

un+1j − unj

∆t + c

unj − unj −1

∆x = 0 i.e. un+1j = unj− α(unj− unj −1)

· le schéma décentré à droite

un+1j − unj

∆t + c

unj +1− unj

∆x = 0 i.e. un+1j = unj− α(unj +1− unj)

¸ le schéma centré

un+1j − unj

∆t + c

unj +1− unj −1

2∆x = 0 i.e. un+1j = unj− α

unj +1− unj −1 2

¹ le schéma upwind (décentré amont)

un+1j − unj

∆t +c + |c|

2∆x (unj − unj −1) +c − |c|

2∆x (unj +1− unj) i.e.

un+1j = unj− µα + |α|

2 (unj − unj −1) +α − |α|

2 (unj +1− unj)

=(unj − α(unj − unj −1) siα > 0, unj − α(unj +1− unj) siα < 0.

º le schéma de Lax-Friedrichs un+1ju

n j +1+unj −1

2

∆t + c

unj +1− unj −1

2∆x = 0 i.e. un+1j =1 − α

2 unj +1+1 + α 2 unj −1

» le schéma de Lax-Wendroff

un+1j − unj

∆t + c

unj +1− unj −1 2∆xc2∆t

2

unj +1− 2unj + unj −1 (∆x)2 = 0 i.e.

un+1j = unj − α

unj +1− unj −1

2 + α2

unj +1− 2unj + unj −1 2

¼ le schéma de Beam-Warmimg

un+1j − unj g (unj −1, unj) − g (unj −2, unj −1) c(c∆x∆t− 1) c(3 − c∆x∆t)

(6)

1 TP1 - résolution de l’équation de transport

½ le schéma de Fromm un+1j − unj

∆t + c

g (unj −1, unj, unj +1) − g (unj −2, unj −1, unj)

∆x = 0 avec g (A, B,C ) =c(c∆t∆x− 1)

4 A + cB +c(1 − c∆x∆t)

4 C

i.e.

un+1j =α(α − 1)

4 unj −2+α(5 − α)

4 unj −1+(1 − α)(α + 4)

4 unj +α(α − 1) 4 unj +1

¾ le schéma anti-diffusif de Després-Lagoutière un+1j − unj

∆t + c

g (unj −1, unj, unj +1) − g (unj −2, unj −1, unj)

∆x = 0

i.e.

un+1j = unj − α(g (unj −1, unj, unj +1) − g (unj −2, unj −1, unj)) avec

g (L,C , R) =





A, si R ≤ A, B, si R ≥ B, R, sinon, où

A = max(L,C ) +C − max(L,C )

α , B = min(L,C ) +C − min(L,C )

α .

1.1 Exercice

À Compléter le code fortran avec les schémas qui manquent.

Á Pour c = 1, L = 4, T = 12, g (x) = sin(2πx/L) et une grille de 50 mailles comparer les schémas-¾aveccfl= 0.3, puis avec cfl= 0.9 et enfin aveccfl= 1.1. Que remarque-t-on à propos de la stabilité ? Que remarque-t-on à propos de la diffusion ? Et de la dispersion ? Répéter les calculs sur une grille de 500 mailles.

 Même exercice pour g (x) =

(0 si x ∈ ]0;L/3[ ∪ ]2L/3;L[, 1 sinon.

à Étudier (analytiquement) la stabilité L2et l’ordre de consistance des schémas¶-½; en déduire une condition CFL le cas échéant.

Le schéma¶est stable L2sous condition CFL 0 < α < 1 et consistants d’ordre 1 en temps et en espace, le schéma·est stable L2sous condition CFL −1 < α < 0 et consistants d’ordre 1 en temps et en espace, le schéma¸est consistants d’ordre 1 en temps et 2 en espace mais inconditionnellement instable, les schémas¹-ºsont stables L2sous condition CFL |α| < 1 et consistants d’ordre 1 en temps et en espace, le schéma»est stables L2sous condition CFL |α| < 1 et consistant d’ordre 1 en temps et 2 en espace, le schéma¼est stable L2sous condition CFL 0 < α < 1 et consistant d’ordre 1 en temps et 2 en espace, enfin le schéma½est stable L2sous condition CFL 0 < α < 2 et consistant d’ordre 1 en temps et 2 en espace. Pour l’étude de stabilité du schéma¾voirhttp://www.math.u-psud.fr/~lagoutie/publi.html

1.2 Code

Pour compiler le programmetransport.f90on utilisera la commande

g f o r t r a n t r a n s p o r t . f90 - o t r a n s p o r t . o

L’exécutable ainsi crée s’appelletransport.oqu’on lancera en tapant

./ t r a n s p o r t . o

Les résultats sont sauvegardés dans les fichierstransportN.datoùN= 0 . . .Smaxest le numéro de la sauvegarde. Un fichier transportN.datcomporteNXlignes et 11 colonnes :

x décentré gauche

décentré droite

centré upwind lax-

friedrichs

lax- wendroff

beam- warmimg

fromm antidiffusif

Pour comparer la solution approchée du schéma XXX avec la solution exacte au cours du temps on tapera

g n u p l o t p l o t _ X X X . gnu

(7)

1 TP1 - résolution de l’équation de transport

Pour comparer les solutions approchées des schémas avec la solution exacte à l’instant finale on tapera

g n u p l o t p l o t _ c o m a p a r a i s o n _ f i n a l e . gnu

Exemple : étude du schéma

(décentré à gauche)

un+1j − unj

∆t + c

unj − unj −1

∆x = 0 i.e. un+1j = unj − α(unj − unj −1)

StabilitéL2. On utilise l’analyse de Fourier : pour k ∈ Z, le coefficient de Fourier ˆun(k) de la solution du schéma vérifie ˆ

un+1(k) =h

1 − α + αe−i 2πk∆xi ˆ un(k).

En notantξ ≡ 2πk∆x, on a

ˆ

un+1(k) =h

1 − α + αe−i ξi ˆ un(k) =

=£1 − α + α¡cos(−ξ) + i sin(−ξ)¢¤ ˆun(k) =

= [1 − α + α cos(ξ) − i α sin(ξ)] ˆun(k).

Après simplification on obtient

| ˆun+1(k)|2= |A(k)|2| ˆun(k)|2 avec

|A(k)|2≡ [1 − α + α cos(ξ)]2+ α2sin2ξ =

= 1 + 2α(α − 1)(1 − cos(ξ)).

On a

|A(k)| ≤ 1 ∀k ∈ Z ⇐⇒ 2α(α − 1)(1 − cos(ξ)) ≥ 0 ∀ξ ∈ R ⇐⇒ α(α − 1) ≥ 0.

Pour 0 ≤ α ≤ 1 on a |A(k)| ≤ 1 pour toute fréquence k ∈ Z, ce qui prouve que le schéma est stable en norme L2sous la condition CFL 0 ≤ α ≤ 1.

Ordre de consistance. On remplace umi par u(xi, tm) où u est une fonction régulière, i = j − 1, j et m = n,n + 1. On définit l’erreur de troncature par

τnju(xj, tn+1) − u(xj, tn)

∆t + cu(xj, tn) − u(xj −1, tn)

∆x .

On fait un développement de Taylor en x autour du point xj et en t autour du point tn et, comme u est solution de l’équationtu = −c∂xu, on a

u(xj −1, tn) = u(xj, tn) − ∆x∂u

∂x(xj, tn) +(∆x)2 2

2u

∂x2(xj, tn) + O((∆x)3), u(xj, tn+1) = u(xj, tn) + ∆t∂u

∂t(xj, tn) +(∆t)2 2

2u

∂t2(xj, tn) + O((∆t)3)

= u(xj, tn) + ∆t µ

−c∂u

∂x(xj, tn)

¶ +(∆t)2

2

∂t µ

−c∂u

∂x(xj, tn)

+ O((∆t )3)

= u(xj, tn) − c∆t∂u

∂x(xj, tn) − c(∆t)2 2

∂x µ∂u

∂t(xj, tn)

+ O((∆t )3)

= u(xj, tn) − c∆t∂u

∂x(xj, tn) + c2(∆t)2 2

2u

∂x2(xj, tn) + O((∆t)3).

Par conséquent l’erreur de troncature se réécrit

τnju(xj, tn+1) − u(xj, tn)

∆t + cu(xj, tn) − u(xj −1, tn)

∆x

= µ

c2∆t 2 − c∆x

2

2u

∂x2(xj, tn) + O((∆x)2+ (∆t )2)

= O((∆x) + (∆t )).

(8)

1 TP1 - résolution de l’équation de transport

Exemple : étude du schéma

¸

(centré)

un+1j − unj

∆t + c

unj +1− unj −1

2∆x = 0 i.e. un+1j = unjα

2(unj +1− unj −1)

StabilitéL2. On utilise l’analyse de Fourier : pour k ∈ Z, le coefficient de Fourier ˆun(k) de la solution du schéma vérifie ˆ

un+1(k) =h 1 −α

2

³

ei 2πk∆x− e−i 2πk∆x

´i ˆ un(k).

En notantξ ≡ 2πk∆x, on a ˆ

un+1(k) =h 1 −α

2

³

eiξ− e−i ξ

´i ˆ un(k) =

= h

1 −α

2¡ cos(ξ) + i sin(ξ) − cos(−ξ) − i sin(−xi)¢i ˆ un(k) =

= [1 − i α sin(ξ)] ˆun(k).

Après simplification on obtient

| ˆun+1(k)|2= |A(k)|2| ˆun(k)|2 avec

|A(k)|2≡ 1 + α2sin2(ξ).

On a

|A(k)| ≤ 1 ∀k ∈ Z ⇐⇒ α2sin2(ξ) ≤ 0 ∀ξ ∈ R ⇐⇒ 6 ∃α ∈ R.

Ce qui prouve que le schéma est inconditionnellement instable en norme L2.

Ordre de consistance. On remplace umi par u(xi, tm) où u est une fonction régulière, i = j − 1, j , j + 1 et m = n,n + 1. On définit l’erreur de troncature par

τnju(xj, tn+1) − u(xj, tn)

∆t + cu(xj +1, tn) − u(xj −1, tn)

2∆x .

On fait un développement de Taylor en x autour du point xj et en t autour du point tn et, comme u est solution de l’équationtu = −c∂xu, on a

u(xj −1, tn) = u(xj, tn) − ∆x∂u

∂x(xj, tn) +(∆x)2 2

2u

∂x2(xj, tn) + O((∆x)3), u(xj +1, tn) = u(xj, tn) + ∆x∂u

∂x(xj, tn) +(∆x)2 2

2u

∂x2(xj, tn) + O((∆x)3), u(xj, tn+1) = u(xj, tn) + ∆t∂u

∂t(xj, tn) + O((∆t)2)

= u(xj, tn) + ∆t µ

−c∂u

∂x(xj, tn)

+ O((∆t )2)

= u(xj, tn) − c∆t∂u

∂x(xj, tn) + O((∆t)2).

Par conséquent l’erreur de troncature se réécrit

τnju(xj, tn+1) − u(xj, tn)

∆t + cu(xj +1, tn) − u(xj −1, tn)

2∆x = O((∆x)2+ (∆t )).

Le schéma est donc d’ordre 1 en temps et 2 en espace.

Exemple : étude du schéma

º

(Lax-Friedrichs)

un+1ju

n j +1+unj −1

2

∆t + c

unj +1− unj −1

2∆x = 0 i.e. un+1j =1 − α

2 unj +1+1 + α 2 unj −1

(9)

1 TP1 - résolution de l’équation de transport

StabilitéL2. On utilise l’analyse de Fourier : pour k ∈ Z, le coefficient de Fourier ˆun(k) de la solution du schéma vérifie

ˆ

un+1(k) =· 1 − α

2 ei 2πk∆x1 + α

2 e−i 2πk∆x

¸ ˆ un(k).

En notantξ ≡ 2πk∆x, on a

uˆn+1(k) =· 1 − α

2 eiξ+1 + α 2 e−i ξ

¸

uˆn(k) = [cos(ξ) − i αsin(ξ)] ˆun(k).

Après simplification on obtient

| ˆun+1(k)|2= |A(k)|2| ˆun(k)|2 avec

|A(k)|2≡ cos2(ξ) + α2sin2(ξ).

On a

|A(k)| ≤ 1 ∀k ∈ Z ⇐⇒ cos2(ξ) + α2sin2(ξ) ≥ 1 ∀ξ ∈ R ⇐⇒ α2≤ 1.

Ce qui prouve que le schéma est stable en norme L2sous la condition CFL |α| ≤ 1.

Ordre de consistance. On remplace umi par u(xi, tm) où u est une fonction régulière, i = j − 1, j , j + 1 et m = n,n + 1. On définit l’erreur de troncature par

τnju(xj, tn+1) −u(xj +1,t

n)+u(xj −1,tn) 2

∆t + cu(xj +1, tn) − u(xj −1, tn)

2∆x .

On fait un développement de Taylor en x autour du point xj et en t autour du point tn et, comme u est solution de l’équationtu = −c∂xu, on a

u(xj −1, tn) = u(xj, tn) − ∆x∂u

∂x(xj, tn) + O((∆x)2), u(xj +1, tn) = u(xj, tn) + ∆x∂u

∂x(xj, tn) + O((∆x)2), u(xj, tn+1) = u(xj, tn) + ∆t∂u

∂t(xj, tn) + O((∆t)2)

= u(xj, tn) + ∆t µ

−c∂u

∂x(xj, tn)

+ O((∆t )2)

= u(xj, tn) − c∆t∂u

∂x(xj, tn) + O((∆t)2).

Par conséquent l’erreur de troncature se réécrit

τnju(xj, tn+1) − u(xj, tn)

∆t + cu(xj +1, tn) − u(xj −1, tn)

2∆x = O

µ

(∆x) + (∆t) +(∆x)2

∆t

¶ .

Étant donné que, sous la condition CFL calculée précédemment, O³

(∆x)2

∆t

´

= O(∆x), le schéma est donc d’ordre 1 en temps et en espace.

(10)

2 TP2 - résolution de l’équation de Burgers

Les TP seront évalués. Vous avez jusqu’au 16 février 2011 pour rendre un rapport avec le code associé pour rendre compte de votre travail. Vous pouvez écrire le rapport seul ou en binôme avec un autre membre de votre groupe.

2.1 Rappels

On cherche

u :R × R+→ R (x, t ) 7→ u(x, t) solution faible entropique du problème

(∂tu + ∂xq(u) = 0, x ∈ R, t > 0, u(x, 0) = g (x), x ∈ R, avec le flux

q :R → R u 7→ q(u)

Courbes caractéristiques : on appelle courbe caractéristique de l’EDP une courbe x = x(t) dans le demi-espace t > 0 le long de laquelle la solution u est constante.

Si pour un point (x, t ) passe une et une seule caractéristique et cette caractéristique a pied en (ξ,0), alors u(x,t) = g(ξ).

La caractéristique de pied (ξ,0) a équation

x(t ) = ξ + q0(g (ξ))t.

Pour t suffisamment petit, la solution u est définie implicitement par l’équation u = g (x − q0(g (ξ))t).

Condition de Rankine-Hugoniot : si deux caractéristiques s’intersectent elles génèrent une discontinuité dans la solution.

La courbe de discontinuité est appelée onde de choc et si elle est régulière et a équation x = s(t) alors u doit vérifier les relations de Rankine-Hugoniot : si on appelle uRet uLrespectivement les traces de u à droite et à gauche de la courbe de choc, on a

s0(t ) =q(uR(s(t ), t )) − q(uL(s(t ), t )) uR(s(t ), t ) − uL(s(t ), t ) .

Si (x0; t0) est le premier point où les caractéristiques s’intersectent, alors on obtient l’équation de la courbe de choc en résolvant l’EDO avec la condition initiale s(t0) = x0.

Condition d’entropie : une condition qui permet de sélectionner parmi les solutions faibles qui vérifient les relations de saut de Rankine-Hugoniot la solution «physique» est la condition d’entropie de Lax le long de la courbe de choc x = s(t) :

q(uR(s(t ), t )) < s0(t ) < q(uL(s(t ), t )).

Onde de raréfaction ou de détente : dans les régions du demi-espace t > 0 qui ne sont pas rejointes par les caractéristiques on construit la solution (qui se connecte avec continuité avec les autres régions du demi-espace) par des ondes de raréfaction.

Une onde de raréfaction centrée en (x0, t0) a équation

u(x, t ) = R µx − x0

t − t0

où R est la fonction inverse de q0.

(11)

2 TP2 - résolution de l’équation de Burgers

Exemple

Considérons l’équation de Burgerstu + ∂xu2

2 = 0 avec donnée initiale

g (x) =





0 si x < 1, 1 si 1 < x < 2, 0 si x > 2.

Il s’agit d’une équation de typetu + ∂xq(u) = 0 avec

q(u) =u2

2 , q0(u) = u, (q0)−1(r ) = r.

L’équation de la caractéristique de pied (ξ,0) est

x(t ) = ξ + q0(g (ξ))t = ξ + (g(ξ))t =





ξ, ξ < 1, ξ + t, 1 < ξ < 2, ξ, ξ > 2.

1 2 x

t

On s’attend donc à ce que la solution faible entropique présente une onde de raréfaction centrée en (1, 0) et une onde de choc qui part de (2, 0) et que, après un certain temps, les deux ondes interagissent.

B La raréfaction est comprise entre la droite d’équation

x(t ) = 1 et la droite d’équation

x(t ) = 1 + t et a équation

u(x, t ) = (q0)−1 µx − 1

t − 0

=x − 1 t .

B Pour déterminer l’équation de l’onde de choc qui a pied en (2, 0) on utilise les relations de Rankine-Hugoniot : (s0(t ) =q(uuRR)−q(u−uLL)=(u2(uR)2R−(u−uLL))2=2(1−0)1−0 =12

s(0) = 2 d’où x = s(t) =12t + 2.

Ces considérations sont valables jusqu’à ce que l’onde de choc et l’onde de raréfaction se touchent, c’est-à-dire jusqu’à t = 2.

Donc la solution pour 0 < t < 2 est

u(x, t ) =









0, si x < 1,

x−1

t , si 1 < x < t + 1, 1, si t + 1 < x <12t + 2, 0, si x >12t + 2.

(12)

2 TP2 - résolution de l’équation de Burgers

1 2 3

2

x t

B Pour t > 2 on continue à avoir une onde de choc mais l’état gauche n’est plus constante car il est donné par la raréfaction i.e.

uL=s(t )−1t donc le nouveau choc a pied en (3, 2) et vérifie





s0(t ) =q(uuRR)−q(u−uLL)=(u2(uR)2R−(u−uLL))2=0−

³s(t )−1 t

´2

2(0−s(t )−1t )=s(t )−12t s(2) = 3

d’où l’équation x = 1 +p 2t .

1 2 3

2

x t

L’unique solution faible entropique pour t > 0 est donc

u(x, t ) =

















0, si x < 1,

x−1

t , si 1 < x < min{1 + t,1 +p 2t }, 1, si 1 + t < x <12t + 2,

0, si x >12t + 2 et t < 2, 0, si x > 1 +p

2t et t ≥ 2.

x

u t = 0

t = 1 t = 2 t = 3 t = 4

Remarquons que l’amplitude du choc vaut q2

t et le choc se déplace à vitesse q1

2t. Par conséquent, pour t → ∞, l’amplitude et la vitesse du choc tendent vers zéro.

2.2 Exercice

On considère l’équation de Burgers sur l’intervalle [0; 6] avec des conditions au bord de Neumann homogènes. Soitα :=∆x∆t,cfl une constante réelle positive et unj ≈ u( j ∆x, n∆t ) la solution approchée dans la mailles de centre ( j ∆x,Pn

k(∆t)k). On considère des schémas de Volumes Finis :

un+1j = unj − αn(g (unj −1, unj) − g (unj, unj +1)) avec ∆t ≤cfl ∆x sup

j |unj|. Les différents schémas se caractérisent par la définition du flux numérique g :

(13)

2 TP2 - résolution de l’équation de Burgers

¶ le schéma de Lax-Friedrichs :

g (L, R) =q(L) + q(R) +L−Rα 2

· le schéma de Lax-Wendroff :

g (L, R) =q(L) + q(R) − α(q(R) − q(L))q0¡L+R

2

¢ 2

¸ le schéma de Godunov : si on dénote w (xt, L, R) la solution exacte du problème de Riemann à deux états donnés par L (gauche) et R (droite), le flux numérique s’écrit

g (L, R) = q(w(0,L,R))

¹ le schéma de Murman-Roe :

g (L, R) =

(q(L) si a(L, R) ∈ {0,1},

q(R) si a(L, R) = −1a(L, R) =

(signe(q(L) − q(R)) · signe(L − R) si L 6= R,

signe(q0(L)) sinon.

À Compléter le code fortran en implémentant le schéma de Murman-Roe.

Á Soit g (x) =

(1 si x ∈ ]0;1.5[ ∪ ]1.5;3[, 0 sinon.

Pour T = 4.0 et une grille de 50 mailles comparer les schémas-¹aveccfl= 0.5, puis aveccfl= 1,cfl= 2 et enfin avec cfl= 3. Que peut-on conclure à propos de la stabilité ? Est-ce que la vitesse de l’onde de choc numérique est correcte pour tous les schémas ? La solution numérique converge-t-elle vers une solution faible ? Et vers une solution faible entropique ? Les schémas¶-¹sont-ils monotones ?

 Même exercice pour g (x) =

(0 si x ∈ ]0;1.5[ ∪ ]1.5;3[, 1 sinon.

à Calculer la solution exacte, l’implémenter dans le code et la comparer avec les solutions numériques obtenues avec les schémas¶-¹pour les données initiales suivantes :

g (x) =





0 si x ∈ ]0;1[, 1 si x ∈ ]1;2[, 0 si x ∈ ]2;3[,

g (x) =





2 si x ∈ ]0;1[, 1 si x ∈ ]1;2[, 0 si x ∈ ]2;3[,

g (x) =





0 si x ∈ ]0;1[, 1 si x ∈ ]1;2[, 2 si x ∈ ]2;3[,

g (x) =





1 si x ∈ ]0;1[, 0 si x ∈ ]1;2[, 1 si x ∈ ]2;3[.

Facultatif : décrire et implémenter le schéma de Glimm (voir par exemple le livre de E. F. TORORiemann solvers and numerical methods for fluid dynamics. A practical introduction. Second edition. Springer-Verlag, Berlin, 1999.)

2.3 Code

Pour compiler le programmeburgers.f90on utilisera la commande gfortran burgers.f90 -o burgers.o L’exécutable ainsi crée s’appelleburgers.oqu’on lancera en tapant ./burgers.o

Les résultats sont sauvegardés dans le dossierdatadans les fichiersburgersN.datoùN= 0 . . .Smaxest le numéro de la sauvegarde.

Un fichierburgersN.datcomporteNXlignes et 6 colonnes : x u_lf u_lw u_go u_mr u_gl

Pour comparer la solution approchée du schémaXXavec la solution exacte au cours du temps on tapera, dans le répertoiredata, la commande gnuplot plot_XX.gnu oùXXestLFouLWouGoouMRouGl.

Pour comparer les solutions approchées des schémas avec la solution exacte à l’instant finale on tapera, dans le répertoiredata, la commande gnuplot data/plot_comaparaison_finale.gnu

(14)

3 TP3 - systèmes hyperboliques

3.1 Exemple

On veut étudier un modèle qui décrit la dynamique d’un gaz isentropique en coordonnées lagrangiennes. On noteτ ≡ τ(x,t) > 0 le volume spécifique du fluide, u ≡ u(x, t) ∈ R sa vitesse et p ≡ p(τ) > 0 sa pression. Dans tout l’exercice la pression sera une fonction de classeC2strictement décroissante et convexe :1

(p0(τ) < 0, p00(τ) > 0.

En dimension un d’espace, on modélise ce type d’écoulements par le système (∂tτ − ∂xu = 0,

tu + ∂xp(τ) = 0, avec x ∈ R, t > 0. (3.1)

1. Trouver les vecteurs W :R+× R → R2et F(W) :R2→ R2tels que le système (3.1) s’écrit

tW + ∂xF(W) = 0.

2. Le système (3.1) se réécrit, pour des solutions régulières, sous la forme quasi-linéaire

tW + A(W)∂xW = 0. (3.2)

Montrer que la matriceA(W) s’écrit

µ 0 −1

p0(τ) 0

¶ .

3. Calculer les deux valeurs propresλ1(W) etλ2(W) de la matriceA(W). Afin de fixer les notations on ordonne les deux valeurs propres selonλ1(W) < λ2(W). Proposer une base associée de vecteurs propres à droite {r1(W), r2(W)}. En déduire que le système (3.4) est strictement hyperbolique.

4. Vérifier que les champs 1 et 2 sont vraiment non linéaires.

5. On note Ikl’invariant de Riemann du k-ème champ caractéristique. Montrer qu’un choix possible pour I1et I2est

I1= u − Z τ

τ0

q

−p0(r )dr,

I2= u + Z τ

τ0

q

−p0(r )dr.

6. Pour un état gauche WL= (τL, uL) donné on cherche les états W = (τ,u) qui peuvent être relié à WLpar une onde de choc entropique.

6.1. Considérons le 1-champ.

6.1.1. Montrer que u < uL,τ < τL.

6.1.2. Calculer u en fonction deτL, uLetτ. Plus précisément, montrer que u peut se mettre su la forme u = uL+ d(τL,τ)

en explicitant la fonction d . Étudier la fonctionτ 7→ u = uL+ d(τL,τ) et tracer son graphe dans le plan (τ,u).

6.2. Reprendre la question pour le 2-champ.

7. Pour un état gauche WL= (τL, uL) donné on cherche les états W = (τ,u) qui peuvent être relié à WLpar une onde de détente.

7.1. Considérons le 1-champ.

7.1.1. Montrer que u > uL,τ > τL.

1. Un exemple de loi de pression qui vérifie ces hypothèses est p(τ) = τ−γavecγ > 1 qui décrit le comportement d’un gaz parfait polytropique isentropique.

(15)

3 TP3 - systèmes hyperboliques

7.1.2. Calculer u en fonction deτL, uLetτ. Plus précisément, montrer que u peut se mettre su la forme u = uL+ r (τL,τ)

en explicitant la fonction r . Étudier la fonctionτ 7→ u = uL+ r (τL,τ) et tracer son graphe dans le plan (τ,u).

7.2. Reprendre la question pour le 2-champ.

8. À l’aide du dessin d’onde dans le plan (τ,u) résoudre le problème de Riemann : pour un état gauche WLet un état droit WR

on construira une solution composée d’une 1-onde et d’une 2-onde séparant un état intermédiaire W. On précisera les valeurs de cet état intermédiaire ainsi que les vitesses des ondes.

(Aide : il faut considérer cinq configurations différentes.)

9. Cherchons maintenant une entropie pour le système (3.1). Montrer que la fonction η(W) =u2

2 − Zτ

τ0

p(r )dr est une entropie du système avec flux d’entropie

Φ(W) = up(τ).

Solution

1. On atV + ∂xF(V) = 0 avec

V = µτ

u

, F(V) =µ −u

p(τ)

¶ . 2. On développe les dérivées du système (3.1) pour des solutions régulières :

(∂tτ − ∂xu = 0,

tu + p0(τ)∂xτ = 0, et on trouve le système quasi-linéaire suivant :

t

µτ u

¶ +

µ 0 −1

p0(τ) 0

x

µτ u

=µ0 0

¶ .

3. On cherche les deux solutionsλk(W) de l’équation det(A(W) − λ(W)Id) = 0, i.e. de l’équation (−λ)2+ p0(τ) = 0.

On obtient

λ1(W) = − q

−p0(τ) < 0 < λ2(W) = + q

−p0(τ).

Puisque p0(τ) 6= 0, les valeurs propres sont réelles et distinctes donc le système (3.1) est strictement hyperbolique. On peut alors prendre

r1(W) =

µ 1

p−p0(τ)

, r2(W) =

µ 1

−p−p0(τ)

¶ .

4. Pour déterminer la nature des deux champs caractéristiques on calcule (∇λk)T· rkpour k = 1,2 :

(∇λ1(W))T· r1(W) =∂¡−p−p0(τ)¢

∂τ +

q

−p0(τ)∂¡−p−p0(τ)¢

∂u = p00

2p−p0 > 0, 1-champ VNL, (∇λ2(W))T· r2(W) =∂¡p−p0(τ)¢

∂τ

q

−p0(τ)∂¡p−p0(τ)¢

∂u = −p00

2p−p0< 0, 2-champ VNL.

Étant donné qu’aucun champ n’est LD, il n’y aura aucune discontinuité de contact.

5. On vérifie que (∇Ik(W))T· rk(W) = 0 pour k = 1,2 :

(∇I1(W))T· r1(W) =³ u −Rτ

τ0p−p0(r )dr

´

∂τ +

q

−p0(τ)∂³ u −Rτ

τ0p−p0(r )dr

´

∂u = 0,

(16)

3 TP3 - systèmes hyperboliques

6. Étude des chocs : on cherche à déterminer les états droits W = (τ,u) qui peuvent être reliés à un état gauche WL= (τL, uL) par une discontinuité de vitesse ˙σ.

6.1. 1-champ :

6.1.1. la condition d’entropie (Lax) pour k = 1 demande à ce que la vitesse ˙σ1du 1-choc vérifie 1(W) < ˙σ1< λ2(W),

σ˙1< λ1(WL), c’est-à-dire

(−p−p0(τ) < ˙σ1<p−p0(τ), σ˙1< −p−p0(τL),

donc −p−p0(τ) < ˙σ1< −p−p0(τL) < 0. Puisque p est convexe alors p0est croissante donc τ < τL.

En utilisant les relations de Rankine-Hugoniot on trouve (σ˙1=uτ−τL−uL,

σ˙1=p(τ)−p(τu−uLL), donc, puisque ˙σ1< 0 et τ < τL, on a

u < uL.

On conclut donc que les états W = (τ,u) qui peuvent être reliés à un état gauche WL= (τL, uL) par un 1-choc doivent satisfaire les deux inégalités

(u < uL, τ < τL.

6.1.2. En éliminant ˙σ1dans les relations de Rankine-Hugoniot on trouve τ 7→ u = uL+ d(τL,τ) pourτ < τL

avec d (τL,τ) = −p(p(τL) − p(τ))(τL− τ) et la vitesse du 1-choc est

τ 7→ ˙σ1= −

sp(τ) − p(τL) τL− τ . De plus,

u0(τ) =p0(τ)(τ − τL) + p(τ) − p(τL)

2p(p(τ) − p(τL))(τL− τ) > 0, pourτ < τL,

u00(τ) = ··· < 0, pourτ < τL.

On a donc les graphes suivants :

τ u

WL uL

τL

x = ˙σ1t

WL WR

x t

6.2. 2-champ :

(17)

3 TP3 - systèmes hyperboliques

6.2.1. la condition d’entropie (Lax) pour k = 2 demande à ce que la vitesse ˙σ2du 2-choc vérifie 2(W) < ˙σ2,

λ1(WL) < ˙σ2< λ2(WL), c’est-à-dire

(p−p0(τ) < ˙σ2,

−p−p0(τL) < ˙σ2<p−p0(τL), donc 0 <p−p0(τ) < ˙σ2<p−p0(τL). Puisque p est convexe alors

τ > τL. En utilisant les relations de Rankine-Hugoniot on trouve

(σ˙2=uτ−τL−uL, σ˙2=p(τ)−p(τu−uLL), d’où

u < uL. On conclut donc que

(u < uL, τ > τL. 6.2.2. Les relations de Rankine-Hugoniot donnent aussi

τ 7→ u = uL+ d(τL,τ) pourτ > τL

avec d (τL,τ) = −p(p(τ) − p(τL))(τL− τ) et la vitesse du 2-choc est

τ 7→ ˙σ2= s

p(τ) − p(τL) τL− τ . De plus,

u0(τ) =p0(τ)(τ − τL) + p(τ) − p(τL)

2p(p(τ) − p(τL))(τL− τ) < 0, pourτ > τL,

u00(τ) = ··· > 0, pourτ > τL.

On a donc les graphes suivants :

τ u

WL uL

τL

x = ˙σ2t

WL WR

x t

7. Étude des détentes : on cherche à déterminer les états droits W = (τ,u) qui peuvent être reliés à un état gauche WL= (τL, uL) par une onde de détente.

(18)

3 TP3 - systèmes hyperboliques

7.1.1. Dans une détente les invariants de Riemann sont conservés. Ici k = 1 d’où I1(WL) = I1(W)

donc

u = uL+ Z τ

τL

q

−p0(y)dy.

Puisque p est convexe, la conditionλ1(WL) < λ1(W) impliqueτ > τLet u > uL. 7.1.2. On obtient ainsi

u = uL+ r (τL,τ) pourτ > τL

avec r (τL,τ) = RττLp−p0(y)dy. De plus,

u0(τ) =q

−p0(τ) > 0, pourτ > τL,

u00(τ) =−p00(τ)p−p0(τ)

2 < 0, pourτ > τL.

On a donc les graphes suivants :

τ u

WL

uL

τL

x= λ1 (W

L)t x=λ

1(W

R)t

WL WR

x t

Pour calculer la solution en un point (x, t ) à l’intérieure de l’onde on considère la caractéristique qui relie ce point à l’origine de l’onde, ici (0, 0). La vitesse caractéristique estdxdt = λ1(τ,u), c’est-à-dire xt−p−p0(τ). De plus, l’invariant de Riemann est conservé dans l’onde, donc u −Rτ

τ0p−p0(y)dy = uL−RτL

τ0 p−p0(y)dy. Donc, si p(τ) = τ−γalors p0(τ) = −γτ−γ−1et on conclut que dans l’ondeτ(xt) =¡−pγtx¢γ+12

. 7.2. 2-champ :

7.2.1. Dans une détente les invariants de Riemann sont conservés. Ici k = 2 d’où I2(WL) = I2(W)

donc

u = uL− Z τ

τL

q

−p0(y)dy.

Puisque p est convexe, la conditionλ2(WL) < λ2(W) impliqueτ < τLet u > uL. 7.2.2. On obtient ainsi

u = uL+ r (τL,τ) pourτ < τL

avec r (τL,τ) = −RττLp−p0(y)dy. De plus,

u0(τ) = −q

−p0(τ) < 0, pourτ < τL, u00(τ) =p00(τ)p−p0(τ)

2 > 0, pourτ > τL.

On a donc les graphes suivants :

(19)

3 TP3 - systèmes hyperboliques

τ u

WL

uL

τL

x = λ2(WR

)t x=λ2(W

L)t

WL WR

x t

Récapitulatif : quel qui soit WL= (τL, uL), le demi-planR+× R se décompose en quatre zones séparées par les quatre demi-courbes 1-choc, 2-choc, 1-détente et 2-détente.

τ u

1-choc

2-choc 2-détente

1-détente WL

uL

τL

I

I I

I I I I V

8. Soit un problème de Riemann avec les deux états constants donnés suivants :

WL= µτL

uL

, WR= µτR

uR

¶ .

La solution est constituée de trois états constants séparés par deux ondes.

1-onde

2-onde WL

W

WR x t

Pour expliciter cette solution on cherche à définir l’inconnue

W= µτ

u

à l’aide de l’étude des ondes précèdent :

Références

Documents relatifs

d’hydrogène et les autres atomes. CH 3 – OH II-1) Exercice d'application : Construire en utilisant les modèles moléculaires, les molécules ci- dessous en respectant le

Vous ferez l'acquisition d'un levé de tomographie électrique (profilage + sondage) le long d’un profil sur un terrain à l’extérieur de l’École Polytechnique (sur la pente de

Un régulateur intégré de tension est un boîtier qui permet de stabiliser une tension à une valeur fixe, et est nécessaire pour les montages électroniques qui ont besoin d'une

Utilise la méthode précédente pour construire le milieu du segment [AB] dans chaque casb. 4 En

Construis le cercle de diamètre [BE] ; il recoupe le segment [BC] en F et le segment [AB] en

— L’ensemble des fonctions continues sur [0, 1] dérivables quelque part, c’est-à-dire des fonc- tions f telles qu’il existe x 0 ∈]0, 1[ avec f dérivable en x 0.

Montrer qu’à homéomorphisme près, l’espace de Baire est le seul espace polonais zéro- dimensionel non vide dont les compacts sont d’intérieur vide.. On pourra s’inspirer de

En utilisant un schéma de Cantor, montrer qu’il existe une copie K de l’espace de Cantor dans X telle que f K soit injective.. Conclure que tout sous-ensemble analytique de tout