Skip to content

Commit

Permalink
Merge pull request #47109 from bsunanda/Phase2-hgx361
Browse files Browse the repository at this point in the history
Phase2-hgx361 Enable a scenario with only HGCal for the V17 version
  • Loading branch information
cmsbuild authored Jan 20, 2025
2 parents 3885803 + 9fa06c4 commit 45a021a
Show file tree
Hide file tree
Showing 7 changed files with 315 additions and 2 deletions.
150 changes: 150 additions & 0 deletions Geometry/CMSCommonData/data/cms/2030/v0/cms.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
<?xml version="1.0"?>
<DDDefinition>

<ConstantsSection label="cms.xml" eval="true">
<Constant name="Rmin" value="[cmsextent:Rmin]"/>
<Constant name="Zmin" value="[cmsextent:Zmin]"/>
<Constant name="HallZ" value="[cmsextent:HallZ]"/>
<Constant name="HallR" value="[cmsextent:HallR]"/>
<Constant name="HallRMax" value="[cmsextent:HallRMax]"/>
<Constant name="CMSR1" value="[cmsextent:CMSR1]"/>
<Constant name="CMSR2" value="[cmsextent:CMSR2]"/>
<Constant name="CMSR3" value="[cavernData:CMSR3]"/>
<Constant name="CMSR4" value="[cavernData:CMSR4]"/>
<Constant name="CMSZ1" value="[cmsextent:CMSZ1]"/>
<Constant name="CMSZ2" value="[cmsextent:CMSZ2]"/>
<Constant name="HFRiseZ1" value="[cavernData:HFRiseZ1]"/>
<Constant name="HFRiseZ2" value="[cavernData:HFRiseZ2]"/>
<Constant name="ShaftY" value="[cavernData:ShaftY]"/>
<Constant name="ShaftZ" value="[cavernData:ShaftZ]"/>
<Constant name="CMSZ2" value="[cmsextent:CMSZ2]"/>
<Constant name="TrackCalorR" value="1.233*m"/>
<Constant name="CalorMuonR" value="2.950*m"/>
<Constant name="CalorMuonR2" value="2.725*m"/>
<Constant name="CalorMuonR3" value="0.900*m"/>
<Constant name="CalorMuonR4" value="0.360*m"/>
<Constant name="TrackBeamZ1" value="1.948*m"/>
<Constant name="TrackBeamZ2" value="2.935*m"/>
<Constant name="TrackBeamSupZ1" value="1.630*m-.6*cm"/>
<Constant name="TrackBeamSupZ2" value="1.630*m+.6*cm"/>
<Constant name="TrackBeamR1" value="2.50*cm"/> <!-- 3.10*cm -->
<Constant name="TrackBeamR2" value="7.40*cm"/>
<Constant name="TrackLumiZ1" value="1.722*m"/>
<Constant name="TrackLumiZ2" value="1.800*m"/>
<Constant name="TrackLumiR1" value="7.70*cm"/>
<Constant name="TrackLumiR1Min" value="3.170*cm"/>
<Constant name="TrackLumiR2Min" value="3.3*cm"/>
<Constant name="CalorBeamZ1" value="3.180*m"/>
<Constant name="CalorBeamZ2" value="5.541*m"/>
<Constant name="CalorBeamZ3" value="5.265*m"/>
<Constant name="CalorBeamZ4" value="5.215*m"/>
<Constant name="CalorBeamZ5" value="5.245*m"/>
<Constant name="CalorBeamR1" value="8.00*cm"/>
<Constant name="CalorBeamR2" value="8.93*cm"/>
<Constant name="MuonBeamZ0" value="6.50*m"/>
<Constant name="MuonBeamZ1" value="7.499*m"/>
<Constant name="MuonBeamZ2" value="10.86*m"/>
<Constant name="MuonBeamR0" value="10.50*cm"/>
<Constant name="MuonBeamR1" value="11.785*cm"/>
<Constant name="MuonBeamR2" value="76.80*cm"/>
<Constant name="TotemMuonZ1" value="10.165*m"/>
<Constant name="TotemMuonZ2" value="10.50*m"/>
<Constant name="TotemMuonR1" value="1.0411*m"/>
<Constant name="TotemMuonR2" value="1.1300*m"/>
<Constant name="TotemBeamZ1" value="7.9500*m"/>
<Constant name="TotemBeamZ2" value="13.381*m"/>
<Constant name="TotemBeamZ3" value="13.439*m"/>
<Constant name="TotemBeamZ4" value="13.465*m"/>
<Constant name="TotemBeamR1" value="[MuonBeamR1]"/>
<Constant name="TotemBeamR2" value="12.15*cm"/>
<Constant name="TotemBeamR3" value="12.20*cm"/>
<Constant name="TotemBeamR4" value="3.675*cm"/>
<Constant name="TotemBeamR5" value="3.575*cm"/>
<Constant name="ForwdBeamZ1" value="10.539*m"/>
<Constant name="ForwdBeamZ2" value="13.109*m"/>
<Constant name="ForwdBeamZ3" value="13.290*m"/>
<Constant name="ForwdBeamZ4" value="16.0305*m"/>
<Constant name="ForwdBeamZ5" value="16.424*m"/>
<Constant name="ForwdBeamZ6" value="17.058*m"/>
<Constant name="ForwdBeamZ7" value="17.920*m"/>
<Constant name="ForwdBeamZ8" value="18.562*m"/>
<Constant name="ForwdBeamZ9" value="18.905*m"/>
<Constant name="ForwdBeamZ10" value="18.997*m"/>
<Constant name="ForwdBeamZ11" value="19.050*m"/>
<Constant name="ForwdBeamZ12" value="20.850*m"/>
<Constant name="ForwdBeamZ13" value="20.900*m"/>
<Constant name="ForwdBeamZ14" value="20.966*m"/>
<Constant name="ForwdBeamR0" value="15.95*cm"/>
<Constant name="ForwdBeamR1" value="12.495*cm"/>
<Constant name="ForwdBeamR2" value="12.50*cm"/>
<Constant name="ForwdBeamR3" value="25.0*cm"/>
<Constant name="ForwdBeamR4" value="3.90*cm"/> <!-- Post LS2 beam-pipe -->
<Constant name="ForwdBeamR5" value="7.50*cm"/>
<Constant name="ForwdBeamR6" value="20.5*cm"/>
<Constant name="ForwdBeamR7" value="4.00*cm"/>
<Constant name="ForwdBeamR8" value="2.15*cm"/>
<Constant name="ForwdBeamR9" value="12.00*cm"/>
<Constant name="ForwdBeamR10" value="3.00*cm"/>
<Constant name="ForwdBeamR11" value="3.35*cm"/>
<Constant name="ForwdBeamR12" value="5.70*cm"/>
<Constant name="ForwdBeamR13" value="2.00*cm"/>
<Constant name="ForwdVcalZ1" value="11.1495*m"/>
<Constant name="ForwdVcalZ2" value="12.8005*m"/>
<Constant name="ForwdVcalR1" value="1.595*m"/>
<Constant name="CastorL1" value="1.6165*m"/>
<Constant name="ForwdDetsZ1" value="16.0065*m"/>
<Constant name="ForwdDetsZ2" value="([ForwdDetsZ1]-[CastorL1])"/>
<Constant name="ForwdDetsR1" value="33.00*cm"/>
<Constant name="MBarRmin" value="3.80*m"/>
<Constant name="MBarRmax" value="[cms:CMSR4]"/>
<Constant name="MBarZ" value="6.61*m"/>
<Constant name="MBRingZ" value="1.268*m"/>
<Constant name="MBRing1Zpos" value="2.686*m"/>
<Constant name="MBRing2Zpos" value="5.342*m"/>
<Constant name="MEndcapZ0" value="6.59*m"/>
<Constant name="MEndcapZ1" value="6.835*m"/>
<Constant name="MERmin0" value="66.569*cm"/>
<Constant name="MERmin1" value="67.50*cm"/>
<Constant name="MERmin2" value="70.00*cm"/>
<Constant name="MERmin3" value="108.60*cm"/>
</ConstantsSection>

<SolidSection label="cms.xml">
<Box name="OCMS" dx="101*m" dy="101*m" dz="450*m"/>
<Polycone name="CMSE" startPhi="0*deg" deltaPhi="360*deg" >
<ZSection z="-[CMSZ1]" rMin="[Rmin]" rMax="[CMSR2]"/>
<ZSection z="-[CMSZ2]" rMin="[Rmin]" rMax="[CMSR2]"/>
<ZSection z="-[CMSZ2]" rMin="[Rmin]" rMax="[CMSR4]"/>
<ZSection z="-[HFRiseZ1]" rMin="[Rmin]" rMax="[CMSR4]"/>
<ZSection z="-[HFRiseZ1]" rMin="[Rmin]" rMax="[CMSR3]"/>
<ZSection z="-[HFRiseZ2]" rMin="[Rmin]" rMax="[CMSR3]"/>
<ZSection z="-[HFRiseZ2]" rMin="[Rmin]" rMax="[CMSR4]"/>
<ZSection z="[HFRiseZ2]" rMin="[Rmin]" rMax="[CMSR4]"/>
<ZSection z="[HFRiseZ2]" rMin="[Rmin]" rMax="[CMSR3]"/>
<ZSection z="[HFRiseZ1]" rMin="[Rmin]" rMax="[CMSR3]"/>
<ZSection z="[HFRiseZ1]" rMin="[Rmin]" rMax="[CMSR4]"/>
<ZSection z="[CMSZ2]" rMin="[Rmin]" rMax="[CMSR4]"/>
<ZSection z="[CMSZ2]" rMin="[Rmin]" rMax="[CMSR2]"/>
<ZSection z="[CMSZ1]" rMin="[Rmin]" rMax="[CMSR2]"/>
</Polycone>
</SolidSection>
<LogicalPartSection label="cms.xml">
<LogicalPart name="World" category="unspecified">
<rSolid name="OCMS"/>
<rMaterial name="materials:Air"/>
</LogicalPart>
<LogicalPart name="OCMS" category="unspecified">
<rSolid name="OCMS"/>
<rMaterial name="materials:Air"/>
</LogicalPart>
<LogicalPart name="MCMS" category="unspecified">
<rSolid name="OCMS"/>
<rMaterial name="materials:Air"/>
</LogicalPart>
<LogicalPart name="CMSE" category="unspecified">
<rSolid name="CMSE"/>
<rMaterial name="materials:Air"/>
</LogicalPart>
</LogicalPartSection>

</DDDefinition>
14 changes: 14 additions & 0 deletions Geometry/CMSCommonData/data/extend/v1/cmsextent.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0"?>
<DDDefinition>
<ConstantsSection label="cmsextent.xml" eval="true">
<Constant name="Rmin" value="0*fm"/>
<Constant name="Zmin" value="0*fm"/>
<Constant name="HallZ" value="27.5*m"/>
<Constant name="HallR" value="14.3*m"/>
<Constant name="HallRMax" value="17.5*m"/>
<Constant name="CMSR1" value="8.30*m"/>
<Constant name="CMSR2" value="1.00*m"/>
<Constant name="CMSZ1" value="450.0*m"/>
<Constant name="CMSZ2" value="26.0*m"/>
</ConstantsSection>
</DDDefinition>
22 changes: 22 additions & 0 deletions Geometry/HGCalCommonData/python/testHGCalV17OnlyReco_cff.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import FWCore.ParameterSet.Config as cms

# This config came from a copy of 2 files from Configuration/Geometry/python

from Geometry.HGCalCommonData.testHGCalV17OnlyXML_cfi import *
from Geometry.HcalCommonData.caloSimulationParameters_cff import *
from Geometry.HGCalCommonData.hgcalParametersInitialization_cfi import *
from Geometry.HGCalCommonData.hgcalNumberingInitialization_cfi import *

# calo
from Geometry.CaloEventSetup.HGCalTopology_cfi import *
from Geometry.HGCalGeometry.HGCalGeometryESProducer_cfi import *
from Geometry.CaloEventSetup.CaloTopology_cfi import *
from Geometry.CaloEventSetup.CaloGeometryBuilder_cfi import *
CaloGeometryBuilder = cms.ESProducer("CaloGeometryBuilder",
SelectedCalos = cms.vstring("HGCalEESensitive",
"HGCalHESiliconSensitive",
"HGCalHEScintillatorSensitive"
)
)


29 changes: 29 additions & 0 deletions Geometry/HGCalCommonData/python/testHGCalV17OnlyXML_cfi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
import FWCore.ParameterSet.Config as cms

XMLIdealGeometryESSource = cms.ESSource("XMLIdealGeometryESSource",
geomXMLFiles = cms.vstring(
'Geometry/CMSCommonData/data/materials/2021/v1/materials.xml',
'Geometry/CMSCommonData/data/rotations.xml',
'Geometry/CMSCommonData/data/extend/v1/cmsextent.xml',
'Geometry/CMSCommonData/data/cavernData/2021/v1/cavernData.xml',
'Geometry/CMSCommonData/data/cms/2030/v0/cms.xml',
'Geometry/CMSCommonData/data/cmsMother.xml',
'Geometry/CMSCommonData/data/eta3/etaMax.xml',
'Geometry/CMSCommonData/data/caloBase/2030/v7/caloBase.xml',
'Geometry/CMSCommonData/data/cmsCalo.xml',
'Geometry/HGCalCommonData/data/hgcalMaterial/v2/hgcalMaterial.xml',
'Geometry/HGCalCommonData/data/hgcal/v17/hgcal.xml',
'Geometry/HGCalCommonData/data/hgcalcell/v17/hgcalcell.xml',
'Geometry/HGCalCommonData/data/hgcalwafer/v17/hgcalwafer.xml',
'Geometry/HGCalCommonData/data/hgcalEE/v17/hgcalEE.xml',
'Geometry/HGCalCommonData/data/hgcalHEsil/v17/hgcalHEsil.xml',
'Geometry/HGCalCommonData/data/hgcalHEmix/v17/hgcalHEmix.xml',
'Geometry/HGCalCommonData/data/hgcalCons/v17/hgcalCons.xml',
'Geometry/HGCalCommonData/data/hgcalConsData/v17/hgcalConsData.xml',
'Geometry/HcalSimData/data/CaloUtil/2030/v5n/CaloUtil.xml',
'Geometry/HGCalSimData/data/hgcsensv15.xml',
'Geometry/HGCalSimData/data/hgcProdCutsv15.xml',
'Geometry/CMSCommonData/data/FieldParameters.xml'
),
rootNodeName = cms.string('cms:OCMS')
)
6 changes: 4 additions & 2 deletions Geometry/HGCalCommonData/test/python/g4OverlapCheck_cfg.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
# cmsRun g4OverlapCheck_cfg.py type=V17 tol=0.01
#
# Options for type V16, V17, V17n, V17ng, V18, V18n, V18O, V19, Wafer,
# WaferFR, WaferPR
# WaferFR, WaferPR, V17Only
# tol 1.0, 0.1, 0.01, 0.0
#
###############################################################################
Expand All @@ -18,7 +18,7 @@
"V17",
VarParsing.VarParsing.multiplicity.singleton,
VarParsing.VarParsing.varType.string,
"type of operations: V16, V17, V17n, V7ng, V18, V18n, V18O, V19, Wafer, WaferFR, WaferPR")
"type of operations: V16, V17, V17n, V7ng, V17Only, V18, V18n, V18O, V19, Wafer, WaferFR, WaferPR")
options.register('tol',
0.01,
VarParsing.VarParsing.multiplicity.singleton,
Expand All @@ -34,6 +34,8 @@

if (options.type == "V18O"):
process = cms.Process("OverlapCheck",Phase2C17I13M9,phase2_hgcalOnly)
elif (options.type == "V17Only"):
process = cms.Process("OverlapCheck",Phase2C17I13M9,phase2_hgcalOnly)
else:
process = cms.Process("OverlapCheck",Phase2C17I13M9)

Expand Down
15 changes: 15 additions & 0 deletions Geometry/HcalSimData/data/CaloUtil/2030/v5n/CaloUtil.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?xml version="1.0"?>
<DDDefinition>
<SpecParSection label="caloutil.xml" eval="true">
<SpecPar name="calo">
<PartSelector path="//CALO"/>
<Parameter name="SensitiveDetector" value="CaloTrkProcessing" eval="false"/>
<Parameter name="ReadOutName" value="CaloHitsTk" eval="false"/>
<Parameter name="Calorimeter" value="CALO" eval="false"/>
<Parameter name="Levels" value="3" eval="true"/>
<Parameter name="Neighbours" value="1" eval="true"/>
<Parameter name="Inside" value="NotFound" eval="false"/>
<Parameter name="InsideLevel" value="3" eval="true"/>
</SpecPar>
</SpecParSection>
</DDDefinition>
81 changes: 81 additions & 0 deletions SimG4CMS/Calo/test/python/runHGC10_cfg.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
import FWCore.ParameterSet.Config as cms
from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9
from Configuration.Eras.Modifier_phase2_hgcalOnly_cff import phase2_hgcalOnly

process = cms.Process("PROD",Phase2C17I13M9,phase2_hgcalOnly)
process.load("SimGeneral.HepPDTESSource.pythiapdt_cfi")
process.load("IOMC.EventVertexGenerators.VtxSmearedGauss_cfi")
process.load("Geometry.HGCalCommonData.testHGCalV17OnlyReco_cff")
process.load("Configuration.StandardSequences.MagneticField_cff")
process.load("Configuration.EventContent.EventContent_cff")
process.load('Configuration.StandardSequences.Generator_cff')
process.load('Configuration.StandardSequences.SimIdeal_cff')
process.load('FWCore.MessageService.MessageLogger_cfi')
process.load('SimG4CMS.Calo.hgcalHitScintillator_cfi')
process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
from Configuration.AlCa.GlobalTag import GlobalTag
process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase2_realistic_T21', '')

if hasattr(process,'MessageLogger'):
process.MessageLogger.HGCalGeom=dict()
process.MessageLogger.HCalGeom=dict()
process.MessageLogger.HGCalSim=dict()
process.MessageLogger.HGCSim=dict()
process.MessageLogger.CaloSim=dict()

process.load("IOMC.RandomEngine.IOMC_cff")
process.RandomNumberGeneratorService.generator.initialSeed = 456789
process.RandomNumberGeneratorService.g4SimHits.initialSeed = 9876
process.RandomNumberGeneratorService.VtxSmeared.initialSeed = 123456789

process.Timing = cms.Service("Timing")

process.maxEvents = cms.untracked.PSet(
input = cms.untracked.int32(50)
)

process.source = cms.Source("EmptySource",
firstRun = cms.untracked.uint32(1),
firstEvent = cms.untracked.uint32(1)
)

process.generator = cms.EDProducer("FlatRandomEGunProducer",
PGunParameters = cms.PSet(
PartID = cms.vint32(211),
MinEta = cms.double(1.50),
MaxEta = cms.double(2.20),
MinPhi = cms.double(-3.1415926),
MaxPhi = cms.double(-1.5707963),
MinE = cms.double(100.00),
MaxE = cms.double(100.00)
),
Verbosity = cms.untracked.int32(0),
AddAntiParticle = cms.bool(True)
)

process.output = cms.OutputModule("PoolOutputModule",
process.FEVTSIMEventContent,
fileName = cms.untracked.string('hgcV17Only.root')
)

#process.hgcalHitScintillator.tileFileName = "extraTiles.txt"
#process.g4SimHits.HGCScintSD.TileFileName = "extraTiles.txt"
process.g4SimHits.FileNameGDML = 'hgcalV17.gdml'

process.generation_step = cms.Path(process.pgen)
process.simulation_step = cms.Path(process.psim)
#process.analysis_step = cms.Path(process.hgcalHitScintillator)
process.out_step = cms.EndPath(process.output)

process.g4SimHits.Physics.type = 'SimG4Core/Physics/FTFP_BERT_EMM'

# Schedule definition
process.schedule = cms.Schedule(process.generation_step,
process.simulation_step,
# process.analysis_step,
process.out_step
)

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

0 comments on commit 45a021a

Please sign in to comment.