Calculate photon cross section for a given material and
a list of energy, returing a list of cross sections for
the components of "Copmton scattering", "rayleigh scattering",
"photoelectric effect", "pair creation" and total one.
Arguments:
mat: material name
elist: list of energy
verbose: verbose level [0]
plist: list of process name
(compton/rayleigh/photoelectic/conversion) [StandardEM set]
Keys of index:
"compt": Compton Scattering
"rayleigh": Rayleigh Scattering
"phot" : photoelectric effect
"conv" : pair Creation
"tot" : total
Example:
xsec_list= CalculatePhotonCrossSection(...)
value= xsec_list[energy_index]["compt"]
Definition at line 23 of file emcalculator.py.
23 plist=[
"compt",
"",
"phot",
"conv"]):
25 Calculate photon cross section for a given material and 26 a list of energy, returing a list of cross sections for 27 the components of "Copmton scattering", "rayleigh scattering", 28 "photoelectric effect", "pair creation" and total one. 33 verbose: verbose level [0] 34 plist: list of process name 35 (compton/rayleigh/photoelectic/conversion) [StandardEM set] 38 "compt": Compton Scattering 39 "rayleigh": Rayleigh Scattering 40 "phot" : photoelectric effect 41 "conv" : pair Creation 45 xsec_list= CalculatePhotonCrossSection(...) 46 value= xsec_list[energy_index]["compt"] 49 print "-------------------------------------------------------------------" 50 print " Photon Cross Section (", mat,
")" 51 print "Energy Compton Raleigh Photo- Pair Total" 52 print " Scattering Scattering electric Creation" 53 print "(MeV) (cm2/g) (cm2/g) (cm2/g) (cm2/g) (cm2/g)" 54 print "-------------------------------------------------------------------" 60 = gEmCalculator.ComputeCrossSectionPerVolume(ekin,
"gamma", plist[0],
63 = gEmCalculator.ComputeCrossSectionPerVolume(ekin,
"gamma", plist[1],
67 = gEmCalculator.ComputeCrossSectionPerVolume(ekin,
"gamma", plist[2],
70 = gEmCalculator.ComputeCrossSectionPerVolume(ekin,
"gamma", plist[3],
73 xsec[
"tot"]= xsec[
"compt"] + xsec[
"rayleigh"] + xsec[
"phot"] + xsec[
"conv"]
75 xsection_list.append((ekin, xsec))
78 print " %8.3e %8.3e %8.3e %8.3e %8.3e %8.3e" \
79 % (ekin/MeV, xsec[
"compt"]/(cm2/g), xsec[
"rayleigh"]/(cm2/g),
80 xsec[
"phot"]/(cm2/g), xsec[
"conv"]/(cm2/g), xsec[
"tot"]/(cm2/g))