def jetFlavour(process):
    process.load("PhysicsTools.JetMCAlgos.CaloJetsMCFlavour_cfi")
    process.PFAK5byRef = process.AK5byRef.clone(
        jets = cms.InputTag("ak5PFJetsCorr")
        )
    process.PFAK5byValAlgo = process.AK5byValAlgo.clone(
        srcByReference = cms.InputTag("PFAK5byRef")
        )
    process.JetSequence += process.myPartons
    process.JetSequence += process.PFAK5byRef
    process.JetSequence += process.PFAK5byValAlgo
    
    # get gen jets without neutrinos
    from RecoJets.Configuration.GenJetParticles_cff import genParticlesForJetsNoNu
    process.genParticlesForJetsNoNu = genParticlesForJetsNoNu

    from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
    process.ak5GenJetsNoNu = ak5GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
    
    process.JetSequence += process.genParticlesForJetsNoNu
    process.JetSequence += process.ak5GenJetsNoNu
Exemple #2
0
) 
process.maxEvents = cms.untracked.PSet(
    input = cms.untracked.int32(-1)
)

#process.SimpleMemoryCheck = cms.Service("SimpleMemoryCheck", 
#  ignoreTotal = cms.untracked.int32(1) ## default is one 
#) 


process.load('Configuration.StandardSequences.Reconstruction_cff') 
process.load('JetMETCorrections.Configuration.DefaultJEC_cff')

process.load('RecoJets.Configuration.GenJetParticles_cff')
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
process.ak5GenJetsNoNu = ak5GenJets.clone(src = cms.InputTag("genParticlesForJetsNoNu"))

process.ak5GenJetsSequence = cms.Sequence(process.genParticlesForJetsNoNu*process.ak5GenJetsNoNu)

from RecoJets.Configuration.RecoGenJets_cff import *
from RecoJets.Configuration.RecoJets_cff import *
from RecoJets.Configuration.RecoPFJets_cff import *
process.kt6PFJets.doRhoFastjet = True 
process.ak5PFJets.doAreaFastjet = True 


process.load("Configuration.StandardSequences.Services_cff") 
process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff") 
process.GlobalTag.globaltag = 'START53_V29B::All' 
#process.GlobalTag.globaltag = 'START53_V7A::All' 
Exemple #3
0
        maxZ=cms.double(24.0),
        minNdof=cms.double(4.0)  # this is >= 4
    ),
    src=cms.InputTag(pvSrc))

###############################
########## Gen Setup ##########
###############################

process.load("RecoJets.Configuration.GenJetParticles_cff")
from RecoJets.JetProducers.ca4GenJets_cfi import ca4GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
process.ca8GenJetsNoNu = ca4GenJets.clone(
    rParam=cms.double(0.8), src=cms.InputTag("genParticlesForJetsNoNu"))

process.ak8GenJetsNoNu = ak5GenJets.clone(
    rParam=cms.double(0.8), src=cms.InputTag("genParticlesForJetsNoNu"))

process.load("TopQuarkAnalysis.TopEventProducers.sequences.ttGenEvent_cff")

# add the flavor history
process.load("PhysicsTools.HepMCCandAlgos.flavorHistoryPaths_cfi")

# prune gen particles
process.load("SimGeneral.HepPDTESSource.pythiapdt_cfi")
process.prunedGenParticles = cms.EDProducer(
    "GenParticlePruner",
    src=cms.InputTag("genParticles"),
    select=cms.vstring(
        "drop  *",
        "keep status = 3"  #keeps  particles from the hard matrix element
        ,
        9900012,
        9900014,
        9900016,
        39,
    ),
    partonicFinalState=cms.bool(False),
    excludeResonances=cms.bool(True),
    excludeFromResonancePids=cms.vuint32(12, 13, 14, 16),
    tausAsJets=cms.bool(False),
)


from RecoJets.JetProducers.ca4GenJets_cfi import ca4GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets

process.ak5GenJets = ak5GenJets.clone()
process.ak5GenJetsNoNu = ak5GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
process.ca8GenJetsNoNu = ca4GenJets.clone(rParam=cms.double(0.8), src=cms.InputTag("genParticlesForJetsNoNu"))
process.ak8GenJetsNoNu = ak5GenJets.clone(rParam=cms.double(0.8), src=cms.InputTag("genParticlesForJetsNoNu"))

process.load("PhysicsTools.HepMCCandAlgos.flavorHistoryPaths_cfi")
process.load("SimGeneral.HepPDTESSource.pythiapdt_cfi")
process.prunedGenParticles = cms.EDProducer(
    "GenParticlePruner",
    src=cms.InputTag("genParticles"),
    select=cms.vstring(
        "drop  *",
        "keep status = 3",  # keeps  particles from the hard matrix element
        "keep (abs(pdgId) >= 11 & abs(pdgId) <= 16) & status = 1",  # keeps e/mu and nus with status 1
        "keep (abs(pdgId)  = 15) & status = 3",  # keeps taus
    ),
###### Bare KT 0.6 jets #######
###############################

#from RecoJets.JetProducers.kt4PFJets_cfi import kt4PFJets
# For electron (effective area) isolation
#process.kt6PFJetsForIsolation = kt4PFJets.clone( rParam = 0.6, doRhoFastjet = True )
#process.kt6PFJetsForIsolation.Rho_EtaMax = cms.double(2.5)

###############################
### Add AK5GenJetsNoMuNoNu ####
###############################

from RecoJets.Configuration.GenJetParticles_cff import genParticlesForJetsNoMuNoNu
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets

process.ak5GenJetsNoMuNoNu = ak5GenJets.clone( src = cms.InputTag('genParticlesForJetsNoMuNoNu') )
process.ak5GenJetsSeq = cms.Sequence(genParticlesForJetsNoMuNoNu*process.ak5GenJetsNoMuNoNu)

###############################
#### Selections Setup #########
###############################

# AK5 Jets
#   PF
process.selectedPatJetsPF2PAT.cut = cms.string("pt > 10")
process.selectedPatJetsPF2PATNoLeptonCleaning.cut = cms.string("pt > 10")
#process.selectedPatJetsPF2PATNoPFnoPU.cut = cms.string("pt > 10")
#process.selectedPatJetsAK5Calo.cut = cms.string("pt > 15")

# Flavor history stuff
process.load("PhysicsTools.HepMCCandAlgos.flavorHistoryPaths_cfi")
Exemple #6
0
###### Bare KT 0.6 jets #######
###############################

#from RecoJets.JetProducers.kt4PFJets_cfi import kt4PFJets
# For electron (effective area) isolation
#process.kt6PFJetsForIsolation = kt4PFJets.clone( rParam = 0.6, doRhoFastjet = True )
#process.kt6PFJetsForIsolation.Rho_EtaMax = cms.double(2.5)

###############################
### Add AK5GenJetsNoMuNoNu ####
###############################

from RecoJets.Configuration.GenJetParticles_cff import genParticlesForJetsNoMuNoNu
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets

process.ak5GenJetsNoMuNoNu = ak5GenJets.clone( src = cms.InputTag('genParticlesForJetsNoMuNoNu') )
process.ak5GenJetsSeq = cms.Sequence(genParticlesForJetsNoMuNoNu*process.ak5GenJetsNoMuNoNu)

###############################
#### Selections Setup #########
###############################

# AK5 Jets
#   PF
process.selectedPatJetsPF2PAT.cut = cms.string("pt > 10")
process.selectedPatJetsPF2PATNoLeptonCleaning.cut = cms.string("pt > 10")
#process.selectedPatJetsPF2PATNoPFnoPU.cut = cms.string("pt > 10")
#process.selectedPatJetsAK5Calo.cut = cms.string("pt > 15")

# Flavor history stuff
process.load("PhysicsTools.HepMCCandAlgos.flavorHistoryPaths_cfi")
process.maxEvents = cms.untracked.PSet(input=cms.untracked.int32(1000))

from RecoJets.JetProducers.ak5PFJets_cfi import ak5PFJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets

process.chs = cms.EDFilter("CandPtrSelector",
                           src=cms.InputTag("packedPFCandidates"),
                           cut=cms.string("fromPV"))

process.ak5PFJets = ak5PFJets.clone(
    src='packedPFCandidates', doAreaFastjet=True
)  # no idea while doArea is false by default, but it's True in RECO so we have to set it
process.ak5PFJetsCHS = ak5PFJets.clone(
    src='chs', doAreaFastjet=True
)  # no idea while doArea is false by default, but it's True in RECO so we have to set it
process.ak5GenJets = ak5GenJets.clone(src='packedGenParticles')

process.load("PhysicsTools.PatAlgos.producersLayer1.patCandidates_cff")
process.load("Configuration.EventContent.EventContent_cff")
process.load('Configuration.StandardSequences.Geometry_cff')
process.load('Configuration.StandardSequences.MagneticField_38T_cff')
process.load(
    'Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
process.GlobalTag.globaltag = 'START70_V6::All'

from PhysicsTools.PatAlgos.tools.jetTools import addJetCollection
addJetCollection(process,
                 postfix="",
                 labelName='AK5PFCHS',
                 jetSource=cms.InputTag('ak5PFJetsCHS'),
                 trackSource=cms.InputTag('unpackedTracksAndVertices'),
import FWCore.ParameterSet.Config as cms

from RecoJets.JetProducers.sc5GenJets_cfi import sisCone5GenJets
from RecoJets.JetProducers.ic5GenJets_cfi import iterativeCone5GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
from RecoJets.JetProducers.gk5GenJets_cfi import gk5GenJets
from RecoJets.JetProducers.kt4GenJets_cfi import kt4GenJets
from RecoJets.JetProducers.ca4GenJets_cfi import ca4GenJets

from RecoHI.HiJetAlgos.HiGenJets_cff import *


sisCone7GenJets = sisCone5GenJets.clone( rParam = 0.7 )
ak7GenJets      = ak5GenJets.clone( rParam = 0.7 )
gk7GenJets      = gk5GenJets.clone( rParam = 0.7 )
kt6GenJets      = kt4GenJets.clone( rParam = 0.6 )
ca6GenJets      = ca4GenJets.clone( rParam = 0.6 )


sisCone5GenJetsNoNu = sisCone5GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
sisCone7GenJetsNoNu = sisCone7GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
kt4GenJetsNoNu = kt4GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
kt6GenJetsNoNu = kt6GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
iterativeCone5GenJetsNoNu = iterativeCone5GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
ak5GenJetsNoNu = ak5GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
ak7GenJetsNoNu = ak7GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
gk5GenJetsNoNu = gk5GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
gk7GenJetsNoNu = gk7GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
ca4GenJetsNoNu = ca4GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
ca6GenJetsNoNu = ca6GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
Exemple #9
0
import FWCore.ParameterSet.Config as cms

from RecoJets.JetProducers.sc5GenJets_cfi import sisCone5GenJets
from RecoJets.JetProducers.ic5GenJets_cfi import iterativeCone5GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
from RecoJets.JetProducers.gk5GenJets_cfi import gk5GenJets
from RecoJets.JetProducers.kt4GenJets_cfi import kt4GenJets
from RecoJets.JetProducers.ca4GenJets_cfi import ca4GenJets

from RecoHI.HiJetAlgos.HiGenJets_cff import *

sisCone8GenJets = sisCone5GenJets.clone(rParam=0.8)
ak4GenJets = ak5GenJets.clone(rParam=0.4)
ak8GenJets = ak5GenJets.clone(rParam=0.8)
gk8GenJets = gk5GenJets.clone(rParam=0.8)
kt6GenJets = kt4GenJets.clone(rParam=0.6)
ca6GenJets = ca4GenJets.clone(rParam=0.6)

sisCone5GenJetsNoNu = sisCone5GenJets.clone(
    src=cms.InputTag("genParticlesForJetsNoNu"))
sisCone8GenJetsNoNu = sisCone8GenJets.clone(
    src=cms.InputTag("genParticlesForJetsNoNu"))
kt4GenJetsNoNu = kt4GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
kt6GenJetsNoNu = kt6GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
iterativeCone5GenJetsNoNu = iterativeCone5GenJets.clone(
    src=cms.InputTag("genParticlesForJetsNoNu"))
ak5GenJetsNoNu = ak5GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
ak8GenJetsNoNu = ak8GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
gk5GenJetsNoNu = gk5GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
gk8GenJetsNoNu = gk8GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
ca4GenJetsNoNu = ca4GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
#         1000022,
#         1000012, 1000014, 1000016,
#         2000012, 2000014, 2000016,
#         1000039, 5100039,
#         4000012, 4000014, 4000016,
#         9900012, 9900014, 9900016,
#         39),
#    partonicFinalState = cms.bool(False),
#    excludeResonances = cms.bool(True),
#    excludeFromResonancePids = cms.vuint32(12, 13, 14, 16),
#    tausAsJets = cms.bool(False)
#)


from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
process.ak5GenJetsptmin2 = ak5GenJets.clone()
process.ak5GenJetsptmin2.jetPtMin = cms.double(2.0)

process.new_ak5GenJets = cms.Sequence(process.genParticlesForJets* process.ak5GenJetsptmin2)
#process.new_ak5GenJets = cms.Sequence(process.ak5GenJetsptmin2)

# --- to recover the ak7 GenJets:
process.ak7GenJetsptmin2 = ak5GenJets.clone()
process.ak7GenJetsptmin2.rParam = cms.double(0.7)
process.ak7GenJetsptmin2.jetPtMin = cms.double(2.0)

process.new_ak7GenJets = cms.Sequence(process.genParticlesForJets* process.ak7GenJetsptmin2)
#process.new_ak7GenJets = cms.Sequence(process.ak7GenJetsptmin2)

process.p = cms.Path(process.new_ak5GenJets*process.new_ak7GenJets*process.monster*process.myanalysis)
def reSetJet(process):
    ## Filter out neutrinos from packed GenParticles
    process.packedGenParticlesForJetsNoNu = cms.EDFilter(
        "CandPtrSelector",
        src=cms.InputTag("packedGenParticles"),
        cut=cms.string(
            "abs(pdgId) != 12 && abs(pdgId) != 14 && abs(pdgId) != 16"))
    ## Define GenJets
    from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
    process.ak5GenJetsNoNu = ak5GenJets.clone(
        src='packedGenParticlesForJetsNoNu')

    ## Select charged hadron subtracted packed PF candidates
    process.pfCHS = cms.EDFilter("CandPtrSelector",
                                 src=cms.InputTag("packedPFCandidates"),
                                 cut=cms.string("fromPV"))
    from RecoJets.JetProducers.ak5PFJets_cfi import ak5PFJets
    ## Define PFJetsCHS
    process.ak5PFJetsCHS = ak5PFJets.clone(src='pfCHS', doAreaFastjet=True)

    #################################################
    ## Remake PAT jets
    #################################################

    ## b-tag discriminators
    bTagDiscriminators = ['pfCombinedInclusiveSecondaryVertexV2BJetTags']
    #################################################################
    slimmedAddPileupInfo = cms.EDProducer(
        'PileupSummaryInfoSlimmer',
        #src = cms.InputTag('addPileupInfo'),
        keepDetailedInfoFor=cms.vint32(0))
    #######################################################
    from PhysicsTools.PatAlgos.tools.jetTools import addJetCollection

    ## Add PAT jet collection based on the above-defined ak5PFJetsCHS
    addJetCollection(
        process,
        labelName='AK5PFCHS',
        jetSource=cms.InputTag('ak5PFJetsCHS'),
        pvSource=cms.InputTag('offlineSlimmedPrimaryVertices'),
        bsSource=cms.InputTag('offlineBeamSpot'),
        pfCandidates=cms.InputTag('packedPFCandidates'),
        svSource=cms.InputTag('slimmedSecondaryVertices'),
        btagDiscriminators=bTagDiscriminators,
        #jetCorrections = ('AK5PFchs', ['L1FastJet', 'L2Relative', 'L3Absolute'], 'None'),  #commented before adding jet corrections
        genJetCollection=cms.InputTag('ak5GenJetsNoNu'),
        genParticles=cms.InputTag('prunedGenParticles'),
        algo='AK',
        rParam=0.5)

    getattr(process, 'selectedPatJetsAK5PFCHS').cut = cms.string('pt > 20.')

    process.rejet = cms.Path(
        process.packedGenParticlesForJetsNoNu * process.ak5GenJetsNoNu *
        process.pfCHS * process.ak5PFJetsCHS *
        process.patJetCorrFactorsAK5PFCHS * process.patJetPartons *
        process.patJetFlavourAssociationAK5PFCHS *
        process.patJetPartonMatchAK5PFCHS * process.patJetGenJetMatchAK5PFCHS *
        process.pfImpactParameterTagInfosAK5PFCHS *
        process.pfInclusiveSecondaryVertexFinderTagInfosAK5PFCHS *
        process.pfCombinedInclusiveSecondaryVertexV2BJetTagsAK5PFCHS *
        process.patJetsAK5PFCHS * process.selectedPatJetsAK5PFCHS)

    from PhysicsTools.PatAlgos.tools.pfTools import adaptPVs
    ## Adapt primary vertex collection and BeamSpot
    adaptPVs(process,
             pvCollection=cms.InputTag('offlineSlimmedPrimaryVertices'))
    adaptBSs(process, bsCollection=cms.InputTag('offlineBeamSpot'))

    from PhysicsTools.PatAlgos.tools.jetTools import updateJetCollection
    updateJetCollection(
        process,
        jetSource=cms.InputTag('slimmedJets'),
        labelName='UpdatedJEC',
        jetCorrections=('AK5PFchs',
                        cms.vstring(['L1FastJet', 'L2Relative', 'L3Absolute']),
                        'None')  # Do not forget 'L2L3Residual' on data
    )

    process.load('Configuration.StandardSequences.Services_cff'
                 )  #Added info from now onwards
    process.load("JetMETCorrections.Modules.JetResolutionESProducer_cfi")

    from CondCore.DBCommon.CondDBSetup_cfi import *
    import os
    process.jer = cms.ESSource(
        "PoolDBESSource",
        CondDBSetup,
        toGet=cms.VPSet(
            # Resolution
            cms.PSet(
                record=cms.string('JetResolutionRcd'),
                tag=cms.string('JR_Fall15_25nsV2_MC_PtResolution_AK5PFchs'),
                label=cms.untracked.string('AK5PFchs_pt')),

            # Scale factors
            cms.PSet(record=cms.string('JetResolutionScaleFactorRcd'),
                     tag=cms.string('JR_Fall15_25nsV2_MC_SF_AK4PFchs'),
                     label=cms.untracked.string('AK5PFchs')),
        ),
        connect=cms.string('sqlite:Fall15_25nsV2_MC.db'))
    process.es_prefer_jer = cms.ESPrefer('PoolDBESSource', 'jer')
Exemple #12
0
    genParticleCollection = 'genParticles'
    genJetInputParticleCollection = 'genParticlesForJets'
    ## producing a subset of genParticles to be used for jet clustering in AOD
    from RecoJets.Configuration.GenJetParticles_cff import genParticlesForJets
    process.genParticlesForJets = genParticlesForJets.clone()
else:
    genParticleCollection = 'prunedGenParticles'
    genJetInputParticleCollection = 'packedGenParticles'

# Supplies PDG ID to real name resolution of MC particles
process.load("SimGeneral.HepPDTESSource.pythiapdt_cfi")

# Producing own jets for testing purposes
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
process.ak5GenJetsCustom = ak5GenJets.clone(src=genJetInputParticleCollection,
                                            rParam=cms.double(0.5),
                                            jetAlgorithm=cms.string("AntiKt"))

# Ghost particle collection used for Hadron-Jet association
# MUST use proper input particle collection
from PhysicsTools.JetMCAlgos.HadronAndPartonSelector_cfi import selectedHadronsAndPartons
process.selectedHadronsAndPartons = selectedHadronsAndPartons.clone(
    particles=genParticleCollection)

# Input particle collection for matching to gen jets (partons + leptons)
# MUST use use proper input jet collection: the jets to which hadrons should be associated
# rParam and jetAlgorithm MUST match those used for jets to be associated with hadrons
# More details on the tool: https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideBTagMCTools#New_jet_flavour_definition
from PhysicsTools.JetMCAlgos.sequences.GenHFHadronMatching_cff import genJetFlavourPlusLeptonInfos
process.genJetFlavourPlusLeptonInfos = genJetFlavourPlusLeptonInfos.clone(
    jets=genJetCollection,
# load low-pt charged GenJet configuration here
# get charged genParticles
process.load('QCDAnalysis.UEAnalysis.UEAnalysisParticles_cfi')

from RecoJets.JetProducers.sc5GenJets_cfi import sisCone5GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
from RecoJets.JetProducers.FastjetParameters_cfi import *

process.load("RecoJets.Configuration.GenJetParticles_cff")

process.chargeParticles.cut = cms.string('charge != 0 & pt > 0.5 & status = 1')

process.sisCone5ChgGenJets = sisCone5GenJets.clone(rParam = 0.5, jetPtMin=1.0, src = cms.InputTag("chargeParticles"), inputEtMin     = cms.double(0.5) )
process.sisCone7ChgGenJets = sisCone5GenJets.clone(rParam = 0.7, jetPtMin=1.0, src = cms.InputTag("chargeParticles"), inputEtMin     = cms.double(0.5) )

process.ak5ChgGenJets = ak5GenJets.clone(rParam = 0.5, jetPtMin=1.0, src = cms.InputTag("chargeParticles"), inputEtMin     = cms.double(0.5)  )
process.ak4ChgGenJets = ak5GenJets.clone(rParam = 0.4, jetPtMin=1.0, src = cms.InputTag("chargeParticles"), inputEtMin     = cms.double(0.5)  )
process.ak7ChgGenJets = ak5GenJets.clone(rParam = 0.7, jetPtMin=1.0, src = cms.InputTag("chargeParticles"), inputEtMin     = cms.double(0.5)  )
process.ak10ChgGenJets = ak5GenJets.clone(rParam = 1., jetPtMin=1.0, src = cms.InputTag("chargeParticles"), inputEtMin     = cms.double(0.5)  )

process.chargedgenjets = cms.Path(process.UEAnalysisParticles*process.sisCone5ChgGenJets*
					process.sisCone7ChgGenJets*process.ak4ChgGenJets
					*process.ak5ChgGenJets*process.ak7ChgGenJets*process.ak10ChgGenJets)

from CommonTools.RecoAlgos.TrackWithVertexRefSelector_cfi import *
from RecoJets.JetProducers.TracksForJets_cff import *

process.trackWithVertexRefSelector=trackWithVertexRefSelector.clone()
process.trackRefsForJets=trackRefsForJets.clone()

process.trackRefsForJets.cut= cms.string('charge != 0 & pt > 0.5 & status = 1 & quality = highPurity & ptErrorCut = 0.05 ')
Exemple #14
0
from RecoJets.JetProducers.AnomalousCellParameters_cfi import *

from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
from RecoJets.JetProducers.ak5TrackJets_cfi import ak5TrackJets

FastjetWithAreaPU = cms.PSet(
    Active_Area_Repeats = cms.int32(5),
    GhostArea = cms.double(0.01),
    Ghost_EtaMax = cms.double(6.0),
    UE_Subtraction = cms.string('no')
)


ueAk5ChgGenJet500 = ak5GenJets.clone(
    src = cms.InputTag("chargeParticles"),
    jetPtMin       = cms.double(1.0),
    inputEtMin     = cms.double(0.5)
)

ueAk5TracksJet500 =  ak5TrackJets.clone(
    src = cms.InputTag("goodTracks"),
    jetPtMin       = cms.double(1.0),
    inputEtMin     = cms.double(0.5)
)

#ueAk5TracksJet.jetType = 'BasicJet'

UEAnalysisJetsAkOnlyMC = cms.Sequence(ueAk5ChgGenJet500)
UEAnalysisJetsAkOnlyReco = cms.Sequence(ueAk5TracksJet500)
UEAnalysisJetsAk = cms.Sequence(UEAnalysisJetsAkOnlyMC*UEAnalysisJetsAkOnlyReco)
Exemple #15
0
    )
)

###############################################
# GEN JETS

from RecoJets.JetProducers.ca4GenJets_cfi import ca4GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets

process.ca8GenJets = ca4GenJets.clone( rParam = cms.double(0.8),
                                           src = cms.InputTag(genjetparticles))

process.ca15GenJets = ca4GenJets.clone( rParam = cms.double(1.5),
                                           src = cms.InputTag(genjetparticles))

process.ak3GenJets = ak5GenJets.clone( rParam = cms.double(0.3),
                                           src = cms.InputTag(genjetparticles))
        
process.ca15FilteredGenJets = process.ca8GenJets.clone(
        nFilt = cms.int32(3),
        rFilt = cms.double(0.3),
        src = cms.InputTag(genjetparticles),
        useFiltering = cms.bool(True),
        useExplicitGhosts = cms.bool(True),
        writeCompound = cms.bool(True),
        rParam       = cms.double(1.5),
        jetCollInstanceName=cms.string("SubJets"),
        jetPtMin = cms.double(100.0)
)
                                   
process.ca8GenJetsPruned = ca4GenJets.clone(
  rParam = cms.double(0.8),
Exemple #16
0
from RecoJets.JetProducers.AnomalousCellParameters_cfi import *
from RecoJets.JetProducers.CATopJetParameters_cfi import *
from RecoJets.JetProducers.GenJetParameters_cfi import *
from RecoJets.JetProducers.caTopTaggers_cff import *

 # CATopTagInfos, HEPTopTagInfos
# process.CATopTagInfos = CATopTagInfos.clone()

###############################################
# GEN JETS


from RecoJets.JetProducers.ca4GenJets_cfi import ca4GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets

process.ak3GenJets = ak5GenJets.clone( rParam = cms.double(0.3),
                                           src = cms.InputTag(genjetparticles))

process.ca8GenJets = ca4GenJets.clone( rParam = cms.double(0.8),
                                           src = cms.InputTag(genjetparticles))

process.ak15GenJets = ak5GenJets.clone( rParam = cms.double(1.5),
                                           src = cms.InputTag(genjetparticles))

#ADD NO NU

process.ak15GenJetsFiltered = ak5GenJets.clone(
  rParam = cms.double(1.5),
  src = cms.InputTag(genjetparticles),
  useFiltering = cms.bool(True),
  nFilt = cms.int32(3),
  rFilt = cms.double(0.3),
import FWCore.ParameterSet.Config as cms

### PP RECO does not include R=3 or R=5 jets.
### re-RECO is only possible for PF, RECO is missing calotowers
from RecoJets.JetProducers.ak5PFJets_cfi import ak5PFJets
ak5PFJets.doAreaFastjet = True
ak3PFJets = ak5PFJets.clone(rParam = 0.3)
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
ak3GenJets = ak5GenJets.clone(rParam = 0.3)

from RecoJets.Configuration.GenJetParticles_cff import *
from RecoHI.HiJetAlgos.HiGenJets_cff import *
from HeavyIonsAnalysis.JetAnalysis.makePartons_cff import *
from HeavyIonsAnalysis.JetAnalysis.jets.ak3PFJetSequence_pp_mc_cff import *
from HeavyIonsAnalysis.JetAnalysis.jets.ak4PFJetSequence_pp_mc_cff import *
from HeavyIonsAnalysis.JetAnalysis.jets.ak5PFJetSequence_pp_mc_cff import *
from HeavyIonsAnalysis.JetAnalysis.jets.ak4CaloJetSequence_pp_mc_cff import *

highPurityTracks = cms.EDFilter("TrackSelector",
                                src = cms.InputTag("generalTracks"),
                                cut = cms.string('quality("highPurity")')
)

# Other radii jets and calo jets need to be reconstructed
jetSequences = cms.Sequence(
    genParticlesForJets +
    ak3GenJets +
    ak5GenJets +
    ak3PFJets +
    ak5PFJets +
    makePartons +
Exemple #18
0
process.chargeParticles.cut = cms.string('charge != 0 & pt > 0.5 & status = 1')

process.sisCone5ChgGenJets = sisCone5GenJets.clone(
    rParam=0.5,
    jetPtMin=1.0,
    src=cms.InputTag("chargeParticles"),
    inputEtMin=cms.double(0.5))
process.sisCone7ChgGenJets = sisCone5GenJets.clone(
    rParam=0.7,
    jetPtMin=1.0,
    src=cms.InputTag("chargeParticles"),
    inputEtMin=cms.double(0.5))

process.ak5ChgGenJets = ak5GenJets.clone(rParam=0.5,
                                         jetPtMin=1.0,
                                         src=cms.InputTag("chargeParticles"),
                                         inputEtMin=cms.double(0.5))
process.ak4ChgGenJets = ak5GenJets.clone(rParam=0.4,
                                         jetPtMin=1.0,
                                         src=cms.InputTag("chargeParticles"),
                                         inputEtMin=cms.double(0.5))
process.ak7ChgGenJets = ak5GenJets.clone(rParam=0.7,
                                         jetPtMin=1.0,
                                         src=cms.InputTag("chargeParticles"),
                                         inputEtMin=cms.double(0.5))
process.ak10ChgGenJets = ak5GenJets.clone(rParam=1.,
                                          jetPtMin=1.0,
                                          src=cms.InputTag("chargeParticles"),
                                          inputEtMin=cms.double(0.5))

process.chargedgenjets = cms.Path(
Exemple #19
0
def initialise(runOnMC, decayMode, doOutModule=False, doPAT=True):
    process = cms.Process("KrAFT")

    process.load("Configuration.StandardSequences.Services_cff")
    process.load("Configuration.Geometry.GeometryDB_cff")
    process.load("Configuration.StandardSequences.MagneticField_cff")
    process.options = cms.untracked.PSet(wantSummary=cms.untracked.bool(True))
    process.maxEvents = cms.untracked.PSet(input=cms.untracked.int32(-1))

    process.load("FWCore.MessageLogger.MessageLogger_cfi")
    process.MessageLogger.cerr.FwkReport.reportEvery = 10000

    process.source = cms.Source("PoolSource",
                                fileNames=cms.untracked.vstring())
    process.source.inputCommands = cms.untracked.vstring(
        "keep *", "drop *_MEtoEDMConverter_*_*")

    process.load(
        "Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
    from Configuration.AlCa.autoCond import autoCond
    if runOnMC: process.GlobalTag.globaltag = autoCond['startup']
    else: process.GlobalTag.globaltag = autoCond['com10']

    outputModuleForTriggerMatch = ""
    outputModules = []
    if doOutModule:
        from PhysicsTools.PatAlgos.patEventContent_cff import patEventContentNoCleaning
        process.out = cms.OutputModule(
            "PoolOutputModule",
            fileName=cms.untracked.string("out.root"),
            outputCommands=cms.untracked.vstring(
                'drop *', 'keep recoPFCandidates_particleFlow_*_*',
                *patEventContentNoCleaning))
        process.outPath = cms.EndPath(process.out)

        outputModuleForTriggerMatch = "out"
        outputModules.append(process.out)

    ## Load PAT
    process.load("PhysicsTools.PatAlgos.patSequences_cff")

    ## Apply MVA
    process.load('EgammaAnalysis.ElectronTools.electronIdMVAProducer_cfi')
    process.eidMVASequence = cms.Sequence(process.mvaTrigV0 +
                                          process.mvaNonTrigV0)
    process.patElectrons.electronIDSources.mvaTrigV0 = cms.InputTag(
        "mvaTrigV0")
    process.patElectrons.electronIDSources.mvaNonTrigV0 = cms.InputTag(
        "mvaNonTrigV0")
    process.patDefaultSequence.replace(
        process.patElectrons, process.eidMVASequence * process.patElectrons)

    ## Load trigger matching
    process.load("KrAFT.Configuration.hltFilters_cff")
    #from PhysicsTools.PatAlgos.tools.trigTools import *
    #switchOnTriggerMatchEmbedding(process, outputModule="")

    ## Apply PF2PAT
    from PhysicsTools.PatAlgos.tools.pfTools import usePF2PAT
    if runOnMC: jecLevels = ['L1FastJet', 'L2Relative', 'L3Absolute']
    else: jecLevels = ['L1FastJet', 'L2Relative', 'L3Absolute', 'L2L3Residual']

    postfix = "PFlow"
    #usePFBRECO(process,runPFBRECO=True,
    usePF2PAT(process,
              runPF2PAT=True,
              runOnMC=runOnMC,
              outputModules=outputModules,
              postfix=postfix,
              jetAlgo="AK5",
              jetCorrections=("AK5PFchs", jecLevels),
              pvCollection=cms.InputTag('goodOfflinePrimaryVertices'),
              typeIMetCorrections=True)

    #
    process.pfPileUpPFlow.checkClosestZVertex = cms.bool(False)

    # top projections in PF2PAT:
    process.pfNoPileUpPFlow.enable = True
    process.pfNoMuonPFlow.enable = True
    process.pfNoElectronPFlow.enable = True
    process.pfNoTauPFlow.enable = False
    process.pfNoJetPFlow.enable = False

    # verbose flags for the PF2PAT modules
    process.pfNoMuonPFlow.verbose = False

    # Use non-isolated muons and electrons
    process.patMuonsPFlow.pfMuonSource = "pfMuonsPFlow"
    process.patElectronsPFlow.pfElectronSource = "pfElectronsPFlow"

    # And turn on delta-beta corrections while building pfIsolated*PFlow
    process.pfIsolatedMuonsPFlow.doDeltaBetaCorrection = True
    process.pfIsolatedElectronsPFlow.doDeltaBetaCorrection = True

    # Change DR cone size to 0.3
    process.pfIsolatedMuonsPFlow.isolationValueMapsCharged = cms.VInputTag(
        cms.InputTag('muPFIsoValueCharged03PFlow'))
    process.pfIsolatedMuonsPFlow.deltaBetaIsolationValueMap = cms.InputTag(
        'muPFIsoValuePU03PFlow')
    process.pfIsolatedMuonsPFlow.isolationValueMapsNeutral = cms.VInputTag(
        cms.InputTag('muPFIsoValueNeutral03PFlow'),
        cms.InputTag('muPFIsoValueGamma03PFlow'),
    )
    process.pfMuonsPFlow.isolationValueMapsCharged = cms.VInputTag(
        cms.InputTag('muPFIsoValueCharged03PFlow'))
    process.pfMuonsPFlow.deltaBetaIsolationValueMap = cms.InputTag(
        'muPFIsoValuePU03PFlow')
    process.pfMuonsPFlow.isolationValueMapsNeutral = cms.VInputTag(
        cms.InputTag('muPFIsoValueNeutral03PFlow'),
        cms.InputTag('muPFIsoValueGamma03PFlow'),
    )
    process.patMuonsPFlow.isolationValues.pfNeutralHadrons = cms.InputTag(
        'muPFIsoValueNeutral03PFlow')
    process.patMuonsPFlow.isolationValues.pfChargedAll = cms.InputTag(
        'muPFIsoValueChargedAll03PFlow')
    process.patMuonsPFlow.isolationValues.pfPUChargedHadrons = cms.InputTag(
        'muPFIsoValuePU03PFlow')
    process.patMuonsPFlow.isolationValues.pfPhotons = cms.InputTag(
        'muPFIsoValueGamma03PFlow')
    process.patMuonsPFlow.isolationValues.pfChargedHadrons = cms.InputTag(
        'muPFIsoValueCharged03PFlow')

    process.pfIsolatedElectronsPFlow.isolationValueMapsCharged = cms.VInputTag(
        cms.InputTag('elPFIsoValueCharged03PFIdPFlow'))
    process.pfIsolatedElectronsPFlow.deltaBetaIsolationValueMap = cms.InputTag(
        'elPFIsoValuePU03PFIdPFlow')
    process.pfIsolatedElectronsPFlow.isolationValueMapsNeutral = cms.VInputTag(
        cms.InputTag('elPFIsoValueNeutral03PFIdPFlow'),
        cms.InputTag('elPFIsoValueGamma03PFIdPFlow'))
    process.pfElectronsPFlow.isolationValueMapsCharged = cms.VInputTag(
        cms.InputTag('elPFIsoValueCharged03PFIdPFlow'))
    process.pfElectronsPFlow.deltaBetaIsolationValueMap = cms.InputTag(
        'elPFIsoValuePU03PFIdPFlow')
    process.pfElectronsPFlow.isolationValueMapsNeutral = cms.VInputTag(
        cms.InputTag('elPFIsoValueNeutral03PFIdPFlow'),
        cms.InputTag('elPFIsoValueGamma03PFIdPFlow'))
    process.patElectronsPFlow.isolationValues.pfNeutralHadrons = cms.InputTag(
        'elPFIsoValueNeutral03PFIdPFlow')
    process.patElectronsPFlow.isolationValues.pfChargedAll = cms.InputTag(
        'elPFIsoValueChargedAll03PFIdPFlow')
    process.patElectronsPFlow.isolationValues.pfPUChargedHadrons = cms.InputTag(
        'elPFIsoValuePU03PFIdPFlow')
    process.patElectronsPFlow.isolationValues.pfPhotons = cms.InputTag(
        'elPFIsoValueGamma03PFIdPFlow')
    process.patElectronsPFlow.isolationValues.pfChargedHadrons = cms.InputTag(
        'elPFIsoValueCharged03PFIdPFlow')

    ## Add common filters
    process.primaryVertexFilter = cms.EDFilter(
        "GoodVertexFilter",
        vertexCollection=cms.InputTag('offlinePrimaryVertices'),
        minimumNDOF=cms.uint32(4),
        maxAbsZ=cms.double(24),
        maxd0=cms.double(2))

    from PhysicsTools.SelectorUtils.pvSelector_cfi import pvSelector
    process.goodOfflinePrimaryVertices = cms.EDFilter(
        "PrimaryVertexObjectFilter",
        filterParams=pvSelector.clone(maxZ=cms.double(24.0)),
        src=cms.InputTag('offlinePrimaryVertices'))

    #process.load( "TopQuarkAnalysis.Configuration.patRefSel_goodVertex_cfi" )
    #process.goodOfflinePrimaryVertices.filter = True

    process.load('TopQuarkAnalysis.Configuration.patRefSel_eventCleaning_cff')
    process.trackingFailureFilter.VertexSource = cms.InputTag(
        'goodOfflinePrimaryVertices')
    if runOnMC: process.eventCleaning += process.eventCleaningMC
    else: process.eventCleaning += process.eventCleaningData

    #reason : removing many events.
    process.eventCleaning.remove(process.CSCTightHaloFilter)

    ## Lepton veto filters for L+J channels
    process.muonVetoFilter = cms.EDFilter(
        "PATCandViewCountFilter",
        src=cms.InputTag("selectedPatMuonsPFlow"),
        maxNumber=cms.uint32(0),
        minNumber=cms.uint32(0),
    )
    process.electronVetoFilter = cms.EDFilter(
        "PATCandViewCountFilter",
        src=cms.InputTag("selectedPatElectronsPFlow"),
        maxNumber=cms.uint32(0),
        minNumber=cms.uint32(0),
    )

    # event counters
    process.nEventsTotal = cms.EDProducer("EventCountProducer")
    process.nEventsClean = cms.EDProducer("EventCountProducer")
    process.nEventsPAT = cms.EDProducer("EventCountProducer")
    process.nEventsHLTElEl = cms.EDProducer("EventCountProducer")
    process.nEventsHLTMuMu = cms.EDProducer("EventCountProducer")
    process.nEventsHLTMuEl = cms.EDProducer("EventCountProducer")
    process.nEventsHLTMuJets = cms.EDProducer("EventCountProducer")
    process.nEventsHLTElJets = cms.EDProducer("EventCountProducer")

    ###############################
    ### Add AK5GenJetsNoNu ####
    ###############################
    #process.load("RecoJets.Configuration.GenJetParticles_cff")
    from RecoJets.Configuration.GenJetParticles_cff import genParticlesForJetsNoNu
    from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
    process.ak5GenJetsNoNu = ak5GenJets.clone(
        src=cms.InputTag("genParticlesForJetsNoNu"))

    process.ak5GenJetsSeq = cms.Sequence(process.genParticlesForJets *
                                         process.genParticlesForJetsNoNu *
                                         process.ak5GenJetsNoNu)

    # Flavor history stuff
    process.load("PhysicsTools.HepMCCandAlgos.flavorHistoryPaths_cfi")
    process.flavorHistoryFilter.pathToSelect = cms.int32(-1)
    process.cFlavorHistoryProducer.matchedSrc = cms.InputTag("ak5GenJetsNoNu")
    process.bFlavorHistoryProducer.matchedSrc = cms.InputTag("ak5GenJetsNoNu")
    #ptMinParticle = cms.double(0.0)
    #ptMinShower = cms.double(0.0)

    #process.load( "RecoJets.Configuration.GenJetParticles_cff")
    #process.load( "RecoJets.Configuration.RecoGenJets_cff")

    #process.ReGenJetSequence = cms.Sequence(
    #    process.genParticlesForJets
    #  + process.genParticlesForJetsNoNu
    #  + process.ak5GenJets
    #  + process.ak5GenJetsNoNu
    #)

    process.commonFilterSequence = cms.Sequence(
        process.goodOfflinePrimaryVertices * process.eventCleaning *
        process.ak5GenJetsSeq * process.primaryVertexFilter *
        process.nEventsClean *
        getattr(process, "patPF2PATSequence" + postfix)  # main PF2PAT 
        * process.nEventsPAT * process.flavorHistorySeq)

    #    process.patSequenceComplete = cms.Sequence(
    #  + process.patDefaultSequence
    #  + process.patPFBRECOSequencePFlow
    #        process.patPF2PATSequencePFlow
    #      + process.nEventsPAT
    #    )

    process.load("KrAFT.GeneratorTools.ttbar2bFilter_cfi")

    ## Defile paths
    if decayMode in ("all", "dilepton", "ElEl", "ee"):
        process.pElEl = cms.Path(
            process.nEventsTotal * process.commonFilterSequence *
            process.ttbar2bFilter * process.hltElEl * process.nEventsHLTElEl)
#        if doPAT: process.pElEl += process.patSequenceComplete
    if decayMode in ("all", "dilepton", "MuMu", "mumu"):
        process.pMuMu = cms.Path(process.nEventsTotal *
                                 process.commonFilterSequence *
                                 process.hltMuMu * process.nEventsHLTMuMu)
#        if doPAT: process.pMuMu += process.patSequenceComplete
    if decayMode in ("all", "dilepton", "MuEl", "emu"):
        process.pMuEl = cms.Path(process.nEventsTotal *
                                 process.commonFilterSequence *
                                 process.hltMuEl * process.nEventsHLTMuEl)


#        if doPAT: process.pMuEl += process.patSequenceComplete
    if decayMode in ("all", "MuJets"):
        process.selectedPatMuonsPFlow.cut = 'isPFMuon && (isGlobalMuon || isTrackerMuon) && pt > 10 && abs(eta) < 2.5 && (chargedHadronIso + max(0.,neutralHadronIso+photonIso-0.5*puChargedHadronIso))/pt < 0.15'
        process.selectedPatElectronsPFlow.cut = 'pt > 20 && abs(eta) < 2.5 && electronID("mvaTrigV0") > 0. && (chargedHadronIso + max(0.,neutralHadronIso+photonIso-0.5*puChargedHadronIso))/pt < 0.15'
        process.muonVetoFilter.maxNumber = 1

        process.pMuJets = cms.Path(
            process.nEventsTotal * process.commonFilterSequence *
            process.hltMuJets * process.nEventsHLTMuJets)
        #        if doPAT: process.pMuJets += process.patSequenceComplete
        process.pMuJets *= process.muonVetoFilter
        process.pMuJets += process.electronVetoFilter

        if runOnMC: process.pMuJets.remove(process.hltMuJets)
    if decayMode in ("all", "ElJets"):
        process.selectedPatMuonsPFlow.cut = 'isPFMuon && (isGlobalMuon || isTrackerMuon) && pt > 10 && abs(eta) < 2.5 && (chargedHadronIso + max(0.,neutralHadronIso+photonIso-0.5*puChargedHadronIso))/pt < 0.15'
        process.selectedPatElectronsPFlow.cut = 'pt > 20 && abs(eta) < 2.5 && electronID("mvaTrigV0") > 0. && (chargedHadronIso + max(0.,neutralHadronIso+photonIso-0.5*puChargedHadronIso))/pt < 0.15'
        process.electronVetoFilter.maxNumber = 1

        process.pElJets = cms.Path(
            process.nEventsTotal * process.commonFilterSequence *
            process.hltElJets * process.nEventsHLTElJets)
        #        if doPAT: process.pElJets += process.patSequenceComplete
        process.pElJets *= process.muonVetoFilter
        process.pElJets += process.electronVetoFilter

        if runOnMC: process.pElJets.remove(process.hltElJets)

    return process
    "RecoLocalTracker.SiStripRecHitConverter.SiStripRecHitConverter_cfi")
process.load("MLAnalyzer.RecHitAnalyzer.RHAnalyzer_cfi")
process.fevt.mode = cms.string(options.processMode)
if options.isTTbar:
    process.fevt.isTTbar = cms.bool(True)
else:
    process.fevt.isTTbar = cms.bool(False)

jet_radius = 0.8
from RecoJets.Configuration.GenJetParticles_cff import genParticlesForJets
process.genParticlesForJets = genParticlesForJets.clone()
from RecoJets.JetProducers.ak5PFJets_cfi import ak5PFJets
process.ak8PFJets = ak5PFJets.clone(rParam=jet_radius)
process.ak8PFJets.doAreaFastjet = True
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
process.ak8GenJets = ak5GenJets.clone(rParam=jet_radius)

if options.UseAK8:
    process.fevt.PFJetCollection = cms.InputTag('ak8PFJets')
    process.fevt.genJetCollection = cms.InputTag('ak8GenJets')
else:
    process.fevt.PFJetCollection = cms.InputTag('ak5PFJets')
    process.fevt.genJetCollection = cms.InputTag('ak5GenJets')

#process.fevt.mode = cms.string("JetLevel") # for when using crab
#process.fevt.mode = cms.string("EventLevel") # for when using crab
print " >> Processing as:", (process.fevt.mode)

process.TFileService = cms.Service(
    "TFileService",
    fileName=cms.string(options.outputFile)
Exemple #21
0
fatjet_ptmin = 50.

##Dummy copy for having pf candidates into the process
#process.packed = cms.EDFilter("CandPtrSelector", src = cms.InputTag("packedGenParticles"), cut = cms.string("abs(pdgId) != 12 && abs(pdgId) != 14 && abs(pdgId) != 16"))

## Filter out neutrinos from packed GenParticles
process.packedGenParticlesForJetsNoNu = cms.EDFilter(
    "CandPtrSelector",
    src=cms.InputTag("packedGenParticles"),
    cut=cms.string("abs(pdgId) != 12 && abs(pdgId) != 14 && abs(pdgId) != 16"))
## Define GenJets
from RecoJets.JetProducers.ak4GenJets_cfi import ak4GenJets
process.ak4GenJetsNoNu = ak4GenJets.clone(src='packedGenParticlesForJetsNoNu')

from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
process.ak8GenJetsNoNu = ak5GenJets.clone(src='packedGenParticlesForJetsNoNu',
                                          rParam=0.8)

## Standard AK4 and AK8 jets without CHS
from RecoJets.JetProducers.ak4PFJets_cfi import ak4PFJets
process.ak4PFJets = ak4PFJets.clone(
    src='packedPFCandidates',
    doAreaFastjet=True)  #HERE!!! add jetPtMin = (fatjet_ptmin)
process.ak8PFJets = ak4PFJets.clone(src='packedPFCandidates',
                                    rParam=0.8,
                                    doAreaFastjet=True,
                                    jetPtMin=fatjet_ptmin)

## Pruned AK8 without CHS
from RecoJets.JetProducers.ak4PFJetsPruned_cfi import ak4PFJetsPruned
process.ak8PFJetsPruned = ak4PFJetsPruned.clone(rParam=0.8,
                                                doAreaFastjet=True,
import FWCore.ParameterSet.Config as cms

# Remake AK5 jets from packedPFcandidates
# See: https://twiki.cern.ch/twiki/bin/view/CMSPublic/WorkBookMiniAOD#Advanced_topics_re_clustering_ev

## Filter out neutrinos from packed GenParticles
packedGenParticlesForJetsNoNu = cms.EDFilter(
    "CandPtrSelector",
    src=cms.InputTag("packedGenParticles"),
    cut=cms.string("abs(pdgId) != 12 && abs(pdgId) != 14 && abs(pdgId) != 16"))
## Define GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
ak5GenJetsNoNu = ak5GenJets.clone(src='packedGenParticlesForJetsNoNu')

## Select charged hadron subtracted packed PF candidates
pfCHS = cms.EDFilter("CandPtrSelector",
                     src=cms.InputTag("packedPFCandidates"),
                     cut=cms.string("fromPV"))
from RecoJets.JetProducers.ak5PFJets_cfi import ak5PFJets
## Define ak5PFJetsCHS
ak5PFJetsCHS = ak5PFJets.clone(src='pfCHS', doAreaFastjet=True)
## Define ak5PFJets
ak5PFJets = ak5PFJets.clone(src='packedPFCandidates')

ak5PFJetsSequence = cms.Sequence(packedGenParticlesForJetsNoNu *
                                 ak5GenJetsNoNu * pfCHS * ak5PFJetsCHS *
                                 ak5PFJets)
import FWCore.ParameterSet.Config as cms

from RecoJets.Configuration.GenJetParticles_cff import genParticlesForJetsNoMuNoNu
from RecoJets.Configuration.GenJetParticles_cff import genParticlesForJetsNoNu
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets

cms2antikt5GenJets = ak5GenJets.clone(src = cms.InputTag("genParticlesForJetsNoMuNoNu") )
cms2antikt5PFGenJets = ak5GenJets.clone(src = cms.InputTag("genParticlesForJetsNoNu") )

genJetSequence = cms.Sequence( genParticlesForJetsNoMuNoNu * cms2antikt5GenJets * genParticlesForJetsNoNu * cms2antikt5PFGenJets)


Exemple #24
0
import FWCore.ParameterSet.Config as cms

from RecoJets.JetProducers.sc5GenJets_cfi import sisCone5GenJets
from RecoJets.JetProducers.ic5GenJets_cfi import iterativeCone5GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
from RecoJets.JetProducers.ak4GenJets_cfi import ak4GenJets
from RecoJets.JetProducers.gk5GenJets_cfi import gk5GenJets
from RecoJets.JetProducers.kt4GenJets_cfi import kt4GenJets
from RecoJets.JetProducers.ca4GenJets_cfi import ca4GenJets

from RecoHI.HiJetAlgos.HiGenJets_cff import *

sisCone8GenJets = sisCone5GenJets.clone(rParam=0.8)
ak8GenJets = ak5GenJets.clone(rParam=0.8, jetPtMin=15.0)
gk8GenJets = gk5GenJets.clone(rParam=0.8)
kt6GenJets = kt4GenJets.clone(rParam=0.6)
ca8GenJets = ca4GenJets.clone(rParam=0.8)

sisCone5GenJetsNoNu = sisCone5GenJets.clone(
    src=cms.InputTag("genParticlesForJetsNoNu"))
sisCone8GenJetsNoNu = sisCone8GenJets.clone(
    src=cms.InputTag("genParticlesForJetsNoNu"))
kt4GenJetsNoNu = kt4GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
kt6GenJetsNoNu = kt6GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
iterativeCone5GenJetsNoNu = iterativeCone5GenJets.clone(
    src=cms.InputTag("genParticlesForJetsNoNu"))
ak5GenJetsNoNu = ak5GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
ak4GenJetsNoNu = ak4GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
ak8GenJetsNoNu = ak8GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
gk5GenJetsNoNu = gk5GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
gk8GenJetsNoNu = gk8GenJets.clone(src=cms.InputTag("genParticlesForJetsNoNu"))
#    ignoreParticleIDs = cms.vuint32(
#         1000022,
#         1000012, 1000014, 1000016,
#         2000012, 2000014, 2000016,
#         1000039, 5100039,
#         4000012, 4000014, 4000016,
#         9900012, 9900014, 9900016,
#         39),
#    partonicFinalState = cms.bool(False),
#    excludeResonances = cms.bool(True),
#    excludeFromResonancePids = cms.vuint32(12, 13, 14, 16),
#    tausAsJets = cms.bool(False)
#)

from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
process.ak5GenJetsptmin2 = ak5GenJets.clone()
process.ak5GenJetsptmin2.jetPtMin = cms.double(2.0)

process.new_ak5GenJets = cms.Sequence(process.genParticlesForJets *
                                      process.ak5GenJetsptmin2)
#process.new_ak5GenJets = cms.Sequence(process.ak5GenJetsptmin2)

# --- to recover the ak7 GenJets:
process.ak7GenJetsptmin2 = ak5GenJets.clone()
process.ak7GenJetsptmin2.rParam = cms.double(0.7)
process.ak7GenJetsptmin2.jetPtMin = cms.double(2.0)

process.new_ak7GenJets = cms.Sequence(process.genParticlesForJets *
                                      process.ak7GenJetsptmin2)
#process.new_ak7GenJets = cms.Sequence(process.ak7GenJetsptmin2)
from HeavyIonsAnalysis.JetAnalysis.jets.HiReRecoJets_pp_cff import *
ak1PFJetAnalyzer.doSubEvent = True
ak1CaloJetAnalyzer.doSubEvent = True
ak2PFJetAnalyzer.doSubEvent = True
ak2CaloJetAnalyzer.doSubEvent = True
ak3PFJetAnalyzer.doSubEvent = True
ak3CaloJetAnalyzer.doSubEvent = True
ak4PFJetAnalyzer.doSubEvent = True
ak4CaloJetAnalyzer.doSubEvent = True
ak5PFJetAnalyzer.doSubEvent = True
ak5CaloJetAnalyzer.doSubEvent = True
ak6PFJetAnalyzer.doSubEvent = True
ak6CaloJetAnalyzer.doSubEvent = True
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
ak5GenJets = ak5GenJets
ak1GenJets = ak5GenJets.clone(rParam=0.1)
ak2GenJets = ak5GenJets.clone(rParam=0.2)
ak3GenJets = ak5GenJets.clone(rParam=0.3)
ak4GenJets = ak5GenJets.clone(rParam=0.4)
ak6GenJets = ak5GenJets.clone(rParam=0.6)
from RecoJets.Configuration.GenJetParticles_cff import *

akGenJets = cms.Sequence(genParticlesForJets + ak1GenJets + ak2GenJets +
                         ak3GenJets + ak4GenJets + ak5GenJets + ak6GenJets)
from HeavyIonsAnalysis.JetAnalysis.makePartons_cff import *
highPurityTracks = cms.EDFilter("TrackSelector",
                                src=cms.InputTag("generalTracks"),
                                cut=cms.string('quality("highPurity")'))

jetSequences = cms.Sequence(akGenJets + ppReRecoPFJets +
                            #    ppReRecoCaloJets +
Exemple #27
0
import FWCore.ParameterSet.Config as cms

from RecoJets.JetProducers.sc5GenJets_cfi import sisCone5GenJets
from RecoJets.JetProducers.ic5GenJets_cfi import iterativeCone5GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
from RecoJets.JetProducers.ak4GenJets_cfi import ak4GenJets
from RecoJets.JetProducers.gk5GenJets_cfi import gk5GenJets
from RecoJets.JetProducers.kt4GenJets_cfi import kt4GenJets
from RecoJets.JetProducers.ca4GenJets_cfi import ca4GenJets

from RecoHI.HiJetAlgos.HiGenJets_cff import *


sisCone8GenJets = sisCone5GenJets.clone( rParam = 0.8 )
ak8GenJets      = ak5GenJets.clone( rParam = 0.8, jetPtMin = 15.0 )
gk8GenJets      = gk5GenJets.clone( rParam = 0.8 )
kt6GenJets      = kt4GenJets.clone( rParam = 0.6 )
ca8GenJets      = ca4GenJets.clone( rParam = 0.8 )


sisCone5GenJetsNoNu = sisCone5GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
sisCone8GenJetsNoNu = sisCone8GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
kt4GenJetsNoNu = kt4GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
kt6GenJetsNoNu = kt6GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
iterativeCone5GenJetsNoNu = iterativeCone5GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
ak5GenJetsNoNu = ak5GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
ak4GenJetsNoNu = ak4GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
ak8GenJetsNoNu = ak8GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
gk5GenJetsNoNu = gk5GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
gk8GenJetsNoNu = gk8GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
ca4GenJetsNoNu = ca4GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
import FWCore.ParameterSet.Config as cms

# Remake AK5 jets from packedPFcandidates
# See: https://twiki.cern.ch/twiki/bin/view/CMSPublic/WorkBookMiniAOD#Advanced_topics_re_clustering_ev

## Filter out neutrinos from packed GenParticles
packedGenParticlesForJetsNoNu = cms.EDFilter("CandPtrSelector", src = cms.InputTag("packedGenParticles"), cut = cms.string("abs(pdgId) != 12 && abs(pdgId) != 14 && abs(pdgId) != 16"))
## Define GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
ak5GenJetsNoNu = ak5GenJets.clone(src = 'packedGenParticlesForJetsNoNu')

## Select charged hadron subtracted packed PF candidates
pfCHS = cms.EDFilter("CandPtrSelector", src = cms.InputTag("packedPFCandidates"), cut = cms.string("fromPV"))
from RecoJets.JetProducers.ak5PFJets_cfi import ak5PFJets
## Define ak5PFJetsCHS
ak5PFJetsCHS = ak5PFJets.clone(src = 'pfCHS', doAreaFastjet = True)
## Define ak5PFJets
ak5PFJets = ak5PFJets.clone(src = 'packedPFCandidates')

ak5PFJetsSequence = cms.Sequence(
  packedGenParticlesForJetsNoNu*
  ak5GenJetsNoNu*
  pfCHS*
  ak5PFJetsCHS*
  ak5PFJets
)
def reSetJet(process):
    ## Filter out neutrinos from packed GenParticles
    process.packedGenParticlesForJetsNoNu = cms.EDFilter("CandPtrSelector", src = cms.InputTag("packedGenParticles"), cut = cms.string("abs(pdgId) != 12 && abs(pdgId) != 14 && abs(pdgId) != 16"))
    ## Define GenJets
    from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
    process.ak5GenJetsNoNu = ak5GenJets.clone(src = 'packedGenParticlesForJetsNoNu')

    ## Select charged hadron subtracted packed PF candidates
    process.pfCHS = cms.EDFilter("CandPtrSelector", src = cms.InputTag("packedPFCandidates"), cut = cms.string("fromPV"))
    from RecoJets.JetProducers.ak5PFJets_cfi import ak5PFJets
    ## Define PFJetsCHS
    process.ak5PFJetsCHS = ak5PFJets.clone(src = 'pfCHS', doAreaFastjet = True)

    #################################################
    ## Remake PAT jets
    #################################################

    ## b-tag discriminators
    bTagDiscriminators = [
        'pfCombinedInclusiveSecondaryVertexV2BJetTags'
    ]
#################################################################
    slimmedAddPileupInfo = cms.EDProducer(
       'PileupSummaryInfoSlimmer',
        src = cms.InputTag('addPileupInfo'),
        keepDetailedInfoFor = cms.vint32(0)
    )
#######################################################
    from PhysicsTools.PatAlgos.tools.jetTools import addJetCollection

    ## Add PAT jet collection based on the above-defined ak5PFJetsCHS
    addJetCollection(
        process,
        labelName = 'AK5PFCHS',
        jetSource = cms.InputTag('ak5PFJetsCHS'),
        pvSource = cms.InputTag('offlineSlimmedPrimaryVertices'),
        bsSource = cms.InputTag('offlineBeamSpot'),
        pfCandidates = cms.InputTag('packedPFCandidates'),
        svSource = cms.InputTag('slimmedSecondaryVertices'),
        btagDiscriminators = bTagDiscriminators,
        jetCorrections = ('AK5PFchs', ['L1FastJet', 'L2Relative', 'L3Absolute'], 'None'),
        genJetCollection = cms.InputTag('ak5GenJetsNoNu'),
        genParticles = cms.InputTag('prunedGenParticles'),
        algo = 'AK',
        rParam = 0.5
    )

    getattr(process,'selectedPatJetsAK5PFCHS').cut = cms.string('pt > 20.')

    process.rejet = cms.Path(process.packedGenParticlesForJetsNoNu *
                             process.ak5GenJetsNoNu *
                             process.pfCHS *
                             process.ak5PFJetsCHS *
                             process.patJetCorrFactorsAK5PFCHS *
                             process.patJetPartons *
                             process.patJetFlavourAssociationAK5PFCHS *
                             process.patJetPartonMatchAK5PFCHS *
                             process.patJetGenJetMatchAK5PFCHS *
                             process.pfImpactParameterTagInfosAK5PFCHS *
                             process.pfInclusiveSecondaryVertexFinderTagInfosAK5PFCHS *
                             process.pfCombinedInclusiveSecondaryVertexV2BJetTagsAK5PFCHS *
                             process.patJetsAK5PFCHS *
                             process.selectedPatJetsAK5PFCHS)

    from PhysicsTools.PatAlgos.tools.pfTools import adaptPVs
    ## Adapt primary vertex collection and BeamSpot
    adaptPVs(process, pvCollection=cms.InputTag('offlineSlimmedPrimaryVertices'))
    adaptBSs(process, bsCollection=cms.InputTag('offlineBeamSpot'))
from RecoJets.JetProducers.FastjetParameters_cfi import *
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
from RecoJets.JetProducers.ak5TrackJets_cfi import ak5TrackJets


FastjetWithAreaPU = cms.PSet(
    Active_Area_Repeats=cms.int32(5),
    GhostArea=cms.double(0.01),
    Ghost_EtaMax=cms.double(6.0),
    UE_Subtraction=cms.string("no"),
)

# MC jet
ueAntiKt5GenJet = ak5GenJets.clone(
    src=cms.InputTag("goodParticles"), jetPtMin=cms.double(1.0), inputEtMin=cms.double(0.9)
)

ueAntiKt5ChgGenJet = ak5GenJets.clone(
    src=cms.InputTag("chargeParticles"), jetPtMin=cms.double(1.0), inputEtMin=cms.double(0.9)
)

ueAntiKt5GenJet500 = ak5GenJets.clone(
    src=cms.InputTag("goodParticles"), jetPtMin=cms.double(1.0), inputEtMin=cms.double(0.5)
)

ueAntiKt5ChgGenJet500 = ak5GenJets.clone(
    src=cms.InputTag("chargeParticles"), jetPtMin=cms.double(1.0), inputEtMin=cms.double(0.5)
)

ueAntiKt5GenJet1500 = ak5GenJets.clone(
Exemple #31
0
from RecoJets.JetProducers.kt4PFJets_cfi import kt4PFJets
from RecoHI.HiJetAlgos.hiFJRhoProducer import hiFJRhoProducer
from RecoHI.HiJetAlgos.hiFJGridEmptyAreaCalculator_cff import hiFJGridEmptyAreaCalculator
kt4PFJets.src = cms.InputTag('particleFlow')
kt4PFJets.doAreaFastjet = True
kt4PFJets.jetPtMin = cms.double(0.0)
kt4PFJets.GhostArea = cms.double(0.005)
kt2PFJets = kt4PFJets.clone(rParam=cms.double(0.2))

ak4PFJetAnalyzer.doSubEvent = True
ak4CaloJetAnalyzer.doSubEvent = True

from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
ak5GenJets = ak5GenJets
ak4GenJets = ak5GenJets.clone(rParam=0.4,
                              src=cms.InputTag("genParticlesForJetsNoNu"))
from RecoJets.Configuration.GenJetParticles_cff import *
ak3GenJets = ak5GenJets.clone(rParam=0.3,
                              src=cms.InputTag("genParticlesForJetsNoNu"))
from RecoJets.Configuration.GenJetParticles_cff import *

akGenJets = cms.Sequence(genParticlesForJetsNoNu + ak4GenJets + ak3GenJets)

from HeavyIonsAnalysis.JetAnalysis.makePartons_cff import *
highPurityTracks = cms.EDFilter("TrackSelector",
                                src=cms.InputTag("generalTracks"),
                                cut=cms.string('quality("highPurity")'))

#custom for 80X
PFTowers.src = cms.InputTag("particleFlow")
Exemple #32
0
from RecoJets.JetProducers.PFJetParameters_cfi import *
from RecoJets.JetProducers.CaloJetParameters_cfi import *
from RecoJets.JetProducers.AnomalousCellParameters_cfi import *
from RecoJets.JetProducers.CATopJetParameters_cfi import *
from RecoJets.JetProducers.GenJetParameters_cfi import *
from RecoJets.JetProducers.caTopTaggers_cff import *


###############################################
# GEN JETS


from RecoJets.JetProducers.ca4GenJets_cfi import ca4GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets

process.ak3GenJets = ak5GenJets.clone( rParam = cms.double(0.3),
                                           src = cms.InputTag(genjetparticles))


process.ak15GenJets = ak5GenJets.clone( rParam = cms.double(1.5),
                                           src = cms.InputTag(genjetparticles))

process.ak15GenJetsFiltered = ak5GenJets.clone(
  rParam = cms.double(1.5),
  src = cms.InputTag(genjetparticles),
  useFiltering = cms.bool(True),
  nFilt = cms.int32(3),
  rFilt = cms.double(0.3),
  writeCompound = cms.bool(True),
  jetCollInstanceName=cms.string("SubJets")
  )
ak1PFJetAnalyzer.doSubEvent = True
ak1CaloJetAnalyzer.doSubEvent = True
ak2PFJetAnalyzer.doSubEvent = True
ak2CaloJetAnalyzer.doSubEvent = True
ak3PFJetAnalyzer.doSubEvent = True
ak3CaloJetAnalyzer.doSubEvent = True
ak4PFJetAnalyzer.doSubEvent = True
ak4CaloJetAnalyzer.doSubEvent = True
ak5PFJetAnalyzer.doSubEvent = True
ak5CaloJetAnalyzer.doSubEvent = True
ak6PFJetAnalyzer.doSubEvent = True
ak6CaloJetAnalyzer.doSubEvent = True
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets

ak5GenJets = ak5GenJets
ak1GenJets = ak5GenJets.clone(rParam=0.1)
ak2GenJets = ak5GenJets.clone(rParam=0.2)
ak3GenJets = ak5GenJets.clone(rParam=0.3)
ak4GenJets = ak5GenJets.clone(rParam=0.4)
ak6GenJets = ak5GenJets.clone(rParam=0.6)
from RecoJets.Configuration.GenJetParticles_cff import *

akGenJets = cms.Sequence(
    genParticlesForJets + ak1GenJets + ak2GenJets + ak3GenJets + ak4GenJets + ak5GenJets + ak6GenJets
)
from HeavyIonsAnalysis.JetAnalysis.makePartons_cff import *

highPurityTracks = cms.EDFilter(
    "TrackSelector", src=cms.InputTag("generalTracks"), cut=cms.string('quality("highPurity")')
)
######################
# load low-pt charged GenJet configuration here
# get charged genParticles
process.load('QCDAnalysis.UEAnalysis.UEAnalysisParticles_cfi')
process.chargeParticles.cut = cms.string('charge != 0 & pt > 0.3 & status = 1')
# get genjet definitions
from RecoJets.JetProducers.ak4GenJets_cfi import ak4GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
# clone normal ak4 genjets
process.ak4ChgGenJets = ak4GenJets.clone(
src = cms.InputTag("chargeParticles"),
jetPtMin = cms.double(0.3)
)
# clone normal ak5 genjets
process.ak5ChgGenJets = ak5GenJets.clone( 
src = cms.InputTag("chargeParticles"),
jetPtMin = cms.double(0.3)
)
# add the processes
process.chargedgenjets = cms.Path(process.UEAnalysisParticles*process.ak4ChgGenJets*process.ak5ChgGenJets)
######################

# Here starts the CFF specific part
import CommonFSQFramework.Core.customizePAT
process = CommonFSQFramework.Core.customizePAT.customize(process)

# GT customization
process = CommonFSQFramework.Core.customizePAT.customizeGT(process)

# define treeproducer
process.GenLevelTree = cms.EDAnalyzer("CFFTreeProducer")
import CommonFSQFramework.Core.GenLevelViewsConfigs
def reSetJet(process):
    ## Filter out neutrinos from packed GenParticles
    process.packedGenParticlesForJetsNoNu = cms.EDFilter("CandPtrSelector", src = cms.InputTag("packedGenParticles"), cut = cms.string("abs(pdgId) != 12 && abs(pdgId) != 14 && abs(pdgId) != 16"))
    ## Define GenJets
    from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
    process.ak5GenJetsNoNu = ak5GenJets.clone(src = 'packedGenParticlesForJetsNoNu')

    ## Select charged hadron subtracted packed PF candidates
    process.pfCHS = cms.EDFilter("CandPtrSelector", src = cms.InputTag("packedPFCandidates"), cut = cms.string("fromPV"))
    from RecoJets.JetProducers.ak5PFJets_cfi import ak5PFJets
    ## Define PFJetsCHS
    process.ak5PFJetsCHS = ak5PFJets.clone(src = 'pfCHS', doAreaFastjet = True)

    #################################################
    ## Remake PAT jets
    #################################################

    ## b-tag discriminators
    bTagDiscriminators = [
        'pfCombinedInclusiveSecondaryVertexV2BJetTags'
    ]
#################################################################
    slimmedAddPileupInfo = cms.EDProducer(
       'PileupSummaryInfoSlimmer',
        #src = cms.InputTag('addPileupInfo'),
        keepDetailedInfoFor = cms.vint32(0)
    )
#######################################################
    from PhysicsTools.PatAlgos.tools.jetTools import addJetCollection

    ## Add PAT jet collection based on the above-defined ak5PFJetsCHS
    addJetCollection(
        process,
        labelName = 'AK5PFCHS',
        jetSource = cms.InputTag('ak5PFJetsCHS'),
        pvSource = cms.InputTag('offlineSlimmedPrimaryVertices'),
        bsSource = cms.InputTag('offlineBeamSpot'),
        pfCandidates = cms.InputTag('packedPFCandidates'),
        svSource = cms.InputTag('slimmedSecondaryVertices'),
        btagDiscriminators = bTagDiscriminators,
        #jetCorrections = ('AK5PFchs', ['L1FastJet', 'L2Relative', 'L3Absolute'], 'None'),  #commented before adding jet corrections
        genJetCollection = cms.InputTag('ak5GenJetsNoNu'),
        genParticles = cms.InputTag('prunedGenParticles'),
        algo = 'AK',
        rParam = 0.5
    )

    getattr(process,'selectedPatJetsAK5PFCHS').cut = cms.string('pt > 20.')

    process.rejet = cms.Path(process.packedGenParticlesForJetsNoNu *
                             process.ak5GenJetsNoNu *
                             process.pfCHS *
                             process.ak5PFJetsCHS *
                             process.patJetCorrFactorsAK5PFCHS *
                             process.patJetPartons *
                             process.patJetFlavourAssociationAK5PFCHS *
                             process.patJetPartonMatchAK5PFCHS *
                             process.patJetGenJetMatchAK5PFCHS *
                             process.pfImpactParameterTagInfosAK5PFCHS *
                             process.pfInclusiveSecondaryVertexFinderTagInfosAK5PFCHS *
                             process.pfCombinedInclusiveSecondaryVertexV2BJetTagsAK5PFCHS *
                             process.patJetsAK5PFCHS *
                             process.selectedPatJetsAK5PFCHS)

    from PhysicsTools.PatAlgos.tools.pfTools import adaptPVs
    ## Adapt primary vertex collection and BeamSpot
    adaptPVs(process, pvCollection=cms.InputTag('offlineSlimmedPrimaryVertices'))
    adaptBSs(process, bsCollection=cms.InputTag('offlineBeamSpot'))
 
    from PhysicsTools.PatAlgos.tools.jetTools import updateJetCollection
    updateJetCollection(
        process,
        jetSource = cms.InputTag('slimmedJets'),
        labelName = 'UpdatedJEC',
        jetCorrections = ('AK5PFchs', cms.vstring(['L1FastJet', 'L2Relative', 'L3Absolute']), 'None')  # Do not forget 'L2L3Residual' on data
     )

    process.load('Configuration.StandardSequences.Services_cff') #Added info from now onwards
    process.load("JetMETCorrections.Modules.JetResolutionESProducer_cfi")

    from CondCore.DBCommon.CondDBSetup_cfi import *
    import os
    process.jer = cms.ESSource("PoolDBESSource",
            CondDBSetup,
            toGet = cms.VPSet(
                # Resolution
                cms.PSet(
                    record = cms.string('JetResolutionRcd'),
                    tag    = cms.string('JR_Fall15_25nsV2_MC_PtResolution_AK5PFchs'),
                    label  = cms.untracked.string('AK5PFchs_pt')
                    ),

                # Scale factors
                cms.PSet(
                    record = cms.string('JetResolutionScaleFactorRcd'),
                    tag    = cms.string('JR_Fall15_25nsV2_MC_SF_AK4PFchs'),
                    label  = cms.untracked.string('AK5PFchs')
                    ),
                ),
            connect = cms.string('sqlite:Fall15_25nsV2_MC.db')
            )
    process.es_prefer_jer = cms.ESPrefer('PoolDBESSource', 'jer')
import FWCore.ParameterSet.Config as cms

process = cms.Process("S2")
process.source = cms.Source("PoolSource",
    fileNames = cms.untracked.vstring("file:patTuple_mini.root")
)
process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(1000) )

from RecoJets.JetProducers.ak5PFJets_cfi import ak5PFJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets

process.chs = cms.EDFilter("CandPtrSelector", src = cms.InputTag("packedPFCandidates"), cut = cms.string("fromPV"))

process.ak5PFJets = ak5PFJets.clone(src = 'packedPFCandidates', doAreaFastjet = True) # no idea while doArea is false by default, but it's True in RECO so we have to set it
process.ak5PFJetsCHS = ak5PFJets.clone(src = 'chs', doAreaFastjet = True) # no idea while doArea is false by default, but it's True in RECO so we have to set it
process.ak5GenJets = ak5GenJets.clone(src = 'packedGenParticles')

process.load("PhysicsTools.PatAlgos.producersLayer1.patCandidates_cff")
process.load("Configuration.EventContent.EventContent_cff")
process.load('Configuration.StandardSequences.Geometry_cff')
process.load('Configuration.StandardSequences.MagneticField_38T_cff')
process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
process.GlobalTag.globaltag = 'START70_V6::All'

from PhysicsTools.PatAlgos.tools.jetTools import addJetCollection
addJetCollection(
   process,
   postfix   = "",
   labelName = 'AK5PFCHS',
   jetSource = cms.InputTag('ak5PFJetsCHS'),
   trackSource = cms.InputTag('unpackedTracksAndVertices'), 	
Exemple #37
0
                                   * process.pfMetT0pcT1Txy
                                                       )

process.JetSequence = cms.Sequence(process.ak5PFJetsCorr
                                   * process.pileupJetIdProducer
                                   * process.MyAk5PFJetTracksAssociatorAtVertex
                                   * process.MyImpactParameterPFTagInfos
                                   #* process.MySecondaryVertexTagInfos
                                   #* process.MyCombinedSecondaryVertexBJetTags
                                   )

if not(isRealData):
 from RecoJets.Configuration.GenJetParticles_cff import genParticlesForJetsNoNu
 process.genParticlesForJetsNoNu = genParticlesForJetsNoNu
 from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
 process.ak5GenJetsNoNu = ak5GenJets.clone( src = cms.InputTag("genParticlesForJetsNoNu") )
 process.JetSequence += process.genParticlesForJetsNoNu
 process.JetSequence += process.ak5GenJetsNoNu


# JEC uncertainty files

#process.ak5PFJets.doAreaFastjet = True


### To get b-tags from ak5PFJets - this works with the 'Reconstruction_cff' above

#process.path = cms.Path(process.btagging)              #djs - for full reconstruction

#this part is from nate
#djs commented out as a test - the above works and should be used when done testing
import FWCore.ParameterSet.Config as cms

from RecoJets.Configuration.GenJetParticles_cff import genParticlesForJetsNoMuNoNu
from RecoJets.Configuration.GenJetParticles_cff import genParticlesForJetsNoNu
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets

cms2antikt5GenJets = ak5GenJets.clone(
    src=cms.InputTag("genParticlesForJetsNoMuNoNu"))
cms2antikt5PFGenJets = ak5GenJets.clone(
    src=cms.InputTag("genParticlesForJetsNoNu"))

genJetSequence = cms.Sequence(genParticlesForJetsNoMuNoNu *
                              cms2antikt5GenJets * genParticlesForJetsNoNu *
                              cms2antikt5PFGenJets)
                                     ),
    src=cms.InputTag(pvSrc)
    )


###############################
########## Gen Setup ##########
###############################

process.load("RecoJets.Configuration.GenJetParticles_cff")
from RecoJets.JetProducers.ca4GenJets_cfi import ca4GenJets
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
process.ca8GenJetsNoNu = ca4GenJets.clone( rParam = cms.double(0.8),
                                           src = cms.InputTag("genParticlesForJetsNoNu"))

process.ak8GenJetsNoNu = ak5GenJets.clone( rParam = cms.double(0.8),
                                           src = cms.InputTag("genParticlesForJetsNoNu"))


process.load("TopQuarkAnalysis.TopEventProducers.sequences.ttGenEvent_cff")

# add the flavor history
process.load("PhysicsTools.HepMCCandAlgos.flavorHistoryPaths_cfi")


# prune gen particles
process.load("SimGeneral.HepPDTESSource.pythiapdt_cfi")
process.prunedGenParticles = cms.EDProducer("GenParticlePruner",
                                            src = cms.InputTag("genParticles"),
                                            select = cms.vstring(
                                                "drop  *"
                                                ,"keep status = 3" #keeps  particles from the hard matrix element
process.ZMMProducer = cms.EDProducer('ZMMFilter',
                                     PFCandidateInputTag = cms.InputTag("particleFlow"),
                                     VertexTag = cms.InputTag("goodOfflinePrimaryVertices"),
                                     TrackTag = cms.InputTag("generalTracks"),
                                     MuonTag = cms.InputTag("muons"),
                                     )

from RecoParticleFlow.PFProducer.particleFlowTmpPtrs_cfi import particleFlowTmpPtrs
process.particleFlowNoMuonTmpPtrs = particleFlowTmpPtrs.clone(
    src = cms.InputTag('ZMMProducer', 'PFCandidatesNoMuon')
)

## GenJet
from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
process.load('RecoJets.Configuration.GenJetParticles_cff')
process.ak4GenJets = ak5GenJets.clone(rParam = 0.4, jetPtMin= 0.0, doAreaFastjet=True,
                                      src = 'genParticlesForJetsNoMuNoNu')

## AK4 PFJet
from RecoJets.JetProducers.ak5PFJets_cfi import ak5PFJets
process.ak4PFJets = ak5PFJets.clone(rParam = 0.4, jetPtMin= 0.0, doAreaFastjet=True,
                                    src = cms.InputTag("ZMMProducer", "PFCandidatesNoMuon") )
## AK4 CHSJet
from CommonTools.ParticleFlow.pfNoPileUpJME_cff import *
process.load('CommonTools.ParticleFlow.pfNoPileUpJME_cff')
process.PFPileUpZMM = pfPileUp.clone( PFCandidates='particleFlowNoMuonTmpPtrs', Vertices = 'goodOfflinePrimaryVertices')
process.PFNoPileUpZMM = pfNoPileUp.clone(topCollection = 'PFPileUpZMM', bottomCollection = 'particleFlowNoMuonTmpPtrs' )
process.ak4PFJetsCHS = ak5PFJets.clone(rParam = 0.4, doAreaFastjet=True,
                                       jetPtMin = 0.0, src = cms.InputTag("PFNoPileUpZMM"))

## AK4 PuppiJet
from Dummy.Puppi.Puppi_PhaseII_SLHC23p1_v2 import *
# process.load("Configuration.StandardSequences.Reconstruction_cff")




###############################################################################
###############################################################################

if not isData:
    ############################
    # Add ReReco of ak5GenJets #
    ############################
    process.load('RecoJets.Configuration.GenJetParticles_cff')
    process.load('RecoJets.Configuration.RecoGenJets_cff')
    from RecoJets.JetProducers.ak5GenJets_cfi import ak5GenJets
    process.lowPtak5GenJets = ak5GenJets.clone(jetPtMin = 0.5 )
    process.LowPtGenJetsReCluster = cms.Path(process.lowPtak5GenJets)
###############################################################################
###############################################################################



# ###############################################################################
# ###############################################################################

# ###########################################################################
# # Add PAT calo Jets # !!! Still with old JEC (Jet Energy Corrections) !!! #
# ###########################################################################
# ## switch to uncheduled mode
# process.options.allowUnscheduled = cms.untracked.bool(True)
# #process.Tracer = cms.Service("Tracer")