ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/IPHCalignment2/scripts/MassRefit_TBD_KinFit.py
Revision: 1.1
Committed: Fri Nov 25 16:32:44 2011 UTC (13 years, 5 months ago) by econte
Content type: text/x-python
Branch: MAIN
CVS Tags: TBD2011, HEAD
Log Message:
new IPHC alignment

File Contents

# Content
1 import FWCore.ParameterSet.Config as cms
2
3 process = cms.Process("Refitting")
4 process.load("RecoTracker.TrackProducer.TrackRefitters_cff")
5 process.load("RecoVertex.BeamSpotProducer.BeamSpot_cff")
6
7 # "including" common configuration
8 from CondCore.DBCommon.CondDBSetup_cfi import *
9
10 # loading magnetic field and geometry
11 # process.load("MagneticField.Engine.uniformMagneticField_cfi")
12 process.load("Configuration.StandardSequences.Services_cff")
13 process.load("Configuration.StandardSequences.GeometryPilot2_cff")
14 process.load("Configuration.StandardSequences.MagneticField_38T_cff")
15 process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
16 process.GlobalTag.globaltag = 'START311_V2A::All'
17 process.GlobalTag.connect="frontier://FrontierProd/CMS_COND_31X_GLOBALTAG"
18
19
20 ##################################
21 # to change geometry :
22 ##################################
23 #from CondCore.DBCommon.CondDBSetup_cfi import *
24 #process.trackerAlignment = cms.ESSource("PoolDBESSource",
25 # CondDBSetup,
26 # timetype = cms.string('runnumber'),
27 # toGet = cms.VPSet(cms.PSet(
28 # record =
29 #cms.string('TrackerAlignmentRcd'),
30 # tag =
31 #cms.string('Alignments')
32 # )),
33 # connect =
34 #cms.string('sqlite_file:/afs/cern.ch/cms/CAF/CMSALCA/ALCA_TRACKERALIGN/PayLoads/SystematicMisalignmentsMoriond/mcScenarioMoriond/IDEALplusDelta_twistFreeVcosMintIOV.db')
35 #cms.string('sqlite_file:/afs/cern.ch/cms/CAF/CMSALCA/ALCA_TRACKERALIGN/PayLoads/SystematicMisalignmentsMoriond/mcScenarioMoriond/IDEALplusDelta_ichepVrealignedSagitta.db')
36 # )
37 #process.es_prefer_trackerAlignment = cms.ESPrefer("PoolDBESSource",
38 #"trackerAlignment")
39
40 ##################################
41
42
43 #input sources
44 process.source = cms.Source("PoolSource", fileNames = cms.untracked.vstring("file:/tmp/jandrea/TkAlZMuMu.root"))
45
46 #all events
47 process.maxEvents = cms.untracked.PSet(input = cms.untracked.int32(-1))
48
49 #name of the output file containing the tree
50 process.TFileService = cms.Service("TFileService", fileName = cms.string("analyzerTree.root") )
51
52 #TRACK REFITTER 1
53 import RecoTracker.TrackProducer.TrackRefitters_cff
54 process.TrackRefitter1 = RecoTracker.TrackProducer.TrackRefitter_cfi.TrackRefitter.clone()
55 process.TrackRefitter1.src = 'ALCARECOTkAlZMuMu'
56
57 #
58
59
60
61 process.doConstraintKinFit = cms.EDProducer('ZmassConstraintsProd',
62 trackLabel = cms.InputTag('TrackRefitter1')
63 )
64
65
66
67
68 process.doConstraintTBD=cms.EDProducer("TwoBodyDecayMomentumConstraintProducer",
69 srcTrk = cms.InputTag('TrackRefitter1'),
70 srcBs = cms.InputTag('offlineBeamSpot'),
71 primaryMass = cms.double(91.1876),
72 primaryWidth = cms.double(2.4952),
73 secondaryMass=cms.double(0.105658),
74 EstimatorParameters = cms.PSet(
75 MaxIterationDifference = cms.untracked.double(0.01),
76 RobustificationConstant = cms.untracked.double(1.0),
77 MaxIterations = cms.untracked.int32(100),
78 UseInvariantMass = cms.untracked.bool(True),
79 UseBeamProfile = cms.untracked.bool(True)
80 )
81 )
82
83 process.TrackRefitter2TBD = process.TrackRefitter1.clone()
84 process.TrackRefitter2TBD.src = 'AlignmentTrackSelector'
85 process.TrackRefitter2TBD.constraint = cms.string('momentum')
86 #process.TrackRefitter2.constraint = cms.string('vertex')
87
88 process.TrackRefitter2TBD.srcConstr = cms.InputTag('doConstraintTBD')
89 #process.TrackRefitter2TBD.TrajectoryInEvent = True
90 #process.TrackRefitter2TBD.TTRHBuilder = "WithAngleAndTemplate"
91
92
93
94 process.TrackRefitter2KinFit = process.TrackRefitter1.clone()
95 process.TrackRefitter2KinFit.src = 'AlignmentTrackSelector'
96 process.TrackRefitter2KinFit.constraint = cms.string('momentum')
97 #process.TrackRefitter2.constraint = cms.string('vertex')
98
99 process.TrackRefitter2KinFit.srcConstr = cms.InputTag('doConstraintKinFit')
100 #process.TrackRefitter2KinFit.TrajectoryInEvent = True
101 #process.TrackRefitter2KinFit.TTRHBuilder = "WithAngleAndTemplate"
102
103
104
105 process.treeproducer1 = cms.EDAnalyzer('AlignmentTree',
106 trackLabel = cms.InputTag('TrackRefitter1'),
107 tkTraj = cms.InputTag('TrackRefitter1'),
108 labelTrajToTrack = cms.InputTag('TrackRefitter1'),
109 siStripClusters = cms.InputTag('TrackRefitter1'),
110 primaryVertexColl= cms.InputTag('offlinePrimaryVertices'),
111 isLaserRun = cms.bool(False),
112 isMC = cms.bool(True),
113 isTBD = cms.int32(0) # 0 no constr, 1 TBD, 2 KinFit
114 )
115
116 process.treeproducer2TBD = cms.EDAnalyzer('AlignmentTree',
117 trackLabel = cms.InputTag('TrackRefitter2TBD'),
118 tkTraj = cms.InputTag('TrackRefitter2TBD'),
119 labelTrajToTrack = cms.InputTag('TrackRefitter2TBD'),
120 siStripClusters = cms.InputTag('TrackRefitter2TBD'),
121 primaryVertexColl= cms.InputTag('offlinePrimaryVertices'),
122 isLaserRun = cms.bool(False),
123 isMC = cms.bool(True),
124 isTBD = cms.int32(1) # 0 no constr, 1 TBD, 2 KinFit
125 )
126
127 process.treeproducer2KinFit = cms.EDAnalyzer('AlignmentTree',
128 trackLabel = cms.InputTag('TrackRefitter2KinFit'),
129 tkTraj = cms.InputTag('TrackRefitter2KinFit'),
130 labelTrajToTrack = cms.InputTag('TrackRefitter2KinFit'),
131 siStripClusters = cms.InputTag('TrackRefitter2KinFit'),
132 primaryVertexColl= cms.InputTag('offlinePrimaryVertices'),
133 isLaserRun = cms.bool(False),
134 isMC = cms.bool(True),
135 isTBD = cms.int32(2) # 0 no constr, 1 TBD, 2 KinFit
136 )
137
138 process.TRACKS = cms.OutputModule("PoolOutputModule",
139 outputCommands = cms.untracked.vstring(
140 'keep *_*_*_*',
141 'keep recoTracks_*_*_*',
142 'keep recoTrackExtras_*_*_*',
143 'keep TrackingRecHitsOwned_*_*_*'
144 ),
145
146 fileName = cms.untracked.string('/tmp/jandrea/refitterMomentum_ReSTARTUP.root')
147 )
148
149 process.options = cms.untracked.PSet( wantSummary = cms.untracked.bool(True) )
150
151 process.p = cms.Path(process.offlineBeamSpot
152 *process.TrackRefitter1
153 *process.treeproducer1
154 *process.doConstraintTBD
155 *process.TrackRefitter2TBD
156 *process.doConstraintKinFit
157 *process.TrackRefitter2KinFit
158 *process.treeproducer2TBD
159 *process.treeproducer2KinFit
160 )
161
162 process.outpath = cms.EndPath(process.TRACKS)