Skip to content

Commit

Permalink
Merge pull request cms-sw#41241 from bsunanda/Phase2-gex157D
Browse files Browse the repository at this point in the history
Phase2-gex157D Add new scripts to study material budgets for Phase2 geometries
  • Loading branch information
cmsbuild authored Apr 4, 2023
2 parents bbd0c32 + 03f9591 commit 77fef90
Show file tree
Hide file tree
Showing 5 changed files with 239 additions and 22 deletions.
77 changes: 77 additions & 0 deletions Validation/Geometry/test/runMaterialBudgetVolume2026DD4hep_cfg.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
###############################################################################
# Way to use this:
# cmsRun runMaterialBudgetVolume2026DD4hep_cfg.py geometry=D92
#
# Options for geometry D86, D88, D91, D92, D93, D94, D95, D96, D98, D99
#
###############################################################################
import FWCore.ParameterSet.Config as cms
import os, sys, imp, re
import FWCore.ParameterSet.VarParsing as VarParsing

####################################################################
### SETUP OPTIONS
options = VarParsing.VarParsing('standard')
options.register('geometry',
"D88",
VarParsing.VarParsing.multiplicity.singleton,
VarParsing.VarParsing.varType.string,
"geometry of operations: D86, D88, D91, D92, D93, D94, D95, D96, D98, D99")
### get and parse the command line arguments
options.parseArguments()

print(options)

####################################################################
# Use the options

from Configuration.ProcessModifiers.dd4hep_cff import dd4hep
if (options.geometry == "D94"):
from Configuration.Eras.Era_Phase2C20I13M9_cff import Phase2C20I13M9
process = cms.Process('MaterialBudgetVolume',Phase2C20I13M9,dd4hep)
else:
from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9
process = cms.Process('MaterialBudgetVolume',Phase2C17I13M9,dd4hep)

geomFile = "Configuration.Geometry.GeometryDD4hepExtended2026" + options.geometry + "Reco_cff"
fileName = "matbdg" + options.geometry + "DD4hep" + ".root"

print("Geometry file Name: ", geomFile)
print("Root file Name: ", fileName)

process.load(geomFile)
process.load("SimGeneral.HepPDTESSource.pythiapdt_cfi")
process.load("Configuration.StandardSequences.MagneticField_cff")
process.load("SimG4Core.Application.g4SimHits_cfi")
process.load("Validation.Geometry.materialBudgetVolume_cfi")

process.load("IOMC.RandomEngine.IOMC_cff")
process.RandomNumberGeneratorService.g4SimHits.initialSeed = 9876

process.load('FWCore.MessageService.MessageLogger_cfi')
process.MessageLogger.cerr.FwkReport.reportEvery = cms.untracked.int32(1000)
if hasattr(process,'MessageLogger'):
process.MessageLogger.MaterialBudget=dict()

process.source = cms.Source("PoolSource",
noEventSort = cms.untracked.bool(True),
duplicateCheckMode = cms.untracked.string("noDuplicateCheck"),
fileNames = cms.untracked.vstring('file:single_neutrino_random.root')
)

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

process.TFileService = cms.Service("TFileService",
fileName = cms.string(fileName)
)

process.g4SimHits.UseMagneticField = False
process.g4SimHits.Physics.type = 'SimG4Core/Physics/DummyPhysics'
process.g4SimHits.StackingAction.TrackNeutrino = True
process.g4SimHits.Physics.DummyEMPhysics = True
process.g4SimHits.Physics.CutsPerRegion = False

process.load("Validation.Geometry.materialBudgetVolumeAnalysis_cfi")
process.p1 = cms.Path(process.g4SimHits+process.materialBudgetVolumeAnalysis)
76 changes: 76 additions & 0 deletions Validation/Geometry/test/runMaterialBudgetVolume2026DDD_cfg.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
###############################################################################
# Way to use this:
# cmsRun runMaterialBudgetVolume2026DDD_cfg.py geometry=D92
#
# Options for geometry D86, D88, D91, D92, D93, D94, D95, D96, D98, D99
#
###############################################################################
import FWCore.ParameterSet.Config as cms
import os, sys, imp, re
import FWCore.ParameterSet.VarParsing as VarParsing

####################################################################
### SETUP OPTIONS
options = VarParsing.VarParsing('standard')
options.register('geometry',
"D88",
VarParsing.VarParsing.multiplicity.singleton,
VarParsing.VarParsing.varType.string,
"geometry of operations: D86, D88, D91, D92, D93, D94, D95, D96, D98, D99")
### get and parse the command line arguments
options.parseArguments()

print(options)

####################################################################
# Use the options

if (options.geometry == "D94"):
from Configuration.Eras.Era_Phase2C20I13M9_cff import Phase2C20I13M9
process = cms.Process('MaterialBudgetVolume',Phase2C20I13M9)
else:
from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9
process = cms.Process('MaterialBudgetVolume',Phase2C17I13M9)

geomFile = "Configuration.Geometry.GeometryExtended2026" + options.geometry + "Reco_cff"
fileName = "matbdg" + options.geometry + "DDD" + ".root"

print("Geometry file Name: ", geomFile)
print("Root file Name: ", fileName)

process.load(geomFile)
process.load("SimGeneral.HepPDTESSource.pythiapdt_cfi")
process.load("Configuration.StandardSequences.MagneticField_cff")
process.load("SimG4Core.Application.g4SimHits_cfi")
process.load("Validation.Geometry.materialBudgetVolume_cfi")

process.load("IOMC.RandomEngine.IOMC_cff")
process.RandomNumberGeneratorService.g4SimHits.initialSeed = 9876

process.load('FWCore.MessageService.MessageLogger_cfi')
process.MessageLogger.cerr.FwkReport.reportEvery = cms.untracked.int32(1000)
if hasattr(process,'MessageLogger'):
process.MessageLogger.MaterialBudget=dict()

process.source = cms.Source("PoolSource",
noEventSort = cms.untracked.bool(True),
duplicateCheckMode = cms.untracked.string("noDuplicateCheck"),
fileNames = cms.untracked.vstring('file:single_neutrino_random.root')
)

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

process.TFileService = cms.Service("TFileService",
fileName = cms.string(fileName)
)

process.g4SimHits.UseMagneticField = False
process.g4SimHits.Physics.type = 'SimG4Core/Physics/DummyPhysics'
process.g4SimHits.StackingAction.TrackNeutrino = True
process.g4SimHits.Physics.DummyEMPhysics = True
process.g4SimHits.Physics.CutsPerRegion = False

process.load("Validation.Geometry.materialBudgetVolumeAnalysis_cfi")
process.p1 = cms.Path(process.g4SimHits+process.materialBudgetVolumeAnalysis)
51 changes: 43 additions & 8 deletions Validation/Geometry/test/runMaterialBudgetVolumeDB_cfg.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,51 @@
###############################################################################
# Way to use this:
# cmsRun runMaterialBudgetVolumeDB_cfg.py type=DDD
#
# Options for type DDD, DD4hep
#
###############################################################################
import FWCore.ParameterSet.Config as cms
import os, sys, imp, re
import FWCore.ParameterSet.VarParsing as VarParsing

####################################################################
### SETUP OPTIONS
options = VarParsing.VarParsing('standard')
options.register('type',
"DDD",
VarParsing.VarParsing.multiplicity.singleton,
VarParsing.VarParsing.varType.string,
"geometry of operations: DDD, DD4hep")
### get and parse the command line arguments
options.parseArguments()

print(options)

####################################################################
# Use the options

import FWCore.ParameterSet.Config as cms

if (options.type == "DDD"):
from Configuration.Eras.Era_Run3_DDD_cff import Run3_DDD
process = cms.Process('PROD',Run3_DDD)
fileName = "matbdgRun3dddDB.root"
else:
from Configuration.Eras.Era_Run3_dd4hep_cff import Run3_dd4hep
process = cms.Process('PROD',Run3_dd4hep)
fileName = "matbdgRun3ddhepDB.root"

print("Root file Name: ", fileName)

from Configuration.Eras.Era_Run3_cff import Run3
process = cms.Process('PROD',Run3)
#from Configuration.Eras.Era_Run3_dd4hep_cff import Run3_dd4hep
#process = cms.Process('PROD',Run3_dd4hep)
process.load('Configuration.StandardSequences.GeometryRecoDB_cff')
process.load('Configuration.StandardSequences.GeometrySimDB_cff')
process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
from Configuration.AlCa.GlobalTag import GlobalTag
process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase1_2022_realistic', '')
#process.GlobalTag = GlobalTag(process.GlobalTag, '120X_mcRun3_2021_realistic_dd4hep_v1', '')
if (options.type == "DDD"):
process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase1_2022_realistic', '')
else:
process.GlobalTag = GlobalTag(process.GlobalTag, '120X_mcRun3_2021_realistic_dd4hep_v1', '')

process.load("SimGeneral.HepPDTESSource.pythiapdt_cfi")
process.load("Configuration.StandardSequences.MagneticField_cff")
Expand All @@ -35,8 +71,7 @@
)

process.TFileService = cms.Service("TFileService",
fileName = cms.string('matbdgRun3dddDB.root')
# fileName = cms.string('matbdgRun3dd4hepDB.root')
fileName = cms.string(fileName)
)

process.g4SimHits.UseMagneticField = False
Expand Down
55 changes: 42 additions & 13 deletions Validation/Geometry/test/runMaterialBudgetVolumeXML_cfg.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,47 @@
###############################################################################
# Way to use this:
# cmsRun runMaterialBudgetVolumeXML_cfg.py type=DDD
#
# Options for type DDD, DD4hep
#
###############################################################################
import FWCore.ParameterSet.Config as cms
import os, sys, imp, re
import FWCore.ParameterSet.VarParsing as VarParsing

from Configuration.Eras.Era_Run3_DDD_cff import Run3_DDD
process = cms.Process('PROD',Run3_DDD)
process.load("Configuration.Geometry.GeometryExtended2021Reco_cff")
#from Configuration.Eras.Era_Run3_dd4hep_cff import Run3_dd4hep
#process = cms.Process('PROD',Run3_dd4hep)
#process.load("Configuration.Geometry.GeometryDD4hepExtended2021Reco_cff")
#from Configuration.Eras.Era_Phase2C11_cff import Phase2C11
#process = cms.Process('PROD',Phase2C11)
#process.load("Configuration.Geometry.GeometryExtended2026D77Reco_cff")
####################################################################
### SETUP OPTIONS
options = VarParsing.VarParsing('standard')
options.register('type',
"DDD",
VarParsing.VarParsing.multiplicity.singleton,
VarParsing.VarParsing.varType.string,
"geometry of operations: DDD, DD4hep")
### get and parse the command line arguments
options.parseArguments()

print(options)

####################################################################
# Use the options

import FWCore.ParameterSet.Config as cms

if (options.type == "DDD"):
from Configuration.Eras.Era_Run3_DDD_cff import Run3_DDD
process = cms.Process('PROD',Run3_DDD)
geomFile = "Configuration.Geometry.GeometryExtended2021Reco_cff"
fileName = "matbdgRun3dddXML.root"
else:
from Configuration.Eras.Era_Run3_dd4hep_cff import Run3_dd4hep
process = cms.Process('PROD',Run3_dd4hep)
geomFile = "Configuration.Geometry.GeometryDD4hepExtended2021Reco_cff"
fileName = "matbdgRun3ddhepXML.root"

print("Geometry file Name: ", geomFile)
print("Root file Name: ", fileName)

process.load(geomFile)
process.load("SimGeneral.HepPDTESSource.pythiapdt_cfi")
process.load("Configuration.StandardSequences.MagneticField_cff")
process.load("SimG4Core.Application.g4SimHits_cfi")
Expand All @@ -34,10 +66,7 @@
)

process.TFileService = cms.Service("TFileService",
fileName = cms.string('matbdgRun3dddXML.root')
# fileName = cms.string('matbdgRun3dd4hepXML.root')
# fileName = cms.string('matbdgPhase2XML.root')
)
fileName = cms.string(fileName))

process.g4SimHits.UseMagneticField = False
process.g4SimHits.Physics.type = 'SimG4Core/Physics/DummyPhysics'
Expand Down
2 changes: 1 addition & 1 deletion Validation/Geometry/test/single_neutrino_cfg.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# cmsRun single_neutrino_cfg.py nEvents=1000
# cmsRun single_neutrino_cfg.py nEvents=100000

import FWCore.ParameterSet.Config as cms
from FWCore.ParameterSet.VarParsing import VarParsing
Expand Down

0 comments on commit 77fef90

Please sign in to comment.