Académique Documents
Professionnel Documents
Culture Documents
Réalisé par :
Baba Abdelhamid
Amin Henteti
Classe: 2eme année Techniques Avancées
1
Résolution numérique de l’équation de la chaleur
Avant propos
Soit Ω un ouvert borné à frontière polygonale de R. On s’intéresse au calcul
de la température T = T (x, y) , solution de l’équation de la chaleur avec
condition aux limites de Dirichlet :
Trouver T ∈ H 1 (Ω) telle que :
αT − div(σ∇T ) = S dans Ω
T = TΓ sur ∂Ω
Question 1.2 :
On a :
Z Z Z
div(w)vdΩ = − w.∇vdΩ + w.nv dΓ
Ω Ω ∂Ω
2
Résolution numérique de l’équation de la chaleur
3
Résolution numérique de l’équation de la chaleur
Question 1.5 :
N0
X
On pose uh (x, y) = uh (Mj )wj (x, y) et on l’injecte dans la formulation
j=1
variationnelle. On obtient finalement :
N0
X Z XN0 Z Z
α uh (Mi ) wi wj dΩ + uh (Mi ) σ∇wi ∇wj dΩ = f wj dΩ ∀wj ∈ Vh0
i=1 Ω i=1 Ω Ω
→
−
Z Z
On pose par la suite U 0i = uh (Mi ), M0ij = wi wj dΩ, K0ij = σ∇wi ∇wj dΩ
Ω Ω
→
−0
Z
et L i = f wi dΩ
Ω
4
Résolution numérique de l’équation de la chaleur
On a Fl (M̂i ) = Mi
x1 x2
On travaille dans le triangle Tl , on pose : M1 = , M2 = , M3 =
y 1 y2
x3 a b e
, et finalement Bl = et Sl =
y3 c d f
xi
On partant des 3 égalités : = Bl M̂i + Sl , on aboutit à un système de
yi
6 équations qui nous permet de retrouver Bl et Sl comme suit :
x2 − x1 x3 − x1 x1
Bl = et Sl =
y2 − y1 y3 − y1 y1
Question 1.8 :
D’aprés le cours on a : ŵ1 = 1 − x̂ − ŷ, ŵ2 = x̂, ŵ3 = ŷ
On déduit le calcul des matrices élémentaires :
Z
Mij = ŵi (M̂ )ŵj (M̂ )|detBl |dΩ̂
T̂
Z
Kij = ˆ ŵi (M̂ )][(BlT )−1 ∇
σ(M )[(BlT )−1 ∇ ˆ ŵj (M̂ )]|detBl |dΩ̂
T̂
5
Résolution numérique de l’équation de la chaleur
Question 1.10 :
Pour σ = 1 en trouve que les deux méthodes du premier TP et du deuxième
TP aboutissent au même résultat pour un triangle quelconque.
Les deux matrices de rigidité ont la même expression dans les deux TP, la
matrice de masse dans le deuxième TP a la même expression qu’au premier
TP, multipliée par un constant α .
Validation du code
Question 1.13 :
Soit (x, y) ∈ Ω :
u(x, y) = sin(πx)sin(πy)
f (x, y) = u(x, u) − σdiv(∇u)(x, y)
cos(πx)sin(πy)
Or ∇u = π
sin(πx)cos(πy)
Alors div(∇u) = −π 2 sin(πx)sin(πy) − π 2 sin(πx)sin(πy) = −2π 2 u
D’ou f = (1 + 2σπ 2 )u = (1 + 2σπ 2 )sin(πx)sin(πy)
Or σ = 1,⇒ f = (1 + 2π 2 )sin(πx)sin(πy)
Question 1.14 Z: On assimile u à Zson interpolée uh :
ku − uh k2L2 (Ω) = |u − uh |2 dΩ = |πh u − uh |2 dΩ
Ω Ω
→
− →
− → − →
− →
−
⇒ ku − uh k2L2 (Ω) =< M0 ( U 0 − U 0k ), U 0 − U 0k > avec U 0k un vecteur dont
les composantes sont celles de πh u dans la base (wi )i∈1,...,N0
→
− →
− →
− →
−
⇒ ku − uh k2L2 (Ω) = ( U 0 − U 0k )T M0 ( U 0 − U 0k )
Il est évident que l’erreur tend vers 0 dés que N tend vers l’infini c’est à dire
que h soit infiniment petit.
Question 1.15 :
Z
k∇u − ∇uh k2L2 (Ω) = |∇u − ∇uh |2 dΩ
Ω
Z
⇒ k∇u − ∇uh k2L2 (Ω) = |∇πh u − ∇uh |2 dΩ
Ω
→
− →
− → − →
− →
−
⇒ k∇u − ∇uh k2L2 (Ω) =< K0 ( U 0 − U 0k ), U 0 − U 0k > avec U 0k un vecteur dont
les composantes sont celles de πh u dans la base (wi )i∈1,...,N0
6
Résolution numérique de l’équation de la chaleur
→
− →
− →
− →
−
⇒ |u − uh |21 = |∇u − ∇uh k2L2 (Ω) = ( U 0 − U 0k )T K0 ( U 0 − U 0k )
Il évident que l’erreur tend vers 0 dés que N tend vers l’infini c’est à dire que
h soit infiniment petit.
Résolution numérique
Les paramètres et les données :
√
3 x−1 2 y−1 2
α = 1, σ1 = , σ2 = 5, S(x, y) = 600 exp−( 0.8 ) −( 0.8 ) , TΓ = 290.
2
Question 1.16 :
7
Résolution numérique de l’équation de la chaleur
8
Résolution numérique de l’équation de la chaleur
9
Résolution numérique de l’équation de la chaleur
R R
l(v) = Ω
SvdΩ + ∂Ω
λTc vdΓ
Question 2.2 : La formulation variationnelle discrète dans Vh s’écrit sous
la forme :
Trouver Th ∈ Vh telle que :
a(Th , vh ) = l(vh ) ∀vh ∈ Vh
On note (gl )l=1..L les triangles de τh , (Mi )i=1..N les sommets des triangles et
(wi )i=1..N la base de Vh définie par wi (Mj ) = δij , 1 ≤ i, j ≤ N.
On pose Th (x, y) = N
P
j=1 Th (Mj )wj (x, y) et on l’injecte dans la formulation
variationnelle. On obtient finalement :
N0
X Z XN Z N
X Z
α Th (Mi ) wi wj dΩ+ Th (Mi ) σ∇wi ∇wj dΩ+λ Th (Mi ) wi wj dΓ =
i=1 Ω i=1 Ω i=1 ∂Ω
R R
Ω
Swj dΩ + λ Ω
Tc wj dΓ ∀wj ∈ Vh
→
−
On pose par la suite U i = Th (Mi ),
Z
R R
Mij = Ω wi wj dΩ, Kij = σ∇wi ∇wj dΩ et Sij = ∂Ω wi wj dΓ
Ω
F~i = Ω Swi dΩ + λ ∂Ω Tc wi dΓ
R R
Question 2.3 :P Pour S ∈ CR0 (Ω) , (donnée), on peut l’approché par son
interpolé πh S = N 0
i=1 Sh (Mi ) Ω R
wi dΩ
N
F~j ' i=1 Ω S(Mi )wi wj dΩ + λ ∂Ω Tc wj dΓ
P 0
R
10
Résolution numérique de l’équation de la chaleur
Question 3.2 :
L’espace étant toujours discrétisé comme dans le problème stationnaire
(u(t) ∈ Vh0 ) , on discrétise le temps selon un pas δt et on note par tk = k∆t
tmax
avec 0 ≤ k ≤ K = .
∆t
Soit V~k le vecteur dont la I eme composante vaut VIk qui est égale à la valeur
de uh à l’instant tk et à l’I eme sommet dans la discrétisation de Ω.
PN0
On a ∀(x, y) ∈ Ω : ukh = I=1 VIk wI (x, y)
On sait de plus que u est solution de :
∂u
∂t − div(σ∇u) = f dans Ω×]0, tmax [
u = 0 sur ∂Ω×]0, tmax [
ut=0 = T0 − TΓ dans Ω
∂u(tk+1 )
− div(σ∇u(tk+1 )) = f (tk+1 )
∂t
u(tk+1 ) − u(tk )
⇒ − div(σ∇u(tk+1 )) = f (tk+1 )
∆t
11
Résolution numérique de l’équation de la chaleur
1 k+1 1 k
⇒ u − u − div(σ∇u(tk+1 )) = f (tk+1 )
∆t ∆t
V~ k+1 − V~ k
⇒ M0 + K0 V~ k+1 = F~ k+1
∆t
V~ k+1 V~ k
⇒ M0 + K0 V~ k+1 = M0 + F~ k+1
∆t ∆t
f(M1 , tk )
avec : F~ k = M0 ...
f (MN0 , tk )
M0 1
Remarquons que la matrice ( +K0 ) vaut A0 pour α = , donc sous cette
∆t ∆t
condition, le problème consiste maintenant à chercher V ~k+1 vérifiant :
A0 V~ k+1 = L
~ k+1
0 ~ k+1
f (M1 , tk )
~k = M V
avec L + M0 ...
∆t
k
f (MN0 , t )
Question 3.3 :
On choisit les valeurs suivantes pour les paramètres et données :
tmax = 1, ∆t = 0.01, α = 100, doncσ1 = σvar , σ2 = 5, TΓ = 280, T0 = 300
S(x, y, t) = 600 exp−5t exp(−( x−1
0.8
)2 − ( y−1
0.8
)2 ),
12
Résolution numérique de l’équation de la chaleur
13