/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Geometry/MuonCommonData/test/python/g4OverlapCheckMuon_cfg.py
81 строка
3 KB
Sunanda
Modify some of the overlap scripts to test overlaps in the new muon scenarios
26 фев 2025, 07:49
26 фев 2025, 07:49
08656c9
Код
Авторство
О чём код?
############################################################################### # Way to use this: # cmsRun g4OverlapCheckMuon_cfg.py geometry=2025 tol=0.1 # # Options for geometry 2022, 2023, 2024, 2025 # for tol 0.0, 0.01, 0.1, 1.0 # ############################################################################### 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('geometry', "2022", VarParsing.VarParsing.multiplicity.singleton, VarParsing.VarParsing.varType.string, "geometry of operations: 2022, 2023, 2024, 2025") 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" ) ### get and parse the command line arguments options.parseArguments() print(options) #################################################################### # Use the options geomName = "Geometry.MuonCommonData.muonIdealGeometry" + options.geometry + "XML_cfi" baseName = "muonIdealGeometry" + options.geometry + str(options.tol) print("Geometry file: ", geomName) print("Base name: ", baseName) from Configuration.Eras.Era_Run3_DDD_cff import Run3_DDD process = cms.Process('OverlapCheck',Run3_DDD) process.load(geomName) process.load("Geometry.MuonNumbering.muonGeometryConstants_cff") process.load("Geometry.MuonNumbering.muonOffsetESProducer_cff") process.load('FWCore.MessageService.MessageLogger_cfi') from SimG4Core.PrintGeomInfo.g4TestGeometry_cfi import * process = checkOverlap(process) process.g4SimHits.OnlySDs = ['MuonSensitiveDetector'] process.g4SimHits.TrackHits = ['MuonCSCHits','MuonDTHits','MuonGEMHits','MuonME0Hits','MuonRPCHits'] process.g4SimHits.CaloHits = [] #process.MessageLogger.SimG4CoreGeometry=dict() # enable Geant4 overlap check process.g4SimHits.CheckGeometry = True # Geant4 geometry check process.g4SimHits.G4CheckOverlap.OutputBaseName = cms.string(baseName) process.g4SimHits.G4CheckOverlap.OverlapFlag = cms.bool(True) process.g4SimHits.G4CheckOverlap.Tolerance = cms.double(options.tol) process.g4SimHits.G4CheckOverlap.Resolution = cms.int32(10000) process.g4SimHits.G4CheckOverlap.Depth = cms.int32(-1) # tells if NodeName is G4Region or G4PhysicalVolume process.g4SimHits.G4CheckOverlap.RegionFlag = cms.bool(False) # list of names process.g4SimHits.G4CheckOverlap.NodeNames = cms.vstring('OCMS') # enable dump gdml file process.g4SimHits.G4CheckOverlap.gdmlFlag = cms.bool(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 = '' #