Vous êtes sur la page 1sur 2

%Nettoyage

clc
clear
close all
%Données d'entrèe
W=1 ; %largeur de la plaque
H=1; %Hauteur da la plaque
Tg=120;
Td=40 ;
Th=40;
Ti=25;
Tb=40;
%Maillage
Nx=51; %Nombre de noeuds suivant(x)
Ny=51; %Nombre de noeuds suivant(y)
x=linspace(0,W,Nx);
y=linspace(0,H,Ny);
Dx=x(2)-x(1);
Dy=y(2)-y(1);
%condition initial
T=ones(Nx,Ny)*Ti;
%Condition aux limites
T(1,2:Ny-1)=Tg; %condition aux limite gauche
T(Nx,2:Ny-1)=Td;%condition aux limite droite
T(2:Nx-1,1)=Tb;%condition aux limite bas
T(2:Nx-1,Ny)=Th; %condition aux limite haute
%coins
T(1,1)=(Tg+Tb)/2 ;
T(1,Nx)=(Tb+Td)/2 ;
T(1,Ny)=(Tg+Th)/2 ;
T(Nx,Ny)=(Th+Td)/2 ;
%calcul de la dustribution de la températeur T(x,y)
epsilon = 0,001; % Précision
Erreur=3;
Iter= 0;
while (Erreur>epsilon)
Iter=Iter +1;
disp("Iteration=");disp(Iter);
Told=T;
for j=2:Ny-1
for i=2:Nx-1
T(i,j) = (T(i+1,j)+ T(i-1,j) + T(i,j+1)+ T(i,j-1))/4;
end
end
Erreur= max(max(abs(Told-T)));
disp('Erreur=');disp(Erreur);
end
% Présentation graphique
figure(1)
%contour(x,y,T');
[c,h]=contour(x,y,T');
clabel(c,h,'manual');
colormap jet ;
title ('T(x,y)(°C)');
xlabel('largeur(m)');
ylabel('hauteur(m)');
colorbar;
figure(2)
pcolor(x,y,T');shading interp ;
title ('T(x,y)(°C)');
xlabel('largeur(m)');
ylabel('hauteur(m)');
colorbar;
figure(3)
surf(T')
title ('T(x,y)(°C)');
xlabel('largeur(m)');
ylabel('hauteur(m)');
colorbar;

Vous aimerez peut-être aussi