def customiseTrackingNtupleHLT(process): import Validation.RecoTrack.TrackValidation_cff as _TrackValidation_cff _seedProducers = [ "hltIter0PFLowPixelSeedsFromPixelTracks", "hltIter1PFLowPixelSeedsFromPixelTracks", "hltIter2PFlowPixelSeeds", "hltDoubletRecoveryPFlowPixelSeeds" ] _candidatesProducers = [ "hltIter0PFlowCkfTrackCandidates", "hltIter1PFlowCkfTrackCandidates", "hltIter2PFlowCkfTrackCandidates", "hltDoubletRecoveryPFlowCkfTrackCandidates" ] (_seedSelectors, _tmpTask) = _TrackValidation_cff._addSeedToTrackProducers( _seedProducers, globals()) _seedSelectorsTask = cms.Task() for modName in _seedSelectors: if not hasattr(process, modName): setattr(process, modName, globals()[modName].clone(beamSpot="hltOnlineBeamSpot")) _seedSelectorsTask.add(getattr(process, modName)) customiseTrackingNtupleTool(process, isRECO=False) process.trackingNtupleSequence.insert(0, cms.Sequence(_seedSelectorsTask)) if process.hltSiStripRawToClustersFacility.onDemand.value(): #make sure that all iter tracking is done before running the ntuple-related modules process.trackingNtupleSequence.insert(0, process.hltMergedTracks) process.trackingNtuple.tracks = "hltMergedTracks" process.trackingNtuple.seedTracks = _seedSelectors process.trackingNtuple.trackCandidates = _candidatesProducers process.trackingNtuple.clusterTPMap = "hltTPClusterProducer" process.trackingNtuple.trackAssociator = "hltTrackAssociatorByHits" process.trackingNtuple.beamSpot = "hltOnlineBeamSpot" process.trackingNtuple.pixelRecHits = "hltSiPixelRecHits" process.trackingNtuple.stripRphiRecHits = "hltSiStripRecHits:rphiRecHit" process.trackingNtuple.stripStereoRecHits = "hltSiStripRecHits:stereoRecHit" process.trackingNtuple.stripMatchedRecHits = "hltSiStripRecHits:matchedRecHit" process.trackingNtuple.vertices = "hltPixelVertices" process.trackingNtuple.TTRHBuilder = "hltESPTTRHBWithTrackAngle" process.trackingNtuple.parametersDefiner = "hltLhcParametersDefinerForTP" process.trackingNtuple.includeMVA = False return process
if "SeedsA" in item and item.replace("SeedsA", "SeedsB") in lst: ret.append(item.replace("SeedsA", "Seeds")) continue if "SeedsB" in item: continue if "SeedsPair" in item and item.replace("SeedsPair", "SeedsTripl") in lst: ret.append(item.replace("SeedsPair", "Seeds")) continue if "SeedsTripl" in item: continue ret.append(item) return ret _seedProducers = _filterForNtuple(_TrackValidation_cff._seedProducers) _seedProducers_trackingPhase1 = _filterForNtuple(_TrackValidation_cff._seedProducers_trackingPhase1) (_seedSelectors, trackingNtupleSeedSelectors) = _TrackValidation_cff._addSeedToTrackProducers(_seedProducers, globals()) (_seedSelectors_trackingPhase1, _trackingNtupleSeedSelectors_trackingPhase1) = _TrackValidation_cff._addSeedToTrackProducers(_seedProducers_trackingPhase1, globals()) eras.phase1Pixel.toReplaceWith(trackingNtupleSeedSelectors, _trackingNtupleSeedSelectors_trackingPhase1) trackingNtuple.seedTracks = _seedSelectors eras.trackingPhase1.toModify(trackingNtuple, seedTracks = _seedSelectors_trackingPhase1) trackingNtupleSequence = cms.Sequence() # reproduce hits because they're not stored in RECO if _includeHits: trackingNtupleSequence += ( siPixelRecHits + siStripMatchedRecHits ) if _includeSeeds: trackingNtupleSequence += trackingNtupleSeedSelectors
if "SeedsTripl" in item: continue ret.append(item) return ret _seedProducers = _filterForNtuple(_TrackValidation_cff._seedProducers) _seedProducers_trackingPhase1 = _filterForNtuple( _TrackValidation_cff._seedProducers_trackingPhase1) _seedProducers_trackingPhase1QuadProp = _filterForNtuple( _TrackValidation_cff._seedProducers_trackingPhase1QuadProp) _seedProducers_trackingPhase2PU140 = _filterForNtuple( _TrackValidation_cff._seedProducers_trackingPhase2PU140) (_seedSelectors, trackingNtupleSeedSelectors) = _TrackValidation_cff._addSeedToTrackProducers( _seedProducers, globals()) (_seedSelectors_trackingPhase1, _trackingNtupleSeedSelectors_trackingPhase1 ) = _TrackValidation_cff._addSeedToTrackProducers( _seedProducers_trackingPhase1, globals()) (_seedSelectors_trackingPhase1QuadProp, _trackingNtupleSeedSelectors_trackingPhase1QuadProp ) = _TrackValidation_cff._addSeedToTrackProducers( _seedProducers_trackingPhase1QuadProp, globals()) (_seedSelectors_trackingPhase2PU140, _trackingNtupleSeedSelectors_trackingPhase2PU140 ) = _TrackValidation_cff._addSeedToTrackProducers( _seedProducers_trackingPhase2PU140, globals()) from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1 from Configuration.Eras.Modifier_trackingPhase1QuadProp_cff import trackingPhase1QuadProp from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingPhase1.toReplaceWith(trackingNtupleSeedSelectors,
if "SeedsA" in item and item.replace("SeedsA", "SeedsB") in lst: ret.append(item.replace("SeedsA", "Seeds")) continue if "SeedsB" in item: continue if "SeedsPair" in item and item.replace("SeedsPair", "SeedsTripl") in lst: ret.append(item.replace("SeedsPair", "Seeds")) continue if "SeedsTripl" in item: continue ret.append(item) return ret _seedProducers = _filterForNtuple(_TrackValidation_cff._seedProducers) _seedProducers_trackingPhase1 = _filterForNtuple(_TrackValidation_cff._seedProducers_trackingPhase1) (_seedSelectors, trackingNtupleSeedSelectors) = _TrackValidation_cff._addSeedToTrackProducers(_seedProducers, globals()) (_seedSelectors_trackingPhase1, _trackingNtupleSeedSelectors_trackingPhase1) = _TrackValidation_cff._addSeedToTrackProducers(_seedProducers_trackingPhase1, globals()) from Configuration.Eras.Modifier_phase1Pixel_cff import phase1Pixel phase1Pixel.toReplaceWith(trackingNtupleSeedSelectors, _trackingNtupleSeedSelectors_trackingPhase1) trackingNtuple.seedTracks = _seedSelectors from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1 trackingPhase1.toModify(trackingNtuple, seedTracks = _seedSelectors_trackingPhase1) trackingNtupleSequence = cms.Sequence() # reproduce hits because they're not stored in RECO if _includeHits: trackingNtupleSequence += ( siPixelRecHits + siStripMatchedRecHits )