CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
muonTagProbeFilters_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 #from HLTrigger.HLTfilters.hltHighLevel_cfi import *
4 #exoticaMuHLT = hltHighLevel
5 #Define the HLT path to be used.
6 #exoticaMuHLT.HLTPaths =['HLT_L1MuOpen']
7 #exoticaMuHLT.TriggerResultsTag = cms.InputTag("TriggerResults","","HLT8E29")
8 
9 #Define the HLT quality cut
10 #exoticaHLTMuonFilter = cms.EDFilter("HLTSummaryFilter",
11 # summary = cms.InputTag("hltTriggerSummaryAOD","","HLT8E29"), # trigger summary
12 # member = cms.InputTag("hltL3MuonCandidates","","HLT8E29"), # filter or collection
13 # cut = cms.string("pt>0"), # cut on trigger object
14 # minN = cms.int32(0) # min. # of passing objects needed
15 # )
16 
17 
18 #Define the Reco quality cut
20 
21 # Make the charged candidate collections from tracks
22 allTracks = cms.EDProducer("TrackViewCandidateProducer",
23  src = cms.InputTag("generalTracks"),
24  particleType = cms.string('mu+'),
25  cut = cms.string('pt > 0'),
26  filter = cms.bool(True)
27  )
28 
29 staTracks = cms.EDProducer("TrackViewCandidateProducer",
30  src = cms.InputTag("standAloneMuons","UpdatedAtVtx"),
31  particleType = cms.string('mu+'),
32  cut = cms.string('pt > 0.5 && abs(d0) < 2.0 && abs(vz) < 25.0'),
33  filter = cms.bool(True)
34  )
35 
36 # Make the input candidate collections
37 tagCands = cms.EDFilter("MuonRefSelector",
38  src = cms.InputTag("muons"),
39  cut = cms.string('isGlobalMuon > 0 && pt > 1.0 && abs(eta) < 2.1'),
40  filter = cms.bool(True)
41  )
42 
43 # Standalone muon tracks (probes)
44 staCands = cms.EDFilter("RecoChargedCandidateRefSelector",
45  src = cms.InputTag("staTracks"),
46  cut = cms.string('pt > 0.5 && abs(eta) < 2.1'),
47  filter = cms.bool(True)
48  )
49 
50 # Tracker muons (to be matched)
51 tkProbeCands = cms.EDFilter("RecoChargedCandidateRefSelector",
52  src = cms.InputTag("allTracks"),
53  cut = cms.string('pt > 0.5'),
54  filter = cms.bool(True)
55  )
56 
57 # Match track and stand alone candidates
58 # to get the passing probe candidates
59 TkStaMap = cms.EDProducer("TrivialDeltaRViewMatcher",
60  src = cms.InputTag("tkProbeCands"),
61  distMin = cms.double(0.15),
62  matched = cms.InputTag("staCands"),
63  filter = cms.bool(True)
64  )
65 
66 # Use the producer to get a list of matched candidates
67 TkStaMatched = cms.EDProducer("RecoChargedCandidateMatchedProbeMaker",
68  Matched = cms.untracked.bool(True),
69  ReferenceSource = cms.untracked.InputTag("staCands"),
70  ResMatchMapSource = cms.untracked.InputTag("TkStaMap"),
71  CandidateSource = cms.untracked.InputTag("tkProbeCands"),
72  filter = cms.bool(True)
73  )
74 
75 TkStaUnmatched = cms.EDProducer("RecoChargedCandidateMatchedProbeMaker",
76  Matched = cms.untracked.bool(False),
77  ReferenceSource = cms.untracked.InputTag("staCands"),
78  ResMatchMapSource = cms.untracked.InputTag("TkStaMap"),
79  CandidateSource = cms.untracked.InputTag("tkProbeCands"),
80  filter = cms.bool(True)
81  )
82 
83 # Make the tag probe association map
84 JPsiMMTagProbeMap = cms.EDProducer("TagProbeMassProducer",
85  MassMaxCut = cms.untracked.double(4.5),
86  TagCollection = cms.InputTag("tagCands"),
87  MassMinCut = cms.untracked.double(1.5),
88  ProbeCollection = cms.InputTag("tkProbeCands"),
89  PassingProbeCollection = cms.InputTag("TkStaMatched")
90  )
91 
92 JPsiMMTPFilter = cms.EDFilter("TagProbeMassEDMFilter",
93  tpMapName = cms.string('JPsiMMTagProbeMap')
94  )
95 
96 ZMMTagProbeMap = cms.EDProducer("TagProbeMassProducer",
97  MassMaxCut = cms.untracked.double(120.0),
98  TagCollection = cms.InputTag("tagCands"),
99  MassMinCut = cms.untracked.double(50.0),
100  ProbeCollection = cms.InputTag("tkProbeCands"),
101  PassingProbeCollection = cms.InputTag("TkStaMatched")
102  )
103 
104 ZMMTPFilter = cms.EDFilter("TagProbeMassEDMFilter",
105  tpMapName = cms.string('ZMMTagProbeMap')
106  )
107 
108 
109 #Define group sequence, using HLT/Reco quality cut.
110 #exoticaMuHLTQualitySeq = cms.Sequence()
111 tagProbeSeq = cms.Sequence(allTracks+staTracks*tagCands+tkProbeCands+staCands*TkStaMap*TkStaMatched)
112 
113 muonJPsiMMRecoQualitySeq = cms.Sequence(
114  #exoticaMuHLT+
115  tagProbeSeq+JPsiMMTagProbeMap+JPsiMMTPFilter
116  )
117 
118 muonZMMRecoQualitySeq = cms.Sequence(
119  #exoticaMuHLT+
120  tagProbeSeq+ZMMTagProbeMap+ZMMTPFilter
121  )
122