You are on page 1of 11

Compte rendu de TP

Méthodes numérique avancée

Fait par : Laanani noura & baamel imane


Demandé par :
Mr. azrar
Problème :
𝑜𝑛 𝑐𝑜𝑛𝑠𝑖𝑑é𝑟𝑒 𝑙’𝑒𝑞𝑢𝑎𝑡𝑖𝑜𝑛 𝑑𝑒 𝑐ℎ𝑎𝑙𝑒𝑢𝑟 𝑒𝑛 𝑑𝑖𝑚𝑒𝑛𝑠𝑖𝑜𝑛 1 𝑑’𝑒𝑠𝑝𝑎𝑐𝑒 .
𝜕𝑢(𝑥, 𝑡) 𝜕 2 𝑢(𝑥, 𝑡)
−𝛾 = 𝑓(𝑥, 𝑡)
𝜕𝑡 𝜕𝑥 2

U (0, t) =U (1, t) =0
U(x,0) =𝑈 0 (𝑥)

Ila partie analytique :


1-Solution exacte
On va déterminer dans ce cas la solution exacte pour la
méthode de séparation des variables :
U (t, x) =g(t)v’’(x)

Alors : g’(t)v(x) – g(t)v’’(x) = 0

v (-1) = v (1) = 0

g (0) v(x) = cos (x𝜋2)

On va supposer que g (0) =1, v(x) = cos (x𝜋2)

Ce qui satisfait la condition initiale.

V (-1) =v (1) = cos (x𝜋2) =0

Alors : g’(t) cos(x𝜋2) – g(t) (- (𝜋2)2 ) cos (x𝜋2) =0

Il suffit donc que g’(t) + (𝜋2)2g(t) =0

2
𝜋 2
Dont les solutions sont g(t) = 𝐶𝑒 −(2) 𝑡

Avec la condition initiale g (0) =1, on obtient donc une seule


solution.
𝜋 2
G(t) = 𝐶𝑒 −(2) 𝑡

Finalement on a trouvé une solution satisfaisant bien l’équation, les


conditions initiales et les conditions aux limites.
𝜋 2 𝜋
−( )
𝑈(𝑥, 𝑡) = 𝑒 2 cos (𝑥 )
2

2- Méthode des volumes finis ‘Schéma explicite’.


On prend 𝛿=1 et f=0
𝑑𝑈 2

𝑑𝑡
- 𝑑𝑑𝑡𝑈2 = 0 Equation de Chaleur
Pour i=1
Dans le cas instationnaire
1 1 2 1
𝑑𝑈
∫03 𝑑𝑡 Dx - ∫03 𝑑𝑑𝑡𝑈2 dx = ∫03 0 𝑑𝑥 = 0
𝑛+1
−𝑈𝑖𝑛
𝑑𝑈
𝑑𝑡
= 𝑈𝑖 𝑘
1 1
𝑑𝑈
𝑑𝑡
[𝑥]30 – [𝑑𝑈 ]3 = 0
𝑑𝑥 0

𝑈𝑖𝑛+1 −𝑈𝑖𝑛
𝑘
ℎ – (U’ (13) – U’ (0)) = 0
𝑈𝑖𝑛+1 −𝑈𝑖𝑛
𝑘
ℎ - U’ (13) + U’ (0) = 0
𝑈 (𝑥1 )−𝑈(𝑥0 )
U’ (0) = ℎ = 2( 𝑈ℎ1−0)
2

𝑈 (𝑥2 )−𝑈(𝑥1 )
U’ (13) = ℎ =𝑈2−𝑈

1

𝑛 𝑛 𝑛 𝑛
2𝑈1

- 𝑈2 −𝑈

1
= 3𝑈1ℎ−𝑈2
𝑈1𝑛+1 −𝑈1𝑛 𝑛 𝑛

𝑘
ℎ + 3𝑈1ℎ−𝑈2 = 0

3
Pour i=2

Pour i=3 :

4
On va ajouter le terme du temps :
𝑈𝑖𝑛+1 −𝑈𝑖𝑛

𝑘
+ 𝐴𝑖 𝑈𝑖𝑛 = 𝐵𝑖
ℎ(𝑈𝑖𝑛+1 − 𝑈𝑖𝑛 ) +𝑘 𝐴𝑖 𝑈𝑖𝑛 = 𝑘 𝐵𝑖
ℎ𝑈𝑖𝑛+1 = ℎ 𝑈𝑖𝑛 -𝑘 𝐴𝑖 𝑈𝑖𝑛 +𝑘 𝐵𝑖

2) Méthode des volumes finis ‘Schéma implicite’.


La même formule explicite on va juste remplacer 𝑈𝑛 par 𝑈𝑛+1
On a: ℎ(𝑈𝑖𝑛+1 − 𝑈𝑖𝑛 ) / 𝑘 + 𝐴𝑖 𝑈𝑖𝑛+1 = 𝑘 𝐵𝑖
Donc :
ℎ𝑈𝑖𝑛+1 +𝑘 𝐴𝑖 𝑈𝑖𝑛+1= ℎ 𝑈𝑖𝑛 +𝑘 𝐵𝑖
En notant I La matrice carrée d’identité :
(ℎ𝐼 + 𝐾𝐴 )𝑈𝑖𝑛+1 = ℎ 𝑈𝑖𝑛+𝑘 𝐵𝑖
Donc :
(ℎ𝐼 + 𝐾 + 𝐴 )𝑈𝑖𝑛+1 = ℎ 𝑈𝑖𝑛/𝑘 + 𝐵𝑖

5
II-La résolution par la méthode des volumes finis schéma explicite.
Script MATLAB.
clear all
n=51;
h=2/n;
xi=-1:h:1;
k=h^2/1.98;
t=0: k:1;
m= [-1 -1+h/2:h:1-h/2 1];
[X,T]=meshgrid(xm,t);
uexact=exp(-pi^2/4*T).*cos(pi/2*X);
figure(1)
mesh(X,T,uexact)
A=zeros(n,n);
B=zeros(n,1);
A(1,1)=3;
A(1,2)=-1;
for i=2:n-1
A(i,i-1)=-1;
A(i,i)=2;
A(i,i+1)=-1;
end
A(n,n-1)=-1;
A(n,n)=3;
A=(1/h)*A;
for i=1:n
B(i)=0;
end
B=h*B;
x=[-1+h/2:h:1-h/2]';
uzero=cos(pi/2*x);
uapp(1,:)=[0;uzero;0];
u=uzero;
for i=2:floor(1/k)+1
u=u+(k/h)*(-A*u+B);
uapp(i,:)=[0;u;0];
end
figure(2)
mesh(X,T,uapp)

6
• Résultats données par la méthode

Pour n=51

Graphe de la solution exacte graphe de la solution approchée

Pour n=100

Graphe de la solution exacte graphe de la solution approchée

7
- Avec un nombre n=100 on obtient un mauvais résultat,mais avec un
changement sur la boucle’ for’ dans le programme (de k) on va obtenir
des bonnes résultats :

Voici le résultat obtenu des solutions :

Remarque :
La divergence de la méthode explicite revient au mauvais chois de k
qu’il doit toujours être inférieure ou égale a h²/2 .

8
III-La résolution par la méthode des volumes finis schéma implicite.
Script MATLAB.
clear all
clc
N=50;
h=2/N;
xi=-1:h:1;
% pas de temps meme k=h est bien...
k=h/2;
t=0:k:1;
% CI
xm=[-1 -1+h/2:h:1-h/2 1];
[X,T]=meshgrid(xm,t);
uexact=exp(-pi^2/4*T).*cos(pi/2*X);
figure(1)
mesh(X,T,uexact)
% solution continue f=0 u(t,x)=e^(-pi^2/4)t cos(pi/2sx)
% u(t,0)=e-(-pi-2/4)t
% N mailles done metrics, NxN
A=zeros(N,N);
% at second membre Nx1
B=zeros(N,1);
% -u"
A(1,1)=3;
A(1,2)=-1;
for i=2:N-1
A(i,i-1)=-1;
A(i,i)=2;
A(i,i+1)=-1;
end
A(N,N-1)=-1;
A(N,N)=3;
A=(1/h)*A;
% =0
for i=1:N
B(1)=0;
end
B=h*B;
I=diag(ones(N,1));
x=[-1+h/2:h:1-h/2]';
uzero=cos(pi/2*x);
uapp(1,:)=[0;uzero;0];
u=uzero;
for i=2:floor(1/k)+1
u=(h*I/k+A)\(B+(h/k)*u);
uapp(i,:)=[0;u;0];
end
figure(2)
mesh(X,T,uapp)

9
• Résultats donnés par la méthode

Pour n=50

Graphe de la solution exacte graphe de la solution approchée

Pour n=100

Graphe de la solution exacte graphe de la solution approchée

10
Conclusion :
Les deux méthodes donnent des bons résultats, avec une
condition sur le chois du pas de temps k dans la méthodes
explicite.

11

You might also like