BANIA

8
1 ETUDE TECHNIQUE COMPORTEMENT THERMONUCLEAIRE DU BANIA 2.0

description

Simulation numérique d'un sauna

Transcript of BANIA

Page 1: BANIA

1

ETUDE TECHNIQUE

COMPORTEMENT THERMONUCLEAIRE

DU BANIA 2.0

Page 2: BANIA

2

1. Contexte

Le Bania 2.0 est la nouvelle version d’un habitacle de petite taille d’inspiration russe, destiné à chauffer ses occupants jusqu’à ce que mort s’ensuive.

2. Objectif

L’objectif de cette étude technique est de déterminer le comportement thermique instationnaire du Bania 2.0.

3. Modélisation : géométrie et matériaux

Le Bania est assimilé à un parallélépipède de volume v = L*l*h avec :

L = 2.2 m L = 1.8 m H = 1.8 m

Les différentes cloisons du mur composite sont ramenées à une paroi équivalente dont la surface est égale à la surface totale des cloisons du Bania.

La paroi équivalente est constituée de 3 couches :

Une couche de bois d’épaisseur 6 mm Une couche de laine de verre d’épaisseur 70 mm Une couche de bois d’épaisseur 6 mm

Les caractéristiques physiques des matériaux sont supposées être les suivantes :

Bois :

Conductivité thermique : 0,15 W/M/°K

Chaleur massique : 1760 J/kg/°K

Masse volumique : 740 kg/m3

Laine de verre :

Conductivité thermique : 0,04 W/M/°K

Chaleur massique : 840 J/kg/°K

Masse volumique : 20 kg/m3

Page 3: BANIA

3

Air :

Chaleur massique : 1007 J/kg/°K

Masse volumique : 1,1774*300/(273+T°C) kg/m3

4. Flux thermiques

L’enceinte du Bania est modélisée par une masse thermique ponctuelle échangeant par convection avec un mur composite.

Le mur est modélisé par éléments finis, au sein desquels a lieu une triple conduction en série.

L’air extérieur est maintenu à température constante et échange par convection avec la paroi extérieure du mur composite.

Le calcul des coefficients de convection naturelle se fait à l’aide de la corrélation expérimentale suivante :

ℎ = 1,42 ∗ ∆𝑇

𝐿 0.25

Cette approche permet de s’affranchir de la résolution des équations de la mécanique des fluides couplées à l’équation de l’énergie, tout en conservant un degré correct de précision.

Le système { Bania + Paroi + Extérieur } est modélisé comme suit :

Le problème se ramène donc à une étude conducto-convective de l’équation de la chaleur en monodimensionnel instationnaire.

Page 4: BANIA

4

5. Résolution

L’air du Bania est modélisé par une simple masse d’air ponctuelle.

Pour le mur composite, l’équation de la chaleur est discrétisée spatialement par la méthode des éléments finis (éléments linéaires à deux nœuds).

La température de l’air du Bania est régie par l’équation différentielle suivante :

𝜌𝑐𝑣𝜕𝑇

𝜕𝑡= 𝑄𝑖𝑛 − 𝑄𝑜𝑢𝑡

𝜌𝑐𝑣𝜕𝑇

𝜕𝑡= 𝑃𝑢𝑖𝑠𝑠𝑎𝑛𝑐𝑒 −

𝑇 − 𝑇𝑒𝑥𝑡𝑅

Avec :

𝑅 =1

ℎ𝑆

Cette équation différentielle est résolue à chaque pas de temps par la méthode d’Euler :

𝑇 𝑡 + ∆𝑡 ≈ 𝑇 𝑡 +𝜕𝑇(𝑡)

𝜕𝑡∗ ∆𝑡

La valeur de la température d’air du Bania ainsi obtenue est ensuite injectée dans le modèle éléments finis régissant la température du mur composite.

Le maillage éléments finis du mur composite se compose de 3 éléments et 4 nœuds :

La matrice de conduction globale 𝐾 se fait à partir de l’assemblage des matrices de conduction élémentaires obtenues par intégration sur l’élément :

𝑘 é𝑙é𝑚𝑒𝑛𝑡𝑎𝑖𝑟𝑒 =𝑆𝑘

𝑒 1 −1−1 1

Page 5: BANIA

5

La matrice de capacité globale 𝐶 se fait à partir de l’assemblage des matrices de capacité élémentaires obtenues par intégration sur l’élément :

𝑐 é𝑙é𝑚𝑒𝑛𝑡𝑎𝑖𝑟𝑒 = 𝜌𝑐𝑣 1/3 1/61/6 1/3

Les termes de convection, ajouté au premier et au dernier termes de la matrice de conduction globale et du vecteur de chargement thermique, sont de la forme hST.

L’intégration en temps du système matriciel se fait à l’aide du schéma inconditionnellement stable de Crank-Nicholson :

𝑇𝑛+1 = 𝐾𝑛 −1𝑄𝑛

Avec :

𝐾𝑛 =

1

2𝐾𝑛 +

1

∆𝑡𝐶𝑛

Et :

𝑄𝑛 = −

1

2𝐾𝑛 +

1

∆𝑡𝐶𝑛 𝑇𝑛 + 𝑄𝑛

6. Résultats

Le graphique ci-dessous présente le profil de température en régime stationnaire, depuis l’intérieur du Bania jusqu’à l’air extérieur :

Page 6: BANIA

6

Le graphique ci-dessous présente les courbes de température en fonction du temps aux différents points du modèle :

7. Annexe

Le programme de simulation est programmé en langage Matlab. Le code est donné ci-dessous :

% PROGRAMME BANIA

% Simulation du comportement thermique du Bania 2.0

% Calcul instationnaire

% Mur composite éléments finis couplé à une masse d'air intérieur ponctuelle

clc; % nettoyage écran

clear; % reset variables

L=2.2; % longueur

l=1.8; % largeur

H=1.8; % hauteur

V=L*l*H; % volume du Bania 2.0

S=2.2*1.8*2+1.8*1.8*2+1.8*2.2; % surface extérieure totale du Bania 2.0

P=2000; % puissance du réacteur nucléaire

Text=5; % température extérieure (constante)

rho_bois=740; % masse volumique du bois

rho_laine=20; % masse volumique de la laine de verre

cp_air=1007; % capacité thermique de l'air

cp_bois=1760; % capacité thermique du bois

cp_laine=840; % capacité thermique de la laine de verre

kond_bois=0.15; % conductivité thermique du bois

Page 7: BANIA

7

kond_laine=0.04; % conductivité thermique de la laine de verre

e_bois=6e-3; % épaisseur du bois

e_laine=7e-2; % épaisseur de la laine de verre

itermax=1500; % nombre de pas de temps de la simulation

dt=10; % pas de temps

k_bois=S*kond_bois/e_bois*[1 -1;

-1 1]; % matrice de conductivité élémentaire du bois

k_laine=S*kond_laine/e_laine*[1 -1;

-1 1]; % matrice de conductivité élémentaire de la laine de verre

c_bois=rho_bois*S*e_bois*cp_bois*[1/3 1/6;

1/6 1/3]; % matrice de capacité élémentaire du bois

c_laine=rho_laine*S*e_laine*cp_laine*[1/3 1/6;

1/6 1/3]; % matrice de capacité élémentaire de la laine de

verre

K=[0 k_bois(1,2) 0 0

k_bois(2,1) k_bois(2,2)+k_laine(1,1) k_laine(1,2) 0

0 k_laine(2,1) k_laine(2,2)+k_bois(1,1) k_bois(1,2)

0 0 k_bois(2,1) 0 ];

% matrice de conductivité globale, sans les termes de bords, variables dans le temps

C=[c_bois(1,1) c_bois(1,2) 0 0

c_bois(2,1) c_bois(2,2)+k_laine(1,1) c_laine(1,2) 0

0 c_laine(2,1) c_laine(2,2)+c_bois(1,1) c_bois(1,2)

0 0 c_bois(2,1) c_bois(2,2)];

% matrice de capacité globale

Tn=zeros(4,1); % vecteur solution mur composite

Q=zeros(4,1); % vecteur de chargement thermique mur composite

Tn(:,1)=Text; % condition initiale pour le mur composite

Tb=Text; % condition initiale pour l'air intérieur

time=0; % initialisation du temps

results=zeros(6,itermax+1); % tableau de résultats

results(1:6,1)=Text; % initialisation

for t=1:itermax % boucle temporelle

time=time+dt; % mise à jour du temps

rho_air=1.1774*300/(273+Tb); % évaluation de la masse volumique de l'air, fonction de la

température et donc du temps

c_air=rho_air*cp_air*V; % évaluation de la masse thermique de l'air, fonction de la

température et donc du temps

h_int=1.42*((abs(Tb-Tn(1,1)))/l+1e-6)^0.25; % coefficient de convection entre l'air intérieur

et la paroi

h_ext=1.42*((abs(Text-Tn(4,1))+1e-6)/l)^0.25; % coefficient de convection entre la paroi et

l'air extérieur

R=1/(h_int*S); % résistance de convection entre l'air intérieur et la paroi

dT=(P-(Tb-Text)/R)/c_air; % dérivée de la température intérieure

Tb=Tb+dT*dt; % intégration temporelle de la température intérieure par la méthode d'Euler

K(1,1)=h_int*S+k_bois(1,1); % calcul du terme de conducto-convection à l'interface air

intérieur/paroi

K(4,4)=h_ext*S+k_bois(2,2); % calcul du terme de conducto-convection à l'interface paroi/air

extérieur

Q(1,1)=h_int*S*Tb; % calcul du flux convectif intérieur, fonction de la température d'air

intérieur

Q(4,1)=h_ext*S*Text; % calcul du flux convectif extérieur

Page 8: BANIA

8

newK=0.5*K+1/dt*C; % matrice d'intégration temporelle pour le mur composite, schéma de Crank-

Nicholson

newQ=(-0.5*K+1/dt*C)*Tn+Q; % vecteur d'intégration temporelle pour le mur composite, schéma

de Crank-Nicholson

Tn=newK\newQ; % résolution du système matriciel linéaire

results(1,t+1)=Tb; % écriture des résultats

results(2:5,t+1)=Tn; % écriture des résultats

results(6,t+1)=Text; % écriture des résultats

plot(results(:,t),'linewidth',2); % affichage du profil de température Bania -> Extérieur

axis([1,6,Text,70]) % cadrage du graphique

xlabel('Bania => ... => Extérieur') % noms des axes

ylabel('TEMPERATURE (°C)')

grauh=gcf; % animation du profil spatial en fonction du temps

moovie=getframe(grauh);

clf;

end

plot(results(1,:),'linewidth',2); % affichage des résultats nodaux

xlabel('Temps (n*dt)')

ylabel('TEMPERATURE (°C)')

hold all

plot(results(2,:),'linewidth',2);

plot(results(3,:),'linewidth',2);

plot(results(4,:),'linewidth',2);

plot(results(5,:),'linewidth',2);

plot(results(6,:),'linewidth',2);