Exemplo n.º 1
0
# List of samples and their plotting colours
# -------------------------------------------
topSample = Sample("Top", kGreen - 9)
# topSample.setNormFactor("mu_Top",1.,0.,5.)
wzSample = Sample("WZ", kAzure + 1)
# wzSample.setNormFactor("mu_WZ",1.,0.,5.)
dataSample = Sample("Data", kBlack)
dataSample.setData()


# **************
# Exclusion fit
# **************

# Fit config instance
exclusionFitConfig = configMgr.addTopLevelXML("Exclusion")
meas = exclusionFitConfig.addMeasurement(name="NormalMeasurement", lumi=1.0, lumiErr=0.039)
meas.addPOI("mu_SIG")

# Samples
exclusionFitConfig.addSamples([topSample, wzSample, dataSample])

# Systematics
exclusionFitConfig.getSample("Top").addSystematic(topKtScale)
exclusionFitConfig.getSample("WZ").addSystematic(wzKtScale)
exclusionFitConfig.addSystematic(jes)

# Channel
srBin = exclusionFitConfig.addChannel("met/meff2Jet", ["SR"], 6, 0.1, 0.7)
srBin.useOverflowBin = True
srBin.useUnderflowBin = True
Exemplo n.º 2
0
# Exclusion fit
#**************

# First define HistFactory attributes
configMgr.analysisName = "ZLMB" + "_" + str(
    nbin) + "bin_" + anaName + "_" + grid + "_" + allpoints[0]  #ATT
#configMgr.analysisName = "ZLMB"+"_"+anaName+"_"+grid
configMgr.histCacheFile = "data/" + configMgr.analysisName + ".root"
configMgr.outputFileName = "results/" + configMgr.analysisName + "_Output.root"

for point in allpoints:
    if point == "": continue

    #Fit config instance
    name = "Fit_" + "_" + point
    myFitConfig = configMgr.addTopLevelXML(name)
    if useStat:
        myFitConfig.statErrThreshold = 0.05
    else:
        myFitConfig.statErrThreshold = None

    meas = myFitConfig.addMeasurement(name="NormalMeasurement",
                                      lumi=1.0,
                                      lumiErr=0.039)
    meas.addPOI("mu_SIG")
    meas.addParamSetting("mu_Diboson", True, 1)  # fix diboson to MC prediction

    #Samples
    myFitConfig.addSamples([
        gammaSample, topSample, wSample, zSample, qcdSample, dibosonSample,
        dataSample
Exemplo n.º 3
0
sigSample = Sample("Sig", kPink)
sigSample.setNormFactor("mu_Sig", 1.0, 0.0, 100.0)
sigSample.setStatConfig(False)
sigSample.setNormByTheory(False)
sigSample.buildHisto([nsig], "UserRegion", "cuts")
# sigSample.buildStatErrors([nsigErr],"UserRegion","cuts")
# sigSample.addSystematic(cors)
# sigSample.addSystematic(ucs)

dataSample = Sample("Data", kBlack)
dataSample.setData()
dataSample.buildHisto([ndata], "UserRegion", "cuts")

# Define top-level
ana = configMgr.addTopLevelXML("SPlusB")
ana.addSamples([bkgSample, sigSample, dataSample])
ana.setSignalSample(sigSample)

# Define measurement
meas = ana.addMeasurement(name="NormalMeasurement", lumi=1.0, lumiErr=lumiError)
meas.addPOI("mu_Sig")
meas.addParamSetting("Lumi", True, 1)

# Add the channel
chan = ana.addChannel("cuts", ["UserRegion"], 1, 0.0, 1.0)
ana.setSignalChannels([chan])

# These lines are needed for the user analysis to run
# Make sure file is re-made when executing HistFactory
if configMgr.executeHistFactory:
# Exclusion fit
#**************

# First define HistFactory attributes
#configMgr.analysisName = "ZeroLepton"+"_"+anaName+"_"+grid+"_"+allpoints[0] #ATT
configMgr.analysisName = "ZeroLepton"+"_"+anaName+"_"+grid
configMgr.histCacheFile = "data/"+configMgr.analysisName+".root"
configMgr.outputFileName = "results/"+configMgr.analysisName+"_Output.root"


for point in allpoints:
    if point=="":continue
    
    #Fit config instance
    name="Fit_"+"_"+point
    myFitConfig = configMgr.addTopLevelXML(name)
    if useStat:
        myFitConfig.statErrThreshold=0.05 
    else:
        myFitConfig.statErrThreshold=None
        
    meas=myFitConfig.addMeasurement(name="NormalMeasurement",lumi=1.0,lumiErr=0.039)
    meas.addPOI("mu_SIG")
    meas.addParamSetting("mu_Diboson",True,1) # fix diboson to MC prediction

    #Samples
    myFitConfig.addSamples([gammaSample,topSample,wSample,zSample,qcdSample,dibosonSample,dataSample])

    #-------------------------------------------------
    # signal
    #-------------------------------------------------
data.setData()

commonSamples = [ttbargamma, Wgamma, Wjets, ttbarDilep, ttbarLepjets, st, Zgamma, Zleplep, diboson, data]

## Parameters of the Measurement
measName = "BasicMeasurement"
measLumi = 1.
measLumiError = 0.039

## Parameters of Channels
cutsNBins = 1
cutsBinLow = 0.0
cutsBinHigh = 1.0

## Bkg-only fit (add the common systematics, which also affect the signal when cloning)
bkgOnly = configMgr.addTopLevelXML("LepPhoton_BkgOnly")
print '============',bkgOnly.name
bkgOnly.statErrThreshold=0.0#None #0.5
bkgOnly.addSamples(commonSamples)
 
meas = bkgOnly.addMeasurement(measName,measLumi,measLumiError)
meas.addPOI("mu_SIG")
#meas.addParamSetting("mu_Top","const",1.0)

SREl = bkgOnly.addChannel("cuts",["SREl"],cutsNBins,cutsBinLow,cutsBinHigh)
SRMu = bkgOnly.addChannel("cuts",["SRMu"],cutsNBins,cutsBinLow,cutsBinHigh)

bkgOnly.setSignalChannels([SREl, SRMu])

SREl.addSample(diphotons)
Exemplo n.º 6
0
topSample = Sample("Top", kGreen - 9)
#topSample.setNormFactor("mu_Top",1.,0.,5.)
wzSample = Sample("WZ", kAzure + 1)
#wzSample.setNormFactor("mu_WZ",1.,0.,5.)
dataSample = Sample("Data", kBlack)
dataSample.setData()
dataSample.buildHisto([3.], "SR", "cuts", 0.5)

#**************
# Discovery fit
#**************

if myFitType == FitType.Discovery:

    #Fit config instance
    discoveryFitConfig = configMgr.addTopLevelXML("Discovery")
    meas = discoveryFitConfig.addMeasurement(name="NormalMeasurement",
                                             lumi=1.0,
                                             lumiErr=0.039)
    meas.addPOI("mu_Discovery")

    #Samples
    discoveryFitConfig.addSamples([topSample, wzSample, dataSample])

    #Systematics
    discoveryFitConfig.getSample("Top").addSystematic(topKtScale)
    discoveryFitConfig.getSample("WZ").addSystematic(wzKtScale)
    discoveryFitConfig.addSystematic(jes)
    #Channel
    srBin = discoveryFitConfig.addChannel("cuts", ["SR"], 1, 0.5, 1.5)
    discoveryFitConfig.setSignalChannels([srBin])
Exemplo n.º 7
0
ddSample = Sample("DataDriven", kGreen + 2)
ddSample.addShapeFactor("DDShape")

sigSample = Sample("Sig", kPink)
sigSample.setNormFactor("mu_Sig", 1., 0.2, 1.5)
sigSample.buildHisto(nSigSR, "SR", "cuts")
sigSample.setNormByTheory(True)
sigSample.addSystematic(sigxsec)

dataSample = Sample("Data", kBlack)
dataSample.setData()
dataSample.buildHisto(nDataCR, "CR", "cuts")
dataSample.buildHisto(nDataSR, "SR", "cuts")

# Define top-level
ana = configMgr.addTopLevelXML("SPlusB")
ana.addSamples([bkgSample, ddSample, dataSample])

# Define measurement
meas = ana.addMeasurement(name="NormalMeasurement", lumi=1.0, lumiErr=0.039)
meas.addPOI("mu_Sig")
meas.addParamSetting("Lumi", True)

# Add the channels
chanCR = ana.addChannel("cuts", ["CR"], 2, 0., 2.)

chanSR = ana.addChannel("cuts", ["SR"], 2, 0., 2.)
chanSR.addSample(sigSample)
chanSR.getSample("DataDriven").addSystematic(xtrap)

ana.setBkgConstrainChannels([chanCR])
Exemplo n.º 8
0
commonSamples = [allbkgSample,dataSample]
configMgr.plotColours = [kGreen,kBlack]

## Parameters of the Measurement
measName = "BasicMeasurement"
measLumi = 1.
measLumiError = 0.039

## Parameters of Channels
cutsRegions = ["SR"]
cutsNBins = 1
cutsBinLow = 0.0
cutsBinHigh = 1.0

## Bkg-only fit
bkgOnly = configMgr.addTopLevelXML("SimpleChannel_BkgOnly")
bkgOnly.statErrThreshold=None #0.5
bkgOnly.addSamples(commonSamples)
bkgOnly.addSystematic(jes)
meas = bkgOnly.addMeasurement(measName,measLumi,measLumiError)
meas.addPOI("mu_SIG")
cutsChannel = bkgOnly.addChannel("cuts",cutsRegions,cutsNBins,cutsBinLow,cutsBinHigh)

## Discovery fit
#discovery = configMgr.addTopLevelXMLClone(bkgOnly,"SimpleChannel_Discovery")
#discovery.clearSystematics()
#sigSample = Sample("discoveryMode",kBlue)
#sigSample.setNormFactor("mu_SIG",0.5,0.,1.)
#sigSample.setNormByTheory()
#discovery.addSamples(sigSample)
#discovery.setSignalSample(sigSample)
commonSamples = [allbkgSample, dataSample]
configMgr.plotColours = [kGreen, kBlack]

## Parameters of the Measurement
measName = "BasicMeasurement"
measLumi = 1.
measLumiError = 0.039

## Parameters of Channels
cutsRegions = ["SR"]
cutsNBins = 1
cutsBinLow = 0.0
cutsBinHigh = 1.0

## Bkg-only fit
bkgOnly = configMgr.addTopLevelXML("SimpleChannel_BkgOnly")
bkgOnly.statErrThreshold = None  #0.5
bkgOnly.addSamples(commonSamples)
bkgOnly.addSystematic(jes)
meas = bkgOnly.addMeasurement(measName, measLumi, measLumiError)
meas.addPOI("mu_SIG")
cutsChannel = bkgOnly.addChannel("cuts", cutsRegions, cutsNBins, cutsBinLow,
                                 cutsBinHigh)

## Discovery fit
#discovery = configMgr.addTopLevelXMLClone(bkgOnly,"SimpleChannel_Discovery")
#discovery.clearSystematics()
#sigSample = Sample("discoveryMode",kBlue)
#sigSample.setNormFactor("mu_SIG",0.5,0.,1.)
#sigSample.setNormByTheory()
#discovery.addSamples(sigSample)
Exemplo n.º 10
0
# List of samples and their plotting colours
#-------------------------------------------
topSample = Sample("Top",kGreen-9)
#topSample.setNormFactor("mu_Top",1.,0.,5.)
wzSample = Sample("WZ",kAzure+1)
#wzSample.setNormFactor("mu_WZ",1.,0.,5.)
dataSample = Sample("Data",kBlack)
dataSample.setData()


#**************
# Discovery fit
#**************

#Fit config instance
discoveryFitConfig = configMgr.addTopLevelXML("Discovery")
meas=discoveryFitConfig.addMeasurement(name="NormalMeasurement",lumi=1.0,lumiErr=0.039)
meas.addPOI("mu_SIG")

#Samples
discoveryFitConfig.addSamples([topSample,wzSample,dataSample])

# Systematics
discoveryFitConfig.getSample("Top").addSystematic(topKtScale)
discoveryFitConfig.getSample("WZ").addSystematic(wzKtScale)
discoveryFitConfig.addSystematic(jes)

#Channel
srBin = discoveryFitConfig.addChannel("cuts",["SR"],1,0.5,1.5)
discoveryFitConfig.setSignalChannels([srBin])
srBin.addDiscoverySamples(["BLAH"],[1.],[0.],[100.],[kMagenta])
Exemplo n.º 11
0
#-------------------------------------------
# List of samples and their plotting colours
#-------------------------------------------
topSample = Sample("Top", kGreen - 9)
#topSample.setNormFactor("mu_Top",1.,0.,5.)
wzSample = Sample("WZ", kAzure + 1)
#wzSample.setNormFactor("mu_WZ",1.,0.,5.)
dataSample = Sample("Data", kBlack)
dataSample.setData()

#**************
# Exclusion fit
#**************

#Fit config instance
exclusionFitConfig = configMgr.addTopLevelXML("Exclusion")
meas = exclusionFitConfig.addMeasurement(name="NormalMeasurement",
                                         lumi=1.0,
                                         lumiErr=0.039)
meas.addPOI("mu_SIG")

#Samples
exclusionFitConfig.addSamples([topSample, wzSample, dataSample])

# Systematics
exclusionFitConfig.getSample("Top").addSystematic(topKtScale)
exclusionFitConfig.getSample("WZ").addSystematic(wzKtScale)
exclusionFitConfig.addSystematic(jes)

#Channel
srBin = exclusionFitConfig.addChannel("met/meff2Jet", ["SR"], 6, 0.1, 0.7)
topSample = Sample("Top",kGreen-9)
#topSample.setNormFactor("mu_Top",1.,0.,5.)
wzSample = Sample("WZ",kAzure+1)
#wzSample.setNormFactor("mu_WZ",1.,0.,5.)
dataSample = Sample("Data",kBlack)
dataSample.setData()
dataSample.buildHisto([3.],"SR","cuts",0.5)

#**************
# Discovery fit
#**************

if myFitType==FitType.Discovery:
 
   #Fit config instance
   discoveryFitConfig = configMgr.addTopLevelXML("Discovery")
   meas=discoveryFitConfig.addMeasurement(name="NormalMeasurement",lumi=1.0,lumiErr=0.039)
   meas.addPOI("mu_Discovery")
 
   #Samples
   discoveryFitConfig.addSamples([topSample,wzSample,dataSample])

   #Systematics
   discoveryFitConfig.getSample("Top").addSystematic(topKtScale)
   discoveryFitConfig.getSample("WZ").addSystematic(wzKtScale)
   discoveryFitConfig.addSystematic(jes)
   #Channel
   srBin = discoveryFitConfig.addChannel("cuts",["SR"],1,0.5,1.5)
   discoveryFitConfig.setSignalChannels([srBin])
   srBin.addDiscoverySamples(["Discovery"],[1.],[0.],[10000.],[kMagenta])