Bonjour,

J'essaie d'écrire une somme infinie d'exponentielles qui varient dans le temps (il s'agit d'une densité de probabilité pour le temps de diffusion à travers un solide) sur Python. Pour cela j'ai écrit :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
import numpy as np
D=1e-14
 
def Un(n,t):
    return np.exp(-(2*n+1)**2*(np.pi**2)*D*t/l**2)
 
def somme(t):
    if t==0:
        return 0
    else :
        n=0
        s=Un(0,t)
        while Un(n,t)>=0.01:
            n+=1
            s+=Un(n,t)
    return s*D*8./l**2
Cette densité de probabilité diverge en 0, et donc je cherche une condition de convergence lorsque t est proche de 0. Avez-vous une meilleure idée que de mettre cette boucle while ?