Simulace exponenciálního rozpadu¶

In [11]:
import numpy as np
import matplotlib.pyplot as plt
In [12]:
Ndata=1000 #počet simulovaných hodnot
tau=100 #doba života vybuzeného stavu

Použijeme metody inverzní funkce. Jestliže $r$ je náhodná proměnná s rovnoměrným rozdělením na intervalu (0,1), $r\in U(0,1)$,
potom $t=-\tau\,\text{ln}(r)$ je náhodná proměnná s exponenciálním rozdělením $E(\tau)$.

In [13]:
r=np.random.random(Ndata) #náhodné proměnné s rovnoměrným rozdělením U(0,1)
t=-tau*np.log(r) #použití metody inverzní funkce (touto transformací dostaneme z r náhodnou proměnnou s exponenciální rozdělením)
In [17]:
plt.hist(t,bins=100,density=True,label='normovaný histogram')
t_plot=np.linspace(0,5*tau,1000)
f_teor=1/tau*np.exp(-t_plot/tau)
plt.plot(t_plot,f_teor,c='red',label='teoretická pdf')
plt.xlim(0,)
plt.legend()
plt.show()
No description has been provided for this image
In [ ]: