Table des matières
Grille de Fourier
Joseph Fourier est un scientifique français du XIXe siècle et qui a notamment travaillé sur les échanges de chaleur.
Présentation du problème
On considère une masse d'un matériau homogène et on le fait chauffer sur une plaque chauffante.
L'air est à une certaine température $T_{Air}$ qui ne change pas et la plaque est à une température $T_{Plaque}$ plus élevée de sorte que la plaque chauffe la masse.
On voudrait obtenir une image de la température à l'intérieur de ma masse.
Grille
On propose de découper la masse en petites cellules carrées.
L'idée est que l'échauffement va se propager depuis la plaque à travers la masse, de cellule en cellule, par voisinage.
// On peut supposer qu'à l'instant initial, toutes les cellules sont à la température ambiante, c'est à dire à $T_{Air}$//.
On considère que chaque cellule a une température homogène (la même dans tout le carré). Les cellules voisines échangent de la chaleur. Une cellule a tendance à réchauffer ses voisines plus froides et à refroidir ses voisines plus chaudes.
On modélisera la physique du problème ainsi :
- soit une cellule de notre grille, elle a une température $T_c$,
- soit $T_v$ la température d'une de ses voisines,
- on se donne un temps très petit $dt$,
- pendant ce temps, $T_c$ augmente de la quantité $dT = k (T_v - T_c) dt$,
- $k$ est un paramètre qu'il faudra choisir.
Mais une cellule a 4 voisines, en haut, en bas, à gauche et à droite. Si on tient compte de ces 4 voisines, on aura plutôt :
$$dT = k(T_{haut} + T_{bas} + T_{gauche} + T_{droite} - 4T_c) dt$$
Certaines cellules sont au bord et touchent soit la plaque chauffante, soit l'air extérieur. On pourrait tenir compte du fait que l'échange de température sera plus difficile entre l'air et la masse, mais on choisit de rester simple.
Donc si par exemple une cellule est en bas, pour elle $T_{bas} = T_{Plaque}$. Et si une cellule est sur le bord droit, alors pour elle $T_{droit} = T_{Air}$. Le calcul est le même autrement.
À faire
Vous devez réaliser la simulation qui, pour un choix de $k$, $T_{Air}$, $T_{Plaque}$ et les dimensions de la grille, calcule pour toutes les cases le transfert de chaleur, ce pour une durée $T = N\times dt$. Au bout de ce temps, on veut créer une image représentant la température dans les différentes cases de la grille.
# grille_fourier.py
# choix de paramètres
T_Air = 20
T_Plaque = 150
k = 0.95
N = 100
T = 10
dt = T / N
# dimension grille
largeur = 100
hauteur = 60
# 1. créer la grille, toutes les cases sont initialement à T_Air
# 2. Pour chacun des N instants dt, pour chacune des cellules,
calcule le changement de température en fonction des températures voisines
Affichage
Ensuite, en supposant que grille soit la grille de température, on pourra afficher le résultat avec :
import matplotlib.pyplot as plt plt.imshow(grille, cmap='magma') plt.show()
Testez et visualisez !
