Skip to content

Commit

Permalink
Rebasing and adding test config for ExHume generator for Run3
Browse files Browse the repository at this point in the history
  • Loading branch information
mundim committed Jul 10, 2020
1 parent 772d5d1 commit 6fcff41
Show file tree
Hide file tree
Showing 4 changed files with 334 additions and 1 deletion.
4 changes: 3 additions & 1 deletion SimPPS/Configuration/test/gluglu_step1_GEN_SIM_2017.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@

process.RandomNumberGeneratorService.generator.initialSeed = cms.untracked.uint32(random.randint(0,900000000))

nEvent_ = 100
nEvent_ = 1000
process.maxEvents = cms.untracked.PSet(
input = cms.untracked.int32(nEvent_)
)
Expand All @@ -41,6 +41,7 @@
process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase1_2017_realistic', '')

# beam optics
"""
process.CondDB.connect = 'frontier://FrontierProd/CMS_CONDITIONS'
process.PoolDBESSource = cms.ESSource("PoolDBESSource",
process.CondDB
Expand All @@ -61,6 +62,7 @@
#)
#)
)
"""


process.generator = cms.EDFilter("ExhumeGeneratorFilter",
Expand Down
108 changes: 108 additions & 0 deletions SimPPS/Configuration/test/gluglu_step1_GEN_SIM_2021.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
import FWCore.ParameterSet.Config as cms

import random
import math

from Configuration.StandardSequences.Eras import eras
process = cms.Process('SIM',eras.Run3)

# import of standard configurations
process.load("CondCore.CondDB.CondDB_cfi")
process.load('Configuration.StandardSequences.Services_cff')
process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi')
process.load('FWCore.MessageService.MessageLogger_cfi')
process.load('Configuration.EventContent.EventContent_cff')
process.load('Configuration.StandardSequences.MagneticField_cff')
process.load('Configuration.StandardSequences.Generator_cff')
process.load('IOMC.EventVertexGenerators.VtxSmearedHLLHC14TeV_cfi')
process.load('GeneratorInterface.Core.genFilterSummary_cff')
process.load('Configuration.StandardSequences.SimIdeal_cff')
process.load('Configuration.StandardSequences.EndOfProcess_cff')
process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')

process.load('Configuration.Geometry.GeometryExtended2021_cff')

process.RandomNumberGeneratorService.generator.initialSeed = cms.untracked.uint32(random.randint(0,900000000))

nEvent_ = 1000
process.maxEvents = cms.untracked.PSet(
input = cms.untracked.int32(nEvent_)
)

process.source = cms.Source("EmptySource")
"""
process.source = cms.Source("EmptySource",
firstRun = cms.untracked.uint32(324612), #2018D
firstTime = cms.untracked.uint64(6612348794983940096)
)
"""
from Configuration.AlCa.GlobalTag import GlobalTag
process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase1_2021_realistic', '')
#process.GlobalTag = GlobalTag(process.GlobalTag, "106X_dataRun2_v26")

# generator


process.generator = cms.EDFilter("ExhumeGeneratorFilter",
ExhumeParameters = cms.PSet(
AlphaEw = cms.double(0.0072974),
B = cms.double(4.0),
BottomMass = cms.double(4.6),
CharmMass = cms.double(1.42),
HiggsMass = cms.double(120.0),
HiggsVev = cms.double(246.0),
LambdaQCD = cms.double(80.0),
MinQt2 = cms.double(0.64),
MuonMass = cms.double(0.1057),
PDF = cms.double(11000),
Rg = cms.double(1.2),
StrangeMass = cms.double(0.19),
Survive = cms.double(0.03),
TauMass = cms.double(1.77),
TopMass = cms.double(175.0),
WMass = cms.double(80.33),
ZMass = cms.double(91.187)
),
ExhumeProcess = cms.PSet(
MassRangeHigh = cms.double(2000.0),
MassRangeLow = cms.double(300.0),
ProcessType = cms.string('GG'),
ThetaMin = cms.double(0.3)
),
PythiaParameters = cms.PSet(
parameterSets = cms.vstring()
),
comEnergy = cms.double(13000.0),
maxEventsToPrint = cms.untracked.int32(2),
pythiaHepMCVerbosity = cms.untracked.bool(False),
pythiaPylistVerbosity = cms.untracked.int32(1)
)

# Production Info
process.configurationMetadata = cms.untracked.PSet(
annotation = cms.untracked.string('GluGluTo2Jets_M_100_7TeV_exhume_cff.py nevts:1'),
name = cms.untracked.string('Applications'),
version = cms.untracked.string('$Revision: 1.19 $')
)


process.ProductionFilterSequence = cms.Sequence(process.generator)

############
process.o1 = cms.OutputModule("PoolOutputModule",
outputCommands = cms.untracked.vstring('keep *'),
fileName = cms.untracked.string('GluGlu_step1_GEN_SIM_2021.root')
)

process.generation_step = cms.Path(process.pgen)
process.simulation_step = cms.Path(process.psim)


process.genfiltersummary_step = cms.EndPath(process.genFilterSummary)
process.outpath = cms.EndPath(process.o1)
process.schedule = cms.Schedule(process.generation_step,process.genfiltersummary_step,process.simulation_step,process.outpath)

# filter all path with the production filter sequence
for path in process.paths:
getattr(process,path)._seq = process.ProductionFilterSequence * getattr(process,path)._seq

122 changes: 122 additions & 0 deletions SimPPS/Configuration/test/gluglu_step2_DIGI_DIGI2RAW_2021.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
# Auto generated configuration file
# using:
# Revision: 1.19
# Source: /local/reps/CMSSW/CMSSW/Configuration/Applications/python/ConfigBuilder.py,v
import FWCore.ParameterSet.Config as cms

from Configuration.StandardSequences.Eras import eras
process = cms.Process('DIGI2RAW',eras.Run3)

# import of standard configurations
process.load("CondCore.CondDB.CondDB_cfi")
process.load('Configuration.StandardSequences.Services_cff')
process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi')
process.load('FWCore.MessageService.MessageLogger_cfi')
process.load('Configuration.EventContent.EventContent_cff')
process.load('Configuration.StandardSequences.MagneticField_cff')
process.load('SimGeneral.MixingModule.mixNoPU_cfi')
process.load('Configuration.StandardSequences.Digi_cff')
process.load('Configuration.StandardSequences.SimL1Emulator_cff')
process.load('Configuration.StandardSequences.DigiToRaw_cff')
process.load('Configuration.StandardSequences.EndOfProcess_cff')
process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')

# Since the PPS simulation geometry is not yet in the database, the line below is needed
process.load('Configuration.StandardSequences.GeometryDB_cff')
#process.load("Geometry.VeryForwardGeometry.geometryPPS_CMSxz_fromDD_2021_cfi")
process.load("Geometry.VeryForwardGeometry.geometryRPFromDB_cfi")

process.GlobalTag.toGet = cms.VPSet(
cms.PSet(
record = cms.string('CTPPSPixelGainCalibrationsRcd'),
tag = cms.string("CTPPSPixelGainCalibrations_v1_mc"),
connect = cms.string('frontier://FrontierProd/CMS_CONDITIONS')
),
cms.PSet(
record = cms.string('CTPPSPixelAnalysisMaskRcd'),
tag = cms.string("CTPPSPixelAnalysisMask_v1_mc"),
label = cms.untracked.string(""),
connect = cms.string('frontier://FrontierProd/CMS_CONDITIONS')
),
cms.PSet(
record = cms.string('CTPPSPixelDAQMappingRcd'),
tag = cms.string("CTPPSPixelDAQMapping_v1_mc"),
connect = cms.string('frontier://FrontierProd/CMS_CONDITIONS')
)
)
# Input source
process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(-1))
process.source = cms.Source("PoolSource",
skipEvents=cms.untracked.uint32(0),
dropDescendantsOfDroppedBranches = cms.untracked.bool(False),
fileNames = cms.untracked.vstring('file:GluGlu_step1_GEN_SIM_2021.root'),
inputCommands = cms.untracked.vstring('keep *',
'drop *_genParticles_*_*',
'drop *_genParticlesForJets_*_*',
'drop *_kt4GenJets_*_*',
'drop *_kt6GenJets_*_*',
'drop *_iterativeCone5GenJets_*_*',
'drop *_ak4GenJets_*_*',
'drop *_ak7GenJets_*_*',
'drop *_ak8GenJets_*_*',
'drop *_ak4GenJetsNoNu_*_*',
'drop *_ak8GenJetsNoNu_*_*',
'drop *_genCandidatesForMET_*_*',
'drop *_genParticlesForMETAllVisible_*_*',
'drop *_genMetCalo_*_*',
'drop *_genMetCaloAndNonPrompt_*_*',
'drop *_genMetTrue_*_*',
'drop *_genMetIC5GenJs_*_*'),
secondaryFileNames = cms.untracked.vstring()
)

process.options = cms.untracked.PSet(
SkipEvent = cms.untracked.vstring('ProductNotFound')
)

# Production Info
process.configurationMetadata = cms.untracked.PSet(
annotation = cms.untracked.string('step2 nevts:10'),
name = cms.untracked.string('Applications'),
version = cms.untracked.string('$Revision: 1.19 $')
)

# Output definition
process.FEVTDEBUGoutput = cms.OutputModule("PoolOutputModule",
dataset = cms.untracked.PSet(
dataTier = cms.untracked.string('GEN-SIM-DIGI-RAW'),
filterName = cms.untracked.string('')
),
eventAutoFlushCompressedSize = cms.untracked.int32(5242880),
fileName = cms.untracked.string('GluGlu_step2_DIGI_DIGI2RAW2021.root'),
outputCommands = process.FEVTDEBUGEventContent.outputCommands + ['keep *_CTPPS*_*_*',"keep *_*RP*_*_*",'keep *_LHCTransport_*_*'],
splitLevel = cms.untracked.int32(0)
)

# Additional output definition

# Other statements
from Configuration.AlCa.GlobalTag import GlobalTag
#process.GlobalTag = GlobalTag(process.GlobalTag, '111X_mcRun3_2021_realistic_Candidate_2020_06_03_17_55_10', '')
process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase1_2021_realistic', '')


# Path and EndPath definitions
process.digitisation_step = cms.Path(process.pdigi)
process.L1simulation_step = cms.Path(process.SimL1Emulator)
process.digi2raw_step = cms.Path(process.DigiToRaw)
process.endjob_step = cms.EndPath(process.endOfProcess)
process.FEVTDEBUGoutput_step = cms.EndPath(process.FEVTDEBUGoutput)
# Schedule definition
process.schedule = cms.Schedule(process.digitisation_step,process.L1simulation_step,process.digi2raw_step)
process.schedule.extend([process.endjob_step,process.FEVTDEBUGoutput_step])

from PhysicsTools.PatAlgos.tools.helpers import associatePatAlgosToolsTask
associatePatAlgosToolsTask(process)

# Customisation from command line

# Add early deletion of temporary data products to reduce peak memory need
from Configuration.StandardSequences.earlyDeleteSettings_cff import customiseEarlyDelete
process = customiseEarlyDelete(process)
# End adding early deletion
101 changes: 101 additions & 0 deletions SimPPS/Configuration/test/gluglu_step3_RAW2DIGI_L1Reco_RECO_2021.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
# Auto generated configuration file
# using:
# Revision: 1.19
import FWCore.ParameterSet.Config as cms

from Configuration.StandardSequences.Eras import eras
process = cms.Process('RECO',eras.Run3)

# import of standard configurations
process.load('Configuration.StandardSequences.Services_cff')
process.load('FWCore.MessageService.MessageLogger_cfi')
process.load("Configuration.EventContent.EventContent_cff")
process.load('Configuration.StandardSequences.MagneticField_cff')
process.load('Configuration.StandardSequences.EndOfProcess_cff')
process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
process.load('Configuration.StandardSequences.GeometryDB_cff')
process.load("Geometry.VeryForwardGeometry.geometryRPFromDB_cfi")
#process.load("Geometry.VeryForwardGeometry.geometryPPS_CMSxz_fromDD_2021_cfi") # CMS frame


process.maxEvents = cms.untracked.PSet(
input = cms.untracked.int32(-1)
)

process.source = cms.Source("EmptyIOVSource",
timetype = cms.string('runnumber'),
firstValue = cms.uint64(1),
lastValue = cms.uint64(1),
interval = cms.uint64(1)
)

# Input source
process.source = cms.Source("PoolSource",
fileNames = cms.untracked.vstring('file:GluGlu_step2_DIGI_DIGI2RAW2021.root'),
secondaryFileNames = cms.untracked.vstring()
)

# Track memory leaks
process.SimpleMemoryCheck = cms.Service("SimpleMemoryCheck",ignoreTotal = cms.untracked.int32(1) )

process.options = cms.untracked.PSet(
SkipEvent = cms.untracked.vstring('ProductNotFound')
)

# Output definition

process.output = cms.OutputModule("PoolOutputModule",
fileName = cms.untracked.string('GluGlu_step3_RAW2DIGI_RECO2021.root'),
outputCommands = cms.untracked.vstring("drop *","keep SimVertexs_g4SimHits_*_*","keep PSimHits*_*_*_*","keep CTPPS*_*_*_*","keep *_*RP*_*_*",'keep *_LHCTransport_*_*')
)


# Additional output definition
# Other statements
from Configuration.AlCa.GlobalTag import GlobalTag
process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase1_2021_realistic', '')
process.GlobalTag.toGet = cms.VPSet(
cms.PSet(
record = cms.string('CTPPSPixelGainCalibrationsRcd'),
#tag = cms.string("CTPPSPixelGainCalibrations_mc"),
tag = cms.string("CTPPSPixelGainCalibrations_v1_mc"),
connect = cms.string('frontier://FrontierProd/CMS_CONDITIONS')
),
cms.PSet(
record = cms.string('CTPPSPixelAnalysisMaskRcd'),
tag = cms.string("CTPPSPixelAnalysisMask_v1_mc"),
label = cms.untracked.string(""),
connect = cms.string('frontier://FrontierProd/CMS_CONDITIONS')
),
cms.PSet(
record = cms.string('CTPPSPixelDAQMappingRcd'),
tag = cms.string("CTPPSPixelDAQMapping_v1_mc"),
connect = cms.string('frontier://FrontierProd/CMS_CONDITIONS')
)
)
# modify CTPPS 2018 raw-to-digi modules ONLY FOR PARTICLE GUN, TO AVOID RUN THIS FOR THE WHOLE CMS
process.load('Configuration.StandardSequences.RawToDigi_cff')

# do not make testID for simulation - keeping the frame
from EventFilter.CTPPSRawToDigi.totemRPRawToDigi_cfi import totemRPRawToDigi
totemRPRawToDigi.RawToDigi.testID = cms.uint32(1)

from RecoPPS.Local.totemRPLocalReconstruction_cff import totemRPLocalReconstruction
process.load('RecoPPS.Local.totemRPLocalReconstruction_cff')
from RecoPPS.Local.ctppsPixelLocalReconstruction_cff import ctppsPixelLocalReconstruction
process.load('RecoPPS.Local.ctppsPixelLocalReconstruction_cff')

# Path and EndPath definitions
process.raw2digi_step = cms.Path(process.ctppsRawToDigi)
process.reco_step = cms.Path(process.totemRPLocalReconstruction*process.ctppsPixelLocalReconstruction)
process.endjob_step = cms.EndPath(process.endOfProcess)
process.output_step = cms.EndPath(process.output)

# Schedule definition
process.schedule = cms.Schedule(process.raw2digi_step,process.reco_step,process.endjob_step,process.output_step)

# filter all path with the production filter sequence
for path in process.paths:
# getattr(process,path)._seq = process.ProductionFilterSequence * getattr(process,path)._seq
getattr(process,path)._seq = getattr(process,path)._seq

0 comments on commit 6fcff41

Please sign in to comment.