#coding: UTF-8
# Vous avez la liberté complète de modifier l'ensemble du programme
# de façon à répondre aux questions du sujet.
# Le lancement du programme s'effectue au moyen de la touche F5 ou
# du menu 'Exécuter' --> 'Exécuter le fichier'

import numpy as np
import matplotlib.pyplot as plt
import scipy.integrate as integr


# ---------------------------------------- #
#  Paramètres susceptibles d'être ajustés
# ---------------------------------------- #

# Coefficients de l'équation différentielle

a = 6.353e7
b = -39.6
c = 0.211
d = 2.26e-9

# Paramètres d'intégration

debut = 0
fin = 0.03
nbpas = 500
T0 = 300   # T(debut)


# ---------------------------------------- #
#  Le programme proprement dit
# ---------------------------------------- #

# Définition de l'équation différentielle : T'(t) = deriv(T(t), t)

def deriv(T, t):
    dTdt = a/(b + c*T) - d*T**4
    return dTdt

# Résolution

t = np.linspace(debut, fin, nbpas)
T = integr.odeint(deriv, T0, t)

# Affichage du résultat

plt.plot(t, T)
plt.xlabel("$t$ (s)")
plt.ylabel("$T$ (K)")
plt.title("$T(t)$")
plt.show()
