Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-06-13 03:24:17

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 from Validation.HGCalValidation.CaloParticleSelectionForEfficiency_cfi import *
0004 from Validation.HGCalValidation.HGVHistoProducerAlgoBlock_cfi import *
0005 
0006 from SimCalorimetry.HGCalAssociatorProducers.LCToCPAssociation_cfi import layerClusterCaloParticleAssociation
0007 from SimCalorimetry.HGCalAssociatorProducers.LCToSCAssociation_cfi import layerClusterSimClusterAssociation
0008 
0009 from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer
0010 
0011 from RecoHGCal.TICL.iterativeTICL_cff import ticlIterLabels, ticlIterLabelsMerge
0012 
0013 labelTst = [cms.InputTag("ticlTracksters"+iteration) for iteration in ticlIterLabelsMerge]
0014 labelTst.extend([cms.InputTag("ticlSimTracksters", "fromCPs"), cms.InputTag("ticlSimTracksters")])
0015 lcInputMask = [cms.InputTag("ticlTracksters"+iteration) for iteration in ticlIterLabels]
0016 lcInputMask.extend([cms.InputTag("ticlSimTracksters", "fromCPs"), cms.InputTag("ticlSimTracksters")])
0017 
0018 hgcalValidator = DQMEDAnalyzer(
0019     "HGCalValidator",
0020 
0021     ### general settings ###
0022     # selection of CP for evaluation of efficiency #
0023     CaloParticleSelectionForEfficiency,
0024 
0025     hits = cms.VInputTag([cms.InputTag("HGCalRecHit", "HGCEERecHits"), cms.InputTag("HGCalRecHit", "HGCHEFRecHits"), cms.InputTag("HGCalRecHit", "HGCHEBRecHits")]),
0026     ### reco input configuration ###
0027     #2DLayerClusters, PFClusters, Tracksters
0028     label_lcl = layerClusterCaloParticleAssociation.label_lc,
0029     label_tst = cms.VInputTag(labelTst),
0030     label_simTS = cms.InputTag("ticlSimTracksters"),
0031     label_simTSFromCP = cms.InputTag("ticlSimTracksters", "fromCPs"),
0032 
0033     associator = cms.untracked.InputTag("layerClusterCaloParticleAssociationProducer"),
0034 
0035     associatorSim = cms.untracked.InputTag("layerClusterSimClusterAssociationProducer"),
0036 
0037     #General info on layers etc.
0038     SaveGeneralInfo = cms.untracked.bool(True),
0039     #CaloParticle related plots
0040     doCaloParticlePlots = cms.untracked.bool(True),
0041     #Select caloParticles for efficiency or pass through
0042     doCaloParticleSelection = cms.untracked.bool(True),
0043     #SimCluster related plots
0044     doSimClustersPlots = cms.untracked.bool(True),
0045     label_SimClusters = cms.InputTag("SimClusters"),
0046     label_SimClustersLevel = cms.InputTag("ClusterLevel"),
0047     #Layer Cluster related plots
0048     doLayerClustersPlots = cms.untracked.bool(True),
0049     label_layerClusterPlots = cms.InputTag("hgcalMergeLayerClusters"),
0050     label_LCToCPLinking = cms.InputTag("LCToCP_association"),
0051     #Trackster related plots
0052     doTrackstersPlots = cms.untracked.bool(True),
0053     label_TS = cms.string("Morphology"),
0054     label_TSToCPLinking = cms.string("TSToCP_linking"),
0055     label_TSToSTSPR = cms.string("TSToSTS_patternRecognition"),
0056     #candidates plots
0057     doCandidatesPlots = cms.untracked.bool(True),
0058     ticlCandidates = cms.string("ticlCandidates"),
0059 
0060     ticlTrackstersMerge = cms.InputTag("ticlTrackstersMerge"),
0061     simTiclCandidates = cms.InputTag("ticlSimTracksters"),
0062     recoTracks = cms.InputTag("generalTracks"),
0063     mergeRecoToSimAssociator = cms.InputTag("tracksterSimTracksterAssociationLinking", "recoToSim"),
0064     mergeSimToRecoAssociator = cms.InputTag("tracksterSimTracksterAssociationLinking", "simToReco"),
0065     mergeRecoToSimAssociatorPU = cms.InputTag("tracksterSimTracksterAssociationLinkingPU", "recoToSim"),
0066 
0067     #The cumulative material budget in front of each layer. To be more specific, it
0068     #is the material budget just in front of the active material (not including it).
0069     #This file is created using the official material budget code.
0070     cummatbudinxo = cms.FileInPath('Validation/HGCalValidation/data/D41.cumulative.xo'),
0071 
0072     ### sim input configuration ###
0073     label_cp_effic = layerClusterCaloParticleAssociation.label_cp,
0074     label_cp_fake = cms.InputTag("mix","MergedCaloTruth"),
0075     #simClusters
0076     label_scl = layerClusterSimClusterAssociation.label_scl,
0077 
0078     simVertices = cms.InputTag("g4SimHits"),
0079 
0080     LayerClustersInputMask = cms.VInputTag(lcInputMask),
0081 
0082     #Total number of layers of HGCal that we want to monitor
0083     #Could get this also from HGCalImagingAlgo::maxlayer but better to get it from here
0084     totallayers_to_monitor = cms.int32(52),
0085     #Thicknesses we want to monitor. -1 is for scintillator
0086     thicknesses_to_monitor = cms.vint32(120,200,300,-1),
0087 
0088     # HistoProducerAlgo. Defines the set of plots to be booked and filled
0089     histoProducerAlgoBlock = HGVHistoProducerAlgoBlock,
0090 
0091     ### output configuration
0092     dirName = cms.string('HGCAL/HGCalValidator/'),
0093 
0094     isticlv5 = cms.untracked.bool(False)
0095 )
0096 
0097 from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
0098 premix_stage2.toModify(hgcalValidator,
0099     label_cp_fake = "mixData:MergedCaloTruth"
0100 )
0101 
0102 from Configuration.Eras.Modifier_phase2_hgcalV10_cff import phase2_hgcalV10
0103 phase2_hgcalV10.toModify(hgcalValidator, totallayers_to_monitor = cms.int32(50))
0104 
0105 from Configuration.Eras.Modifier_phase2_hgcalV16_cff import phase2_hgcalV16
0106 phase2_hgcalV16.toModify(hgcalValidator, totallayers_to_monitor = cms.int32(47))
0107 
0108 from Configuration.ProcessModifiers.ticl_v5_cff import ticl_v5
0109 # labelTst_v5 = ["ticlTrackstersCLUE3DEM", "ticlTrackstersCLUE3DHAD", "ticlTracksterLinks"] # for separate CLUE3D iterations
0110 labelTst_v5 = ["ticlTrackstersCLUE3DHigh", "ticlTracksterLinks"]
0111 labelTst_v5.extend([cms.InputTag("ticlSimTracksters", "fromCPs"), cms.InputTag("ticlSimTracksters")])
0112 # lcInputMask_v5  = ["ticlTrackstersCLUE3DEM", "ticlTrackstersCLUE3DHAD", "ticlTracksterLinks"] # for separate CLUE3D iterations
0113 lcInputMask_v5  = ["ticlTrackstersCLUE3DHigh", "ticlTracksterLinks"]
0114 lcInputMask_v5.extend([cms.InputTag("ticlSimTracksters", "fromCPs"), cms.InputTag("ticlSimTracksters")])
0115 
0116 ticl_v5.toModify(hgcalValidator,
0117     label_tst = cms.VInputTag(labelTst_v5),
0118     LayerClustersInputMask = cms.VInputTag(lcInputMask_v5),
0119     ticlTrackstersMerge = cms.InputTag("ticlCandidate"),
0120     isticlv5 = cms.untracked.bool(True)
0121 )