Ejemplo n.º 1
0
            # Loop over mass points again to get 1 sigma and 2 sigma info for Karol
            print "mass\texp 1 sig low\t exp 1 sig high\texp 2 sig 1 low\t exp 2 sig 1 high"
            for masspoint in range(shiftedgraphs[0].GetN()):
                b1, b2, b3, b4, b5, b6 = ROOT.Double(0), ROOT.Double(
                    0), ROOT.Double(0), ROOT.Double(0), ROOT.Double(
                        0), ROOT.Double(0)
                shiftedgraphs[1].GetPoint(masspoint, b1, b2)
                b3 = shiftedgraphs[1].GetErrorYlow(masspoint)
                b4 = shiftedgraphs[1].GetErrorYhigh(masspoint)
                b5 = shiftedgraphs[2].GetErrorYlow(masspoint)
                b6 = shiftedgraphs[2].GetErrorYhigh(masspoint)
                print b1, "\t", b3, "\t", b4, "\t", b5, "\t", b6

    # make GeV limit plot
    #newxname = xname.replace("G","T")
    [obs,exp] = myPainter.drawLimitSettingPlot2Sigma(shiftedgraphs[0],shiftedgraphs[1],shiftedgraphs[2],shiftedgraphs[3],SignalTitles[signal],\
       outputName,xname,yname,luminosity,Ecm,xlow,xhigh,thisyrange[0],thisyrange[1],False)

    if signal in SeveralList:
        SeveralLimitsMaterials["legend"].append(SignalTitles[signal])

    # Print out limit values!
    print "-" * 50
    print "File", limitFileNameTemplate
    print "Signal", signal
    print "Observed limit at 95% CL:", obs
    print "Expected limit at 95% CL:", exp, "\n"

# Get materials for signal overlay plots

SignalMasses = {
    "ZPrime0p16": [450],
            shiftedgraphs[0].GetPoint(masspoint, b1, b2)
            thisdict = {}
            thisdict["obs"] = b2
            print b1, "\t", b2, "\t",
            shiftedgraphs[1].GetPoint(masspoint, b1, b3)
            thisdict["exp"] = b3
            print b3, "\t",
            shiftedgraphs[3].GetPoint(masspoint, b4, b5)
            print b5
            localZPrimeDict[b1] = thisdict
            ZPrimexsec[coupling][b4] = b5
        ZPrimeLimits[coupling] = localZPrimeDict

    # make TeV plots
    newxname = xname.replace("G", "T")
    [obs,exp] = myPainter.drawLimitSettingPlot2Sigma(shiftedgraphs[0],shiftedgraphs[1],shiftedgraphs[2],shiftedgraphs[3],SignalTitles[signal],\
       outputName,newxname,yname,luminosity,Ecm,xlow/1000,xhigh/1000,thisyrange[0],thisyrange[1],False)

    # Two theory lines
    if signal == "BlackMax":
        outputName = outputName + "_withQBH"
        #thisname = thisname+"_withBlackMax"
        #[[obs1,exp1],[obs2,exp2]] = myPainter.drawLimitSettingPlot2Sigma(observedGraph,expectedGraph1Sigma,expectedGraph2Sigma,\
        #   [signalGraph,extrasignalGraph],[SignalTitles[signal],SignalTitles["QBH0"]],thisname,xname,yname,luminosity,Ecm,\
        #   xlow,xhigh,thisyrange[0],thisyrange[1],False)
        [[obs1,exp1],[obs2,exp2],[obs3,exp3]] = myPainter.drawLimitSettingPlot2Sigma(shiftedgraphs[0],shiftedgraphs[1],shiftedgraphs[2],\
           [shiftedgraphs[3],shiftedgraphs[4],shiftedgraphs[5]],[SignalTitles[signal],SignalTitles["QBH"],SignalTitles["QBHRS"]],outputName,newxname,yname,luminosity,Ecm,\
           xlow/1000,xhigh/1000,thisyrange[0],thisyrange[1],False)

    if signal == "QBH":
        outputName = outputName + "_withBlackMax"
        #[[obs1,exp1],[obs2,exp2]] = myPainter.drawLimitSettingPlot2Sigma(observedGraph,expectedGraph1Sigma,expectedGraph2Sigma,\
Ejemplo n.º 3
0
      newgraph.SetPoint(np,d1/1000.0,d2)
    shiftedgraphs.append(newgraph)


  thisx, thisy = ROOT.Double(0), ROOT.Double(0)

  thisyrange = yranges[signal]

  observedGraph.GetPoint(0,thisx,thisy)
  xlow = thisx - 100
  observedGraph.GetPoint(observedGraph.GetN()-1,thisx, thisy)
  xhigh = thisx + 100

  # make regular plots
  thisname = outputName+"_GeV"
  [obs,exp] = myPainter.drawLimitSettingPlot2Sigma(observedGraph,expectedGraph1Sigma,expectedGraph2Sigma,signalGraph,SignalTitles[signal],\
     thisname,xname,yname,luminosity,8,xlow,xhigh,thisyrange[0],thisyrange[1],False)

  # make TeV plots
  newxname = xname.replace("G","T")
  [obs,exp] = myPainter.drawLimitSettingPlot2Sigma(shiftedgraphs[0],shiftedgraphs[1],shiftedgraphs[2],shiftedgraphs[3],SignalTitles[signal],\
     outputName,newxname,yname,luminosity,8,xlow/1000,xhigh/1000,thisyrange[0],thisyrange[1],False)

  if signal=="BlackMax" :
    outputName = outputName+"_withQBH"
    thisname = thisname+"_withQBH"
    [[obs1,exp1],[obs2,exp2]] = myPainter.drawLimitSettingPlot2Sigma(observedGraph,expectedGraph1Sigma,expectedGraph2Sigma,\
       [signalGraph,extrasignalGraph],[SignalTitles[signal],SignalTitles["QBH"]],thisname,xname,yname,luminosity,8,\
       xlow,xhigh,thisyrange[0],thisyrange[1],False)
    [[obs1,exp1],[obs2,exp2]] = myPainter.drawLimitSettingPlot2Sigma(shiftedgraphs[0],shiftedgraphs[1],shiftedgraphs[2],\
       [shiftedgraphs[3],shiftedgraphs[4]],[SignalTitles[signal],SignalTitles["QBH"]],outputName,xname,yname,luminosity,8,\
       xlow/1000,xhigh/1000,thisyrange[0],thisyrange[1],False)