/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Geometry/ForwardCommonData/test/g4OverlapCheckRun4_cfg.py
96 строк
4 KB
Sunanda
Adding test to evaluate the new forwardshield made by Sergio
07 мар 2026, 08:17
07 мар 2026, 08:17
a5559c2
Код
Авторство
О чём код?
############################################################################### # Way to use this: # cmsRun g4OverlapCheck_cfg.py type=D120 tol=0.01 resol=10000 # # Options for type D120, D122, D123, D124 # tol 1.0, 0.1, 0.01, 0.0 # resol 10000, 100000, 1000000 # ############################################################################### import FWCore.ParameterSet.Config as cms import os, sys, importlib, re import FWCore.ParameterSet.VarParsing as VarParsing #################################################################### ### SETUP OPTIONS options = VarParsing.VarParsing('standard') options.register('type', "D120", VarParsing.VarParsing.multiplicity.singleton, VarParsing.VarParsing.varType.string, "type of operations: D120, D122, D123, D124") options.register('tol', 0.01, VarParsing.VarParsing.multiplicity.singleton, VarParsing.VarParsing.varType.float, "Tolerance for checking overlaps: 0.0, 0.01, 0.1, 1.0") options.register('resol', 10000, VarParsing.VarParsing.multiplicity.singleton, VarParsing.VarParsing.varType.float, "Resolution for checking overlaps: 10000, 100000, 1000000") ### get and parse the command line arguments options.parseArguments() print(options) from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9 from Configuration.Eras.Modifier_phase2_hgcalOnly_cff import phase2_hgcalOnly process = cms.Process("OverlapCheck",Phase2C17I13M9) #################################################################### # Use the options geomFile = "Geometry.ForwardCommonData.cmsExtendedGeometryRun4" + options.type + "XML_cfi" outFile = "cms" + options.type + str(options.tol) resoluton = int(options.resol) print("Geometry file: ", geomFile) print("Output file: ", outFile) print("Resolution: ", resoluton) process.load('FWCore.MessageService.MessageLogger_cfi') process.load(geomFile) process.load('Geometry.TrackerNumberingBuilder.trackerNumberingGeometry_cff') process.load('SLHCUpgradeSimulations.Geometry.fakePhase2OuterTrackerConditions_cff') process.load('Geometry.EcalCommonData.ecalSimulationParameters_cff') process.load('Geometry.HcalCommonData.hcalDDDSimConstants_cff') process.load('Geometry.HGCalCommonData.hgcalParametersInitialization_cfi') process.load('Geometry.HGCalCommonData.hgcalNumberingInitialization_cfi') process.load('Geometry.MuonNumbering.muonGeometryConstants_cff') process.load('Geometry.MuonNumbering.muonOffsetESProducer_cff') process.load('Geometry.MTDNumberingBuilder.mtdNumberingGeometry_cff') if hasattr(process,'MessageLogger'): # process.MessageLogger.SimG4CoreGeometry=dict() process.MessageLogger.HGCalGeom=dict() process.MessageLogger.EcalGeom=dict() from SimG4Core.PrintGeomInfo.g4TestGeometry_cfi import * process = checkOverlap(process) # enable Geant4 overlap check process.g4SimHits.CheckGeometry = True # Geant4 geometry check process.g4SimHits.G4CheckOverlap.OutputBaseName = outFile process.g4SimHits.G4CheckOverlap.OverlapFlag = True process.g4SimHits.G4CheckOverlap.Tolerance = options.tol process.g4SimHits.G4CheckOverlap.Resolution = int(options.resol) process.g4SimHits.G4CheckOverlap.Depth = -1 # tells if NodeName is G4Region or G4PhysicalVolume process.g4SimHits.G4CheckOverlap.RegionFlag = False # list of names process.g4SimHits.G4CheckOverlap.NodeNames = ['OCMS'] # enable dump gdml file process.g4SimHits.G4CheckOverlap.gdmlFlag = False # if defined a G4PhysicsVolume info is printed process.g4SimHits.G4CheckOverlap.PVname = '' # if defined a list of daughter volumes is printed process.g4SimHits.G4CheckOverlap.LVname = '' # extra output files, created if a name is not empty process.g4SimHits.FileNameField = '' process.g4SimHits.FileNameGDML = '' process.g4SimHits.FileNameRegions = '' #