MG = ROOT.TMultiGraph() #EXPECTED for i,mass,f in zip(range(len(EXPfiles)),EXPmasses,EXPfiles): if options.pval: continue sm = 1. median = array.array('d',[0]) up68 = array.array('d',[0]) dn68 = array.array('d',[0]) up95 = array.array('d',[0]) dn95 = array.array('d',[0]) if not options.doRatio: sm = GetBR(mass)*GetXsection(mass) if Method == "Asymptotic": median[0] = getOBSERVED(f,2) up95[0] = getOBSERVED(f,4) dn95[0] = getOBSERVED(f,0) up68[0] = getOBSERVED(f,3) dn68[0] = getOBSERVED(f,1) print "Mass - ",mass, median[0], getOBSERVED(f,5) #print "Up 95% :",up95[0] #print "Down 95% :",dn95[0] #print "Up 68% :",up68[0] #print "Down 68% :",dn68[0] else: tree = f.Get("limit") medianCalc("r_mH"+str(mass),tree,median,up68,dn68,up95,dn95)
graph95.SetPoint(i,mass,mediansmooth*sm) diff95_up = abs(mediansmooth - up95func.Eval(mass))*sm diff95_dn = abs(mediansmooth - dn95func.Eval(mass))*sm diff68_up = abs(mediansmooth - up68func.Eval(mass))*sm diff68_dn = abs(mediansmooth - dn68func.Eval(mass))*sm graph68.SetPointError(i,0,0,diff68_dn,diff68_up) graph95.SetPointError(i,0,0,diff95_dn,diff95_up) """ #OBSERVED for i, mass in zip(range(len(OBSfiles)), OBSmasses): sm = 1. if obs[i] == -1: continue if not options.doRatio: sm = GetBR(M) * GetXsection(M) graphObs.SetPoint(i, float(mass), obs[i] * sm) graphObs.SetPointError(i, 0, 0, 0, 0) #------------------------------------------------------------------------- # Construct the theory bands theoryArrays = [] theoryPlusArrays = [] theoryMinusArrays = [] dPlusArrays = [] dMinusArrays = [] xSecErrPlus = array.array('d', [0.0] * len(allMasses)) xSecErrMinus = array.array('d', [0.0] * len(allMasses))