예제 #1
0
  print " [%3d/%d] ns %.2f, discoveries %3d/%d = %.2f" % (step+1, nstep+1,ns, ndisc, nsample, P)

  if (P > 0.5 and ns < ns_upper): ns_upper = ns
  if (P < 0.5 and ns > ns_lower): ns_lower = ns

# END for (step)

# swap order at this point, we're close enough
if (ns_lower > ns_upper):
  tmp      = ns_upper
  ns_upper = ns_lower
  ns_lower = tmp

print "Discovery Threshold Bounds: %.2f < ns < %.2f" % (ns_lower, ns_upper)

ns_avg = (ns_lower + ns_upper)/2.
norm   = inj.mu2flux( ns_avg )
print "\n---"
print "Source Declination:  %.2f deg" % args.dec
print "Flux Normalization:  A = %.2e TeV^-1 cm^-2 s^-1 @ %.2f TeV" % (norm*TeV, args.E0/TeV)
print "Spectral Assumption: dN/dE = A (E / %.2f TeV)^-%.2f" % (args.E0/TeV, args.index)
if args.useEXPbackground: print "Background:          EXP"
else:                     print "Background:          MC"
print "---\n"

######################################
# DISCOVERY POTENTIAL REFINED SEARCH #
######################################

###############################################################################
예제 #2
0
results_disc = sensitivity_flux(ts_disc, 0.5, llh, inj, fguess=0,
                               factor = 2, npar_fit = 2, par_fit = None,
                               results = results_disc,
                               nstep = args.nstep, 
                           ni_bounds = args.ni_bounds, 
                       ts_parameters = ts_parameters, # see BACKGROUND ONLY TS DISTRIBUTION
                             nsample = args.nsample, 
                                name = "split_sensitivity",
                                path = dir_name + "discovery_potential_%s_" % tag)

outfile = sig_dir + 'disc.array'
cache.save(results_disc,outfile)

mu2flux_str = ("| mu2flux for 1 event @ %.1f TeV is %.2e |" % 
                      (inj.E0/TeV, inj.mu2flux(1)*TeV))
sensitivity_str = ("| Sensitivity flux @ %.1f TeV is %.2e +/- %.2e TeV^-1cm^-2s^-1 |" % 
                      (inj.E0/TeV, results_sens[1]*TeV,  results_sens[2]*TeV))
discovery_str =   ("| Discovery flux   @ %.1f TeV is %.2e +/- %.2e TeV^-1cm^-2s^-1 |" % 
                      (inj.E0/TeV, results_disc[1]*TeV, results_disc[2]*TeV))

print ("\n*" + "-" * (len(sensitivity_str)-2) + "*")
print (mu2flux_str)
print (sensitivity_str)
print (discovery_str)
print ("*" + "-" * (len(sensitivity_str)-2) + "*")

########################
# ESTIMATE SENSITIVITY #
########################