Vous êtes sur la page 1sur 1

% Définition des paramètres

Lx = 0.2; % longueur de la plaque en x (m)


Ly = 0.2; % longueur de la plaque en y (m)
T0 = 20; % température initiale (°C)
Tb = 100; % température de la source chaude (°C)
alpha = 9.7e-5; % coefficient de diffusivité thermique de l'aluminium (m²/s)
dx = 0.01; % pas de discrétisation spatial en x (m)
dy = 0.01; % pas de discrétisation spatial en y (m)
dt = 0.1; % pas de discrétisation temporelle (s)
Nx = Lx/dx + 1; % nombre de points de discrétisation spatial en x
Ny = Ly/dy + 1; % nombre de points de discrétisation spatial en y
M = 1000; % nombre d'itérations temporelles

% Initialisation de la plaque
T = ones(Nx,Ny)*T0;
T(:,1) = Tb;
T(:,Ny-1)=T(:,Ny-2);
T(1,:)=T(2,:);
T(Nx-1,:)=T(Nx-2,:);
% Initialisation de l'historique de la température
T_history = zeros(M,1);

% Boucle temporelle
for k = 1:M
% Calcul des températures intérieures de la plaque
for i = 2:Nx-1
for j = 2:Ny-1
T(i,j) = T(i,j) + alpha*dt*( (T(i+1,j) - 2*T(i,j) + T(i-1,j))/(dx^2) +
(T(i,j+1) - 2*T(i,j) + T(i,j-1))/(dy^2));
end
end
% Mise à jour de la température de la face chaude
T(:,1) = Tb;
% Enregistrement de la température au temps k*dt
T_history(k) = T(2,2);
% Affichage de la figure 3D de la température
[X,Y] = meshgrid(0:dx:Lx,0:dy:Ly);
figure(1)
surf(X,Y,T')
xlabel('Position en x (m)')
ylabel('Position en y (m)')
zlabel('Température (°C)')

axis([0 Lx 0 Ly 0 Tb+20])
end
% Plot de la variation de température en fonction du temps
figure(2)
plot((1:k)*dt,T_history(1:k))
xlabel('Temps (s)')
ylabel('Température (°C)')

Vous aimerez peut-être aussi