CMS 3D CMS Logo

RecoEcal_EventContent_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 # AOD content
4 RecoEcalAOD = cms.PSet(
5  outputCommands = cms.untracked.vstring(
6  #selected digis
7  'keep *_selectDigi_*_*',
8  # Hits
9  'keep EcalRecHitsSorted_reducedEcalRecHitsEB_*_*',
10  'keep EcalRecHitsSorted_reducedEcalRecHitsEE_*_*',
11  'keep EcalRecHitsSorted_reducedEcalRecHitsES_*_*',
12  # Barrel clusters (uncleaned only in separate collections)
13  'keep recoSuperClusters_correctedHybridSuperClusters_*_*',
14  'keep recoCaloClusters_hybridSuperClusters_*_*',
15  'keep recoSuperClusters_hybridSuperClusters_uncleanOnlyHybridSuperClusters_*',
16  # Endcap clusters
17  'keep recoCaloClusters_multi5x5SuperClusters_multi5x5EndcapBasicClusters_*',
18  'keep recoSuperClusters_correctedMulti5x5SuperClustersWithPreshower_*_*',
19  # Preshower clusters
20  'keep recoPreshowerClusters_multi5x5SuperClustersWithPreshower_*_*',
21  'keep recoPreshowerClusterShapes_multi5x5PreshowerClusterShape_*_*',
22  # Particle Flow superclusters (only SuperCluster and CaloCluster outputs, not association map from PFClusters)
23  'keep recoSuperClusters_particleFlowSuperClusterECAL_*_*',
24  'keep recoCaloClusters_particleFlowSuperClusterECAL_*_*',
25  'keep recoSuperClusters_particleFlowSuperClusterOOTECAL_*_*',
26  'keep recoCaloClusters_particleFlowSuperClusterOOTECAL_*_*')
27 )
28 _phase2_hgcal_scCommandsAOD = ['keep recoSuperClusters_particleFlowSuperClusterHGCal__*',
29  'keep recoCaloClusters_particleFlowSuperClusterHGCal__*',
30  'keep recoSuperClusters_particleFlowSuperClusterHGCalFromMultiCl__*',
31  'keep recoCaloClusters_particleFlowSuperClusterHGCalFromMultiCl__*']
32 
33 from Configuration.Eras.Modifier_phase2_hgcal_cff import phase2_hgcal
34 phase2_hgcal.toModify(RecoEcalAOD,
35  outputCommands = RecoEcalAOD.outputCommands + _phase2_hgcal_scCommandsAOD)
36 
37 from Configuration.Eras.Modifier_pA_2016_cff import pA_2016
38 from Configuration.Eras.Modifier_peripheralPbPb_cff import peripheralPbPb
39 from Configuration.Eras.Modifier_pp_on_AA_2018_cff import pp_on_AA_2018
40 from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff import pp_on_XeXe_2017
41 from Configuration.Eras.Modifier_ppRef_2017_cff import ppRef_2017
42 #HI-specific products needed in pp scenario special configurations
43 for e in [pA_2016, peripheralPbPb, pp_on_AA_2018, pp_on_XeXe_2017, ppRef_2017]:
44  e.toModify( RecoEcalAOD.outputCommands,
45  func=lambda outputCommands: outputCommands.extend(['keep recoSuperClusters_correctedIslandBarrelSuperClusters_*_*',
46  'keep recoSuperClusters_correctedIslandEndcapSuperClusters_*_*'])
47  )
48 
49 # RECO content
50 RecoEcalRECO = cms.PSet(
51  outputCommands = cms.untracked.vstring(
52  # Barrel clusters
53  'keep *_hybridSuperClusters_*_*',
54  'keep recoSuperClusters_correctedHybridSuperClusters_*_*',
55  # Endcap clusters
56  'keep *_multi5x5SuperClusters_*_*',
57  'keep recoSuperClusters_multi5x5SuperClustersWithPreshower_*_*',
58  # Particle Flow superclusters
59  'keep *_particleFlowSuperClusterECAL_*_*',
60  'keep *_particleFlowSuperClusterOOTECAL_*_*',
61  # DROP statements
62  'drop recoClusterShapes_*_*_*',
63  'drop recoBasicClustersToOnerecoClusterShapesAssociation_*_*_*',
64  'drop recoBasicClusters_multi5x5BasicClusters_multi5x5BarrelBasicClusters_*',
65  'drop recoSuperClusters_multi5x5SuperClusters_multi5x5BarrelSuperClusters_*')
66 )
67 RecoEcalRECO.outputCommands.extend(RecoEcalAOD.outputCommands)
68 _phase2_hgcal_scCommands = ['keep *_particleFlowSuperClusterHGCal_*_*',
69  'keep *_particleFlowSuperClusterHGCalFromMultiCl_*_*']
70 phase2_hgcal.toModify(RecoEcalRECO,
71  outputCommands = RecoEcalRECO.outputCommands + _phase2_hgcal_scCommands)
72 
73 for e in [pA_2016, peripheralPbPb, pp_on_AA_2018, pp_on_XeXe_2017, ppRef_2017]:
74  e.toModify( RecoEcalRECO.outputCommands,
75  func=lambda outputCommands: outputCommands.extend(['keep recoCaloClusters_islandBasicClusters_*_*'])
76  )
77 
78 # Full Event content
79 RecoEcalFEVT = cms.PSet(
80  outputCommands = cms.untracked.vstring(
81  # Hits
82  'keep *_reducedEcalRecHitsEB_*_*',
83  'keep *_reducedEcalRecHitsEE_*_*',
84  'keep *_reducedEcalRecHitsES_*_*',
85  'keep *_interestingEcalDetId*_*_*',
86  'keep *_ecalWeightUncalibRecHit_*_*',
87  'keep *_ecalPreshowerRecHit_*_*',
88  # Barrel clusters
89  'keep *_correctedHybridSuperClusters_*_*',
90  # Endcap clusters
91  'keep *_multi5x5*_*_*')
92 )
93 RecoEcalFEVT.outputCommands.extend(RecoEcalRECO.outputCommands)