File indexing completed on 2025-07-14 01:09:11
0001 """
0002 This script runs the SimpleTrackValidation.
0003 It is just meant for testing and development.
0004
0005 To run:
0006 cmsRun SimpleTrackValidation_cfg.py inputFiles=file:/path/to/step2.root
0007 """
0008
0009 import FWCore.ParameterSet.Config as cms
0010
0011 from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9
0012
0013 import FWCore.ParameterSet.VarParsing as VarParsing
0014 options = VarParsing.VarParsing ('analysis')
0015 options.inputFiles = ''
0016 options.parseArguments()
0017
0018 process = cms.Process("SimpleTrackValidation",Phase2C17I13M9)
0019
0020
0021 process.maxEvents = cms.untracked.PSet(
0022 input = cms.untracked.int32(-1),
0023 output = cms.optional.untracked.allowed(cms.int32,cms.PSet)
0024 )
0025
0026
0027 process.source = cms.Source("PoolSource",
0028 dropDescendantsOfDroppedBranches = cms.untracked.bool(False),
0029 fileNames = cms.untracked.vstring(options.inputFiles),
0030 inputCommands = cms.untracked.vstring(
0031 'keep *',
0032 'drop *_hltSiPixelRecHits_*_HLTX'
0033 ),
0034 secondaryFileNames = cms.untracked.vstring()
0035 )
0036
0037
0038 process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
0039 from Configuration.AlCa.GlobalTag import GlobalTag
0040 process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase2_realistic_T33', '')
0041
0042
0043 process.load('Configuration/StandardSequences/Services_cff')
0044 process.load('Configuration.Geometry.GeometryExtendedRun4D110Reco_cff')
0045
0046
0047 process.TFileService = cms.Service("TFileService",
0048 fileName = cms.string('simple_validation.root')
0049 )
0050
0051 process.hltTPClusterProducer = cms.EDProducer("ClusterTPAssociationProducer",
0052 mightGet = cms.optional.untracked.vstring,
0053 phase2OTClusterSrc = cms.InputTag("hltSiPhase2Clusters"),
0054 phase2OTSimLinkSrc = cms.InputTag("simSiPixelDigis","Tracker"),
0055 pixelClusterSrc = cms.InputTag("hltSiPixelClusters"),
0056 pixelSimLinkSrc = cms.InputTag("simSiPixelDigis","Pixel"),
0057 simTrackSrc = cms.InputTag("g4SimHits"),
0058 stripClusterSrc = cms.InputTag("hltSiStripRawToClustersFacility"),
0059 stripSimLinkSrc = cms.InputTag("simSiStripDigis"),
0060 throwOnMissingCollections = cms.bool(True),
0061 trackingParticleSrc = cms.InputTag("mix","MergedTrackTruth")
0062 )
0063
0064 process.hltTrackAssociatorByHits = cms.EDProducer("QuickTrackAssociatorByHitsProducer",
0065 AbsoluteNumberOfHits = cms.bool(False),
0066 Cut_RecoToSim = cms.double(0.75),
0067 PixelHitWeight = cms.double(1.0),
0068 Purity_SimToReco = cms.double(0.75),
0069 Quality_SimToReco = cms.double(0.5),
0070 SimToRecoDenominator = cms.string('reco'),
0071 ThreeHitTracksAreSpecial = cms.bool(False),
0072 UseGrouped = cms.bool(False),
0073 UseSplitting = cms.bool(False),
0074 cluster2TPSrc = cms.InputTag("hltTPClusterProducer"),
0075 useClusterTPAssociation = cms.bool(True)
0076 )
0077
0078 process.SimpleTrackValidation = cms.EDAnalyzer("SimpleTrackValidation",
0079 chargedOnlyTP = cms.bool(True),
0080 intimeOnlyTP = cms.bool(False),
0081 invertRapidityCutTP = cms.bool(False),
0082 lipTP = cms.double(30.0),
0083 maxPhiTP = cms.double(3.2),
0084 maxRapidityTP = cms.double(2.5),
0085 minHitTP = cms.int32(0),
0086 minPhiTP = cms.double(-3.2),
0087 minRapidityTP = cms.double(-2.5),
0088 pdgIdTP = cms.vint32(),
0089 ptMaxTP = cms.double(1e+100),
0090 ptMinTP = cms.double(0.9),
0091 signalOnlyTP = cms.bool(True),
0092 stableOnlyTP = cms.bool(False),
0093 tipTP = cms.double(3.5),
0094 trackAssociator = cms.InputTag("hltTrackAssociatorByHits"),
0095 trackLabels = cms.VInputTag("hltPhase2PixelTracks"),
0096 trackingParticles = cms.InputTag("mix","MergedTrackTruth"),
0097 etaBins = cms.vdouble(-4.0, -1.5, 1.5, 4.0),
0098 ptBins = cms.vdouble(0.0, 3.0, 10.0, 1000.0)
0099 )
0100
0101
0102 process.simDoubletProduction = cms.Path(
0103 process.hltTPClusterProducer *
0104 process.hltTrackAssociatorByHits *
0105 process.SimpleTrackValidation
0106 )
0107
0108 process.options = cms.untracked.PSet(
0109 numberOfThreads = cms.untracked.uint32(8),
0110 numberOfStreams = cms.untracked.uint32(8),
0111 wantSummary = cms.untracked.bool(True)
0112 )