1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
import FWCore.ParameterSet.Config as cms
# ------------------------------------------------------------------------------
# configure a filter to run only on the events selected by SiPixelCalCosmics AlcaReco
from HLTrigger.HLTfilters.hltHighLevel_cfi import *
ALCARECOCalCosmicsFilterForSiPixelLorentzAngleMCS = hltHighLevel.clone(
HLTPaths = ['pathALCARECOSiPixelCalCosmics'],
throw = True, ## dont throw on unknown path names
TriggerResultsTag = ("TriggerResults","","RECO")
)
# ------------------------------------------------------------------------------
# This is the sequence for track refitting of the track saved by SiPixelCalSingleMuonLoose
# to have access to transient objects produced during RECO step and not saved
from Alignment.CommonAlignmentProducer.AlignmentTrackSelector_cfi import *
ALCARECOPixelLACalibrationTracksMCS = AlignmentTrackSelector.clone(
src = 'ALCARECOSiPixelCalCosmics',
filter = True,
applyBasicCuts = True,
ptMin = 3.
)
# FIXME: the beam-spot should be kept in the AlCaReco (if not already there) and dropped from here
from RecoVertex.BeamSpotProducer.BeamSpot_cff import *
from RecoTracker.IterativeTracking.InitialStep_cff import *
from RecoTracker.Configuration.RecoTrackerP5_cff import *
from RecoTracker.TrackProducer.TrackRefitter_cfi import *
from TrackingTools.TransientTrack.TransientTrackBuilder_cfi import *
from RecoLocalTracker.SiPixelRecHits.SiPixelTemplateStoreESProducer_cfi import *
ALCARECOPixelLACalibrationTracksRefitMCS = TrackRefitter.clone(src = "ALCARECOPixelLACalibrationTracksMCS",
TrajectoryInEvent = True,
NavigationSchool = ""
)
# refit and BS can be dropped if done together with RECO.
# track filter can be moved in acalreco if no otehr users
ALCARECOPixelLATrackFilterRefitMCS = cms.Sequence(ALCARECOPixelLACalibrationTracksMCS +
offlineBeamSpot +
ALCARECOPixelLACalibrationTracksRefitMCS)
# ------------------------------------------------------------------------------
# This is the module actually doing the calibration
from CalibTracker.SiPixelLorentzAngle.SiPixelLorentzAnglePCLWorker_cfi import SiPixelLorentzAnglePCLWorker
ALCARECOSiPixelLACalibMCS = SiPixelLorentzAnglePCLWorker.clone(
folder = 'AlCaReco/SiPixelLorentzAngle',
src = 'ALCARECOPixelLACalibrationTracksRefitMCS',
analysisType = 'MinimalClusterSize'
)
# ----------------------------------------------------------------------------
# ****************************************************************************
# ** Conversion for the SiPixelLorentzAngle DQM dir **
# ****************************************************************************
MEtoEDMConvertSiPixelLorentzAngleMCS = cms.EDProducer("MEtoEDMConverter",
Name = cms.untracked.string('MEtoEDMConverter'),
Verbosity = cms.untracked.int32(0), # 0 provides no output
# 1 provides basic output
# 2 provide more detailed output
Frequency = cms.untracked.int32(50),
MEPathToSave = cms.untracked.string('AlCaReco/SiPixelLorentzAngle'),
)
# The actual sequence
seqALCARECOPromptCalibProdSiPixelLorentzAngleMCS = cms.Sequence(
ALCARECOCalCosmicsFilterForSiPixelLorentzAngleMCS *
ALCARECOPixelLATrackFilterRefitMCS *
ALCARECOSiPixelLACalibMCS *
MEtoEDMConvertSiPixelLorentzAngleMCS
)
|