Beispiel #1
0
    def listOfSteps(self,params) :
        _jet  = params["objects"]["jet"]
        _electron = params["objects"]["electron"]
        _muon = params["objects"]["muon"]
        _photon = params["objects"]["photon"]
        _met  = params["objects"]["met"]
        
        outList=[
            steps.progressPrinter(),
            steps.histogrammer("genpthat",200,0,1000,title=";#hat{p_{T}} (GeV);events / bin"),

            steps.preIdJetPtSelector(_jet,100.0,0),
            steps.preIdJetPtSelector(_jet, 80.0,1),
            steps.leadingUnCorrJetPtSelector( [_jet],100.0 ),
            steps.hltFilter("HLT_Jet50U"),
            steps.vertexRequirementFilter(),
            steps.techBitFilter([0],True),
            steps.physicsDeclared(),
            steps.monsterEventFilter(),
            steps.hbheNoiseFilter(),
            
            steps.multiplicityFilter("%sIndices%s"%_photon, nMax = 0),
            steps.multiplicityFilter("%sIndices%s"%_electron, nMax = 0),
            steps.multiplicityFilter("%sIndices%s"%_muon, nMax = 0),
            steps.multiplicityFilter("%sIndicesUnmatched%s"%_electron, nMax = 0),
            steps.multiplicityFilter("%sIndicesUnmatched%s"%_photon, nMax = 0),
            steps.multiplicityFilter("%sIndicesOther%s"%_muon, nMax = 0),
            steps.uniquelyMatchedNonisoMuons(_jet),
            steps.singleJetHistogrammer(_jet),
            steps.histogrammer(_met,100,0.0,500.0,title=";"+_met+" (GeV);events / bin", funcString = "lambda x: x.pt()"),
            steps.histogrammer("%sSumP4%s"%_jet,100,0.0,500.0,title=";MHT (GeV);events / bin", funcString = "lambda x: x.pt()"),

            steps.multiplicityFilter("%sIndices%s"%_jet, nMin = params["nJetsMinMax"][0], nMax = params["nJetsMinMax"][1]),
            steps.multiplicityFilter("%sIndicesOther%s"%_jet, nMax = 0),
            steps.jetPtSelector(_jet,100.0,0),
            steps.jetEtaSelector(_jet,2.5,0),
            steps.jetPtSelector(_jet,80.0,1),
            steps.singleJetHistogrammer(_jet),
            steps.histogrammer(_met,100,0.0,500.0,title=";"+_met+" (GeV);events / bin", funcString = "lambda x: x.pt()"),
            steps.histogrammer("%sSumP4%s"%_jet,100,0.0,500.0,title=";MHT (GeV);events / bin", funcString = "lambda x: x.pt()"),
            
            steps.variableGreaterFilter(350.0,"%sSumEt%s"%_jet, suffix = "GeV"),
            steps.singleJetHistogrammer(_jet),
            steps.histogrammer(_met,100,0.0,500.0,title=";"+_met+" (GeV);events / bin", funcString = "lambda x: x.pt()"),
            steps.histogrammer("%sSumP4%s"%_jet,100,0.0,500.0,title=";MHT (GeV);events / bin", funcString = "lambda x: x.pt()"),
            
            steps.variablePtGreaterFilter(140.0,"%sSumP4%s"%_jet,"GeV"),
            steps.variableGreaterFilter(0.55,"%sAlphaT%s"%_jet),
            steps.singleJetHistogrammer(_jet),
            steps.histogrammer(_met,100,0.0,500.0,title=";"+_met+" (GeV);events / bin", funcString = "lambda x: x.pt()"),
            steps.histogrammer("%sSumP4%s"%_jet,100,0.0,500.0,title=";MHT (GeV);events / bin", funcString = "lambda x: x.pt()"),
            
            ]
        return outList
Beispiel #2
0
    def listOfSteps(self,params) :
        _jet  = params["objects"]["jet"]
        _electron = params["objects"]["electron"]
        _muon = params["objects"]["muon"]
        _photon = params["objects"]["photon"]
        _met  = params["objects"]["met"]
        _etRatherThanPt = params["etRatherThanPt"]

        outList=[
            supy.steps.printer.progressPrinter(),
            steps.histogrammer("genpthat",200,0,1000,title=";#hat{p_{T}} (GeV);events / bin"),
            
            steps.preIdJetPtSelector(_jet,100.0,0),
            steps.preIdJetPtSelector(_jet,100.0,1),
            steps.jetEtaSelector(_jet,2.5,0),
            steps.hltFilter("HLT_HT100U"),
            #steps.vertexRequirementFilter(),
            steps.techBitFilter([0],True),
            steps.physicsDeclared(),
            steps.monsterEventFilter(),
            steps.hbheNoiseFilter(),
            
            steps.histogrammer("vertexIndices", 10,-0.5,9.5, title = ";N good vertices;events / bin", funcString="lambda x:len(x)"),
            steps.multiplicityFilter("vertexIndices", nMin = 1),
            steps.histogrammer("vertexIndicesOther", 10,-0.5,9.5, title = ";N bad vertices;events / bin", funcString="lambda x:len(x)"),
            steps.multiplicityFilter("vertexIndicesOther", nMax = 0),

            steps.histogrammer("vertexIndices", 10,-0.5,9.5, title = ";N good vertices;events / bin", funcString="lambda x:len(x)"),
            steps.vertexHistogrammer(),
            #steps.hltPrescaleHistogrammer(["HLT_Jet50U","HLT_Jet70U","HLT_Jet100U","HLT_HT100U","HLT_HT120U","HLT_HT140U"]),
            #steps.iterHistogrammer("ecalDeadTowerTrigPrimP4", 256, 0.0, 128.0, title=";E_{T} of ECAL TP in each dead region (GeV);TPs / bin",
            #                       funcString="lambda x:x.Et()"),
            
            #steps.histogrammer("%sIndices%s"%_jet,10,-0.5,9.5, title=";number of %s%s passing ID#semicolon p_{T}#semicolon #eta cuts;events / bin"%_jet,       funcString="lambda x:len(x)"),
            steps.multiplicityFilter("%sIndices%s"%_jet, nMin = params["nJetsMinMax"][0], nMax = params["nJetsMinMax"][1]),
            #steps.histogrammer("%sIndicesOther%s"%_jet,10,-0.5,9.5, title=";number of %s%s above p_{T}#semicolon failing ID or #eta;events / bin"%_jet,                               funcString="lambda x:len(x)"),
            steps.multiplicityFilter("%sIndicesOther%s"%_jet, nMax = 0),
            
            #electron, muon, photon vetoes
            #steps.histogrammer("%sIndices%s"%_electron,10,-0.5,9.5,title="; N electrons ;events / bin", funcString = "lambda x: len(x)"),
            steps.multiplicityFilter("%sIndices%s"%_electron, nMax = 0),
            #steps.histogrammer("%sIndices%s"%_muon,10,-0.5,9.5,title="; N muons ;events / bin", funcString = "lambda x: len(x)"),
            steps.multiplicityFilter("%sIndices%s"%_muon, nMax = 0),
            #steps.histogrammer("%sIndicesOther%s"%_muon,10,-0.5,9.5, title=";number of %s%s above p_{T}#semicolon failing ID or #eta;events / bin"%_muon,funcString="lambda x:len(x)"),
            steps.multiplicityFilter("%sIndicesOther%s"%_muon, nMax = 0),
            #steps.histogrammer("%sIndices%s"%_photon,10,-0.5,9.5,title="; N photons ;events / bin", funcString = "lambda x: len(x)"),
            steps.multiplicityFilter("%sIndices%s"%_photon, nMax = 0),

            #steps.histogrammer("%sIndicesUnmatched%s"%_electron,10,-0.5,9.5,title="; N electrons unmatched;events / bin", funcString = "lambda x: len(x)"),
            steps.multiplicityFilter("%sIndicesUnmatched%s"%_electron, nMax = 0),
            #steps.histogrammer("%sIndicesUnmatched%s"%_photon,10,-0.5,9.5,title="; N photons unmatched;events / bin", funcString = "lambda x: len(x)"),
            steps.multiplicityFilter("%sIndicesUnmatched%s"%_photon, nMax = 0),
            steps.uniquelyMatchedNonisoMuons(_jet),
            
            steps.histogrammer("%sSumEt%s"%_jet,50,0,1500, title = ";H_{T} (GeV) from %s%s %s_{T}s;events / bin"%(_jet[0],_jet[1],"p" if not _etRatherThanPt else "E")),
            steps.variableGreaterFilter(350.0,"%sSumEt%s"%_jet, suffix = "GeV"),
            
            steps.histogrammer("vertexIndices", 10,-0.5,9.5, title = ";N good vertices;events / bin", funcString="lambda x:len(x)"),
            steps.vertexHistogrammer(),
            #many plots
            #steps.passFilter("singleJetPlots1"),
            #steps.singleJetHistogrammer(_jet),
            #steps.passFilter("jetSumPlots1"), 
            #steps.cleanJetHtMhtHistogrammer(_jet,_etRatherThanPt),
            #steps.histogrammer(_met,100,0.0,500.0,title=";"+_met+" (GeV);events / bin", funcString = "lambda x: x.pt()"),
            #steps.passFilter("kinematicPlots1"), 
            #steps.alphaHistogrammer(_jet, _etRatherThanPt),
            #steps.alphaMetHistogrammer(_jet, _etRatherThanPt, _met),
            
            ###extrapolation region
            ##steps.variableGreaterFilter(0.50,"%sAlphaT%s"%_jet),
            ##
            ###many plots (again)
            ##steps.passFilter("singleJetPlots2"),
            ##steps.cleanJetPtHistogrammer(_jet),
            ##steps.passFilter("jetSumPlots2"), 
            ##steps.cleanJetHtMhtHistogrammer(_jet),
            ###steps.passFilter("kinematicPlots2"), 
            ###steps.alphaHistogrammer(_jet),
            
            #signal selection
            steps.variablePtGreaterFilter(140.0,"%sSumP4%s"%_jet,"GeV"),
            steps.variableGreaterFilter(0.5,"%sAlphaT%s"%_jet),
            steps.histogrammer("vertexIndices", 10,-0.5,9.5, title = ";N good vertices;events / bin", funcString="lambda x:len(x)"),
            steps.vertexHistogrammer(),
            steps.variableGreaterFilter(0.55,"%sAlphaT%s"%_jet),
            steps.histogrammer("vertexIndices", 10,-0.5,9.5, title = ";N good vertices;events / bin", funcString="lambda x:len(x)"),
            steps.vertexHistogrammer(),
            #steps.histogrammer("mhtMinusMetOverMeff", 100, -1.0, 1.0, title = ";(MHT - PFMET)/(MHT+HT);events / bin"),
            #steps.variableLessFilter(0.15,"mhtMinusMetOverMeff"),
            #steps.deadEcalFilter(jets = _jet, dR = 0.3, dPhiStarCut = 0.5, nXtalThreshold = 5),
            ##steps.variableGreaterFilter(0.53,"%sAlphaTMet%s"%_jet),
            
            #steps.skimmer(),
            #steps.eventPrinter(),
            #steps.jetPrinter(_jet),
            #steps.particleP4Printer(_muon),
            #steps.particleP4Printer(_photon),
            #steps.recHitPrinter("clusterPF","Ecal"),
            #steps.htMhtPrinter(_jet),
            #steps.alphaTPrinter(_jet,_etRatherThanPt),
            #steps.genParticlePrinter(minPt=10.0,minStatus=3),
            #
            #steps.displayer(jets = _jet,
            #                muons = _muon,
            #                met       = params["objects"]["met"],
            #                electrons = params["objects"]["electron"],
            #                photons   = params["objects"]["photon"],                            
            #                recHits   = params["objects"]["rechit"],recHitPtThreshold=1.0,#GeV
            #                scale = 400.0,#GeV
            #                etRatherThanPt = _etRatherThanPt,
            #                ),
            
            ]
        return outList