def GenerateFCTable(CL, bkg_min=0., bkg_max=100., step=1.0): """Generate a table of Feldman-Cousins average upper limits between bkg_min and bkg_max for a given confidence level (CL).""" filename = DATA_PATH + 'FC' + str(int(CL*100)) + '.dat' print 'Generating table of Feldman-Cousins average upper values for CL=%0.2f' % CL fcm = conflimits.FCMemoizer(CL) fcm.ComputeTableAverageUpperLimits(bkg_min, bkg_max, step, filename)
name = "GrandLucifer" isot = isotope.Se82 eff = 0.65 eres = isot.Qbb * 0.003 bkg = 1.0E-3 / (units.keV * units.kg * units.year) mass = 429. * units.kg expo = 2200. * units.kg * units.year 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 ]
import sys FILE_PATH = os.path.dirname(os.path.realpath(__file__)) 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 = "NEXT100" eff = 0.3 eres = isotope.Xe136.Qbb * 0.0075 bkg = 5.E-4 / (units.keV * units.kg * units.year) mass = 91. * units.kg expo = mass * 3 * units.year NEXT100 = experiment.Experiment(name, isotope.Xe136, eff, eres, bkg, mass) FCM = conflimits.FCMemoizer(90) FCM.ReadTableAverageUpperLimits() nmes = ["ISM", "IBM2", "QRPA_Tu", "QRPA_Jy", "EDF"] for nme in nmes: print "NME = ", nme isotope.SelectNMESet(nmeset.nmedb[nme]) mbb = NEXT100.sensitivity_mbb(expo, FCM) print "mbb (meV) =", mbb / units.meV hl = NEXT100.sensitivity_halflife(expo, FCM) print "Tonu (year) =", hl / units.year