ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/ForwardAnalysis/DiffractiveZAnalysis/python/diffractiveZAnalysisSequences_cff.py
Revision: 1.1
Committed: Mon Jul 8 21:26:34 2013 UTC (11 years, 9 months ago) by dmf
Content type: text/x-python
Branch: MAIN
CVS Tags: HEAD
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 dmf 1.1 import FWCore.ParameterSet.Config as cms
2    
3     ##---------------------------------------
4    
5     from L1TriggerConfig.L1GtConfigProducers.L1GtTriggerMaskAlgoTrigConfig_cff import *
6     from L1TriggerConfig.L1GtConfigProducers.L1GtTriggerMaskTechTrigConfig_cff import *
7     es_prefer_l1GtTriggerMaskAlgoTrig = cms.ESPrefer("L1GtTriggerMaskAlgoTrigTrivialProducer","l1GtTriggerMaskAlgoTrig")
8     es_prefer_l1GtTriggerMaskTechTrig = cms.ESPrefer("L1GtTriggerMaskTechTrigTrivialProducer","l1GtTriggerMaskTechTrig")
9    
10     ##---------------------------------------
11    
12     ###--------
13     from ForwardAnalysis.AnalysisSequences.primaryVertexFilter_cfi import *
14     ##---------------------
15     from ForwardAnalysis.AnalysisSequences.filterScraping_cfi import *
16     ##-------------
17     from CommonTools.RecoAlgos.HBHENoiseFilter_cfi import *
18     ##-------------
19    
20     ######################
21     ## Jet Trigger Filter
22     ######################
23    
24     from ForwardAnalysis.DiffractiveZAnalysis.diffractiveZHLTPaths_cfi import *
25     #diffractiveZHLTFilter.HLTPaths = ['HLT_Mu9','HLT_Mu9']
26     #['HLT_ExclDiJet60_HFAND*', 'HLT_ExclDiJet60_HFOR*']
27     #['HLT_Jet15U','HLT_L1Jet6U']
28    
29     ## ak5PFL1L2L3 = cms.ESSource(
30     ## 'JetCorrectionServiceChain',
31     ## correctors = cms.vstring('ak5PFL1Offset','ak5PFL2Relative','ak5PFL3Absolute')
32     ## )
33    
34     ## ak5PFJetsL2L3 = cms.EDProducer('PFJetCorrectionProducer',
35     ## src = cms.InputTag('ak5PFJets'),
36     ## correctors = cms.vstring('ak5PFL1L2L3')
37     ## )
38     #JetCorrectorSequence = cms.Sequence(ak5PFJetsL2L3)
39    
40     #-----------------------------
41     ## goodJets = cms.EDFilter("CandViewSelector",
42     ## src = cms.InputTag("ak5PFJetsPileUp"),
43     ## cut = cms.string("pt > 0.")
44     ## # # ptMin = cms.double(20)
45     ## )
46     ## #------------------------------
47     ## jetFilter = cms.EDFilter("CandViewCountFilter",
48     ## src = cms.InputTag("goodJets"),
49     ## minNumber = cms.uint32(1)
50     ## )
51     ## jetFilterSequence = cms.Sequence(goodJets*jetFilter)
52     #------------------------------
53     """
54     from PhysicsTools.RecoAlgos.recoTrackSelector_cfi import *
55     recoTrackSelector.src = "generalTracks"
56     recoTrackSelector.minRapidity = -2.5
57     recoTrackSelector.maxRapidity = 2.5
58     recoTrackSelector.ptMin = 0.5
59     recoTrackSelector.quality = ["highPurity"]
60     selectGoodTracks = recoTrackSelector
61     """
62     from ForwardAnalysis.Utilities.analysisTracks_cfi import *
63    
64     from ForwardAnalysis.Utilities.selectTracksAssociatedToPV_cfi import *
65     selectTracksAssociatedToPV.src = "analysisTracks"
66     selectTracksAssociatedToPV.vertexTag = "goodOfflinePrimaryVertices"
67     selectTracksAssociatedToPV.maxDistanceFromVertex = 0.4
68    
69     from ForwardAnalysis.Utilities.tracksOutsideJets_cfi import *
70     tracksOutsideJets.src = "selectTracksAssociatedToPV"
71     tracksOutsideJets.JetTag = "ak5PFJets"
72     tracksOutsideJets.JetConeSize = 0.5
73    
74     from ForwardAnalysis.AnalysisSequences.tracksTransverseRegion_cfi import *
75     tracksTransverseRegion.src = "selectTracksAssociatedToPV"
76     tracksTransverseRegion.JetTag = "ak5PFJets"
77    
78     from ForwardAnalysis.Utilities.trackMultiplicity_cfi import *
79     trackMultiplicityTransverseRegion = trackMultiplicity.clone( src = "tracksTransverseRegion" )
80    
81     #
82     # Systematic Studies
83     #
84    
85     pfCandidatesShiftedUp = cms.EDProducer("ShiftedPFCandidateProducer",
86     src = cms.InputTag('particleFlow'),
87     binning = cms.VPSet(
88     cms.PSet(
89     binSelection = cms.string('particleId == 0'), # particleId == X
90     binUncertainty = cms.double(0.10)
91     ),
92     cms.PSet(
93     binSelection = cms.string('particleId == 1'), # particleId == h
94     binUncertainty = cms.double(0.10)
95     ),
96    
97     cms.PSet(
98     binSelection = cms.string('particleId == 2'), # particleId == e
99     binUncertainty = cms.double(0.10)
100     ),
101     cms.PSet(
102     binSelection = cms.string('particleId == 3'), # particleId == mu
103     binUncertainty = cms.double(0.10)
104     ),
105    
106     cms.PSet(
107     binSelection = cms.string('particleId == 4'), # particleId == gamma
108     binUncertainty = cms.double(0.10)
109     ),
110     cms.PSet(
111     binSelection = cms.string('particleId == 5'), # particleId == h0
112     binUncertainty = cms.double(0.10)
113     ),
114    
115     cms.PSet(
116     binSelection = cms.string('particleId == 6'), # particleId == h_HF
117     binUncertainty = cms.double(0.10)
118     ),
119     cms.PSet(
120     binSelection = cms.string('particleId == 7'), # particleId == egamma_HF
121     binUncertainty = cms.double(0.10)
122     )
123    
124     ),
125     shiftBy = cms.double(1)
126     )
127    
128    
129     pfCandidatesShiftedDown = pfCandidatesShiftedUp.clone()
130     pfCandidatesShiftedDown.shiftBy = cms.double(-1)
131    
132     #------------------------------
133     # Particle flow
134     Forward = cms.PSet(
135     hadronHF = cms.PSet( energy = cms.double(7.0) ),
136     emHF = cms.PSet( energy = cms.double(7.0) )
137     )
138     # Add EtaMax
139     from ForwardAnalysis.Utilities.pfCandidateSelector_cfi import pfCandidateSelector as pfCandidateNoiseThresholds
140     from ForwardAnalysis.Utilities.ExcludeHFEdgesStringCut import ExcludeHFEdgesStringCut
141     from ForwardAnalysis.Utilities.PFCandidateNoiseStringCut import PFCandidateNoiseStringCut
142     # Change thresholds here if needed
143     from pfThresholds_cfi import pfThresholds
144     #pfThresholdsDhiftedUp = pfThresholds.clone()
145     #pfThresholdsHF0.Transition.hadronHF.energy = 0.0
146     #pfThresholdsHF0.Transition.emHF.energy = 0.0
147     #pfThresholdsHF0.Forward.hadronHF.energy = 0.0
148     #pfThresholdsHF0.Forward.emHF.energy = 0.0
149     pfStrCut1 = ExcludeHFEdgesStringCut().cut()
150     pfStrCut2 = PFCandidateNoiseStringCut(pfThresholds).cut()
151     pfStrCut = '%s & %s' % (pfStrCut1,pfStrCut2)
152     pfCandidateNoiseThresholds.cut = pfStrCut
153    
154     # Change to no pile-up collection
155     pfCandidateNoiseThresholds.src = "particleFlow"
156    
157     #pfStrCutHF0 = '%s & %s' % (pfStrCut1, PFCandidateNoiseStringCut(pfThresholdsHF0).cut() )
158     #pfCandidateNoiseThresholdsHF0 = pfCandidateNoiseThresholds.clone( cut = pfStrCutHF0 )
159    
160     from ForwardAnalysis.Utilities.etaMaxCandViewSelector_cfi import etaMaxCandViewSelector as etaMaxPFCands
161     from ForwardAnalysis.Utilities.etaMinCandViewSelector_cfi import etaMinCandViewSelector as etaMinPFCands
162     etaMaxPFCands.src = "pfCandidateNoiseThresholds"
163     etaMinPFCands.src = "pfCandidateNoiseThresholds"
164     #etaMaxPFCands.src = "pfCandidateNoiseThresholdsHF0"
165     #etaMinPFCands.src = "pfCandidateNoiseThresholdsHF0"
166    
167     from ForwardAnalysis.AnalysisSequences.genChargedParticles_cfi import genChargedParticles
168     from ForwardAnalysis.AnalysisSequences.genStableParticles_cfi import genStableParticles
169     genStableParticles.cut = 'status = 1 & ( ( pdgId != 2212 ) | ( pdgId == 2212 & abs(pz) < %f ) )' % (0.75*3500.0)
170     genProtonDissociative = genStableParticles.clone( cut = 'pdgId == 9902210' )
171     etaMaxGen = etaMaxPFCands.clone(src = "genStableParticles")
172     etaMinGen = etaMinPFCands.clone(src = "genStableParticles")
173    
174     from ForwardAnalysis.AnalysisSequences.edmNtupleCandView_cfi import edmNtupleCandView
175     edmNtupleEtaMax = edmNtupleCandView.clone(src = "etaMaxPFCands")
176     edmNtupleEtaMax.variables = cms.VPSet( cms.PSet( tag = cms.untracked.string("etaMax"),
177     quantity = cms.untracked.string("eta") ) )
178     edmNtupleEtaMin = edmNtupleCandView.clone(src = "etaMinPFCands")
179     edmNtupleEtaMin.variables = cms.VPSet( cms.PSet( tag = cms.untracked.string("etaMin"),
180     quantity = cms.untracked.string("eta") ) )
181    
182     edmNtupleMxGen = edmNtupleCandView.clone(src = "genProtonDissociative")
183     edmNtupleMxGen.variables = cms.VPSet( cms.PSet( tag = cms.untracked.string("Mx"),
184     quantity = cms.untracked.string("mass") ) )
185     edmNtupleEtaMaxGen = edmNtupleEtaMax.clone(src = "etaMaxGen")
186     edmNtupleEtaMinGen = edmNtupleEtaMin.clone(src = "etaMinGen")
187    
188     from ForwardAnalysis.AnalysisSequences.etaMaxSelector_cfi import etaMaxSelector as etaMaxFilter
189     etaMaxFilter.src = "etaMaxPFCands"
190     from ForwardAnalysis.AnalysisSequences.etaMinSelector_cfi import etaMinSelector as etaMinFilter
191     etaMinFilter.src = "etaMinPFCands"
192    
193     etaMaxGenFilter = etaMaxFilter.clone(src = "etaMaxGen")
194     etaMinGenFilter = etaMinFilter.clone(src = "etaMinGen")
195    
196    
197     pfCandidateNoiseThresholdsShiftedUp = pfCandidateNoiseThresholds.clone( src= "pfCandidatesShiftedUp" )
198    
199     etaMaxPFCandsShiftedUp = etaMaxPFCands.clone( src = "pfCandidateNoiseThresholdsShiftedUp" )
200     etaMinPFCandsShiftedUp = etaMinPFCands.clone( src = "pfCandidateNoiseThresholdsShiftedUp" )
201    
202     edmNtupleEtaMaxShiftedUp = edmNtupleEtaMax.clone(src = "etaMaxPFCandsShiftedUp")
203     edmNtupleEtaMinShiftedUp = edmNtupleEtaMin.clone(src = "etaMinPFCandsShiftedUp")
204    
205     pfCandidateNoiseThresholdsShiftedDown = pfCandidateNoiseThresholds.clone( src= "pfCandidatesShiftedDown" )
206     etaMaxPFCandsShiftedDown = etaMaxPFCands.clone( src = "pfCandidateNoiseThresholdsShiftedDown" )
207     etaMinPFCandsShiftedDown = etaMinPFCands.clone( src = "pfCandidateNoiseThresholdsShiftedDown" )
208    
209     edmNtupleEtaMaxShiftedDown = edmNtupleEtaMax.clone(src = "etaMaxPFCandsShiftedDown")
210     edmNtupleEtaMinShiftedDown = edmNtupleEtaMin.clone(src = "etaMinPFCandsShiftedDown")
211    
212     #------------------------------
213    
214     from ForwardAnalysis.Utilities.caloActivityFilter_cfi import caloActivityFilter
215     caloVetoHFPlus = caloActivityFilter.clone(NTowersMaxHFPlus=0)
216     caloVetoHFMinus = caloActivityFilter.clone(NTowersMaxHFMinus=0)
217     caloActivityFilter.EnergyThresholdHB = 1.5
218     caloActivityFilter.EnergyThresholdHE = 2.0
219     caloActivityFilter.EnergyThresholdHF = 7.0
220     '''
221     from ForwardAnalysis.Utilities.castorActivityFilter_cfi import castorActivityFilter
222     castorActivityFilter.CastorRecHitTag = "castorRecHitCorrector"
223     castorActivityFilter.SumEMaxCastor = 250.
224    
225     castorInvalidDataFilter = cms.EDFilter("CastorInvalidDataFilter")
226     castorVeto = cms.Sequence(castorInvalidDataFilter + castorActivityFilter)
227     castorTag = cms.Sequence(castorInvalidDataFilter + ~castorActivityFilter)
228     '''
229     ##-----------------------------------------------------------------
230     from ForwardAnalysis.Utilities.hcalActivitySummary_cfi import *
231     hcalActivitySummary.DiscardFlaggedTowers = False
232     hcalActivitySummaryScale090 = hcalActivitySummary.clone(ApplyEnergyScale = True,EnergyScaleFactorHB = 0.90,EnergyScaleFactorHE = 0.90,EnergyScaleFactorHF = 0.90)
233     hcalActivitySummaryScale092 = hcalActivitySummary.clone(ApplyEnergyScale = True,EnergyScaleFactorHB = 0.92,EnergyScaleFactorHE = 0.92,EnergyScaleFactorHF = 0.92)
234     hcalActivitySummaryScale095 = hcalActivitySummary.clone(ApplyEnergyScale = True,EnergyScaleFactorHB = 0.95,EnergyScaleFactorHE = 0.95,EnergyScaleFactorHF = 0.95)
235     hcalActivitySummaryScale098 = hcalActivitySummary.clone(ApplyEnergyScale = True,EnergyScaleFactorHB = 0.98,EnergyScaleFactorHE = 0.98,EnergyScaleFactorHF = 0.98)
236     hcalActivitySummaryScale102 = hcalActivitySummary.clone(ApplyEnergyScale = True,EnergyScaleFactorHB = 1.02,EnergyScaleFactorHE = 1.02,EnergyScaleFactorHF = 1.02)
237     hcalActivitySummaryScale105 = hcalActivitySummary.clone(ApplyEnergyScale = True,EnergyScaleFactorHB = 1.05,EnergyScaleFactorHE = 1.05,EnergyScaleFactorHF = 1.05)
238     hcalActivitySummaryScale108 = hcalActivitySummary.clone(ApplyEnergyScale = True,EnergyScaleFactorHB = 1.08,EnergyScaleFactorHE = 1.08,EnergyScaleFactorHF = 1.08)
239     hcalActivitySummaryScale110 = hcalActivitySummary.clone(ApplyEnergyScale = True,EnergyScaleFactorHB = 1.10,EnergyScaleFactorHE = 1.10,EnergyScaleFactorHF = 1.10)
240     """
241     from Utilities.AnalysisTools.hcalActivityFilter_cfi import hcalActivityFilter
242     hcalActivityFilter.EnergyThresholdHB = 1.5
243     hcalActivityFilter.EnergyThresholdHE = 2.0
244     hcalActivityFilter.EnergyThresholdHF = 4.0hcalVetoHBPlusAndMinus = hcalActivityFilter.clone(NTowersMaxHBPlus = 0, NTowersMaxHBMinus = 0)
245     hcalVetoHBHEPlusAndMinus = hcalActivityFilter.clone(NTowersMaxHBPlus = 0, NTowersMaxHEPlus = 0, NTowersMaxHBMinus
246     = 0, NTowersMaxHEMinus = 0)
247     hcalVetoSumEMaxHBPlusAndMinus4 = hcalActivityFilter.clone(SumEMaxHBPlus = 4.0, SumEMaxHBMinus = 4.0)
248     hcalVetoSumEMaxHBPlusAndMinus8 = hcalActivityFilter.clone(SumEMaxHBPlus = 8.0, SumEMaxHBMinus = 8.0)
249     hcalVetoSumEMaxHBPlusAndMinus12 = hcalActivityFilter.clone(SumEMaxHBPlus = 12.0, SumEMaxHBMinus = 12.0)
250     hcalVetoSumEMaxHBPlusAndMinus16 = hcalActivityFilter.clone(SumEMaxHBPlus = 16.0, SumEMaxHBMinus = 16.0)
251     """
252    
253     ##-----------------------------------------------------------------
254     # Event selection
255     offlineSelection = cms.Sequence(primaryVertexFilter + filterScraping + HBHENoiseFilter)
256     #offlineSelection = cms.Sequence(filterScraping + HBHENoiseFilter)
257     eventSelection = cms.Sequence(offlineSelection)
258     eventSelectionHLT = cms.Sequence(diffractiveZHLTFilter + offlineSelection)
259    
260     """
261     eventSelectionHLTHBVetoPlusAndMinus = cms.Sequence(eventSelectionHLT+hcalVetoHBPlusAndMinus)
262     eventSelectionHLTHBHEVetoPlusAndMinus = cms.Sequence(eventSelectionHLT+hcalVetoHBHEPlusAndMinus)
263     eventSelectionHLTSumEMaxHBPlusAndMinus4 = cms.Sequence(eventSelectionHLT+hcalVetoSumEMaxHBPlusAndMinus4)
264     eventSelectionHLTSumEMaxHBPlusAndMinus8 = cms.Sequence(eventSelectionHLT+hcalVetoSumEMaxHBPlusAndMinus8)
265     eventSelectionHLTSumEMaxHBPlusAndMinus12 = cms.Sequence(eventSelectionHLT+hcalVetoSumEMaxHBPlusAndMinus12)
266     eventSelectionHLTSumEMaxHBPlusAndMinus16 = cms.Sequence(eventSelectionHLT+hcalVetoSumEMaxHBPlusAndMinus16)
267     """
268    
269     #-------------------------------------------
270     # Sequences
271     #jets = cms.Sequence(ak5PFJetsL2L3)
272     tracks = cms.Sequence(analysisTracks*
273     selectTracksAssociatedToPV*
274     tracksOutsideJets*
275     tracksTransverseRegion)
276    
277     pfCandidates_ShiftedUp = cms.Sequence(pfCandidatesShiftedUp+
278     pfCandidateNoiseThresholdsShiftedUp*
279     etaMaxPFCandsShiftedUp+etaMinPFCandsShiftedUp)
280    
281     pfCandidates_ShiftedDown = cms.Sequence(pfCandidatesShiftedDown+
282     pfCandidateNoiseThresholdsShiftedDown*
283     etaMaxPFCandsShiftedDown+etaMinPFCandsShiftedDown)
284    
285    
286     pfCandidates = cms.Sequence(pfCandidateNoiseThresholds*
287     etaMaxPFCands+etaMinPFCands)
288    
289     edmDump = cms.Sequence(#trackMultiplicity+
290     #trackMultiplicityAssociatedToPV+
291     #trackMultiplicityOutsideJets+
292     trackMultiplicityTransverseRegion+
293     hcalActivitySummary+hcalActivitySummaryScale090+hcalActivitySummaryScale092+
294     hcalActivitySummaryScale095+hcalActivitySummaryScale098+
295     hcalActivitySummaryScale102+hcalActivitySummaryScale105+
296     hcalActivitySummaryScale108+hcalActivitySummaryScale110+
297     #hfTower+xiTower+xiFromCaloTowers+
298     edmNtupleEtaMax+edmNtupleEtaMin)
299    
300     edmDumpShiftedUp = cms.Sequence(trackMultiplicityTransverseRegion+
301     hcalActivitySummary+hcalActivitySummaryScale090+hcalActivitySummaryScale092+
302     hcalActivitySummaryScale095+hcalActivitySummaryScale098+
303     hcalActivitySummaryScale102+hcalActivitySummaryScale105+
304     hcalActivitySummaryScale108+hcalActivitySummaryScale110+
305     edmNtupleEtaMaxShiftedUp+edmNtupleEtaMinShiftedUp)
306    
307     edmDumpShiftedDown = cms.Sequence(trackMultiplicityTransverseRegion+
308     hcalActivitySummary+hcalActivitySummaryScale090+hcalActivitySummaryScale092+
309     hcalActivitySummaryScale095+hcalActivitySummaryScale098+
310     hcalActivitySummaryScale102+hcalActivitySummaryScale105+
311     hcalActivitySummaryScale108+hcalActivitySummaryScale110+
312     edmNtupleEtaMaxShiftedDown+edmNtupleEtaMinShiftedDown)
313    
314     #edmDump = cms.Sequence(edmNtupleEtaMax+edmNtupleEtaMin)
315     #-------------------------------------------
316     analysisSequencesShiftedUp = cms.Sequence(tracks*pfCandidates_ShiftedUp*edmDumpShiftedUp)
317     analysisSequencesShiftedDown = cms.Sequence(tracks*pfCandidates_ShiftedDown*edmDumpShiftedDown)
318     analysisSequences = cms.Sequence(tracks*pfCandidates*edmDump)
319    
320     #-------------------------------------------:x
321    
322