nmes = ["ISM", "IBM2"] cnmes = ["blue", "red"] ######################################## ### Create a confidence-limit calculator. ### We use in this case the Feldman-Cousins memoizer. fcm = conflimits.FCMemoizer(0.9) fcm.ReadTableAverageUpperLimits(DATA_PATH + 'FC90.dat') exp = experiment.Experiment(name, isotope.Se82, eff, eres, bkg, mass) i = 0 XA = [[3e+2, 1e+4, 2, 200], [3e+2, 1e+4, 2, 80]] for nme in nmes: isotope.SelectNMESet(nmeset.nmedb[nme]) MBB = [] MT = arange(10, 10010, 10.) MBB = [ exp.sensitivity(mt * units.kg * units.year, fcm) / units.meV for mt in MT ] color = cnmes[i] linestyle = 'solid' plt.plot(MT, MBB, color, linewidth=2.5, ls=linestyle) ax = plt.subplot(111) plt.axis(XA[i]) plt.xlabel('Exposure (kg year)') plt.ylabel(r'$m_{\beta\beta}$ (meV)')
### This script generates a table with the constant A for all isotopes ### for a given NME calculation method. ### N.B. The script expects to be living within the folder 'examples' ### of the pybbsens distribution. import os.path FILE_PATH = os.path.dirname(os.path.realpath(__file__)) import sys sys.path.append(FILE_PATH + '/..') from pybbsens import isotope from pybbsens import nmeset from pybbsens import units import math isodb = isotope.isotopes isotope.SelectNMESet(nmeset.nmedb['ISM']) #<< Choose here your favourite method print "Isotope\t A [meV (kg yr)^-1/2]" print "--------------------------------" for symbol in isodb: A = isodb[symbol].constant_A() / (units.meV * math.sqrt(units.kg*units.year)) print "%s\t %.0f" % (symbol, A)
import os.path FILE_PATH = os.path.dirname(os.path.realpath(__file__)) DATA_PATH = FILE_PATH + '/../data/' import sys sys.path.append(FILE_PATH + '/..') import csv from numpy import arange from pybbsens import units from pybbsens import isotope from pybbsens import experiment from pybbsens import conflimits from pybbsens import nmeset isotope.SelectNMESet(nmeset.nmedb['QRPA_Jy']) ######################################## ### EXPERIMENT DATA #################### ### The following parameters are not relevant for this calculation. ### Choose dummy values. eff = .3 res = 1. * units.keV mass = 0. ### Background counts in ROI per unit of exposure bkg_in_ROI = [x / (units.kg * units.year) for x in [0.1, 0.01, 0.001, 0.]] ######################################## ### Create a confidence-limit calculator.
DATA_PATH = FILE_PATH + '/../data/' import sys sys.path.append(FILE_PATH + '/..') from pybbsens import units from pybbsens import isotope from pybbsens import experiment from pybbsens import conflimits from pybbsens import nmeset name = "EXO200" isot = isotope.Xe136 eff = 0.846 eres = isot.Qbb * 0.0153 * 2.35 bkg = 5.E-3 / (units.keV * units.kg * units.year) mass = 76. * units.kg expo = 100. * units.kg * units.year EXO200 = experiment.Experiment(name, isotope.Xe136, eff, eres, bkg, mass) FCM = conflimits.FCMemoizer(0.9) FCM.ReadTableAverageUpperLimits(DATA_PATH + 'FC90.dat') for key in nmeset.nmedb: print "NME = ", key isotope.SelectNMESet(nmeset.nmedb[key]) mbb = EXO200.sensitivity(expo, FCM) print "mbb (meV) =", mbb / units.meV hl = isot.half_life(mbb) print "Tonu (year) =", hl / units.year