|
| 1 | +import FWCore.ParameterSet.Config as cms |
| 2 | + |
| 3 | +# ------------------------------------------------------------------------------ |
| 4 | +# configure a filter to run only on the events selected by TkAlZMuMu AlcaReco |
| 5 | +from HLTrigger.HLTfilters.hltHighLevel_cfi import * |
| 6 | +ALCARECOTkAlZMuMuFilterForSiPixelAliHLT = hltHighLevel.clone( |
| 7 | + HLTPaths = ['pathALCARECOTkAlHLTTracksZMuMu'], |
| 8 | + throw = True, ## dont throw on unknown path names, |
| 9 | + TriggerResultsTag = "TriggerResults::RECO" |
| 10 | +) |
| 11 | + |
| 12 | +from Alignment.CommonAlignmentProducer.ALCARECOPromptCalibProdSiPixelAliHLT_cff import * |
| 13 | +from Alignment.CommonAlignmentProducer.LSNumberFilter_cfi import * |
| 14 | + |
| 15 | + |
| 16 | + |
| 17 | +# Ingredient: AlignmentTrackSelector |
| 18 | +# track selector for HighPurity tracks |
| 19 | +#-- AlignmentTrackSelector |
| 20 | +SiPixelAliLooseSelectorHLTHGDimuon = SiPixelAliLooseSelectorHLT.clone( |
| 21 | + src = 'ALCARECOTkAlHLTTracksZMuMu', |
| 22 | + etaMax = 3.0, |
| 23 | + etaMin = -3.0, |
| 24 | + filter = True, |
| 25 | + pMin = 8.0, |
| 26 | +) |
| 27 | + |
| 28 | +# track selection for alignment |
| 29 | +SiPixelAliTrackSelectorHLTHGDimuon = SiPixelAliTrackSelectorHLT.clone( |
| 30 | + src = 'SiPixelAliTrackFitterHLTHGDimuon', |
| 31 | + applyMultiplicityFilter = True, |
| 32 | + d0Max = 50.0, |
| 33 | + d0Min = -50.0, |
| 34 | + etaMax = 3.0, |
| 35 | + etaMin = -3.0, |
| 36 | + filter = True, |
| 37 | + maxMultiplicity = 2, |
| 38 | + minHitChargeStrip = 20.0, |
| 39 | + minHitIsolation = 0.01, |
| 40 | + minMultiplicity = 2, |
| 41 | + nHighestPt = 2, |
| 42 | + nHitMin = 10, |
| 43 | + pMin = 3.0, |
| 44 | + ptMin = 15.0, |
| 45 | + TwoBodyDecaySelector = dict(applyChargeFilter = True, |
| 46 | + applyMassrangeFilter = True, |
| 47 | + maxXMass = 95.8, |
| 48 | + minXMass = 85.8), |
| 49 | + minHitsPerSubDet = dict(inPIXEL = 1) |
| 50 | +) |
| 51 | + |
| 52 | +# Ingredient: SiPixelAliTrackRefitter0 |
| 53 | +# refitting |
| 54 | +SiPixelAliTrackRefitterHLTHGDimuon0 = SiPixelAliTrackRefitterHLT0.clone( |
| 55 | + src = 'SiPixelAliLooseSelectorHLTHGDimuon' |
| 56 | +) |
| 57 | +SiPixelAliTrackRefitterHLTHGDimuon1 = SiPixelAliTrackRefitterHLTHGDimuon0.clone( |
| 58 | + src = 'SiPixelAliTrackSelectorHLTHGDimuon' |
| 59 | +) |
| 60 | + |
| 61 | +#-- Alignment producer |
| 62 | +SiPixelAliMilleAlignmentProducerHLTHGDimuon = SiPixelAliMilleAlignmentProducerHLT.clone( |
| 63 | + ParameterBuilder = dict( |
| 64 | + Selector = cms.PSet( |
| 65 | + alignParams = cms.vstring( |
| 66 | + "TrackerP1PXBLadder,111111", |
| 67 | + "TrackerP1PXECPanel,111111", |
| 68 | + ) |
| 69 | + ) |
| 70 | + ), |
| 71 | + tjTkAssociationMapTag = 'SiPixelAliTrackRefitterHLTHGDimuon1', |
| 72 | + algoConfig = MillePedeAlignmentAlgorithm.clone( |
| 73 | + binaryFile = 'milleBinaryHLTHGDimuon_0.dat', |
| 74 | + treeFile = 'treeFileHLTHGDimuon.root', |
| 75 | + monitorFile = 'millePedeMonitorHLTHGDimuon.root', |
| 76 | + minNumHits = 8, |
| 77 | + skipGlobalPositionRcdCheck = True, |
| 78 | + TrajectoryFactory = cms.PSet( |
| 79 | + AllowZeroMaterial = cms.bool(False), |
| 80 | + Chi2Cut = cms.double(10000.0), |
| 81 | + ConstructTsosWithErrors = cms.bool(False), |
| 82 | + EstimatorParameters = cms.PSet( |
| 83 | + MaxIterationDifference = cms.untracked.double(0.01), |
| 84 | + MaxIterations = cms.untracked.int32(100), |
| 85 | + RobustificationConstant = cms.untracked.double(1.0), |
| 86 | + UseInvariantMass = cms.untracked.bool(True) |
| 87 | + ), |
| 88 | + IncludeAPEs = cms.bool(False), |
| 89 | + MaterialEffects = cms.string('LocalGBL'), |
| 90 | + NSigmaCut = cms.double(100.0), |
| 91 | + ParticleProperties = cms.PSet( |
| 92 | + PrimaryMass = cms.double(91.1061), |
| 93 | + PrimaryWidth = cms.double(1.7678), |
| 94 | + SecondaryMass = cms.double(0.105658) |
| 95 | + ), |
| 96 | + PropagationDirection = cms.string('alongMomentum'), |
| 97 | + TrajectoryFactoryName = cms.string('TwoBodyDecayTrajectoryFactory'), |
| 98 | + UseBeamSpot = cms.bool(False), |
| 99 | + UseHitWithoutDet = cms.bool(True), |
| 100 | + UseInvalidHits = cms.bool(True), |
| 101 | + UseProjectedHits = cms.bool(True), |
| 102 | + UseRefittedState = cms.bool(True) |
| 103 | + ) |
| 104 | + ) |
| 105 | +) |
| 106 | + |
| 107 | +# Ingredient: SiPixelAliTrackerTrackHitFilter |
| 108 | +SiPixelAliTrackerTrackHitFilterHLTHGDimuon = SiPixelAliTrackerTrackHitFilterHLT.clone( |
| 109 | + src = 'SiPixelAliTrackRefitterHLTHGDimuon0', |
| 110 | + TrackAngleCut = 0.087, |
| 111 | + minimumHits = 10, |
| 112 | + usePixelQualityFlag = False |
| 113 | +) |
| 114 | + |
| 115 | +# Ingredient: SiPixelAliSiPixelAliTrackFitter |
| 116 | +SiPixelAliTrackFitterHLTHGDimuon = SiPixelAliTrackFitterHLT.clone( |
| 117 | + src = 'SiPixelAliTrackerTrackHitFilterHLTHGDimuon' |
| 118 | +) |
| 119 | + |
| 120 | +SiPixelAliMillePedeFileConverterHLTHGDimuon = cms.EDProducer( |
| 121 | + "MillePedeFileConverter", |
| 122 | + fileDir = cms.string(SiPixelAliMilleAlignmentProducerHLTHGDimuon.algoConfig.fileDir.value()), |
| 123 | + inputBinaryFile = cms.string(SiPixelAliMilleAlignmentProducerHLTHGDimuon.algoConfig.binaryFile.value()), |
| 124 | + fileBlobLabel = cms.string('') |
| 125 | +) |
| 126 | + |
| 127 | +seqALCARECOPromptCalibProdSiPixelAliHLTHGDiMu = cms.Sequence( |
| 128 | + ALCARECOTkAlZMuMuFilterForSiPixelAliHLT* |
| 129 | + LSNumberFilter* |
| 130 | + onlineBeamSpot* |
| 131 | + SiPixelAliLooseSelectorHLTHGDimuon* |
| 132 | + SiPixelAliTrackRefitterHLTHGDimuon0* |
| 133 | + SiPixelAliTrackerTrackHitFilterHLTHGDimuon* |
| 134 | + SiPixelAliTrackFitterHLTHGDimuon* |
| 135 | + SiPixelAliTrackSelectorHLTHGDimuon* |
| 136 | + SiPixelAliTrackRefitterHLTHGDimuon1* |
| 137 | + SiPixelAliMilleAlignmentProducerHLTHGDimuon* |
| 138 | + SiPixelAliMillePedeFileConverterHLTHGDimuon |
| 139 | +) |
0 commit comments