gaussbesseltest.py 836 Bytes
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# Teste para a perda de energia baseada na funcao modificada de Bessel do primeiro tipo de ordem 1.
# Apresenta os graficos para a perda de energia para algumas espessuras para feixe com incidencia normal,
# comparadas com as correspondentes perdas de energias Gaussianas nas mesmas espessuras.
# Referencia: R. P. Pezzi, et al. Applied Physics Letters, 92 164102 (2008)

from pylab import *
from scipy.special import i1


dedx=192. # eV/nm
dw2dx=20740. # eV^2/nm
e = arange(0,6000)
PI=math.pi

for x in [1,5,10,15,20,25]:
    # Bessel:
    alpha=dedx*(2./dw2dx)
    m=alpha*dedx
    lbd=m*x*alpha
    bessel = lbd*exp(-m*x-alpha*e)*i1(2.*sqrt(lbd*e))/(sqrt(lbd*e))
    plt.plot(e,bessel)

    # Gaussiana:
    Em=x*dedx
    sigma=x*dw2dx
    gaussian = exp((-(e-Em)**2)/(2.*sigma))/sqrt(2.*PI*sigma) 
    plt.plot(e,gaussian)

show()