CMS 3D CMS Logo

testHGCalSimSingleMuonPt100_cfg.py
Go to the documentation of this file.
1 
8 import FWCore.ParameterSet.Config as cms
9 import os, sys, imp, re, random
10 import FWCore.ParameterSet.VarParsing as VarParsing
11 
12 
14 options = VarParsing.VarParsing('standard')
15 options.register('geometry',
16  "D92",
17  VarParsing.VarParsing.multiplicity.singleton,
18  VarParsing.VarParsing.varType.string,
19  "geometry of operations: D88, D92, D93")
20 
21 
22 options.parseArguments()
23 
24 print(options)
25 
26 
28 
29 from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9
30 process = cms.Process('SingleMuonSim',Phase2C17I13M9)
31 
32 geomFile = "Configuration.Geometry.GeometryExtended2026" + options.geometry + "Reco_cff"
33 globalTag = "auto:phase2_realistic_T21"
34 outFile = "file:step1" + options.geometry + "mu.root"
35 
36 print("Geometry file: ", geomFile)
37 print("Global Tag: ", globalTag)
38 print("Output file: ", outFile)
39 
40 # import of standard configurations
41 process.load(geomFile)
42 process.load('Configuration.StandardSequences.Services_cff')
43 process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi')
44 process.load('FWCore.MessageService.MessageLogger_cfi')
45 process.load('Configuration.EventContent.EventContent_cff')
46 process.load('SimGeneral.MixingModule.mixNoPU_cfi')
47 process.load('Configuration.StandardSequences.MagneticField_cff')
48 process.load('Configuration.StandardSequences.Generator_cff')
49 process.load('IOMC.EventVertexGenerators.VtxSmearedRealistic50ns13TeVCollision_cfi')
50 process.load('GeneratorInterface.Core.genFilterSummary_cff')
51 process.load('Configuration.StandardSequences.SimIdeal_cff')
52 process.load('Configuration.StandardSequences.EndOfProcess_cff')
53 process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
54 process.load('Configuration.StandardSequences.EndOfProcess_cff')
55 process.load('SimG4CMS.Calo.hgcalHitPartial_cff')
56 process.load("IOMC.RandomEngine.IOMC_cff")
57 
58 rndm = random.randint(0,200000)
59 process.RandomNumberGeneratorService.generator.initialSeed = rndm
60 print("Processing with random number seed: ", rndm)
61 
62 process.maxEvents = cms.untracked.PSet(
63  input = cms.untracked.int32(1000)
64 )
65 
66 process.MessageLogger.cerr.FwkReport.reportEvery = 1
67 #if hasattr(process,'MessageLogger'):
68 # process.MessageLogger.ValidHGCal=dict()
69 # process.MessageLogger.HGCalGeom=dict()
70 # process.MessageLogger.HGCalSim=dict()
71 
72 # Input source
73 process.source = cms.Source("EmptySource")
74 
75 process.options = cms.untracked.PSet(
76  wantSummary = cms.untracked.bool(True),
77  numberOfConcurrentRuns = cms.untracked.uint32(1),
78  numberOfStreams = cms.untracked.uint32(0),
79  numberOfThreads = cms.untracked.uint32(1),
80  printDependencies = cms.untracked.bool(False),
81  sizeOfStackForThreadsInKB = cms.optional.untracked.uint32,
82 )
83 
84 # Production Info
85 process.configurationMetadata = cms.untracked.PSet(
86  version = cms.untracked.string(''),
87  annotation = cms.untracked.string(''),
88  name = cms.untracked.string('Applications')
89 )
90 
91 # Output definition
92 process.output = cms.OutputModule("PoolOutputModule",
93  SelectEvents = cms.untracked.PSet(
94  SelectEvents = cms.vstring('generation_step')
95  ),
96  dataset = cms.untracked.PSet(
97  filterName = cms.untracked.string(''),
98  dataTier = cms.untracked.string('GEN-SIM-DIGI-RAW-RECO')
99  ),
100  fileName = cms.untracked.string(outFile),
101  outputCommands = process.FEVTDEBUGEventContent.outputCommands,
102  eventAutoFlushCompressedSize = cms.untracked.int32(5242880),
103  splitLevel = cms.untracked.int32(0)
104 )
105 
106 # Additional output definition
107 
108 # Other statements
109 process.genstepfilter.triggerConditions=cms.vstring("generation_step")
110 from Configuration.AlCa.GlobalTag import GlobalTag
111 process.GlobalTag = GlobalTag(process.GlobalTag, globalTag, '')
112 
113 process.generator = cms.EDFilter("Pythia8PtGun",
114  PGunParameters = cms.PSet(
115  MaxPt = cms.double(100.01),
116  MinPt = cms.double(99.99),
117  ParticleID = cms.vint32(-13),
118  AddAntiParticle = cms.bool(True),
119  MaxEta = cms.double(3.1),
120  MaxPhi = cms.double(3.14159265359),
121  MinEta = cms.double(2.8),
122  MinPhi = cms.double(-3.14159265359)
123  ),
124  Verbosity = cms.untracked.int32(0),
125  psethack = cms.string('single mu pt 100'),
126  firstRun = cms.untracked.uint32(1),
127  PythiaParameters = cms.PSet(parameterSets = cms.vstring())
128 )
129 
130 
131 #Modified to produce hgceedigis
132 process.ProductionFilterSequence = cms.Sequence(process.generator)
133 
134 # Path and EndPath definitions
135 process.generation_step = cms.Path(process.pgen)
136 process.simulation_step = cms.Path(process.psim)
137 process.genfiltersummary_step = cms.EndPath(process.genFilterSummary)
138 process.endjob_step = cms.EndPath(process.endOfProcess)
139 process.analysis_step = cms.Path(process.hgcalHitPartialEE+process.hgcalHitPartialHE)
140 process.out_step = cms.EndPath(process.output)
141 
142 # Schedule definition
143 process.schedule = cms.Schedule(process.generation_step,
144  process.genfiltersummary_step,
145  process.simulation_step,
146  process.endjob_step,
147  process.analysis_step,
148  process.out_step
149  )
150 
151 from PhysicsTools.PatAlgos.tools.helpers import associatePatAlgosToolsTask
153 # filter all path with the production filter sequence
154 for path in process.paths:
155  getattr(process,path).insert(0, process.ProductionFilterSequence)
156 
157 
158 # Customisation from command line
159 
160 # Add early deletion of temporary data products to reduce peak memory need
161 from Configuration.StandardSequences.earlyDeleteSettings_cff import customiseEarlyDelete
162 process = customiseEarlyDelete(process)
163 # End adding early deletion
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47
bool insert(Storage &iStorage, ItemType *iItem, const IdTag &iIdTag)
Definition: HCMethods.h:50
def associatePatAlgosToolsTask(process)
Definition: helpers.py:24