Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2022-02-18 08:23:39

0001 import FWCore.ParameterSet.Config as cms 
0002 
0003 from Configuration.Eras.Era_Phase2C9_cff import Phase2C9
0004 process = cms.Process('DIGI',Phase2C9)
0005 
0006 # import of standard configurations
0007 process.load('Configuration.StandardSequences.Services_cff')
0008 process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi')
0009 process.load('FWCore.MessageService.MessageLogger_cfi')
0010 process.load('Configuration.EventContent.EventContent_cff')
0011 process.load('SimGeneral.MixingModule.mixNoPU_cfi')
0012 process.load('Configuration.Geometry.GeometryExtended2026D49Reco_cff')
0013 process.load('Configuration.Geometry.GeometryExtended2026D49_cff')
0014 process.load('Configuration.StandardSequences.MagneticField_cff')
0015 process.load('Configuration.StandardSequences.Generator_cff')
0016 process.load('IOMC.EventVertexGenerators.VtxSmearedHLLHC14TeV_cfi')
0017 process.load('GeneratorInterface.Core.genFilterSummary_cff')
0018 process.load('Configuration.StandardSequences.SimIdeal_cff')
0019 process.load('Configuration.StandardSequences.Digi_cff')
0020 process.load('Configuration.StandardSequences.SimL1Emulator_cff')
0021 process.load('Configuration.StandardSequences.DigiToRaw_cff')
0022 process.load('Configuration.StandardSequences.EndOfProcess_cff')
0023 process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
0024 
0025 
0026 process.maxEvents = cms.untracked.PSet(
0027     input = cms.untracked.int32(5)
0028 )
0029 
0030 # Input source
0031 process.source = cms.Source("PoolSource",
0032        fileNames = cms.untracked.vstring('/store/mc/Phase2HLTTDRWinter20DIGI/SingleElectron_PT2to200/GEN-SIM-DIGI-RAW/PU200_110X_mcRun4_realistic_v3_ext2-v2/40000/00582F93-5A2A-5847-8162-D81EE503500F.root'),
0033        inputCommands=cms.untracked.vstring(
0034            'keep *',
0035            'drop l1tEMTFHit2016Extras_simEmtfDigis_CSC_HLT',
0036            'drop l1tEMTFHit2016Extras_simEmtfDigis_RPC_HLT',
0037            'drop l1tEMTFHit2016s_simEmtfDigis__HLT',
0038            'drop l1tEMTFTrack2016Extras_simEmtfDigis__HLT',
0039            'drop l1tEMTFTrack2016s_simEmtfDigis__HLT',
0040            )
0041        )
0042 
0043 process.options = cms.untracked.PSet(
0044 
0045 )
0046 
0047 # Production Info
0048 process.configurationMetadata = cms.untracked.PSet(
0049     version = cms.untracked.string('$Revision: 1.20 $'),
0050     annotation = cms.untracked.string('SingleElectronPt10_cfi nevts:10'),
0051     name = cms.untracked.string('Applications')
0052 )
0053 
0054 # Output definition
0055 process.TFileService = cms.Service(
0056     "TFileService",
0057     fileName = cms.string("ntuple.root")
0058     )
0059 
0060 # Other statements
0061 from Configuration.AlCa.GlobalTag import GlobalTag
0062 process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase2_realistic_T15', '')
0063 
0064 # load HGCAL TPG simulation
0065 process.load('L1Trigger.L1THGCal.hgcalTriggerPrimitives_cff')
0066 process.load('L1Trigger.L1THGCalUtilities.HGC3DClusterGenMatchSelector_cff')
0067 process.load('L1Trigger.L1THGCalUtilities.hgcalTriggerNtuples_cff')
0068 from L1Trigger.L1THGCalUtilities.hgcalTriggerChains import HGCalTriggerChains
0069 import L1Trigger.L1THGCalUtilities.vfe as vfe
0070 import L1Trigger.L1THGCalUtilities.concentrator as concentrator
0071 import L1Trigger.L1THGCalUtilities.clustering2d as clustering2d
0072 import L1Trigger.L1THGCalUtilities.clustering3d as clustering3d
0073 import L1Trigger.L1THGCalUtilities.selectors as selectors
0074 import L1Trigger.L1THGCalUtilities.customNtuples as ntuple
0075 
0076 
0077 chains = HGCalTriggerChains()
0078 # Register algorithms
0079 ## VFE
0080 chains.register_vfe("Floatingpoint", vfe.CreateVfe())
0081 ## ECON
0082 chains.register_concentrator("Supertriggercell", concentrator.CreateSuperTriggerCell())
0083 chains.register_concentrator("Threshold", concentrator.CreateThreshold())
0084 chains.register_concentrator("Bestchoice", concentrator.CreateBestChoice())
0085 chains.register_concentrator("AutoEncoder", concentrator.CreateAutoencoder())
0086 ## BE1
0087 chains.register_backend1("Dummy", clustering2d.CreateDummy())
0088 ## BE2
0089 chains.register_backend2("Histomax", clustering3d.CreateHistoMax())
0090 # Register selector
0091 chains.register_selector("Genmatch", selectors.CreateGenMatch())
0092 
0093 
0094 # Register ntuples
0095 ntuple_list = ['event', 'gen', 'multiclusters']
0096 chains.register_ntuple("Genclustersntuple", ntuple.CreateNtuple(ntuple_list))
0097 
0098 # Register trigger chains
0099 concentrator_algos = ['Supertriggercell', 'Threshold', 'Bestchoice', 'AutoEncoder']
0100 backend_algos = ['Histomax']
0101 ## Make cross product fo ECON and BE algos
0102 import itertools
0103 for cc,be in itertools.product(concentrator_algos,backend_algos):
0104     chains.register_chain('Floatingpoint', cc, 'Dummy', be, 'Genmatch', 'Genclustersntuple')
0105 
0106 process = chains.create_sequences(process)
0107 
0108 # Remove towers from sequence
0109 process.hgcalTriggerPrimitives.remove(process.hgcalTowerMap)
0110 process.hgcalTriggerPrimitives.remove(process.hgcalTower)
0111 
0112 process.hgcl1tpg_step = cms.Path(process.hgcalTriggerPrimitives)
0113 process.selector_step = cms.Path(process.hgcalTriggerSelector)
0114 process.ntuple_step = cms.Path(process.hgcalTriggerNtuples)
0115 
0116 # Schedule definition
0117 process.schedule = cms.Schedule(process.hgcl1tpg_step, process.selector_step, process.ntuple_step)
0118 
0119 # Add early deletion of temporary data products to reduce peak memory need
0120 from Configuration.StandardSequences.earlyDeleteSettings_cff import customiseEarlyDelete
0121 process = customiseEarlyDelete(process)
0122 # End adding early deletion
0123