Problème intégrale sur Python.
Bonjour, voila ça va faire pas mal de temps que je bloque sur un exercice python, le suivant:
La probabilité que la norme du vecteur vitesse d'un atome du gaz soit comprise entre les valeurs 𝑣 et v+dv est donné par P(v) d(v)𝑣+𝑑𝑣est donneé par𝑃(𝑣)𝑑𝑣 où 𝑃(𝑣)est la fonction suivante:
𝑃(𝑣)=(𝑚/2𝜋𝑘𝑇)^3/2*exp(−𝑚𝑣²/2𝑘𝑇)*4𝜋𝑣²
Dans cette formule 𝑇 est la temperature absolue, 𝑚=𝐴×1.66×10−27𝐾𝑔 la masse d'un atome du gaz (pour de l'Hélium, A=4), et 𝑘=1.38×10−23𝐽.𝐾^−1 la constante de Boltzmann.
Verifier numériquement que l'intégrale ∫∞0𝑃(𝑣)𝑑𝑣 vaut 1.
Voilà ce que j'ai fait pour tenter de répondre à la question:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| from scipy.integrate import quad
from math import*
xmin=0
xmax=inf
def Boltzmann(v,A,T):
P=(((A*1.66e-27)/(2*pi*1.38e-23*T))**3/2)*exp(-((1.66e-27*A)*(v**2))/(2*1.38e-23*T))*4*pi*v**2
return P
res, err=quad(Boltzmann,xmin,xmax,args=(A,T))
print('norm',res) |
Cependant je ne trouve pas 1 et je ne comprends où j'ai bien pu me tromper, j'ai donc ouvert cette discussion pour que quelqu'un veuille bien m'expliquer comment résoudre ce problème s'il vous plaît.