コード例 #1
0
def add_path_core(process):
    ################################################# path for bkg template ###

    process.FiltLooseIDSihihSB = cms.EDFilter(
        "PATPhotonSelector",
        src=cms.InputTag("photonInputDummy"),
        cut=cms.string(loose_cuts_bkg_str),
        filter=cms.bool(False),
    )

    process.PlotLooseIDSihihSB = pho_cuts.make_histo_analyzer(
        "FiltLooseIDSihihSB", pho_cuts.cuts_loose["chargedisoSCFootRmEB"]
    )

    process.pathTmpltLooseID = cms.Path(process.preSel * process.FiltLooseIDSihihSB * process.PlotLooseIDSihihSB)

    for i in xrange(12, 20):
        name = "LooseIDSliceSihihSB%02dto%02d" % (i, i + 1)
        cut = sihih_sideband_cut(0.001 * i, 0.001 * (i + 1))
        setattr(process, "Filt" + name, process.FiltLooseIDSihihSB.clone(cut=cut))
        setattr(process, "Plot" + name, process.PlotLooseIDSihihSB.clone(src="Filt" + name))
        process.pathTmpltLooseID *= getattr(process, "Filt" + name)
        process.pathTmpltLooseID *= getattr(process, "Plot" + name)

    return [process.pathTmpltLooseID]
コード例 #2
0
def add_nm2_path_core(process):
    ################################################# path for bkg template ###
    # Additionally make a path where neither chhadiso nor sihih is applied
    cutkeys_Nm2 = cut_key_order[:]
    cuts_Nm2_list = list(cuts[cutkey][0] for cutkey in cutkeys_Nm2)
    cuts_Nm2_str = "( " + ") && (".join(cuts_Nm2_list) + " )"

    # Filter for n - 1 plot
    process.Nm2Filt = cms.EDFilter("PATPhotonSelector",
        src = cms.InputTag("photonInputDummy"),
        cut = cms.string(cuts_Nm2_str),
        filter = cms.bool(False)
    )

    # Take only one photon per event (photons are pt-ordered)
    process.Nm2FirstPhoton = cms.EDProducer("FirstPhotonPicker",
        src = cms.InputTag("Nm2Filt")
    )

    # n - 2 Plot
    process.Nm2PlotsihihEB = pho_cuts.make_histo_analyzer(
        "Nm2FirstPhoton",
        cuts["sihihEB"]
    )
    process.Nm2PlotchargedHadronIsoEB = pho_cuts.make_histo_analyzer(
        "Nm2FirstPhoton",
        cuts["chargedHadronIsoEB"]
    )

    process.pathNm2Core = cms.Path(
        process.preSel
        * process.Nm2Filt
        * process.Nm2FirstPhoton
        * process.Nm2PlotsihihEB
        * process.Nm2PlotchargedHadronIsoEB
    )
    return [process.pathNm2Core]
コード例 #3
0
def add_path_core(process):
    ################################################# path for bkg template ###

    process.FiltSBID = cms.EDFilter("PATPhotonSelector",
        src = cms.InputTag("photonInputDummy"),
        cut = cms.string(lower_cut+"&&"+upper_cut),
        filter = cms.bool(False)
    )

    process.PlotSBID = pho_cuts.make_histo_analyzer(
        "FiltSBID",
        pho_cuts.cuts_loose["chargedisoSCFootRmEB"]
    )

    process.pathTmpltSBID = cms.Path(
        process.preSel
        * process.FiltSBID
        * process.PlotSBID
    )
    return [process.pathTmpltSBID]
コード例 #4
0
def add_path(process):
    ################################################# path for Random Cone Signal template ###

    process.FiltRandCone = cms.EDFilter("PATPhotonSelector",
        src = cms.InputTag("photonInputDummy"),
        cut =cms.string("userFloat('randomConeIsoCharged') >= 0"),
	filter = cms.bool(False)
    )

    process.PlotRandCone = pho_cuts.make_histo_analyzer(
        "FiltRandCone",
        pho_cuts.histo_pre["randomConeIso"]
    )
    process.TemplateRandConereal = process.PlotRandCone.clone()

    process.pathTmpltRandCone = cms.Path(
        process.preSel
        * process.FiltRandCone
        * process.PlotRandCone
	* process.TemplateRandConereal
    )
    return [process.pathTmpltRandCone]
コード例 #5
0
def add_bkg_template_path(process):

    ###################################################### inverse chhadiso ###
    # make one cut string for the N-1 plots
    cutkeys_Nm1 = cut_key_order[:]
    cutkeys_Nm1.append("chargedHadronIsoEBInv")
    cuts_Nm1_list = list(cuts[cutkey][0] for cutkey in cutkeys_Nm1)
    cuts_Nm1_str = "(" + ") && (".join(cuts_Nm1_list) + ")"

    # Filter for inverse n - 1 plots
    process.Nm1FiltChHadIsoInv = cms.EDFilter("PATPhotonSelector",
        src = cms.InputTag("photonInputDummy"),
        cut = cms.string(cuts_Nm1_str),
        filter = cms.bool(False)
    )

    # Take only one photon per event (photons are pt-ordered)
    process.Nm1FirstPhotonChHadIsoInv = cms.EDProducer("FirstPhotonPicker",
        src = cms.InputTag("Nm1FiltChHadIsoInv")
    )

    # inverse n - 1 Plots
    process.Nm1PlotSihihChHadIsoInv = pho_cuts.make_histo_analyzer(
        "Nm1FirstPhotonChHadIsoInv",
        cuts["sihihEB"]
    )

    ######################################################### inverse sihih ###
    # make one cut string for the N-1 plots
    cutkeys_Nm1 = cut_key_order[:]
    cutkeys_Nm1.append("sihihEBInv")
    cuts_Nm1_list = list(cuts[cutkey][0] for cutkey in cutkeys_Nm1)
    cuts_Nm1_str = "( " + ") && (".join(cuts_Nm1_list) + " )"

    # Filter for inverse n - 1 plots
    process.Nm1FiltSihihInv = cms.EDFilter("PATPhotonSelector",
        src = cms.InputTag("photonInputDummy"),
        cut = cms.string(cuts_Nm1_str),
        filter = cms.bool(False)
    )

    # Take only one photon per event (photons are pt-ordered)
    process.Nm1FirstPhotonSihihInv = cms.EDProducer("FirstPhotonPicker",
        src = cms.InputTag("Nm1FiltSihihInv")
    )

    # inverse n - 1 Plots
    process.Nm1PlotChHadIsoSihihInv = pho_cuts.make_histo_analyzer(
        "Nm1FirstPhotonSihihInv",
        cuts["chargedHadronIsoEB"]
    )

    # make path
    process.pathChHadIsoInv = cms.Path(
        process.preSel
        * process.Nm1FiltChHadIsoInv
        * process.Nm1FirstPhotonChHadIsoInv
        * process.Nm1PlotSihihChHadIsoInv
        * process.Nm1FiltSihihInv
        * process.Nm1FirstPhotonSihihInv
        * process.Nm1PlotChHadIsoSihihInv
    )

    return [process.pathChHadIsoInv]