diff --git a/Configuration/Geometry/README.md b/Configuration/Geometry/README.md
index c8925fc8904d1..f805801d0351e 100644
--- a/Configuration/Geometry/README.md
+++ b/Configuration/Geometry/README.md
@@ -120,6 +120,7 @@ Muon system:
* M14: Phase2 muon system for TDR w/ GE2/1, GE0, RE3/1, RE4/1 (incl. granularity in ME0, staggered GE2/1), 96 iRPC strips; no overlaps, MB4Shields with right value for YE3 size and Shield structure modified in muonYoke, changed number of strips and corrected eta partition size for GE21, a realistic support structure for GE0 and adjustment for boundaries, right front-back relation between alternate phi segments
* M15: same as M14 but removing overlaps in yoke, MB3, GE0 + adding DT shield
* M16: same as M15 with reverting RPC endcap disk4 rotation
+* M17: same as M15 with the correct shape of GE0
Fast Timing system:
* I17: Fast Timing detector (LYSO barrel (bars along phi flat), silicon endcap), w/ passive materials, material adjustments, new ETL layout from post MTD TDR (2 sectors per disc face), updated sensor structure, disc z location and passive materials, addition of notch and revision of envelope, revised BTL with complete passive material description, BTL with one crystal thickness (type) only, ETL with LGAD split into two sensors
@@ -149,3 +150,4 @@ Several detector combinations have been generated:
* D123 = T35+C28+M16+I18+O11+F9
* D124 = T35+C25+M16+I21+O10+F9
* D125 = T35+C25+M16+I22+O10+F9
+* D126 = T37+C27+M17+I21+O10+F9
\ No newline at end of file
diff --git a/Configuration/Geometry/python/GeometryDD4hepExtendedRun4D126Reco_cff.py b/Configuration/Geometry/python/GeometryDD4hepExtendedRun4D126Reco_cff.py
new file mode 100644
index 0000000000000..2acabc8f0269a
--- /dev/null
+++ b/Configuration/Geometry/python/GeometryDD4hepExtendedRun4D126Reco_cff.py
@@ -0,0 +1,61 @@
+import FWCore.ParameterSet.Config as cms
+
+# This config was generated automatically using generateRun4Geometry.py
+# If you notice a mistake, please update the generating script, not just this config
+
+from Configuration.Geometry.GeometryDD4hepExtendedRun4D126_cff import *
+
+# tracker
+from Geometry.CommonTopologies.globalTrackingGeometry_cfi import *
+from RecoTracker.GeometryESProducer.TrackerRecoGeometryESProducer_cfi import *
+from Geometry.TrackerGeometryBuilder.TrackerAdditionalParametersPerDet_cfi import *
+from Geometry.TrackerGeometryBuilder.trackerParameters_cff import *
+from Geometry.TrackerNumberingBuilder.trackerTopology_cfi import *
+from Geometry.TrackerGeometryBuilder.idealForDigiTrackerGeometry_cff import *
+trackerGeometry.applyAlignment = True
+
+# calo
+from Geometry.CaloEventSetup.HGCalTopology_cfi import *
+from Geometry.HGCalGeometry.hgcalGeometryESProducer_cff import *
+from Geometry.CaloEventSetup.CaloTopology_cfi import *
+from Geometry.CaloEventSetup.CaloGeometryBuilder_cfi import *
+CaloGeometryBuilder = cms.ESProducer("CaloGeometryBuilder",
+ SelectedCalos = cms.vstring("HCAL",
+ "ZDC",
+ "EcalBarrel",
+ "TOWER",
+ "HGCalEESensitive",
+ "HGCalHESiliconSensitive",
+ "HGCalHEScintillatorSensitive"
+ )
+)
+from Geometry.EcalAlgo.EcalBarrelGeometry_cfi import *
+from Geometry.HcalEventSetup.HcalGeometry_cfi import *
+from Geometry.HcalEventSetup.CaloTowerGeometry_cfi import *
+from Geometry.HcalEventSetup.CaloTowerTopology_cfi import *
+from Geometry.HcalCommonData.hcalDDDRecConstants_cfi import *
+from Geometry.HcalEventSetup.hcalTopologyIdeal_cfi import *
+from Geometry.CaloEventSetup.EcalTrigTowerConstituents_cfi import *
+from Geometry.EcalMapping.EcalMapping_cfi import *
+from Geometry.EcalMapping.EcalMappingRecord_cfi import *
+
+# muon
+from Geometry.MuonNumbering.muonNumberingInitialization_cfi import *
+from RecoMuon.DetLayers.muonDetLayerGeometry_cfi import *
+from Geometry.GEMGeometryBuilder.gemGeometry_cff import *
+from Geometry.CSCGeometryBuilder.idealForDigiCscGeometry_cff import *
+from Geometry.DTGeometryBuilder.idealForDigiDtGeometry_cff import *
+
+# forward
+from Geometry.ForwardGeometry.zdcTopologyEP_cfi import *
+from Geometry.ForwardGeometry.ZdcGeometry_cfi import *
+
+# timing
+from RecoMTD.DetLayers.mtdDetLayerGeometry_cfi import *
+from Geometry.MTDGeometryBuilder.mtdParameters_cff import *
+from Geometry.MTDNumberingBuilder.mtdNumberingGeometry_cff import *
+from Geometry.MTDNumberingBuilder.mtdTopology_cfi import *
+from Geometry.MTDGeometryBuilder.mtdGeometry_cfi import *
+from Geometry.MTDGeometryBuilder.idealForDigiMTDGeometry_cff import *
+mtdGeometry.applyAlignment = False
+
diff --git a/Configuration/Geometry/python/GeometryDD4hepExtendedRun4D126_cff.py b/Configuration/Geometry/python/GeometryDD4hepExtendedRun4D126_cff.py
new file mode 100644
index 0000000000000..b465bf9a9e861
--- /dev/null
+++ b/Configuration/Geometry/python/GeometryDD4hepExtendedRun4D126_cff.py
@@ -0,0 +1,17 @@
+import FWCore.ParameterSet.Config as cms
+
+# This config was generated automatically using generateRun4Geometry.py
+# If you notice a mistake, please update the generating script, not just this config
+
+from Configuration.Geometry.GeometryDD4hep_cff import *
+DDDetectorESProducer.confGeomXMLFiles = cms.FileInPath("Geometry/CMSCommonData/data/dd4hep/cmsExtendedGeometryRun4D126.xml")
+
+from Geometry.TrackerNumberingBuilder.trackerNumberingGeometry_cff import *
+from SLHCUpgradeSimulations.Geometry.fakePhase2OuterTrackerConditions_cff import *
+from Geometry.EcalCommonData.ecalSimulationParameters_cff import *
+from Geometry.HcalCommonData.hcalDDDSimConstants_cff import *
+from Geometry.HGCalCommonData.hgcalParametersInitialization_cfi import *
+from Geometry.HGCalCommonData.hgcalNumberingInitialization_cfi import *
+from Geometry.MuonNumbering.muonGeometryConstants_cff import *
+from Geometry.MuonNumbering.muonOffsetESProducer_cff import *
+from Geometry.MTDNumberingBuilder.mtdNumberingGeometry_cff import *
diff --git a/Configuration/Geometry/python/GeometryExtendedRun4D126Reco_cff.py b/Configuration/Geometry/python/GeometryExtendedRun4D126Reco_cff.py
new file mode 100644
index 0000000000000..593570eeef71b
--- /dev/null
+++ b/Configuration/Geometry/python/GeometryExtendedRun4D126Reco_cff.py
@@ -0,0 +1,61 @@
+import FWCore.ParameterSet.Config as cms
+
+# This config was generated automatically using generateRun4Geometry.py
+# If you notice a mistake, please update the generating script, not just this config
+
+from Configuration.Geometry.GeometryExtendedRun4D126_cff import *
+
+# tracker
+from Geometry.CommonTopologies.globalTrackingGeometry_cfi import *
+from RecoTracker.GeometryESProducer.TrackerRecoGeometryESProducer_cfi import *
+from Geometry.TrackerGeometryBuilder.TrackerAdditionalParametersPerDet_cfi import *
+from Geometry.TrackerGeometryBuilder.trackerParameters_cff import *
+from Geometry.TrackerNumberingBuilder.trackerTopology_cfi import *
+from Geometry.TrackerGeometryBuilder.idealForDigiTrackerGeometry_cff import *
+trackerGeometry.applyAlignment = True
+
+# calo
+from Geometry.CaloEventSetup.HGCalTopology_cfi import *
+from Geometry.HGCalGeometry.hgcalGeometryESProducer_cff import *
+from Geometry.CaloEventSetup.CaloTopology_cfi import *
+from Geometry.CaloEventSetup.CaloGeometryBuilder_cfi import *
+CaloGeometryBuilder = cms.ESProducer("CaloGeometryBuilder",
+ SelectedCalos = cms.vstring("HCAL",
+ "ZDC",
+ "EcalBarrel",
+ "TOWER",
+ "HGCalEESensitive",
+ "HGCalHESiliconSensitive",
+ "HGCalHEScintillatorSensitive"
+ )
+)
+from Geometry.EcalAlgo.EcalBarrelGeometry_cfi import *
+from Geometry.HcalEventSetup.HcalGeometry_cfi import *
+from Geometry.HcalEventSetup.CaloTowerGeometry_cfi import *
+from Geometry.HcalEventSetup.CaloTowerTopology_cfi import *
+from Geometry.HcalCommonData.hcalDDDRecConstants_cfi import *
+from Geometry.HcalEventSetup.hcalTopologyIdeal_cfi import *
+from Geometry.CaloEventSetup.EcalTrigTowerConstituents_cfi import *
+from Geometry.EcalMapping.EcalMapping_cfi import *
+from Geometry.EcalMapping.EcalMappingRecord_cfi import *
+
+# muon
+from Geometry.MuonNumbering.muonNumberingInitialization_cfi import *
+from RecoMuon.DetLayers.muonDetLayerGeometry_cfi import *
+from Geometry.GEMGeometryBuilder.gemGeometry_cff import *
+from Geometry.CSCGeometryBuilder.idealForDigiCscGeometry_cff import *
+from Geometry.DTGeometryBuilder.idealForDigiDtGeometry_cff import *
+
+# forward
+from Geometry.ForwardGeometry.zdcTopologyEP_cfi import *
+from Geometry.ForwardGeometry.ZdcGeometry_cfi import *
+
+# timing
+from RecoMTD.DetLayers.mtdDetLayerGeometry_cfi import *
+from Geometry.MTDGeometryBuilder.mtdParameters_cff import *
+from Geometry.MTDNumberingBuilder.mtdNumberingGeometry_cff import *
+from Geometry.MTDNumberingBuilder.mtdTopology_cfi import *
+from Geometry.MTDGeometryBuilder.mtdGeometry_cfi import *
+from Geometry.MTDGeometryBuilder.idealForDigiMTDGeometry_cff import *
+mtdGeometry.applyAlignment = False
+
diff --git a/Configuration/Geometry/python/GeometryExtendedRun4D126_cff.py b/Configuration/Geometry/python/GeometryExtendedRun4D126_cff.py
new file mode 100644
index 0000000000000..526d9eea71c76
--- /dev/null
+++ b/Configuration/Geometry/python/GeometryExtendedRun4D126_cff.py
@@ -0,0 +1,15 @@
+import FWCore.ParameterSet.Config as cms
+
+# This config was generated automatically using generateRun4Geometry.py
+# If you notice a mistake, please update the generating script, not just this config
+
+from Geometry.CMSCommonData.cmsExtendedGeometryRun4D126XML_cfi import *
+from Geometry.TrackerNumberingBuilder.trackerNumberingGeometry_cff import *
+from SLHCUpgradeSimulations.Geometry.fakePhase2OuterTrackerConditions_cff import *
+from Geometry.EcalCommonData.ecalSimulationParameters_cff import *
+from Geometry.HcalCommonData.hcalDDDSimConstants_cff import *
+from Geometry.HGCalCommonData.hgcalParametersInitialization_cfi import *
+from Geometry.HGCalCommonData.hgcalNumberingInitialization_cfi import *
+from Geometry.MuonNumbering.muonGeometryConstants_cff import *
+from Geometry.MuonNumbering.muonOffsetESProducer_cff import *
+from Geometry.MTDNumberingBuilder.mtdNumberingGeometry_cff import *
diff --git a/Configuration/Geometry/python/dictRun4Geometry.py b/Configuration/Geometry/python/dictRun4Geometry.py
index 703a8759254c4..e9f7006852faa 100644
--- a/Configuration/Geometry/python/dictRun4Geometry.py
+++ b/Configuration/Geometry/python/dictRun4Geometry.py
@@ -891,7 +891,7 @@
muonDict = {
"abbrev" : "M",
"name" : "muon",
- "default" : 16,
+ "default" : 17,
"M14" : {
1 : [
'Geometry/MuonCommonData/data/mbCommon/2021/v1/mbCommon.xml',
@@ -1033,6 +1033,53 @@
],
"era" : "phase2_muon, phase2_GEM, phase2_GE0",
},
+ "M17" : {
+ 1 : [
+ 'Geometry/MuonCommonData/data/mbCommon/2021/v1/mbCommon.xml',
+ 'Geometry/MuonCommonData/data/mb1/2015/v2/mb1.xml',
+ 'Geometry/MuonCommonData/data/mb2/2015/v2/mb2.xml',
+ 'Geometry/MuonCommonData/data/mb3/2015/v3/mb3.xml',
+ 'Geometry/MuonCommonData/data/mb4/2015/v2/mb4.xml',
+ 'Geometry/MuonCommonData/data/mb4Shield/2030/v1/mb4Shield.xml',
+ 'Geometry/MuonCommonData/data/muonYoke/2030/v4/muonYoke.xml',
+ 'Geometry/MuonCommonData/data/mf/2030/v8/mf.xml',
+ 'Geometry/MuonCommonData/data/csc/2021/v2/csc.xml',
+ 'Geometry/MuonCommonData/data/rpcf/2030/v6/rpcf.xml',
+ 'Geometry/MuonCommonData/data/gemf/TDR_BaseLine/gemf.xml',
+ 'Geometry/MuonCommonData/data/gem11/TDR_BaseLine/gem11.xml',
+ 'Geometry/MuonCommonData/data/gem21/2030/v1/gem21.xml',
+ 'Geometry/MuonCommonData/data/mfshield/2030/v6/mfshield.xml',
+ 'Geometry/MuonCommonData/data/ge0/TDR_Dev/v6/ge0.xml',
+ 'Geometry/MuonCommonData/data/ge0shield/2030/v1/ge0shield.xml',
+ ],
+ 2 : [
+ 'Geometry/MuonCommonData/data/muonNumbering/TDR_DeV/v5/muonNumbering.xml',
+ ],
+ 3 : [
+ 'Geometry/MuonSimData/data/PhaseII/v2/muonSens.xml',
+ 'Geometry/DTGeometryBuilder/data/dtSpecsFilter/2021/v1/dtSpecsFilter.xml',
+ 'Geometry/CSCGeometryBuilder/data/cscSpecsFilter.xml',
+ 'Geometry/CSCGeometryBuilder/data/cscSpecs.xml',
+ 'Geometry/RPCGeometryBuilder/data/2030/v1/RPCSpecs.xml',
+ 'Geometry/GEMGeometryBuilder/data/v12/GEMSpecsFilter.xml',
+ 'Geometry/GEMGeometryBuilder/data/v12/GEMSpecs.xml',
+ ],
+ 4 : [
+ 'Geometry/MuonSimData/data/muonProdCuts/2030/v2/muonProdCuts.xml',
+ ],
+ "sim" : [
+ 'from Geometry.MuonNumbering.muonGeometryConstants_cff import *',
+ 'from Geometry.MuonNumbering.muonOffsetESProducer_cff import *',
+ ],
+ "reco" : [
+ 'from Geometry.MuonNumbering.muonNumberingInitialization_cfi import *',
+ 'from RecoMuon.DetLayers.muonDetLayerGeometry_cfi import *',
+ 'from Geometry.GEMGeometryBuilder.gemGeometry_cff import *',
+ 'from Geometry.CSCGeometryBuilder.idealForDigiCscGeometry_cff import *',
+ 'from Geometry.DTGeometryBuilder.idealForDigiDtGeometry_cff import *',
+ ],
+ "era" : "phase2_muon, phase2_GEM, phase2_GE0",
+ },
}
forwardDict = {
@@ -1272,6 +1319,7 @@
("O11","T35","C28","M16","F9","I18") : "D123",
("O10","T35","C25","M16","F9","I21") : "D124",
("O10","T35","C25","M16","F9","I22") : "D125",
+ ("O11","T37","C27","M17","F9","I21") : "D126",
}
deprecatedDets = set(["D1", "D2", "D3", "D5", "D6" , "D7", "D4", "D8" , "D9", "D12", "D13", "D15", "D10", "D11", "D14", "D16", "D17", "D18", "D19", "D20", "D21", "D22", "D23", "D24", "D25", "D26", "D27", "D28", "D29", "D30", "D31", "D32", "D33", "D34", "D36", "D37", "D38", "D39", "D40", "D42", "D35", "D41", "D43", "D44", "D45", "D46", "D48", "D47", "D50", "D51", "D52", "D53", "D54", "D55", "D56", "D57", "D58", "D59", "D61", "D62", "D63", "D64", "D65", "D66", "D67", "D69", "D71", "D72", "D73", "D74", "D75", "D78", "D79", "D87", "D89", "D90", "D49", "D60", "D68", "D70", "D76", "D77", "D80", "D81", "D82", "D83", "D84", "D85","D86", "D88", "D91", "D92", "D93", "D94", "D95", "D96", "D97", "D98", "D99", "D100", "D101", "D102", "D103", "D105", "D106", "D107", "D108", "D109", "D116", "D117", "D118", "D119"])
diff --git a/Configuration/PyReleaseValidation/python/relval_Run4.py b/Configuration/PyReleaseValidation/python/relval_Run4.py
index 8e7a6d5c6713f..50bfb98fab870 100644
--- a/Configuration/PyReleaseValidation/python/relval_Run4.py
+++ b/Configuration/PyReleaseValidation/python/relval_Run4.py
@@ -29,6 +29,7 @@
numWFIB.extend([35234.0]) #Run4D123
numWFIB.extend([35634.0]) #Run4D124
numWFIB.extend([36034.0]) #Run4D125
+numWFIB.extend([37234.0]) #Run4D126
#Run4 FS (TTbar)
numWFIB.extend([36434.0]) #Run4D110
@@ -49,6 +50,7 @@
numWFIB.extend([prefixDet+34.75]) #Timing menu
numWFIB.extend([prefixDet+151.85]) #Heavy ion reconstruction
#Default Phase-2 Det PU
+numWFIB.extend([prefixDet+234.0]) #standard PU
#numWFIB.extend([prefixDet+261.97]) #premixing stage1 (NuGun+PU) COMMENT: reads old format file
#numWFIB.extend([prefixDet+234.99]) #premixing combined stage1+stage2 ttbar+PU200 COMMENT: reads old format file
#numWFIB.extend([prefixDet+234.999]) #premixing combined stage1+stage2 ttbar+PU50 for PR test COMMENT: reads old format file
@@ -63,6 +65,7 @@
numWFIB.extend([prefixDet+34.7503]) # HLTHeterogeneousValid
numWFIB.extend([prefixDet+34.751]) # HLTTiming75e33, alpaka
numWFIB.extend([prefixDet+34.7521]) # HLTTiming75e33, ticlv5TrackLinkingGNN
+numWFIB.extend([prefixDet+34.7522]) # HLTTiming75e33, mtd_at_hlt
numWFIB.extend([prefixDet+34.753]) # HLTTiming75e33, legacy tracking
numWFIB.extend([prefixDet+34.754]) # HLTTiming75e33, legacy tracking with Patatrack quads
numWFIB.extend([prefixDet+34.755]) # HLTTiming75e33, trackingLST
diff --git a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py
index fb1e68b543434..24aa47cd0de7e 100644
--- a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py
+++ b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py
@@ -98,6 +98,10 @@
'Run4D110FSPU',
'Run4D121FS',
'Run4D121FSPU',
+ 'Run4D126',
+ 'Run4D126PU',
+ 'Run4D121GenOnly',
+ 'Run4D121SimOnGen',
]
# pre-generation of WF numbers
@@ -1866,7 +1870,7 @@ def condition(self, fragment, stepList, key, hasHarvest):
offset = 0.75,
)
upgradeWFs['HLTTiming75e33'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing,VALIDATION:@hltValidation',
+ '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:@relvalRun4_timing,VALIDATION:@hltValidation',
'--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
'--eventcontent':'FEVTDEBUGHLT,DQMIO'
}
@@ -1877,11 +1881,11 @@ def condition(self, fragment, stepList, key, hasHarvest):
upgradeWFs['HLTTrackingOnly75e33'] = deepcopy(upgradeWFs['HLTTiming75e33'])
upgradeWFs['HLTTrackingOnly75e33'].suffix = '_HLT75e33TrackingOnly'
upgradeWFs['HLTTrackingOnly75e33'].offset = 0.7501
-upgradeWFs['HLTTrackingOnly75e33'].step2 = {
- '-s':'DIGI:pdigi_valid,DIGI2RAW,L1TrackTrigger,L1,L1P2GT,HLT:75e33_trackingOnly,VALIDATION::hltMultiTrackValidation+hltMultiPVValidation',
- '--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
- '--eventcontent':'FEVTDEBUGHLT,DQMIO'
-}
+upgradeWFs['HLTTrackingOnly75e33'].step2['-s'] = upgradeWFs['HLTTrackingOnly75e33'].step2['-s'].replace(
+ 'HLT:@relvalRun4_timing', 'HLT:@relvalRun4_trk'
+).replace(
+ 'VALIDATION:@hltValidation', 'VALIDATION::hltMultiTrackValidation+hltMultiPVValidation'
+)
class UpgradeWorkflow_HLT75e33TrackingNtuple(UpgradeWorkflow):
def setup_(self, step, stepName, stepDict, k, properties):
@@ -1934,7 +1938,7 @@ def condition(self, fragment, stepList, key, hasHarvest):
offset = 0.7502,
)
upgradeWFs['HLTTrackingNtuple75e33'].step2 = {
- '-s':'DIGI:pdigi_valid,DIGI2RAW,L1TrackTrigger,L1,L1P2GT,HLT:75e33,VALIDATION:@hltValidation',
+ '-s':'DIGI:pdigi_valid,DIGI2RAW,L1TrackTrigger,L1,L1P2GT,HLT:@relvalRun4,VALIDATION:@hltValidation',
'--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
'--eventcontent':'FEVTDEBUGHLT,DQMIO',
'--customise' : 'Validation/RecoTrack/customiseTrackingNtuple.customiseTrackingNtupleHLT,Validation/RecoTrack/customiseTrackingNtuple.extendedContent'
@@ -1944,7 +1948,7 @@ def condition(self, fragment, stepList, key, hasHarvest):
upgradeWFs['HLTHeterogeneousValid'].suffix = '_HLTHeterogeneousValid'
upgradeWFs['HLTHeterogeneousValid'].offset = 0.7503
upgradeWFs['HLTHeterogeneousValid'].step2['-s'] = upgradeWFs['HLTHeterogeneousValid'].step2['-s'].replace(
- 'HLT:75e33_timing', 'HLT:75e33'
+ 'HLT:@relvalRun4_timing', 'HLT:@relvalRun4'
)
upgradeWFs['HLTHeterogeneousValid'].step2['--procModifiers'] = 'alpakaValidationHLT'
upgradeWFs['HLTHeterogeneousValid'].step3['-s'] = upgradeWFs['HLTHeterogeneousValid'].step3['-s'].replace(
@@ -1955,104 +1959,48 @@ def condition(self, fragment, stepList, key, hasHarvest):
upgradeWFs['HLTTiming75e33Alpaka'] = deepcopy(upgradeWFs['HLTTiming75e33'])
upgradeWFs['HLTTiming75e33Alpaka'].suffix = '_HLT75e33TimingAlpaka'
upgradeWFs['HLTTiming75e33Alpaka'].offset = 0.751
-upgradeWFs['HLTTiming75e33Alpaka'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing,VALIDATION:@hltValidation',
- '--procModifiers': 'alpaka',
- '--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
- '--eventcontent':'FEVTDEBUGHLT,DQMIO'
-}
-upgradeWFs['HLTTiming75e33Alpaka'].step3 = {
- '-s':'HARVESTING:@hltValidation'
-}
+upgradeWFs['HLTTiming75e33Alpaka'].step2['--procModifiers'] = 'alpaka'
upgradeWFs['HLTTiming75e33TiclV5TrackLinkingGNN'] = deepcopy(upgradeWFs['HLTTiming75e33'])
upgradeWFs['HLTTiming75e33TiclV5TrackLinkingGNN'].suffix = '_HLT75e33TimingTiclV5TrackLinkGNN'
upgradeWFs['HLTTiming75e33TiclV5TrackLinkingGNN'].offset = 0.7521
-upgradeWFs['HLTTiming75e33TiclV5TrackLinkingGNN'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing,VALIDATION:@hltValidation',
- '--procModifiers': 'ticlv5_TrackLinkingGNN',
- '--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
- '--eventcontent':'FEVTDEBUGHLT,DQMIO'
-}
-upgradeWFs['HLTTiming75e33TiclV5TrackLinkingGNN'].step3 = {
- '-s':'HARVESTING:@hltValidation'
-}
+upgradeWFs['HLTTiming75e33TiclV5TrackLinkingGNN'].step2['--procModifiers'] = 'ticlv5_TrackLinkingGNN'
+upgradeWFs['HLTTiming75e33MTDatHLT'] = deepcopy(upgradeWFs['HLTTiming75e33'])
+upgradeWFs['HLTTiming75e33MTDatHLT'].suffix = '_HLT75e33TimingMTDatHLT'
+upgradeWFs['HLTTiming75e33MTDatHLT'].offset = 0.7522
+upgradeWFs['HLTTiming75e33MTDatHLT'].step2['--procModifiers'] = 'mtd_at_hlt'
+upgradeWFs['HLTTiming75e33MTDatHLT'].step3['--procModifiers'] = 'mtd_at_hlt'
upgradeWFs['HLTTiming75e33LegacyTracking'] = deepcopy(upgradeWFs['HLTTiming75e33'])
upgradeWFs['HLTTiming75e33LegacyTracking'].suffix = '_HLT75e33TimingLegacyTracking'
upgradeWFs['HLTTiming75e33LegacyTracking'].offset = 0.753
-upgradeWFs['HLTTiming75e33LegacyTracking'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing,VALIDATION:@hltValidation',
- '--procModifiers': 'hltPhase2LegacyTracking',
- '--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
- '--eventcontent':'FEVTDEBUGHLT,DQMIO'
-}
-upgradeWFs['HLTTiming75e33LegacyTracking'].step3 = {
- '-s':'HARVESTING:@hltValidation'
-}
+upgradeWFs['HLTTiming75e33LegacyTracking'].step2['--procModifiers'] = 'hltPhase2LegacyTracking'
upgradeWFs['HLTTiming75e33LegacyTrackingPatatrackQuads'] = deepcopy(upgradeWFs['HLTTiming75e33'])
upgradeWFs['HLTTiming75e33LegacyTrackingPatatrackQuads'].suffix = '_HLT75e33TimingLegacyTrackingPatatrackQuads'
upgradeWFs['HLTTiming75e33LegacyTrackingPatatrackQuads'].offset = 0.754
-upgradeWFs['HLTTiming75e33LegacyTrackingPatatrackQuads'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing,VALIDATION:@hltValidation',
- '--procModifiers': 'hltPhase2LegacyTrackingPatatrackQuadsChain',
- '--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
- '--eventcontent':'FEVTDEBUGHLT,DQMIO'
-}
-upgradeWFs['HLTTiming75e33LegacyTrackingPatatrackQuads'].step3 = {
- '-s':'HARVESTING:@hltValidation'
-}
+upgradeWFs['HLTTiming75e33LegacyTrackingPatatrackQuads'].step2['--procModifiers'] = 'hltPhase2LegacyTrackingPatatrackQuadsChain'
upgradeWFs['HLTTiming75e33LST'] = deepcopy(upgradeWFs['HLTTiming75e33'])
upgradeWFs['HLTTiming75e33LST'].suffix = '_HLT75e33TimingLST'
upgradeWFs['HLTTiming75e33LST'].offset = 0.755
-upgradeWFs['HLTTiming75e33LST'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing,VALIDATION:@hltValidation',
- '--procModifiers': 'trackingLST',
- '--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
- '--eventcontent':'FEVTDEBUGHLT,DQMIO'
-}
-upgradeWFs['HLTTiming75e33LST'].step3 = {
- '-s':'HARVESTING:@hltValidation'
-}
+upgradeWFs['HLTTiming75e33LST'].step2['--procModifiers'] = 'trackingLST'
upgradeWFs['HLTTiming75e33TrimmedTracking'] = deepcopy(upgradeWFs['HLTTiming75e33'])
upgradeWFs['HLTTiming75e33TrimmedTracking'].suffix = '_HLT75e33TimingTrimmedTracking'
upgradeWFs['HLTTiming75e33TrimmedTracking'].offset = 0.756
-upgradeWFs['HLTTiming75e33TrimmedTracking'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing,VALIDATION:@hltValidation',
- '--procModifiers': 'phase2_hlt_vertexTrimming',
- '--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
- '--eventcontent':'FEVTDEBUGHLT,DQMIO'
-}
+upgradeWFs['HLTTiming75e33TrimmedTracking'].step2['--procModifiers'] = 'phase2_hlt_vertexTrimming'
upgradeWFs['HLTTiming75e33MkFitFit'] = deepcopy(upgradeWFs['HLTTiming75e33'])
upgradeWFs['HLTTiming75e33MkFitFit'].suffix = '_HLT75e33TimingMkFitFit'
upgradeWFs['HLTTiming75e33MkFitFit'].offset = 0.757
-upgradeWFs['HLTTiming75e33MkFitFit'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing,VALIDATION:@hltValidation',
- '--procModifiers': 'trackingMkFitFit',
- '--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
- '--eventcontent':'FEVTDEBUGHLT,DQMIO'
-}
-upgradeWFs['HLTTiming75e33MkFitFit'].step3 = {
- '-s':'HARVESTING:@hltValidation'
-}
+upgradeWFs['HLTTiming75e33MkFitFit'].step2['--procModifiers'] = 'trackingMkFitFit'
upgradeWFs['HLTTiming75e33TiclBarrel'] = deepcopy(upgradeWFs['HLTTiming75e33'])
upgradeWFs['HLTTiming75e33TiclBarrel'].suffix = '_HLT75e33TimingTiclBarrel'
upgradeWFs['HLTTiming75e33TiclBarrel'].offset = 0.758
-upgradeWFs['HLTTiming75e33TiclBarrel'].step2 = {
- '-s' : 'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing,VALIDATION:@hltValidation',
- '--procModifiers': 'ticl_barrel',
- '--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
- '--eventcontent':'FEVTDEBUGHLT,DQMIO'
-}
-upgradeWFs['HLTTiming75e33TiclBarrel'].step3 = {
- '-s':'HARVESTING:@hltValidation'
-}
+upgradeWFs['HLTTiming75e33TiclBarrel'].step2['--procModifiers'] = 'ticl_barrel'
class UpgradeWorkflow_HLTPhase2_WithNano(UpgradeWorkflow):
def setup_(self, step, stepName, stepDict, k, properties):
@@ -2101,7 +2049,7 @@ def condition(self, fragment, stepList, key, hasHarvest):
offset = 0.759,
)
upgradeWFs['HLTPhase2WithNano'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33,NANO:@Phase2HLT',
+ '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:@relvalRun4,NANO:@Phase2HLT',
'--datatier':'NANOAODSIM',
'--eventcontent':'NANOAODSIM'
}
@@ -2109,41 +2057,39 @@ def condition(self, fragment, stepList, key, hasHarvest):
upgradeWFs['HLTPhase2WithNanoValid'] = deepcopy(upgradeWFs['HLTPhase2WithNano'])
upgradeWFs['HLTPhase2WithNanoValid'].suffix = '_HLTPhase2WithNanoValid'
upgradeWFs['HLTPhase2WithNanoValid'].offset = 0.7591
-upgradeWFs['HLTPhase2WithNanoValid'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33,VALIDATION:@hltValidation,NANO:@Phase2HLTVal',
- '--datatier':'NANOAODSIM',
- '--eventcontent':'NANOAODSIM'
-}
+upgradeWFs['HLTPhase2WithNanoValid'].step2['-s'] = upgradeWFs['HLTPhase2WithNanoValid'].step2['-s'].replace(
+ 'NANO:@Phase2HLT', 'VALIDATION:@hltValidation,NANO:@Phase2HLTVal'
+)
upgradeWFs['NGTScoutingWithNano'] = deepcopy(upgradeWFs['HLTPhase2WithNano'])
upgradeWFs['NGTScoutingWithNano'].suffix = '_NGTScoutingWithNano'
upgradeWFs['NGTScoutingWithNano'].offset = 0.772
-upgradeWFs['NGTScoutingWithNano'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:NGTScouting,NANO:@NGTScouting',
- '--datatier':'NANOAODSIM',
- '--procModifiers': 'ngtScouting',
- '--eventcontent':'NANOAODSIM'
-}
+upgradeWFs['NGTScoutingWithNano'].step2['-s'] = upgradeWFs['NGTScoutingWithNano'].step2['-s'].replace(
+ 'HLT:@relvalRun4', 'HLT:@relvalRun4_scouting'
+).replace(
+ 'NANO:@Phase2HLT', 'NANO:@NGTScouting'
+)
+upgradeWFs['NGTScoutingWithNano'].step2['--procModifiers'] = 'alpaka,ngtScouting'
upgradeWFs['NGTScoutingWithNanoValid'] = deepcopy(upgradeWFs['HLTPhase2WithNano'])
upgradeWFs['NGTScoutingWithNanoValid'].suffix = '_NGTScoutingWithNanoValid'
upgradeWFs['NGTScoutingWithNanoValid'].offset = 0.773
-upgradeWFs['NGTScoutingWithNanoValid'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:NGTScouting,VALIDATION:@hltValidation,NANO:@NGTScoutingVal',
- '--datatier':'NANOAODSIM',
- '--procModifiers': 'ngtScouting',
- '--eventcontent':'NANOAODSIM'
-}
+upgradeWFs['NGTScoutingWithNanoValid'].step2['-s'] = upgradeWFs['NGTScoutingWithNanoValid'].step2['-s'].replace(
+ 'HLT:@relvalRun4', 'HLT:@relvalRun4_scouting'
+).replace(
+ 'NANO:@Phase2HLT', 'VALIDATION:@hltValidation,NANO:@NGTScoutingVal'
+)
+upgradeWFs['NGTScoutingWithNanoValid'].step2['--procModifiers'] = 'alpaka,ngtScouting'
-upgradeWFs['L1NGTScoutingWithNano'] = deepcopy(upgradeWFs['HLTPhase2WithNano'])
-upgradeWFs['L1NGTScoutingWithNano'].suffix = '_L1NGTScoutingWithNanoValid'
-upgradeWFs['L1NGTScoutingWithNano'].offset = 0.774
-upgradeWFs['L1NGTScoutingWithNano'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:NGTScouting,VALIDATION:@hltValidation,NANO:@NGTScoutingVal+@Phase2L1DPGwithGen',
- '--datatier':'GEN-SIM-DIGI-RAW,NANOAODSIM',
- '--procModifiers': 'ngtScouting,nano_l1_hlt',
- '--eventcontent':'FEVTDEBUGHLT,NANOAODSIM'
-}
+upgradeWFs['L1NGTScoutingWithNanoValid'] = deepcopy(upgradeWFs['NGTScoutingWithNanoValid'])
+upgradeWFs['L1NGTScoutingWithNanoValid'].suffix = '_L1NGTScoutingWithNanoValid'
+upgradeWFs['L1NGTScoutingWithNanoValid'].offset = 0.774
+upgradeWFs['L1NGTScoutingWithNanoValid'].step2['-s'] = upgradeWFs['L1NGTScoutingWithNanoValid'].step2['-s'].replace(
+ 'NANO:@NGTScoutingVal', 'NANO:@NGTScoutingVal+@Phase2L1DPGwithGen'
+)
+upgradeWFs['L1NGTScoutingWithNanoValid'].step2['--datatier'] += ',GEN-SIM-DIGI-RAW'
+upgradeWFs['L1NGTScoutingWithNanoValid'].step2['--procModifiers'] += ',nano_l1_hlt'
+upgradeWFs['L1NGTScoutingWithNanoValid'].step2['--eventcontent'] += ',FEVTDEBUGHLT'
class UpgradeWorkflow_HLTwDIGI75e33(UpgradeWorkflow):
def setup_(self, step, stepName, stepDict, k, properties):
@@ -2204,42 +2150,30 @@ def condition(self, fragment, stepList, key, hasHarvest):
offset = 0.77,
)
upgradeWFs['NGTScouting'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:NGTScouting,VALIDATION:@hltValidation',
- '--procModifiers': 'ngtScouting',
+ '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:@relvalRun4_scouting,VALIDATION:@hltValidation',
+ '--procModifiers': 'alpaka,ngtScouting',
'--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
'--eventcontent':'FEVTDEBUGHLT,DQMIO'
}
upgradeWFs['NGTScouting'].step3 = {
- '--procModifiers': 'ngtScouting',
+ '--procModifiers': 'alpaka,ngtScouting',
'-s':'HARVESTING:@hltValidation'
}
upgradeWFs['NGTScoutingAll'] = deepcopy(upgradeWFs['NGTScouting'])
upgradeWFs['NGTScoutingAll'].suffix = '_NGTScoutingAll'
upgradeWFs['NGTScoutingAll'].offset = 0.771
-upgradeWFs['NGTScoutingAll'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:NGTScouting,VALIDATION:@hltValidation',
- '--procModifiers': 'ngtScouting,alpaka,ticl_barrel',
- '--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
- '--eventcontent':'FEVTDEBUGHLT,DQMIO'
-}
-upgradeWFs['NGTScoutingAll'].step3 = {
- '--procModifiers': 'ngtScouting,alpaka,ticl_barrel',
- '-s':'HARVESTING:@hltValidation'
-}
+upgradeWFs['NGTScoutingAll'].step2['--procModifiers'] += ',alpaka,ticl_barrel'
+upgradeWFs['NGTScoutingAll'].step3['--procModifiers'] += ',alpaka,ticl_barrel'
upgradeWFs['NGTScoutingCAExtensionMergeT5'] = deepcopy(upgradeWFs['NGTScouting'])
upgradeWFs['NGTScoutingCAExtensionMergeT5'].suffix = '_NGTScoutingCAExtensionMergeT5'
upgradeWFs['NGTScoutingCAExtensionMergeT5'].offset = 0.775
-upgradeWFs['NGTScoutingCAExtensionMergeT5'].step2 = {
- '-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing,VALIDATION:@hltValidation',
- '--procModifiers': 'ngtScouting,trackingLST',
- '--datatier':'GEN-SIM-DIGI-RAW,DQMIO',
- '--eventcontent':'FEVTDEBUGHLT,DQMIO'
-}
-upgradeWFs['NGTScoutingCAExtensionMergeT5'].step3 = {
- '-s':'HARVESTING:@hltValidation'
-}
+upgradeWFs['NGTScoutingCAExtensionMergeT5'].step2['-s'] = upgradeWFs['NGTScoutingCAExtensionMergeT5'].step2['-s'].replace(
+ 'HLT:@relvalRun4_scouting', 'HLT:@relvalRun4_timing'
+)
+upgradeWFs['NGTScoutingCAExtensionMergeT5'].step2['--procModifiers'] += ',trackingLST'
+del upgradeWFs['NGTScoutingCAExtensionMergeT5'].step3['--procModifiers']
class UpgradeWorkflow_L1Complete(UpgradeWorkflow):
def setup_(self, step, stepName, stepDict, k, properties):
@@ -2272,12 +2206,8 @@ def condition(self, fragment, stepList, key, hasHarvest):
upgradeWFs['L1CompleteOnlyNano'] = deepcopy(upgradeWFs['L1CompleteWithNano'])
upgradeWFs['L1CompleteOnlyNano'].suffix = '_L1CompleteOnlyNano'
upgradeWFs['L1CompleteOnlyNano'].offset = 0.782
-upgradeWFs['L1CompleteOnlyNano'].step2 = {
- # '-s': 'NANO:@Phase2L1DPG',
- '-s': 'DIGI:pdigi_valid,L1,L1TrackTrigger,L1P2GT,DIGI2RAW,HLT:@relvalRun4,NANO:@Phase2L1DPG',
- '--datatier':'NANOAODSIM',
- '--eventcontent':'NANOAODSIM'
-}
+upgradeWFs['L1CompleteOnlyNano'].step2['--datatier'] = 'NANOAODSIM'
+upgradeWFs['L1CompleteOnlyNano'].step2['--eventcontent'] = 'NANOAODSIM'
class UpgradeWorkflow_Neutron(UpgradeWorkflow):
def setup_(self, step, stepName, stepDict, k, properties):
@@ -3798,6 +3728,28 @@ def condition(self, fragment, stepList, key, hasHarvest):
'Era' : 'Phase2C22I13M9_FastSim',
'ScenToRun' : ['GenHLBeamSpot','FastSimRun4','HARVESTFastRun4'],
},
+ 'Run4D126' : {
+ 'Geom' : 'ExtendedRun4D126',
+ 'HLTmenu': '@relvalRun4',
+ 'GT' : 'auto:phase2_realistic_T37',
+ 'Era' : 'Phase2C26I13M9',
+ 'ScenToRun' : ['GenSimHLBeamSpot','DigiTrigger','RecoGlobal', 'HARVESTGlobal', 'ALCAPhase2'],
+ },
+ 'Run4D121GenOnly' : {
+ 'Geom' : 'ExtendedRun4D121',
+ 'BeamSpot' : 'DBrealisticHLLHC',
+ 'GT' : 'auto:phase2_realistic_T35',
+ 'Era' : 'Phase2C22I13M9',
+ 'ScenToRun' : ['GenHLBeamSpot'],
+ },
+ 'Run4D121SimOnGen' : {
+ 'Geom' : 'ExtendedRun4D121',
+ 'HLTmenu': '@relvalRun4',
+ 'BeamSpot' : 'DBrealisticHLLHC',
+ 'GT' : 'auto:phase2_realistic_T35',
+ 'Era' : 'Phase2C22I13M9',
+ 'ScenToRun' : ['GenHLBeamSpot','Sim','DigiTrigger','RecoGlobal', 'HARVESTGlobal', 'ALCAPhase2'],
+ },
}
# standard PU sequences
diff --git a/Configuration/StandardSequences/python/GeometryConf.py b/Configuration/StandardSequences/python/GeometryConf.py
index bd9ed203e363f..56d4f6de8ba8a 100644
--- a/Configuration/StandardSequences/python/GeometryConf.py
+++ b/Configuration/StandardSequences/python/GeometryConf.py
@@ -118,4 +118,6 @@
'DD4hepExtendedRun4D125' : 'DD4hepExtendedRun4D125,DD4hepExtendedRun4D125Reco',
'ExtendedRun4D500' : 'ExtendedRun4D500,ExtendedRun4D500Reco',
'DD4hepExtendedRun4D500' : 'DD4hepExtendedRun4D500,DD4hepExtendedRun4D500Reco',
+ 'ExtendedRun4D126' : 'ExtendedRun4D126,ExtendedRun4D126Reco',
+ 'DD4hepExtendedRun4D126' : 'DD4hepExtendedRun4D126,DD4hepExtendedRun4D126Reco',
}
diff --git a/Geometry/CMSCommonData/data/dd4hep/cmsExtendedGeometryRun4D126.xml b/Geometry/CMSCommonData/data/dd4hep/cmsExtendedGeometryRun4D126.xml
new file mode 100644
index 0000000000000..86bf654055907
--- /dev/null
+++ b/Geometry/CMSCommonData/data/dd4hep/cmsExtendedGeometryRun4D126.xml
@@ -0,0 +1,124 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Geometry/CMSCommonData/python/cmsExtendedGeometryRun4D126XML_cfi.py b/Geometry/CMSCommonData/python/cmsExtendedGeometryRun4D126XML_cfi.py
new file mode 100644
index 0000000000000..d431974c987ab
--- /dev/null
+++ b/Geometry/CMSCommonData/python/cmsExtendedGeometryRun4D126XML_cfi.py
@@ -0,0 +1,128 @@
+import FWCore.ParameterSet.Config as cms
+
+# This config was generated automatically using generateRun4Geometry.py
+# If you notice a mistake, please update the generating script, not just this config
+
+XMLIdealGeometryESSource = cms.ESSource("XMLIdealGeometryESSource",
+ geomXMLFiles = cms.vstring(
+ 'Geometry/CMSCommonData/data/materials/2030/v1/materials.xml',
+ 'Geometry/TrackerCommonData/data/trackermaterial/2021/v2/trackermaterial.xml',
+ 'Geometry/CMSCommonData/data/rotations.xml',
+ 'Geometry/CMSCommonData/data/extend/v2/cmsextent.xml',
+ 'Geometry/CMSCommonData/data/cavernData/2021/v1/cavernData.xml',
+ 'Geometry/CMSCommonData/data/cms/2030/v5/cms.xml',
+ 'Geometry/CMSCommonData/data/cmsMother.xml',
+ 'Geometry/CMSCommonData/data/eta3/etaMax.xml',
+ 'Geometry/CMSCommonData/data/cmsTracker.xml',
+ 'Geometry/CMSCommonData/data/caloBase/2030/v8/caloBase.xml',
+ 'Geometry/CMSCommonData/data/cmsCalo.xml',
+ 'Geometry/CMSCommonData/data/muonBase/2030/v5/muonBase.xml',
+ 'Geometry/CMSCommonData/data/cmsMuon.xml',
+ 'Geometry/CMSCommonData/data/mgnt.xml',
+ 'Geometry/CMSCommonData/data/beampipe/2030/v3/beampipe.xml',
+ 'Geometry/CMSCommonData/data/cmsBeam/2030/v1/cmsBeam.xml',
+ 'Geometry/CMSCommonData/data/muonMB.xml',
+ 'Geometry/CMSCommonData/data/muonMagnet.xml',
+ 'Geometry/CMSCommonData/data/cavern/2021/v1/cavern.xml',
+ 'Geometry/CMSCommonData/data/cavernFloor/2017/v1/cavernFloor.xml',
+ 'Geometry/TrackerCommonData/data/PhaseII/TFPXTEPXReordered/trackerParameters.xml',
+ 'Geometry/TrackerCommonData/data/pixfwdCommon.xml',
+ 'Geometry/TrackerCommonData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/pixfwd.xml',
+ 'Geometry/TrackerCommonData/data/PhaseII/Tracker_DD4hep_compatible_OT800_IT615_2022_10/pixbar.xml',
+ 'Geometry/TrackerCommonData/data/trackermaterial.xml',
+ 'Geometry/TrackerCommonData/data/PhaseII/Tracker_DD4hep_compatible_OT806_IT741_2024_01/tracker.xml',
+ 'Geometry/TrackerCommonData/data/PhaseII/OuterTracker616_2020_04/otst.xml',
+ 'Geometry/TrackerCommonData/data/PhaseII/Tracker_DD4hep_compatible_OT806_IT742_2024_01/v1/pixel.xml',
+ 'Geometry/TrackerCommonData/data/PhaseII/TiltedTracker404/trackerbar.xml',
+ 'Geometry/TrackerCommonData/data/PhaseII/TiltedTracker404/trackerfwd.xml',
+ 'Geometry/TrackerCommonData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/trackerStructureTopology.xml',
+ 'Geometry/TrackerCommonData/data/PhaseII/Tracker_DD4hep_compatible_OT806_IT741_2024_01/pixelStructureTopology.xml',
+ 'Geometry/TrackerSimData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/trackersens.xml',
+ 'Geometry/TrackerSimData/data/PhaseII/Tracker_DD4hep_compatible_OT806_IT741_2024_01/pixelsens.xml',
+ 'Geometry/TrackerRecoData/data/PhaseII/Tracker_DD4hep_compatible_OT806_IT741_2024_01/trackerRecoMaterial.xml',
+ 'Geometry/TrackerSimData/data/PhaseII/Tracker_DD4hep_compatible_2021_02/trackerProdCuts.xml',
+ 'Geometry/TrackerSimData/data/PhaseII/Tracker_DD4hep_compatible_OT806_IT741_2024_01/pixelProdCuts.xml',
+ 'Geometry/TrackerSimData/data/trackerProdCutsBEAM.xml',
+ 'Geometry/EcalCommonData/data/eregalgo/2030/v2/eregalgo.xml',
+ 'Geometry/EcalCommonData/data/ectkcable/2030/v1/ectkcable.xml',
+ 'Geometry/EcalCommonData/data/ectkcablemat/2030/v2/ectkcablemat.xml',
+ 'Geometry/EcalCommonData/data/ebalgo.xml',
+ 'Geometry/EcalCommonData/data/ebcon/2021/v1/ebcon.xml',
+ 'Geometry/EcalCommonData/data/ebrot.xml',
+ 'Geometry/HcalCommonData/data/hcalrotations.xml',
+ 'Geometry/HcalCommonData/data/average/hcalforwardmaterial.xml',
+ 'Geometry/HcalCommonData/data/hcal/v2/hcalalgo.xml',
+ 'Geometry/HcalCommonData/data/hcalbarrelalgo.xml',
+ 'Geometry/HcalCommonData/data/hcalcablealgo/v2/hcalcablealgo.xml',
+ 'Geometry/HcalCommonData/data/hcalouteralgo/v1/hcalouteralgo.xml',
+ 'Geometry/HcalCommonData/data/hcalforwardalgo.xml',
+ 'Geometry/HcalCommonData/data/hcalSimNumbering/NoHE/v1/hcalSimNumbering.xml',
+ 'Geometry/HcalCommonData/data/hcalRecNumbering/NoHE/hcalRecNumbering.xml',
+ 'Geometry/HGCalCommonData/data/hgcalMaterial/v3/hgcalMaterial.xml',
+ 'Geometry/HGCalCommonData/data/hgcal/v19/hgcal.xml',
+ 'Geometry/HGCalCommonData/data/hgcalwafer/v19n/hgcalwafer.xml',
+ 'Geometry/HGCalCommonData/data/hgcalPassive/v19/hgcalPassive.xml',
+ 'Geometry/HGCalCommonData/data/hgcalEE/v19/hgcalEE.xml',
+ 'Geometry/HGCalCommonData/data/hgcalHEsil/v19/hgcalHEsil.xml',
+ 'Geometry/HGCalCommonData/data/hgcalHEmix/v19/hgcalHEmix.xml',
+ 'Geometry/HGCalCommonData/data/hgcalCons/v19n/hgcalCons.xml',
+ 'Geometry/HGCalCommonData/data/hgcalConsData/v19/hgcalConsData.xml',
+ 'Geometry/MuonCommonData/data/mbCommon/2021/v1/mbCommon.xml',
+ 'Geometry/MuonCommonData/data/mb1/2015/v2/mb1.xml',
+ 'Geometry/MuonCommonData/data/mb2/2015/v2/mb2.xml',
+ 'Geometry/MuonCommonData/data/mb3/2015/v3/mb3.xml',
+ 'Geometry/MuonCommonData/data/mb4/2015/v2/mb4.xml',
+ 'Geometry/MuonCommonData/data/mb4Shield/2030/v1/mb4Shield.xml',
+ 'Geometry/MuonCommonData/data/muonYoke/2030/v4/muonYoke.xml',
+ 'Geometry/MuonCommonData/data/mf/2030/v8/mf.xml',
+ 'Geometry/MuonCommonData/data/csc/2021/v2/csc.xml',
+ 'Geometry/MuonCommonData/data/rpcf/2030/v6/rpcf.xml',
+ 'Geometry/MuonCommonData/data/gemf/TDR_BaseLine/gemf.xml',
+ 'Geometry/MuonCommonData/data/gem11/TDR_BaseLine/gem11.xml',
+ 'Geometry/MuonCommonData/data/gem21/2030/v1/gem21.xml',
+ 'Geometry/MuonCommonData/data/mfshield/2030/v6/mfshield.xml',
+ 'Geometry/MuonCommonData/data/ge0/TDR_Dev/v6/ge0.xml',
+ 'Geometry/MuonCommonData/data/ge0shield/2030/v1/ge0shield.xml',
+ 'Geometry/ForwardCommonData/data/forwardshield/2030/v5/forwardshield.xml',
+ 'Geometry/ForwardCommonData/data/zdcmaterials/2021/v1/zdcmaterials.xml',
+ 'Geometry/ForwardCommonData/data/lumimaterials.xml',
+ 'Geometry/ForwardCommonData/data/zdcrotations.xml',
+ 'Geometry/ForwardCommonData/data/lumirotations.xml',
+ 'Geometry/ForwardCommonData/data/zdc/2030/v1/zdc.xml',
+ 'Geometry/ForwardCommonData/data/zdclumi/2021/v2/zdclumi.xml',
+ 'Geometry/ForwardCommonData/data/cmszdc.xml',
+ 'Geometry/MTDCommonData/data/mtdMaterial/v4/mtdMaterial.xml',
+ 'Geometry/MTDCommonData/data/btl/v4/btl.xml',
+ 'Geometry/MTDCommonData/data/etl/v11/etl.xml',
+ 'Geometry/MTDCommonData/data/mtdParameters/v9/mtdStructureTopology.xml',
+ 'Geometry/MTDCommonData/data/mtdParameters/v9/mtdParameters.xml',
+ )+
+ cms.vstring(
+ 'Geometry/MuonCommonData/data/muonNumbering/TDR_DeV/v5/muonNumbering.xml',
+ 'Geometry/EcalSimData/data/PhaseII/ecalsens.xml',
+ 'Geometry/HcalCommonData/data/hcalsens/NoHE/v1/hcalsenspmf.xml',
+ 'Geometry/HcalSimData/data/hf.xml',
+ 'Geometry/HcalSimData/data/hfpmt.xml',
+ 'Geometry/HcalSimData/data/hffibrebundle.xml',
+ 'Geometry/HcalSimData/data/CaloUtil/2030/v2c/CaloUtil.xml',
+ 'Geometry/HGCalSimData/data/hgcsensv19n.xml',
+ 'Geometry/MuonSimData/data/PhaseII/v2/muonSens.xml',
+ 'Geometry/DTGeometryBuilder/data/dtSpecsFilter/2021/v1/dtSpecsFilter.xml',
+ 'Geometry/CSCGeometryBuilder/data/cscSpecsFilter.xml',
+ 'Geometry/CSCGeometryBuilder/data/cscSpecs.xml',
+ 'Geometry/RPCGeometryBuilder/data/2030/v1/RPCSpecs.xml',
+ 'Geometry/GEMGeometryBuilder/data/v12/GEMSpecsFilter.xml',
+ 'Geometry/GEMGeometryBuilder/data/v12/GEMSpecs.xml',
+ 'Geometry/ForwardSimData/data/zdcsens.xml',
+ 'Geometry/MTDSimData/data/v5/mtdsens.xml',
+ 'Geometry/HcalSimData/data/HcalProdCuts/2030/v1/HcalProdCuts.xml',
+ 'Geometry/EcalSimData/data/EcalProdCuts.xml',
+ 'Geometry/HGCalSimData/data/hgcProdCutsv15.xml',
+ 'Geometry/MuonSimData/data/muonProdCuts/2030/v2/muonProdCuts.xml',
+ 'Geometry/ForwardSimData/data/zdcProdCuts/2021/v2/zdcProdCuts.xml',
+ 'Geometry/ForwardSimData/data/ForwardShieldProdCuts.xml',
+ 'Geometry/MTDSimData/data/v5/mtdProdCuts.xml',
+ 'Geometry/CMSCommonData/data/FieldParameters.xml',
+ ),
+ rootNodeName = cms.string('cms:OCMS')
+)
diff --git a/Geometry/GEMGeometryBuilder/src/GEMGeometryBuilder.cc b/Geometry/GEMGeometryBuilder/src/GEMGeometryBuilder.cc
index 463db9eafaa21..6fc688f23d985 100644
--- a/Geometry/GEMGeometryBuilder/src/GEMGeometryBuilder.cc
+++ b/Geometry/GEMGeometryBuilder/src/GEMGeometryBuilder.cc
@@ -198,12 +198,20 @@ GEMSuperChamber* GEMGeometryBuilder::buildSuperChamber(DDFilteredView& fv, GEMDe
DDBooleanSolid solid = (DDBooleanSolid)(fv.logicalPart().solid());
bool ge0Station = detId.station() == GEMDetId::minStationId0;
std::vector dpar = ge0Station ? solid.parameters() : solid.solidA().parameters();
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << "ge0Station " << ge0Station << " dpar " << dpar.empty();
+#endif
if (dpar.empty()) {
const DDBooleanSolid bs(fv.logicalPart().solid());
dpar = bs.solidA().parameters();
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << "Name " << bs.solidA().name();
+#endif
}
-
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << " Name " << fv.logicalPart().solid().name() << " Size " << dpar.size();
+#endif
double dy = convertMmToCm(dpar[0]); //length is along local Y
double dz = convertMmToCm(dpar[3]); // thickness is long local Z
double dx1 = convertMmToCm(dpar[4]); // bottom width is along local X
@@ -214,6 +222,9 @@ GEMSuperChamber* GEMGeometryBuilder::buildSuperChamber(DDFilteredView& fv, GEMDe
const double chgap = 2.105;
dpar = solid.solidB().parameters();
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << "NameSolidB " << solid.solidB().name() << " Size " << dpar.size();
+#endif
dz += convertMmToCm(dpar[3]); // chamber thickness
dz *= nch; // 2 chambers in superchamber
@@ -237,11 +248,20 @@ GEMChamber* GEMGeometryBuilder::buildChamber(DDFilteredView& fv, GEMDetId detId)
DDBooleanSolid solid = (DDBooleanSolid)(fv.logicalPart().solid());
bool ge0Station = detId.station() == GEMDetId::minStationId0;
std::vector dpar = ge0Station ? solid.parameters() : solid.solidA().parameters();
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << "ge0Station " << ge0Station << " dpar " << dpar.empty();
+#endif
if (dpar.empty()) {
const DDBooleanSolid bs(fv.logicalPart().solid());
dpar = bs.solidA().parameters();
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << "Name " << bs.solidA().name();
+#endif
}
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << " Name " << fv.logicalPart().solid().name() << " Size " << dpar.size();
+#endif
double dy = convertMmToCm(dpar[0]); //length is along local Y
double dz = convertMmToCm(dpar[3]); // thickness is long local Z
@@ -250,6 +270,9 @@ GEMChamber* GEMGeometryBuilder::buildChamber(DDFilteredView& fv, GEMDetId detId)
if (!ge0Station) {
dpar = solid.solidB().parameters();
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << "NameSolidB " << solid.solidB().name() << " Size " << dpar.size();
+#endif
dz += convertMmToCm(dpar[3]); // chamber thickness
}
@@ -290,11 +313,20 @@ GEMEtaPartition* GEMGeometryBuilder::buildEtaPartition(DDFilteredView& fv, GEMDe
#endif
// EtaPartition specific parameter (size)
std::vector dpar = fv.logicalPart().solid().parameters();
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << "Strips:: dpar " << dpar.empty() << " Name " << fv.logicalPart().solid().name();
+#endif
if (dpar.empty()) {
const DDBooleanSolid bs(fv.logicalPart().solid());
dpar = bs.solidA().parameters();
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << "Strips:: Name " << bs.solidA().name();
+#endif
}
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << "Strips:: dpar Size " << dpar.size();
+#endif
double be = convertMmToCm(dpar[4]); // half bottom edge
double te = convertMmToCm(dpar[8]); // half top edge
@@ -461,6 +493,9 @@ GEMSuperChamber* GEMGeometryBuilder::buildSuperChamber(cms::DDFilteredView& fv,
cms::DDSolid solid(fv.solid());
auto solidA = solid.solidA();
std::vector dpar = solidA.dimensions();
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << "SolidA:: dpar Size" << dpar.size() << " name " << solidA.name();
+#endif
double dy = k_ScaleFromDD4hep * dpar[3]; //length is along local Y
double dz = k_ScaleFromDD4hep * dpar[2]; // thickness is long local Z
@@ -487,6 +522,9 @@ GEMChamber* GEMGeometryBuilder::buildChamber(cms::DDFilteredView& fv, GEMDetId d
cms::DDSolid solid(fv.solid());
auto solidA = solid.solidA();
std::vector dpar = solidA.dimensions();
+#ifdef EDM_ML_DEBUG
+ edm::LogVerbatim("Geometry") << "SolidA:: dpar Size" << dpar.size() << " name " << solidA.name();
+#endif
double dy = k_ScaleFromDD4hep * dpar[3]; //length is along local Y
double dz = k_ScaleFromDD4hep * dpar[2]; // thickness is long local Z
diff --git a/Geometry/MuonCommonData/data/ge0/TDR_Dev/v6/ge0.xml b/Geometry/MuonCommonData/data/ge0/TDR_Dev/v6/ge0.xml
index 04c9c1ce3ae25..69132d013b73b 100644
--- a/Geometry/MuonCommonData/data/ge0/TDR_Dev/v6/ge0.xml
+++ b/Geometry/MuonCommonData/data/ge0/TDR_Dev/v6/ge0.xml
@@ -1,592 +1,696 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+