GR-1 FWHM calibration 1

170 days ago by SW83A

Kromek GR-1付属のSpectrometer Test Data Sheetを元に

FWHM(keV) = \sqrt{a \times E(keV) + b}

a b を求める。

Cs137Actual = 2.23 Am241Actual = 6.83 
       
import numpy, scipy.optimize xdata = numpy.array([ 59.54, 661.66, ]) ydata = numpy.array([ Am241Actual, Cs137Actual * xdata[1] / 100, ]) def fwhm_e2e(x, a, b): return numpy.sqrt(a * x + b) (popt, pcov) = scipy.optimize.curve_fit(fwhm_e2e, xdata, ydata, p0 = [0.0, 3.0]) 
       
formula_fwhm_e2e = "$ FWHM = \sqrt{(%.3e)E + (%.3e)} $" % tuple(popt) def fit_fwhm_e2e(x): return fwhm_e2e(x, *popt) plot_data = list_plot(zip(xdata, ydata), rgbcolor='gray') plot_fit = plot(fit_fwhm_e2e, rgbcolor='red', xmax=3000, legend_label=formula_fwhm_e2e) (plot_data + plot_fit).show(axes_labels=["E[kev]", "FWHM[keV]"]) 
       
formula_fwhm_e2p = "$ FWHM = \\frac{\\sqrt{(%.3e)E + (%.3e)}}{E}\\%% $" % tuple(popt) def fwhm_e2p(x): return fit_fwhm_e2e(x)*100/x plot(fwhm_e2p, rgbcolor='red', xmin=50, xmax=3000, axes_labels=["E(keV)", "FWHM(%)"], legend_label=formula_fwhm_e2p)