Skip to content

Commit 836b323

Browse files
authored
Merge pull request #47365 from bsunanda/Run3-gex187B
Run3-gex187B Correct the payload creation scripts for the years 2024 and 2025
2 parents 84db7be + 9ec7402 commit 836b323

File tree

5 files changed

+104
-84
lines changed

5 files changed

+104
-84
lines changed

CondTools/Geometry/test/writehelpers/createExtended2024DD4hepPayloads.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ cmsRun geometryExtended2024DD4hep_xmlwriter.py --geom=ExtendedGeometry2024FlatPl
5050

5151
#sed -i '{s/ExtendedGeometry2024FlatPlus05Percent/ExtendedGeometry2024FlatPlus10Percent/g}' geometryExtended2024DD4hep_xmlwriter.py
5252
#sed -i '{s/\/geFP05/\/geFP10/g}' geometryExtended2024DD4hep_xmlwriter.py
53-
cmsRun geometryExtended2024DD4hep_xmlwriter.py --geom=ExtendedGeometry2024FlatPlus05Percent --out=geFP10 || die 'failed geometryExtended2024DD4hep_xmlwriter.py' $?
53+
cmsRun geometryExtended2024DD4hep_xmlwriter.py --geom=ExtendedGeometry2024FlatPlus10Percent --out=geFP10 || die 'failed geometryExtended2024DD4hep_xmlwriter.py' $?
5454

5555
# Read the one big XML file and output a record to the
5656
# database with the an identifying tag

CondTools/Geometry/test/writehelpers/createExtended2025DD4hepPayloads.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ cmsRun geometryExtended2025DD4hep_xmlwriter.py --geom=ExtendedGeometry2025FlatPl
5050

5151
#sed -i '{s/ExtendedGeometry2025FlatPlus05Percent/ExtendedGeometry2025FlatPlus10Percent/g}' geometryExtended2025DD4hep_xmlwriter.py
5252
#sed -i '{s/\/geFP05/\/geFP10/g}' geometryExtended2025DD4hep_xmlwriter.py
53-
cmsRun geometryExtended2025DD4hep_xmlwriter.py --geom=ExtendedGeometry2025FlatPlus05Percent --out=geFP10 || die 'failed geometryExtended2025DD4hep_xmlwriter.py' $?
53+
cmsRun geometryExtended2025DD4hep_xmlwriter.py --geom=ExtendedGeometry2025FlatPlus10Percent --out=geFP10 || die 'failed geometryExtended2025DD4hep_xmlwriter.py' $?
5454

5555
# Read the one big XML file and output a record to the
5656
# database with the an identifying tag
Lines changed: 45 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#!/bin/sh
2-
2+
function die { echo $1: status $2 ; exit $2; }
33

44
if [ $# -ne 1 ]
55
then
@@ -10,84 +10,79 @@ mytag=$1
1010
echo ${mytag}
1111

1212
# Set the tag in all the scripts and the metadata text files
13-
sed -i {s/TagXX/${mytag}/g} *.py
13+
#sed -i {s/TagXX/${mytag}/g} *.py
1414
compgen -G "*.txt" > /dev/null && sed -i {s/TagXX/${mytag}/g} *.txt
1515
sed -i {s/TagXX/${mytag}/g} splitExtended2025Database.sh
1616

1717
# First read in the little XML files and create the
18-
# large XML file for the Phase1_R30F12_HCal Ideal scenario.
19-
# Input cff Output file
20-
# GeometryExtended2025_cff geSingleBigFile.xml
21-
cmsRun geometryExtended2025_xmlwriter.py
18+
# big XML file for the Extended2025 scenario.
19+
cmsRun geometryExtended2025_xmlwriter.py || die 'failed geometryExtended2025_xmlwriter.py' $?
2220

2321
# Now convert the content of the large XML file into
2422
# a "blob" and write it to the database.
2523
# Also reads in the little XML files again and fills
2624
# the DDCompactView. From the DDCompactView the
2725
# reco parts of the database are also filled.
28-
cmsRun geometryExtended2025_writer.py
26+
cmsRun geometryExtended2025_writer.py --tag=${mytag} || die 'failed geometryExtended2025_writer.py' $?
2927

3028
# Now put the other scenarios into the database.
3129
# Input the many XML files referenced by the cff file and
3230
# output a single big XML file.
3331
# This is repeated several times below. The sed commands
34-
# serve to give the following sequence of input and output
32+
# serve to give the correct sequence of input and output
3533
# files
36-
#
37-
# Input cff Output file
38-
# GeometryIdeal_cff giSingleBigFile.xml
39-
#
40-
sed -i '{s/Extended2025/Extended2025ZeroMaterial/g}' geometryExtended2025_xmlwriter.py
41-
sed -i '{s/\/ge/\/gez/g}' geometryExtended2025_xmlwriter.py
42-
cmsRun geometryExtended2025_xmlwriter.py
43-
44-
sed -i '{s/Extended2025ZeroMaterial/Extended2025FlatMinus05Percent/g}' geometryExtended2025_xmlwriter.py
45-
sed -i '{s/\/gez/\/geFM05/g}' geometryExtended2025_xmlwriter.py
46-
cmsRun geometryExtended2025_xmlwriter.py
47-
48-
sed -i '{s/Extended2025FlatMinus05Percent/Extended2025FlatMinus10Percent/g}' geometryExtended2025_xmlwriter.py
49-
sed -i '{s/\/geFM05/\/geFM10/g}' geometryExtended2025_xmlwriter.py
50-
cmsRun geometryExtended2025_xmlwriter.py
51-
52-
sed -i '{s/Extended2025FlatMinus10Percent/Extended2025FlatPlus05Percent/g}' geometryExtended2025_xmlwriter.py
53-
sed -i '{s/\/geFM10/\/geFP05/g}' geometryExtended2025_xmlwriter.py
54-
cmsRun geometryExtended2025_xmlwriter.py
55-
56-
sed -i '{s/Extended2025FlatPlus05Percent/Extended2025FlatPlus10Percent/g}' geometryExtended2025_xmlwriter.py
57-
sed -i '{s/\/geFP05/\/geFP10/g}' geometryExtended2025_xmlwriter.py
58-
cmsRun geometryExtended2025_xmlwriter.py
34+
35+
#sed -i '{s/Extended2025/Extended2025ZeroMaterial/g}' geometryExtended2025_xmlwriter.py
36+
#sed -i '{s/\/ge/\/gez/g}' geometryExtended2025_xmlwriter.py
37+
cmsRun geometryExtended2025_xmlwriter.py --geom=Extended2025ZeroMaterial --out=gez || die 'failed geometryExtended2025_xmlwriter.py Extended2025ZeroMaterial' $?
38+
39+
#sed -i '{s/Extended2025ZeroMaterial/Extended2025FlatMinus05Percent/g}' geometryExtended2025_xmlwriter.py
40+
#sed -i '{s/\/gez/\/geFM05/g}' geometryExtended2025_xmlwriter.py
41+
cmsRun geometryExtended2025_xmlwriter.py --geom=Extended2025FlatMinus05Percent --out=geFM05 || die 'failed geometryExtended2025_xmlwriter.py Extended2025FlatMinus05Percent' $?
42+
43+
#sed -i '{s/Extended2025FlatMinus05Percent/Extended2025FlatMinus10Percent/g}' geometryExtended2025_xmlwriter.py
44+
#sed -i '{s/\/geFM05/\/geFM10/g}' geometryExtended2025_xmlwriter.py
45+
cmsRun geometryExtended2025_xmlwriter.py --geom=Extended2025FlatMinus10Percent --out=geFM10 || die 'failed geometryExtended2025_xmlwriter.py' $?
46+
47+
#sed -i '{s/Extended2025FlatMinus10Percent/Extended2025FlatPlus05Percent/g}' geometryExtended2025_xmlwriter.py
48+
#sed -i '{s/\/geFM10/\/geFP05/g}' geometryExtended2025_xmlwriter.py
49+
cmsRun geometryExtended2025_xmlwriter.py --geom=Extended2025FlatPlus05Percent --out=geFP05 || die 'failed geometryExtended2025_xmlwriter.py Extended2025FlatPlus05Percent' $?
50+
51+
#sed -i '{s/Extended2025FlatPlus05Percent/Extended2025FlatPlus10Percent/g}' geometryExtended2025_xmlwriter.py
52+
#sed -i '{s/\/geFP05/\/geFP10/g}' geometryExtended2025_xmlwriter.py
53+
cmsRun geometryExtended2025_xmlwriter.py --geom=Extended2025FlatPlus10Percent --out=geFP10 || die 'failed geometryExtended2025_xmlwriter.py' $?
5954

6055
# Read the one big XML file and output a record to the
6156
# database with the an identifying tag
6257
# This is repeated several times below. The sed commands
63-
# serve to give the following sequence of input file and output
58+
# serve to give the correct sequence of input file and output
6459
# tag
65-
#
60+
# To start:
6661
# Input file Output tag
6762
# gezSingleBigFile.xml XMLFILE_Geometry_${mytag}_Extended2025ZeroMaterial_mc
68-
#
69-
sed -i '{s/Extended/Extended2025ZeroMaterial/g}' xmlgeometrywriter.py
70-
sed -i '{s/\/ge/\/gez/g}' xmlgeometrywriter.py
71-
cmsRun xmlgeometrywriter.py
7263

73-
sed -i '{s/Extended2025ZeroMaterial/Extended2025FlatMinus05Percent/g}' xmlgeometrywriter.py
74-
sed -i '{s/\/gez/\/geFM05/g}' xmlgeometrywriter.py
75-
cmsRun xmlgeometrywriter.py
64+
#sed -i '{s/Extended/Extended2025ZeroMaterial/g}' xmlgeometrywriter.py
65+
#sed -i '{s/\/ge/\/gez/g}' xmlgeometrywriter.py
66+
cmsRun xmlgeometrywriter.py --tag=${mytag} --out=Extended2025ZeroMaterial --inPre=gez|| die 'failed xmlgeometrywriter.py Extended2025ZeroMaterial' $?
67+
68+
#sed -i '{s/Extended2025ZeroMaterial/Extended2025FlatMinus05Percent/g}' xmlgeometrywriter.py
69+
#sed -i '{s/\/gez/\/geFM05/g}' xmlgeometrywriter.py
70+
cmsRun xmlgeometrywriter.py --tag=${mytag} --out=Extended2025FlatMinus05Percent --inPre=geFM05 || die 'failed xmlgeometrywriter.py Extended2025FlatMinus05Percent' $?
7671

77-
sed -i '{s/Extended2025FlatMinus05Percent/Extended2025FlatMinus10Percent/g}' xmlgeometrywriter.py
78-
sed -i '{s/\/geFM05/\/geFM10/g}' xmlgeometrywriter.py
79-
cmsRun xmlgeometrywriter.py
72+
#sed -i '{s/Extended2025FlatMinus05Percent/Extended2025FlatMinus10Percent/g}' xmlgeometrywriter.py
73+
#sed -i '{s/\/geFM05/\/geFM10/g}' xmlgeometrywriter.py
74+
cmsRun xmlgeometrywriter.py --tag=${mytag} --out=Extended2025FlatMinus10Percent --inPre=geFM10 || die 'failed xmlgeometrywriter.py Extended2025FlatMinus10Percent' $?
8075

81-
sed -i '{s/Extended2025FlatMinus10Percent/Extended2025FlatPlus05Percent/g}' xmlgeometrywriter.py
82-
sed -i '{s/\/geFM10/\/geFP05/g}' xmlgeometrywriter.py
83-
cmsRun xmlgeometrywriter.py
76+
#sed -i '{s/Extended2025FlatMinus10Percent/Extended2025FlatPlus05Percent/g}' xmlgeometrywriter.py
77+
#sed -i '{s/\/geFM10/\/geFP05/g}' xmlgeometrywriter.py
78+
cmsRun xmlgeometrywriter.py --tag=${mytag} --out=Extended2025FlatPlus05Percent --inPre=geFP05 || die 'failed xmlgeometrywriter.py Extended2025FlatPlus05Percent' $?
8479

85-
sed -i '{s/Extended2025FlatPlus05Percent/Extended2025FlatPlus10Percent/g}' xmlgeometrywriter.py
86-
sed -i '{s/\/geFP05/\/geFP10/g}' xmlgeometrywriter.py
87-
cmsRun xmlgeometrywriter.py
80+
#sed -i '{s/Extended2025FlatPlus05Percent/Extended2025FlatPlus10Percent/g}' xmlgeometrywriter.py
81+
#sed -i '{s/\/geFP05/\/geFP10/g}' xmlgeometrywriter.py
82+
cmsRun xmlgeometrywriter.py --tag=${mytag} --out=Extended2025FlatPlus10Percent --inPre=geFP10 || die 'failed xmlgeometrywriter.py Extended2025FlatPlus10Percent' $?
8883

8984
# All the database objects were written into one database
9085
# (myfile.db) in the steps above. Extract the different
9186
# pieces into separate database files. These are the payloads
92-
# that get uploaded to the dropbox. There is one for each tag
87+
# that get uploaded to the DB. There is one for each tag
9388
./splitExtended2025Database.sh

CondTools/Geometry/test/writehelpers/geometryExtended2025_writer.py

Lines changed: 43 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,35 @@
11
import FWCore.ParameterSet.Config as cms
2+
import argparse
3+
import sys
24

3-
process = cms.Process("GeometryWriter")
5+
parser = argparse.ArgumentParser(prog=sys.argv[0], description='Generate XML geometry.')
6+
parser.add_argument("--tag", help="global tag to use", type=str)
7+
args = parser.parse_args()
8+
9+
10+
import FWCore.ParameterSet.Config as cms
11+
from Configuration.Eras.Era_Run3_DDD_cff import Run3_DDD
12+
13+
process = cms.Process("GeometryWriter", Run3_DDD)
414

515
process.load('CondCore.CondDB.CondDB_cfi')
616

7-
# This will read all the little XML files and from
8-
# that fill the DDCompactView. The modules that fill
9-
# the reco part of the database need the DDCompactView.
1017
process.load('Configuration.Geometry.GeometryExtended2025_cff')
11-
process.load('Geometry.MuonNumbering.muonNumberingInitialization_cfi')
12-
process.load("Geometry.MuonNumbering.muonGeometryConstants_cff")
1318
process.load('Geometry.CaloEventSetup.CaloGeometryDBWriter_cfi')
1419
process.load('CondTools.Geometry.HcalParametersWriter_cff')
20+
process.load("Geometry.MuonNumbering.muonGeometryConstants_cff")
21+
process.load("Geometry.ForwardGeometry.ZdcGeometry_cfi")
22+
23+
process.CaloGeometryBuilder = cms.ESProducer("CaloGeometryBuilder",
24+
SelectedCalos = cms.vstring(
25+
'HCAL',
26+
'ZDC',
27+
'EcalBarrel',
28+
'EcalEndcap',
29+
'EcalPreshower',
30+
'TOWER'
31+
)
32+
)
1533

1634
process.source = cms.Source("EmptyIOVSource",
1735
lastValue = cms.uint64(1),
@@ -21,10 +39,7 @@
2139
)
2240

2341
# This reads the big XML file and the only way to fill the
24-
# nonreco part of the database is to read this file. It
25-
# somewhat duplicates the information read from the little
26-
# XML files, but there is no way to directly build the
27-
# DDCompactView from this.
42+
# nonreco part of the database is to read this file.
2843
process.XMLGeometryWriter = cms.EDAnalyzer("XMLGeometryBuilder",
2944
XMLFileName = cms.untracked.string("./geSingleBigFile.xml"),
3045
ZIP = cms.untracked.bool(True)
@@ -33,36 +48,36 @@
3348
process.TrackerGeometryWriter = cms.EDAnalyzer("PGeometricDetBuilder",fromDD4hep=cms.bool(False))
3449
process.TrackerParametersWriter = cms.EDAnalyzer("PTrackerParametersDBBuilder",fromDD4hep=cms.bool(False))
3550

36-
process.CaloGeometryWriter = cms.EDAnalyzer("PCaloGeometryBuilder")
51+
process.CaloGeometryWriter = cms.EDAnalyzer("PCaloGeometryBuilder",fromDD4hep = cms.untracked.bool(False))
3752

3853
process.CSCGeometryWriter = cms.EDAnalyzer("CSCRecoIdealDBLoader",fromDD4hep = cms.untracked.bool(False))
3954

4055
process.DTGeometryWriter = cms.EDAnalyzer("DTRecoIdealDBLoader",fromDD4hep = cms.untracked.bool(False))
4156

4257
process.RPCGeometryWriter = cms.EDAnalyzer("RPCRecoIdealDBLoader",fromDD4hep = cms.untracked.bool(False))
4358

44-
process.GEMGeometryWriter = cms.EDAnalyzer("GEMRecoIdealDBLoader")
59+
process.GEMGeometryWriter = cms.EDAnalyzer("GEMRecoIdealDBLoader",fromDD4hep = cms.untracked.bool(False))
4560

4661
process.CondDB.timetype = cms.untracked.string('runnumber')
4762
process.CondDB.connect = cms.string('sqlite_file:myfile.db')
4863
process.PoolDBOutputService = cms.Service("PoolDBOutputService",
4964
process.CondDB,
50-
toPut = cms.VPSet(cms.PSet(record = cms.string('GeometryFileRcd'),tag = cms.string('XMLFILE_Geometry_TagXX_Extended2025_mc')),
51-
cms.PSet(record = cms.string('IdealGeometryRecord'),tag = cms.string('TKRECO_Geometry_TagXX')),
52-
cms.PSet(record = cms.string('PTrackerParametersRcd'),tag = cms.string('TKParameters_Geometry_TagXX')),
53-
cms.PSet(record = cms.string('PEcalBarrelRcd'), tag = cms.string('EBRECO_Geometry_TagXX')),
54-
cms.PSet(record = cms.string('PEcalEndcapRcd'), tag = cms.string('EERECO_Geometry_TagXX')),
55-
cms.PSet(record = cms.string('PEcalPreshowerRcd'),tag = cms.string('EPRECO_Geometry_TagXX')),
56-
cms.PSet(record = cms.string('PHcalRcd'), tag = cms.string('HCALRECO_Geometry_TagXX')),
57-
cms.PSet(record = cms.string('HcalParametersRcd'), tag = cms.string('HCALParameters_Geometry_TagXX')),
58-
cms.PSet(record = cms.string('PCaloTowerRcd'), tag = cms.string('CTRECO_Geometry_TagXX')),
59-
cms.PSet(record = cms.string('PZdcRcd'), tag = cms.string('ZDCRECO_Geometry_TagXX')),
60-
cms.PSet(record = cms.string('PCastorRcd'), tag = cms.string('CASTORRECO_Geometry_TagXX')),
61-
cms.PSet(record = cms.string('CSCRecoGeometryRcd'),tag = cms.string('CSCRECO_Geometry_TagXX')),
62-
cms.PSet(record = cms.string('CSCRecoDigiParametersRcd'),tag = cms.string('CSCRECODIGI_Geometry_TagXX')),
63-
cms.PSet(record = cms.string('DTRecoGeometryRcd'),tag = cms.string('DTRECO_Geometry_TagXX')),
64-
cms.PSet(record = cms.string('RPCRecoGeometryRcd'),tag = cms.string('RPCRECO_Geometry_TagXX')),
65-
cms.PSet(record = cms.string('GEMRecoGeometryRcd'),tag = cms.string('GEMRECO_Geometry_TagXX'))
65+
toPut = cms.VPSet(cms.PSet(record = cms.string('GeometryFileRcd'),tag = cms.string('XMLFILE_Geometry_'+args.tag+'_Extended2025_mc')),
66+
cms.PSet(record = cms.string('IdealGeometryRecord'),tag = cms.string('TKRECO_Geometry_'+args.tag)),
67+
cms.PSet(record = cms.string('PTrackerParametersRcd'),tag = cms.string('TKParameters_Geometry_'+args.tag)),
68+
cms.PSet(record = cms.string('PEcalBarrelRcd'), tag = cms.string('EBRECO_Geometry_'+args.tag)),
69+
cms.PSet(record = cms.string('PEcalEndcapRcd'), tag = cms.string('EERECO_Geometry_'+args.tag)),
70+
cms.PSet(record = cms.string('PEcalPreshowerRcd'),tag = cms.string('EPRECO_Geometry_'+args.tag)),
71+
cms.PSet(record = cms.string('PHcalRcd'), tag = cms.string('HCALRECO_Geometry_'+args.tag)),
72+
cms.PSet(record = cms.string('HcalParametersRcd'), tag = cms.string('HCALParameters_Geometry_'+args.tag)),
73+
cms.PSet(record = cms.string('PCaloTowerRcd'), tag = cms.string('CTRECO_Geometry_'+args.tag)),
74+
cms.PSet(record = cms.string('PZdcRcd'), tag = cms.string('ZDCRECO_Geometry_'+args.tag)),
75+
cms.PSet(record = cms.string('PCastorRcd'), tag = cms.string('CASTORRECO_Geometry_'+args.tag)),
76+
cms.PSet(record = cms.string('CSCRecoGeometryRcd'),tag = cms.string('CSCRECO_Geometry_'+args.tag)),
77+
cms.PSet(record = cms.string('CSCRecoDigiParametersRcd'),tag = cms.string('CSCRECODIGI_Geometry_'+args.tag)),
78+
cms.PSet(record = cms.string('DTRecoGeometryRcd'),tag = cms.string('DTRECO_Geometry_'+args.tag)),
79+
cms.PSet(record = cms.string('RPCRecoGeometryRcd'),tag = cms.string('RPCRECO_Geometry_'+args.tag)),
80+
cms.PSet(record = cms.string('GEMRecoGeometryRcd'),tag = cms.string('GEMRECO_Geometry_'+args.tag))
6681
)
6782
)
6883

CondTools/Geometry/test/writehelpers/geometryExtended2025_xmlwriter.py

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,18 @@
11
import FWCore.ParameterSet.Config as cms
22

3+
import argparse
4+
import sys
5+
6+
parser = argparse.ArgumentParser(prog=sys.argv[0], description='Generate XML geometry.')
7+
parser.add_argument("--geom", help="Name of parameter", type=str, default='Extended2025')
8+
parser.add_argument("--out", help="Prefix for output file", type=str, default='ge')
9+
10+
args = parser.parse_args()
11+
import FWCore.ParameterSet.Config as cms
12+
313
process = cms.Process("GeometryXMLWriter")
414

5-
process.load('Configuration.Geometry.GeometryExtended2025_cff')
15+
process.load("Configuration.Geometry.Geometry"+args.geom+"_cff")
616

717
process.source = cms.Source("EmptyIOVSource",
818
lastValue = cms.uint64(1),
@@ -12,9 +22,9 @@
1222
)
1323

1424
process.BigXMLWriter = cms.EDAnalyzer("OutputDDToDDL",
15-
rotNumSeed = cms.int32(0),
16-
fileName = cms.untracked.string("./geSingleBigFile.xml")
17-
)
25+
rotNumSeed = cms.int32(0),
26+
fileName = cms.untracked.string("./"+args.out+"SingleBigFile.xml")
27+
)
1828

1929

2030
process.maxEvents = cms.untracked.PSet(

0 commit comments

Comments
 (0)