Transcript
Page 1: Equations de la chaleur : Propagation thermique dans une

TP 6 d’informatique

Lycée Buffon 1 / 3 PC*

Equations de la chaleur :

Propagation thermique dans une poutre

I. Mise en équation du problème On  considère  une  tige  métallique  homogène,  connectée  à  ses  deux  extrémités  à  un  thermostat  qui  impose  une  température  constante  Te.  Une  fois  le  problème  adimensionné,  on  assimilera  la  tige  au  segment  [0,1],  on  mesurera  donc  la  position  spatiale  d'un  point  sur  la  tige  par  une  abscisse  x  appartenant  à  ce  segment.  On  choisira  aussi  une  échelle  de  température  qui  permettra  de  poser  Te    =  0.  On  notera  T  (x;  t  )  la  température  observée  à  l'instant  t    au  point  d'abscisse  x  .  Une  fois  adimensionnée,  l'équation  de  diffusion  de  la  chaleur  dans  la  tige  peut  se  mettre  sous  la  forme  :  

𝑬 :  𝜕𝑇𝜕𝑡

=𝜕!𝑇𝜕𝑥!

 

 La  présence  du  thermostat  impose  donc  les  conditions  aux  limites  (spatiales)  :  

𝑪𝑳 ∶ ∀𝑡 ∈ ℝ!  𝑇 0, 𝑡 = 𝑇 1, 𝑡 = 0        On  suppose  par  ailleurs  qu'à  l'instant  t    =  0,  la  répartition  de  la  température  sur  la  tige  est  donnée  par  les  conditions  initiales  (temporelles)  :  

𝑪𝑰 ∶ ∀𝑥 ∈ [0,1]  𝑇 𝑥, 0 = sin  (𝜋𝑥)    Ce  choix,  un  peu  artificiel  et  parachuté,  est  fait  afin  de  pouvoir  comparer  la  solution  théorique  et  la  solution  approchée  obtenue  par  le  calcul.  En  effet,  le  lecteur  curieux  pourra  vérifier  que  la  fonction  𝑇 𝑥, 𝑡 = sin  (𝜋𝑥)𝑒!!!!  est  solution  de  l'équation  aux  dérivées  partielles  (E),  avec  les  conditions  (CL)  et  (CI),  nous  admettrons  que  c'est  dans  ce  cas  la  solution  du  problème.    

II. Discrétisation spatiale et temporelle Pour  envisager  une  résolution  approchée,  nous  allons  subdiviser  les  intervalles  d'espace  [0,1]  et  de  temps  [0,tmax],  où  tmax    représente  la  durée  de  la  simulation.  L'intervalle  d'espace  [0,1]  sera  découpé  en  Ns    intervalles,  donc  à  l'aide  de  Ns    +  1  points  de  subdivision  𝑥!  (0 ≤𝑖 ≤ 𝑁!)    régulièrement  espacés  tels  que  𝑥! = 0  et  𝑥!! = 1.  On  notera  Δ𝑥    le  pas  spatial  de  cette  subdivision.  Pour  tout  𝑡 ∈    [0,tmax  ],  on  appellera  profil  de  température    à  l'instant  t    le  vecteur  :𝑈(𝑡) ∈ ℝ!!!!  dont  les  coordonnées  sont  les  températures  observées  à  l'instant  t    aux  différents  points  𝑥!  ,  soit  

Question  1. Montrer,  en  précisant  la  méthode,  que  pour  tout  𝑖 ∈ 1,𝑁! − 1 ,  on  peut  approcher  la  dérivée  seconde  :  

𝜕!𝑇𝜕𝑥!

(𝑥! , 𝑡) ≈1Δ𝑥!

𝑇 𝑥!!!, 𝑡 − 2𝑇 𝑥! , 𝑡 + 𝑇 𝑥!!!, 𝑡  

.  Question  2. En  tenant  compte  des  conditions  aux  limites  (CL),  montrer  que  l'équation    (E)  peut  être  

approchée  par  l'équation  :  

Page 2: Equations de la chaleur : Propagation thermique dans une

Piles TP Informatique

Lycée Raspail Page 2 sur 3 PSI

Concernant  la  discrétisation  temporelle,  on  appliquera  le  schéma  d'Euler  explicite  :  l'intervalle  de  temps  [0,tmax  ]  est  subdivisé  en  Nt    sous-­‐intervalles  de  même  longueur  (le  pas  temporel)    Δ𝑡,  on  aura  ainsi  Nt  +1  profils  de  température,  observés  aux  instants  𝑘Δ𝑡    (0 ≤ 𝑘 ≤ 𝑁!)    on  posera  alors  𝑈! = 𝑘Δ𝑡.  Chaque  Uk    est  un  vecteur  de  ℝ!!!!.  

Question  3. écrire  l'équation  de  récurrence  liant  𝑈!!!  à  𝑈! ,𝐴  et  Δ𝑡.  Expliquer  comment  écrire  la  condition  initiale.  

III. Implémentation  On  utilisera  la  bibliothèque  Numpy  dont  on  rappelle  en  Annexe  quelques  commandes.  

Question  4. Le  script  TP6eleve.py  (que  vous  recopierez  d'abord  dans  votre  espace  personnel)  contient  quelques  lignes  d'initialisation  des  variables:  on  choisit  pour  la  simulation  une  durée  tmax  de  0.2s,  on  découpe  l'intervalle  d'espace  [0,1]  en  Ns  =  40  parties,  et  l'intervalle  de  temps  [0,tmax]  en  Nt  =  1000  parties.  Construire  une  liste  contenant  les  profils  de  température  𝑈!,𝑈!,𝑈!,… ,𝑈!"""        calculés  de  proche  en  proche  avec  le  schéma  d'Euler  explicite.  Représenter  alors,  sur  un  même  graphique,  les  profils  de  température  aux  instants  0, !!"#

!", !!"#

!, !!"#

!, 𝑡!"# .  Lorsque  vous  exécuterez  votre  script,  vous  

verrez  sur  votre  graphique  se  superposer  la  solution  théorique  en  pointillés.    

Question  5. Tester  votre  programme  en  augmentant  la  durée  de  la  simulation.  On  essaiera  notamment  les  valeurs  suivantes:  tmax  =  0,318s,  tmax  =  0,319s  et  tmax  =  0,320s.  

IV. Schéma d’Euler Implicite

On  observe  que  le  schéma  explicite  devient  instable  à  partir  d'une  certaine  durée  de  la  simulation.  On  choisit  alors  d'utiliser  un  schéma  d'Euler  implicite.  

Question  6. écrire  la  nouvelle  relation  liant  les  profils  de  température  Uk    et  Uk+1  ,  pour  𝑘 ∈ 0,𝑁! − 1 .  Montrer  que,  si  l'on  connaît  Uk  ,  alors  on  peut  déterminer  Uk+1  en  calculant  l'inverse  d'une  matrice  tridiagonale  M    (indépendante  de  k  )  que  l'on  explicitera  en  fonction  de  la  matrice  A  et  du  pas  temporel  Δ𝑡.  

Question  7. Un  début  de  script  est  fourni.  La  fonction  dilateligne(A,i,lam)    réalise  sur  une  matrice  A,    l'opération  élémentaire  sur  les  lignes  (dite  de  dilatation)  𝐿! ← 𝜆𝐿!  ,  la  fonction  transvecligne(A,i,j,lam)    réalise  l'opération  (dite  de  transvection)  𝐿! ← 𝐿! + 𝜆𝐿!.  Le  code  de  la  fonction  inversetridiag(M)  n'est  écrit  que  partiellement.  Le  compléter  pour  qu'elle  retourne  la  matrice  inverse  de  la  matrice  M    passée  en  argument,  en  supposant  celle-­‐ci  tridiagonale  (et  inversible,  bien  entendu!!).  

Question  8. Même  travail  qu'à  la  Question  4.  ,  mais  en  appliquant  le  schéma  d'Euler  implicite.    

Page 3: Equations de la chaleur : Propagation thermique dans une

Piles TP Informatique

Lycée Raspail Page 3 sur 3 PSI

ANNEXE FORMULAIRE NUMPY


Recommended