Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2025-01-18 03:42:16

0001 import FWCore.ParameterSet.Config as cms
0002 from Configuration.Eras.Modifier_tracker_apv_vfp30_2016_cff import tracker_apv_vfp30_2016 as _tracker_apv_vfp30_2016
0003 
0004 ### STEP 0 ###
0005 
0006 # hit building
0007 from RecoLocalTracker.SiPixelRecHits.PixelCPEESProducers_cff import *
0008 from RecoTracker.TransientTrackingRecHit.TTRHBuilders_cff import *
0009 
0010 from RecoTracker.TkSeedGenerator.trackerClusterCheck_cfi import trackerClusterCheck as _trackerClusterCheck
0011 trackerClusterCheckPreSplitting = _trackerClusterCheck.clone(
0012     PixelClusterCollectionLabel = 'siPixelClustersPreSplitting'
0013 )
0014 
0015 # SEEDING LAYERS
0016 import RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi
0017 import RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi
0018 initialStepSeedLayersPreSplitting = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone(
0019     FPix = dict(HitProducer = 'siPixelRecHitsPreSplitting'),
0020     BPix = dict(HitProducer = 'siPixelRecHitsPreSplitting')
0021 )
0022 from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1
0023 trackingPhase1.toModify(initialStepSeedLayersPreSplitting,
0024     layerList = RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi.PixelLayerQuadruplets.layerList.value()
0025 )
0026 from Configuration.ProcessModifiers.splitClustersInPhase2Pixel_cff import splitClustersInPhase2Pixel
0027 splitClustersInPhase2Pixel.toModify(initialStepSeedLayersPreSplitting,
0028     layerList = RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi.PixelLayerQuadruplets.layerList.value()
0029 )
0030 
0031 # TrackingRegion
0032 from RecoTracker.TkTrackingRegions.globalTrackingRegionFromBeamSpot_cfi import globalTrackingRegionFromBeamSpot as _globalTrackingRegionFromBeamSpot
0033 initialStepTrackingRegionsPreSplitting = _globalTrackingRegionFromBeamSpot.clone(RegionPSet = dict(
0034     ptMin        = 0.6,
0035     originRadius = 0.02,
0036     nSigmaZ      = 4.0
0037 ))
0038 trackingPhase1.toModify(initialStepTrackingRegionsPreSplitting, RegionPSet = dict(ptMin = 0.5))
0039 splitClustersInPhase2Pixel.toModify(initialStepTrackingRegionsPreSplitting, RegionPSet = dict(ptMin = 0.6,originRadius = 0.03))
0040 
0041 # seeding
0042 from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
0043 initialStepHitDoubletsPreSplitting = _hitPairEDProducer.clone(
0044     seedingLayers   = 'initialStepSeedLayersPreSplitting',
0045     trackingRegions = 'initialStepTrackingRegionsPreSplitting',
0046     clusterCheck    = 'trackerClusterCheckPreSplitting',
0047     maxElement      = 50000000,
0048     produceIntermediateHitDoublets = True,
0049 )
0050 from RecoTracker.PixelSeeding.pixelTripletHLTEDProducer_cfi import pixelTripletHLTEDProducer as _pixelTripletHLTEDProducer
0051 from RecoTracker.PixelLowPtUtilities.ClusterShapeHitFilterESProducer_cfi import *
0052 import RecoTracker.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi
0053 initialStepHitTripletsPreSplitting = _pixelTripletHLTEDProducer.clone(
0054     doublets              = 'initialStepHitDoubletsPreSplitting',
0055     produceSeedingHitSets = True,
0056     SeedComparitorPSet = RecoTracker.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone(
0057         clusterShapeCacheSrc = 'siPixelClusterShapeCachePreSplitting'
0058     ),
0059 )
0060 from RecoTracker.PixelSeeding.caHitQuadrupletEDProducer_cfi import caHitQuadrupletEDProducer as _caHitQuadrupletEDProducer
0061 trackingPhase1.toModify(initialStepHitDoubletsPreSplitting, layerPairs = [0,1,2]) # layer pairs (0,1), (1,2), (2,3)
0062 splitClustersInPhase2Pixel.toModify(initialStepHitDoubletsPreSplitting, layerPairs = [0,1,2]) # layer pairs (0,1), (1,2), (2,3)
0063 initialStepHitQuadrupletsPreSplitting = _caHitQuadrupletEDProducer.clone(
0064     doublets = 'initialStepHitDoubletsPreSplitting',
0065     extraHitRPhitolerance = initialStepHitTripletsPreSplitting.extraHitRPhitolerance,
0066     SeedComparitorPSet = initialStepHitTripletsPreSplitting.SeedComparitorPSet,
0067     maxChi2 = dict(
0068         pt1    = 0.7, pt2    = 2,
0069         value1 = 200, value2 = 50,
0070     ),
0071     useBendingCorrection = True,
0072     fitFastCircle        = True,
0073     fitFastCircleChi2Cut = True,
0074     CAThetaCut           = 0.0012,
0075     CAPhiCut             = 0.2,
0076 )
0077 splitClustersInPhase2Pixel.toModify(initialStepHitQuadrupletsPreSplitting,
0078     CAThetaCut = 0.0010,
0079     CAPhiCut   = 0.175,
0080 )
0081 from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsEDProducer_cff import seedCreatorFromRegionConsecutiveHitsEDProducer as _seedCreatorFromRegionConsecutiveHitsEDProducer
0082 initialStepSeedsPreSplitting = _seedCreatorFromRegionConsecutiveHitsEDProducer.clone(
0083     seedingHitSets = 'initialStepHitTripletsPreSplitting',
0084 )
0085 trackingPhase1.toModify(initialStepSeedsPreSplitting, seedingHitSets = 'initialStepHitQuadrupletsPreSplitting')
0086 splitClustersInPhase2Pixel.toModify(initialStepSeedsPreSplitting, seedingHitSets = 'initialStepHitQuadrupletsPreSplitting')
0087 
0088 
0089 # building
0090 import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff
0091 _initialStepTrajectoryFilterBasePreSplitting = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
0092     minimumNumberOfHits = 4,
0093     minPt               = 0.2,
0094 )
0095 initialStepTrajectoryFilterBasePreSplitting = _initialStepTrajectoryFilterBasePreSplitting.clone(
0096     maxCCCLostHits      = 0,
0097     minGoodStripCharge  = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutLoose'))
0098 )
0099 splitClustersInPhase2Pixel.toReplaceWith(initialStepTrajectoryFilterBasePreSplitting, _initialStepTrajectoryFilterBasePreSplitting)
0100 from Configuration.Eras.Modifier_tracker_apv_vfp30_2016_cff import tracker_apv_vfp30_2016
0101 _tracker_apv_vfp30_2016.toModify(initialStepTrajectoryFilterBasePreSplitting, maxCCCLostHits = 2)
0102 import RecoTracker.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi
0103 initialStepTrajectoryFilterShapePreSplitting = RecoTracker.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi.StripSubClusterShapeTrajectoryFilterTIX12.clone()
0104 initialStepTrajectoryFilterPreSplitting = cms.PSet(
0105     ComponentType = cms.string('CompositeTrajectoryFilter'),
0106     filters = cms.VPSet(
0107         cms.PSet( refToPSet_ = cms.string('initialStepTrajectoryFilterBasePreSplitting')),
0108         cms.PSet( refToPSet_ = cms.string('initialStepTrajectoryFilterShapePreSplitting'))),
0109 )
0110 splitClustersInPhase2Pixel.toReplaceWith(initialStepTrajectoryFilterPreSplitting, TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
0111     minimumNumberOfHits = 3,
0112     minPt               = 0.2
0113 ))
0114 
0115 import RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi
0116 initialStepChi2EstPreSplitting = RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi.Chi2ChargeMeasurementEstimator.clone(
0117     ComponentName = 'initialStepChi2EstPreSplitting',
0118     nSigma        = 3.0,
0119     MaxChi2       = 16.0,
0120     clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutLoose')),
0121 )
0122 _tracker_apv_vfp30_2016.toModify(initialStepChi2EstPreSplitting,
0123     clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTiny')
0124 )
0125 splitClustersInPhase2Pixel.toModify(initialStepChi2EstPreSplitting,
0126     clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutNone'),
0127 )
0128 
0129 import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi
0130 initialStepTrajectoryBuilderPreSplitting = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilderIterativeDefault.clone(
0131     trajectoryFilter = dict(refToPSet_ = 'initialStepTrajectoryFilterPreSplitting'),
0132     alwaysUseInvalidHits = True,
0133     maxCand   = 3,
0134     estimator = 'initialStepChi2Est',
0135 )
0136 
0137 import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
0138 initialStepTrackCandidatesPreSplitting = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidatesIterativeDefault.clone(
0139     src = 'initialStepSeedsPreSplitting',
0140     ### these two parameters are relevant only for the CachingSeedCleanerBySharedInput
0141     numHitsForSeedCleaner = 50,
0142     onlyPixelHitsForSeedCleaner = True,
0143     TrajectoryBuilderPSet = dict(refToPSet_ = 'initialStepTrajectoryBuilderPreSplitting'),
0144     doSeedingRegionRebuilding = True,
0145     useHitsSplitting = True,
0146     MeasurementTrackerEvent = 'MeasurementTrackerEventPreSplitting',
0147 )
0148 
0149 from Configuration.ProcessModifiers.trackingMkFitInitialStepPreSplitting_cff import trackingMkFitInitialStepPreSplitting
0150 from RecoTracker.MkFit.mkFitGeometryESProducer_cfi import mkFitGeometryESProducer
0151 import RecoTracker.MkFit.mkFitSiPixelHitConverter_cfi as _mkFitSiPixelHitConverter_cfi
0152 import RecoTracker.MkFit.mkFitSiStripHitConverter_cfi as _mkFitSiStripHitConverter_cfi
0153 import RecoTracker.MkFit.mkFitEventOfHitsProducer_cfi as _mkFitEventOfHitsProducer_cfi
0154 import RecoTracker.MkFit.mkFitSeedConverter_cfi as _mkFitSeedConverter_cfi
0155 import RecoTracker.MkFit.mkFitIterationConfigESProducer_cfi as _mkFitIterationConfigESProducer_cfi
0156 import RecoTracker.MkFit.mkFitProducer_cfi as _mkFitProducer_cfi
0157 import RecoTracker.MkFit.mkFitOutputConverter_cfi as _mkFitOutputConverter_cfi
0158 mkFitSiPixelHitsPreSplitting = _mkFitSiPixelHitConverter_cfi.mkFitSiPixelHitConverter.clone(
0159     hits = 'siPixelRecHitsPreSplitting',
0160     clusters = 'siPixelClustersPreSplitting'
0161 )
0162 mkFitSiStripHits = _mkFitSiStripHitConverter_cfi.mkFitSiStripHitConverter.clone() # TODO: figure out better place for this module?
0163 mkFitEventOfHitsPreSplitting = _mkFitEventOfHitsProducer_cfi.mkFitEventOfHitsProducer.clone(
0164     pixelHits = 'mkFitSiPixelHitsPreSplitting'
0165 )
0166 initialStepTrackCandidatesMkFitSeedsPreSplitting = _mkFitSeedConverter_cfi.mkFitSeedConverter.clone(
0167     seeds = 'initialStepSeedsPreSplitting',
0168 )
0169 # TODO: or try to re-use the ESProducer of initialStep?
0170 initialStepTrackCandidatesMkFitConfigPreSplitting = _mkFitIterationConfigESProducer_cfi.mkFitIterationConfigESProducer.clone(
0171     ComponentName = 'initialStepTrackCandidatesMkFitConfigPreSplitting',
0172     config = 'RecoTracker/MkFit/data/mkfit-phase1-initialStep.json',
0173 )
0174 initialStepTrackCandidatesMkFitPreSplitting = _mkFitProducer_cfi.mkFitProducer.clone(
0175     pixelHits = 'mkFitSiPixelHitsPreSplitting',
0176     eventOfHits = 'mkFitEventOfHitsPreSplitting',
0177     seeds = 'initialStepTrackCandidatesMkFitSeedsPreSplitting',
0178     config = ('', 'initialStepTrackCandidatesMkFitConfigPreSplitting'),
0179 )
0180 trackingMkFitInitialStepPreSplitting.toReplaceWith(initialStepTrackCandidatesPreSplitting, _mkFitOutputConverter_cfi.mkFitOutputConverter.clone(
0181     mkFitPixelHits = 'mkFitSiPixelHitsPreSplitting',
0182     mkFitEventOfHits = 'mkFitEventOfHitsPreSplitting',
0183     seeds = 'initialStepSeedsPreSplitting',
0184     mkFitSeeds = 'initialStepTrackCandidatesMkFitSeedsPreSplitting',
0185     tracks = 'initialStepTrackCandidatesMkFitPreSplitting',
0186 ))
0187 
0188 # fitting
0189 import RecoTracker.TrackProducer.TrackProducerIterativeDefault_cfi
0190 initialStepTracksPreSplitting = RecoTracker.TrackProducer.TrackProducerIterativeDefault_cfi.TrackProducerIterativeDefault.clone(
0191     src              = 'initialStepTrackCandidatesPreSplitting',
0192     AlgorithmName    = 'initialStep',
0193     Fitter           = 'FlexibleKFFittingSmoother',
0194     NavigationSchool = '',
0195     MeasurementTrackerEvent = ''
0196 )
0197 initialStepTracksPreSplitting.MeasurementTrackerEvent = 'MeasurementTrackerEventPreSplitting'
0198 
0199 #vertices
0200 from RecoVertex.PrimaryVertexProducer.OfflinePrimaryVertices_cfi import offlinePrimaryVertices as _offlinePrimaryVertices
0201 firstStepPrimaryVerticesPreSplitting = _offlinePrimaryVertices.clone(
0202     TrackLabel = 'initialStepTracksPreSplitting',
0203     vertexCollections = [_offlinePrimaryVertices.vertexCollections[0].clone()]
0204 )
0205 from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff import pp_on_XeXe_2017
0206 from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA
0207 (pp_on_XeXe_2017 | pp_on_AA).toModify(firstStepPrimaryVerticesPreSplitting, 
0208     TkFilterParameters = dict(
0209         trackQuality = 'any',
0210         maxNumTracksThreshold = 2**31-1
0211     ) 
0212 )
0213 
0214 #Jet Core emulation to identify jet-tracks
0215 from RecoTracker.IterativeTracking.InitialStep_cff import initialStepTrackRefsForJets, caloTowerForTrk, ak4CaloJetsForTrk
0216 from RecoTracker.IterativeTracking.JetCoreRegionalStep_cff import jetsForCoreTracking
0217 initialStepTrackRefsForJetsPreSplitting = initialStepTrackRefsForJets.clone(
0218     src = 'initialStepTracksPreSplitting'
0219 )
0220 caloTowerForTrkPreSplitting = caloTowerForTrk.clone()
0221 ak4CaloJetsForTrkPreSplitting = ak4CaloJetsForTrk.clone(
0222     src    = 'caloTowerForTrkPreSplitting',
0223     srcPVs = 'firstStepPrimaryVerticesPreSplitting'
0224 )
0225 
0226 from Configuration.ProcessModifiers.hltClusterSplitting_cff import hltClusterSplitting
0227 hltClusterSplitting.toModify(ak4CaloJetsForTrkPreSplitting,
0228     srcPVs = 'hltPixelVertices'
0229 )
0230 
0231 jetsForCoreTrackingPreSplitting = jetsForCoreTracking.clone(
0232     src    = 'ak4CaloJetsForTrkPreSplitting'
0233 )
0234 
0235 #Cluster Splitting
0236 from RecoLocalTracker.SubCollectionProducers.jetCoreClusterSplitter_cfi import jetCoreClusterSplitter
0237 siPixelClusters = jetCoreClusterSplitter.clone(
0238     pixelClusters = 'siPixelClustersPreSplitting',
0239     vertices      = 'firstStepPrimaryVerticesPreSplitting',
0240     cores         = 'jetsForCoreTrackingPreSplitting'
0241 )
0242 
0243 
0244 
0245 # Final sequence
0246 from RecoLocalTracker.SiPixelRecHits.SiPixelRecHits_cfi import siPixelRecHits
0247 from RecoTracker.MeasurementDet.MeasurementTrackerEventProducer_cfi import MeasurementTrackerEvent
0248 from RecoTracker.PixelLowPtUtilities.siPixelClusterShapeCache_cfi import *
0249 InitialStepPreSplittingTask = cms.Task(trackerClusterCheckPreSplitting,
0250                                        initialStepSeedLayersPreSplitting,
0251                                        initialStepTrackingRegionsPreSplitting,
0252                                        initialStepHitDoubletsPreSplitting,
0253                                        initialStepHitTripletsPreSplitting,
0254                                        initialStepSeedsPreSplitting,
0255                                        initialStepTrackCandidatesPreSplitting,
0256                                        initialStepTracksPreSplitting,
0257                                        firstStepPrimaryVerticesPreSplitting,
0258                                        initialStepTrackRefsForJetsPreSplitting,
0259                                        caloTowerForTrkPreSplitting,
0260                                        ak4CaloJetsForTrkPreSplitting,
0261                                        jetsForCoreTrackingPreSplitting,
0262                                        siPixelClusters,
0263                                        siPixelRecHits,
0264                                        MeasurementTrackerEvent,
0265                                        siPixelClusterShapeCache)
0266 
0267 hltClusterSplitting.toModify(siPixelClusters,
0268     vertices = cms.InputTag("hltPixelVertices") 
0269 )
0270 
0271 InitialStepPreSplittingFromHLTTask = cms.Task(
0272                                        caloTowerForTrkPreSplitting,
0273                                        ak4CaloJetsForTrkPreSplitting,
0274                                        jetsForCoreTrackingPreSplitting,
0275                                        siPixelClusters,
0276                                        siPixelRecHits,
0277                                        MeasurementTrackerEvent,
0278                                        siPixelClusterShapeCache)
0279 hltClusterSplitting.toReplaceWith(InitialStepPreSplittingTask, InitialStepPreSplittingFromHLTTask)
0280 
0281 InitialStepPreSplitting = cms.Sequence(InitialStepPreSplittingTask)
0282 _InitialStepPreSplittingTask_trackingPhase1 = InitialStepPreSplittingTask.copy()
0283 _InitialStepPreSplittingTask_trackingPhase1.replace(initialStepHitTripletsPreSplitting, cms.Task(initialStepHitTripletsPreSplitting,initialStepHitQuadrupletsPreSplitting))
0284 trackingPhase1.toReplaceWith(InitialStepPreSplittingTask, _InitialStepPreSplittingTask_trackingPhase1.copyAndExclude([initialStepHitTripletsPreSplitting]))
0285 _InitialStepPreSplittingTask_trackingPhase2PU140 = InitialStepPreSplittingTask.copy()
0286 _InitialStepPreSplittingTask_trackingPhase2PU140.replace(initialStepHitTripletsPreSplitting, cms.Task(initialStepHitTripletsPreSplitting,initialStepHitQuadrupletsPreSplitting))
0287 splitClustersInPhase2Pixel.toReplaceWith(InitialStepPreSplittingTask, _InitialStepPreSplittingTask_trackingPhase2PU140.copyAndExclude([initialStepHitTripletsPreSplitting]))
0288 
0289 from Configuration.ProcessModifiers.trackingMkFitCommon_cff import trackingMkFitCommon
0290 _InitialStepPreSplittingTask_trackingMkFitCommon = InitialStepPreSplittingTask.copy()
0291 _InitialStepPreSplittingTask_trackingMkFitCommon.add(mkFitSiStripHits, mkFitGeometryESProducer)
0292 trackingMkFitCommon.toReplaceWith(InitialStepPreSplittingTask, _InitialStepPreSplittingTask_trackingMkFitCommon)
0293 _InitialStepPreSplittingTask_trackingMkFit = InitialStepPreSplittingTask.copy()
0294 _InitialStepPreSplittingTask_trackingMkFit.add(mkFitSiPixelHitsPreSplitting, mkFitEventOfHitsPreSplitting, initialStepTrackCandidatesMkFitSeedsPreSplitting, initialStepTrackCandidatesMkFitPreSplitting, initialStepTrackCandidatesMkFitConfigPreSplitting)
0295 trackingMkFitInitialStepPreSplitting.toReplaceWith(InitialStepPreSplittingTask, _InitialStepPreSplittingTask_trackingMkFit)
0296 
0297 
0298 # Although InitialStepPreSplitting is not really part of LowPU/Run1/Phase2PU140
0299 # tracking, we use it to get siPixelClusters and siPixelRecHits
0300 # collections for non-splitted pixel clusters. All modules before
0301 # iterTracking sequence use siPixelClustersPreSplitting and
0302 # siPixelRecHitsPreSplitting for that purpose.
0303 #
0304 # If siPixelClusters would be defined in
0305 # RecoLocalTracker.Configuration.RecoLocalTracker_cff, we would have a
0306 # situation where
0307 # - LowPU/Phase2PU140 has siPixelClusters defined in RecoLocalTracker_cff
0308 # - everything else has siPixelClusters defined here
0309 # and this leads to a mess. The way it is done here we have only
0310 # one place (within Reconstruction_cff) where siPixelClusters
0311 # module is defined.
0312 from RecoLocalTracker.SiPixelClusterizer.SiPixelClusterizer_cfi import siPixelClusters as _siPixelClusters
0313 from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU
0314 trackingLowPU.toReplaceWith(siPixelClusters, _siPixelClusters)
0315 from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140
0316 (trackingPhase2PU140 & ~splitClustersInPhase2Pixel).toReplaceWith(siPixelClusters, _siPixelClusters)
0317 _InitialStepPreSplittingTask_LowPU = cms.Task(
0318     siPixelClusters ,
0319     siPixelRecHits ,
0320     MeasurementTrackerEvent ,
0321     siPixelClusterShapeCache
0322 )
0323 trackingLowPU.toReplaceWith(InitialStepPreSplittingTask, _InitialStepPreSplittingTask_LowPU)
0324 (trackingPhase2PU140 & ~splitClustersInPhase2Pixel).toReplaceWith(InitialStepPreSplittingTask, _InitialStepPreSplittingTask_LowPU)
0325 splitClustersInPhase2Pixel.toModify(siPixelClusters,
0326     centralMIPCharge  = cms.double(12000),
0327     expSizeXAtLorentzAngleIncidence = cms.double(1.5),
0328     expSizeXDeltaPerTanAlpha = cms.double(5.2),
0329     expSizeYAtNormalIncidence = cms.double(2.3),
0330     tanLorentzAngle = cms.double(-0.21),
0331     tanLorentzAngleBarrelLayer1 = cms.double(0.0),
0332     chargeFractionMin = cms.double(2.0),
0333     forceXError = cms.double(25.0),
0334     forceYError = cms.double(100.0),
0335 )