def patAllMuonsPF(process):
    from PhysicsTools.PatAlgos.producersLayer1.muonProducer_cfi import patMuons
    process.patAllMuonsPF = patMuons.clone(  #override defaults
        pfMuonSource="pfAllMuonsPF",
        useParticleFlow=True,
        addGenMatch=False,
        genParticleMatch="",
        embedTrack=True,
        embedGenMatch=False,
        embedPickyMuon=False,
        embedTpfmsMuon=False,
        embedHighLevelSelection=False,
        embedCaloMETMuonCorrs=False,
        embedTcMETMuonCorrs=False)
    return process.patAllMuonsPF
def patAllMuonsPF(process) :
    from PhysicsTools.PatAlgos.producersLayer1.muonProducer_cfi import patMuons
    process.patAllMuonsPF = patMuons.clone( #override defaults
        pfMuonSource = "pfAllMuonsPF",
        useParticleFlow = True,
        addGenMatch = False,
        genParticleMatch = "",
        embedTrack = True,
        embedGenMatch = False,
        embedPickyMuon = False,
        embedTpfmsMuon = False,
        embedHighLevelSelection = False,
        embedCaloMETMuonCorrs = False,
        embedTcMETMuonCorrs = False
        )
    return process.patAllMuonsPF
#from PhysicsTools.PatAlgos.tools.trigTools import *

Tau3MuHLTFilter = copy.deepcopy(hltHighLevel)
Tau3MuHLTFilter.throw = cms.bool(False)
Tau3MuHLTFilter.HLTPaths = [
    "HLT_Mu8*", "HLT_Mu7*", "HLT_Mu9_IP*", "HLT_Mu10p5_IP*", "HLT_Mu12_IP*",
    "HLT_Mu8p5*"
]
#list taken from https://github.com/cms-sw/cmssw/blob/CMSSW_9_2_X/HLTrigger/Configuration/tables/GRun.txt

PatMuons = patMuons.clone(
    src=cms.InputTag("muons"),
    useParticleFlow=cms.bool(False),
    #embedHighLevelSelection = cms.bool(True),
    computeMiniIso=cms.bool(False),
    computeMuonMVA=cms.bool(False),
    computeSoftMuonMVA=cms.bool(True),
    addTriggerMatching=cms.bool(False),
    addGenMatch=cms.bool(False),
    embedGenMatch=cms.bool(True),
)

looseMuons = cms.EDFilter(
    "PATMuonSelector",
    src=cms.InputTag("PatMuons"),
    #cut = cms.string('pt > 0.5 &&  abs(eta)<2.4 && (innerTrack().isNonnull) && (charge!=0) && (innerTrack().hitPattern().numberOfValidPixelHits()>0) && innerTrack.quality("highPurity")'),
    cut=cms.string(
        'pt > 1 &&  abs(eta)<2.4 && (innerTrack().isNonnull) && (charge!=0) && (innerTrack().hitPattern().numberOfValidPixelHits()>0)'
    ),
    filter=cms.bool(True))
示例#4
0
import FWCore.ParameterSet.Config as cms

from PhysicsTools.PatAlgos.producersLayer1.muonProducer_cfi import patMuons
patMuonsForZmumuSelection = patMuons.clone()
patMuonsForZmumuSelection.addGenMatch = cms.bool(False)
patMuonsForZmumuSelection.embedCaloMETMuonCorrs = cms.bool(False)
patMuonsForZmumuSelection.embedTcMETMuonCorrs = cms.bool(False)

goodVertex = cms.EDFilter("VertexSelector",
    src = cms.InputTag("offlinePrimaryVertices"),
    cut = cms.string("(!isFake) & ndof >= 4 & abs(z) < 24 & position.Rho < 2"),
    filter = cms.bool(False)
)

goodMuons = cms.EDFilter("PATMuonSelector",
    src = cms.InputTag("patMuonsForZmumuSelection"),
    cut = cms.string(
        'pt > 8 && abs(eta) < 2.5 && isGlobalMuon && isPFMuon '
        ' && track.hitPattern.trackerLayersWithMeasurement > 5 & innerTrack.hitPattern.numberOfValidPixelHits > 0'
        ' && abs(dB) < 0.2 && globalTrack.normalizedChi2 < 10'
        ' && globalTrack.hitPattern.numberOfValidMuonHits > 0 && numberOfMatchedStations > 1'
    ),
    filter = cms.bool(False)
)

highestPtMuPlus = cms.EDFilter("UniquePATMuonSelector",
    src = cms.VInputTag('goodMuons'),                           
    cut = cms.string('charge > 0.5'),
    rank = cms.string('pt'),
    filter = cms.bool(False)
)
muonPFIsolationSequenceForPAT = cms.Sequence(
    muPFIsoDepositChargedForPAT
   * muPFIsoDepositNeutralForPAT
   * muPFIsoDepositGammaForPAT
   * muPFIsoDepositChargedAllForPAT
   * muPFIsoDepositPUforPAT
)
patMuonsForGoldenZmmSelection = patMuons.clone(
    isoDeposits = cms.PSet(
        # CV: strings for IsoDeposits defined in PhysicsTools/PatAlgos/plugins/PATMuonProducer.cc
        pfChargedHadrons = cms.InputTag("muPFIsoDepositChargedForPAT"),
        pfNeutralHadrons = cms.InputTag("muPFIsoDepositNeutralForPAT"),
        pfPhotons = cms.InputTag("muPFIsoDepositGammaForPAT"),
        user = cms.VInputTag(
            cms.InputTag("muPFIsoDepositChargedAllForPAT"),
            cms.InputTag("muPFIsoDepositPUforPAT")
       )
    ),
    addGenMatch = cms.bool(False),
    embedHighLevelSelection = cms.bool(True),
    embedCaloMETMuonCorrs = cms.bool(False),
    embedTcMETMuonCorrs = cms.bool(False),
    usePV = cms.bool(False) # compute transverse impact parameter wrt. beamspot (not event vertex)
)

patMuonsForGoldenZmmSelection.userIsolation = cms.PSet(
    # CV: strings for Isolation values defined in PhysicsTools/PatAlgos/src/MultiIsolator.cc
    pfChargedHadron = cms.PSet(
        deltaR = cms.double(0.4),
        src = patMuonsForGoldenZmmSelection.isoDeposits.pfChargedHadrons,
        vetos = muPFIsoValueCharged04.deposits[0].vetos,
    src=cms.InputTag('muons'))
muPFIsoDepositChargedAllForPAT = muPFIsoDepositChargedAll.clone(
    src=cms.InputTag('muons'))
muPFIsoDepositPUforPAT = muPFIsoDepositPU.clone(src=cms.InputTag('muons'))
muonPFIsolationSequenceForPAT = cms.Sequence(
    muPFIsoDepositChargedForPAT * muPFIsoDepositNeutralForPAT *
    muPFIsoDepositGammaForPAT * muPFIsoDepositChargedAllForPAT *
    muPFIsoDepositPUforPAT)
patMuonsForGoldenZmmSelection = patMuons.clone(
    isoDeposits=cms.PSet(
        # CV: strings for IsoDeposits defined in PhysicsTools/PatAlgos/plugins/PATMuonProducer.cc
        pfChargedHadrons=cms.InputTag("muPFIsoDepositChargedForPAT"),
        pfNeutralHadrons=cms.InputTag("muPFIsoDepositNeutralForPAT"),
        pfPhotons=cms.InputTag("muPFIsoDepositGammaForPAT"),
        user=cms.VInputTag(cms.InputTag("muPFIsoDepositChargedAllForPAT"),
                           cms.InputTag("muPFIsoDepositPUforPAT"))),
    addGenMatch=cms.bool(False),
    embedHighLevelSelection=cms.bool(True),
    embedCaloMETMuonCorrs=cms.bool(False),
    embedTcMETMuonCorrs=cms.bool(False),
    usePV=cms.bool(
        False
    )  # compute transverse impact parameter wrt. beamspot (not event vertex)
)

patMuonsForGoldenZmmSelection.userIsolation = cms.PSet(
    # CV: strings for Isolation values defined in PhysicsTools/PatAlgos/src/MultiIsolator.cc
    pfChargedHadron=cms.PSet(
        deltaR=cms.double(0.4),
        src=patMuonsForGoldenZmmSelection.isoDeposits.pfChargedHadrons,
        vetos=muPFIsoValueCharged04.deposits[0].vetos,
        skipDefaultVeto=muPFIsoValueCharged04.deposits[0].skipDefaultVeto),
示例#7
0
            deltaR=cms.double(0.3),
            #threshold = cms.double(1.5)
        ), ),
    isoDeposits=cms.PSet(tracker=cms.InputTag("tkIsoDepositTk"), ),
)

###create the "probe collection" of isolated tracks
looseIsoMuonsForZMuSkim = cms.EDFilter(
    "PATGenericParticleSelector",
    src=cms.InputTag("allPatTracks"),
    cut=cms.string("(userIsolation('pat::TrackIso')/pt)<0.4"),
    filter=cms.bool(True))

###create the "tag collection" of muon candidate, embedding the relevant infos
tightMuonsCandidateForZMuSkim = patMuons.clone(
    src=cms.InputTag("muons"),
    embedHighLevelSelection=cms.bool(True),
)

##apply ~tight muon ID
tightMuonsForZMuSkim = cms.EDFilter(
    "PATMuonSelector",
    src=cms.InputTag("tightMuonsCandidateForZMuSkim"),
    cut=cms.string(
        '(pt > 28) &&  (abs(eta)<2.4) && (isPFMuon>0) && (isGlobalMuon = 1) && (globalTrack().normalizedChi2() < 10) && (globalTrack().hitPattern().numberOfValidMuonHits()>0)&& (numberOfMatchedStations() > 1)&& (innerTrack().hitPattern().numberOfValidPixelHits() > 0)&& (innerTrack().hitPattern().trackerLayersWithMeasurement() > 5) && (abs(dB)<0.2)  && ((isolationR03().sumPt/pt)<0.1)'
    ),
    filter=cms.bool(True))

# build Z-> MuMu candidates
dimuonsZMuSkim = cms.EDProducer(
    "CandViewShallowCloneCombiner",
    checkCharge=cms.bool(False),
import FWCore.ParameterSet.Config as cms

from PhysicsTools.PatAlgos.producersLayer1.muonProducer_cfi import patMuons
patMuonsForZmumuSelection = patMuons.clone()
patMuonsForZmumuSelection.addGenMatch = cms.bool(False)
patMuonsForZmumuSelection.embedCaloMETMuonCorrs = cms.bool(False)
patMuonsForZmumuSelection.embedTcMETMuonCorrs = cms.bool(False)

goodVertex = cms.EDFilter(
    "VertexSelector",
    src=cms.InputTag("offlinePrimaryVertices"),
    cut=cms.string("(!isFake) & ndof >= 4 & abs(z) < 24 & position.Rho < 2"),
    filter=cms.bool(False))

goodMuons = cms.EDFilter(
    "PATMuonSelector",
    src=cms.InputTag("patMuonsForZmumuSelection"),
    cut=cms.string(
        'pt > 8 && abs(eta) < 2.5 && isGlobalMuon && isPFMuon '
        ' && track.hitPattern.trackerLayersWithMeasurement > 5 & innerTrack.hitPattern.numberOfValidPixelHits > 0'
        ' && abs(dB) < 0.2 && globalTrack.normalizedChi2 < 10'
        ' && globalTrack.hitPattern.numberOfValidMuonHits > 0 && numberOfMatchedStations > 1'
    ),
    filter=cms.bool(False))

highestPtMuPlus = cms.EDFilter("UniquePATMuonSelector",
                               src=cms.VInputTag('goodMuons'),
                               cut=cms.string('charge > 0.5'),
                               rank=cms.string('pt'),
                               filter=cms.bool(False))