test
CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
dumpSimGeometry_cfg.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 import sys
3 import FWCore.ParameterSet.VarParsing as VarParsing
4 from FWCore.Utilities.Enumerate import Enumerate
5 
6 varType = Enumerate ("Run1 Ideal2015 Ideal2015dev 2015 2015dev GEMDev RPC4RE11 2017 2017dev 2017new 2017NewFPix 2019 2023D1 2023D2 2023D3 MaPSA CRack DB")
7 
8 def help():
9  print "Usage: cmsRun dumpSimGeometry_cfg.py tag=TAG "
10  print " tag=tagname"
11  print " indentify geometry condition database tag"
12  print " ", varType.keys()
13  print ""
14  print " out=outputFileName"
15  print " default is cmsSimGeom<tag>.root"
16  print
17  exit(1);
18 
19 def simGeoLoad(score):
20  print "Loading configuration for tag ", options.tag ,"...\n"
21  if score == "Run1":
22  process.load("Geometry.CMSCommonData.cmsIdealGeometryXML_cfi")
23 
24  elif score == "2015":
25  process.load("Geometry.CMSCommonData.cmsExtendedGeometry2015XML_cfi")
26 
27  elif score == "2015dev":
28  process.load("Geometry.CMSCommonData.cmsExtendedGeometry2015devXML_cfi")
29 
30  elif score == "GEMDev":
31  process.load("Geometry.CMSCommonData.cmsExtendedGeometry2015MuonGEMDevXML_cfi")
32 
33  elif score == "Ideal2015":
34  process.load("Geometry.CMSCommonData.cmsIdealGeometry2015XML_cfi")
35 
36  elif score == "Ideal2015dev":
37  process.load("Geometry.CMSCommonData.cmsIdealGeometry2015devXML_cfi")
38 
39  elif score == "RPC4RE11":
40  process.load("Geometry.CMSCommonData.cmsExtendedGeometry2015XML_RPC4RE11_cfi")
41 
42  elif score == "2017":
43  process.load('Configuration.Geometry.GeometryExtended2017Reco_cff')
44 
45  elif score == "2017dev":
46  process.load("Geometry.CMSCommonData.cmsExtendedGeometry2017devXML_cfi")
47 
48  elif score == "2017new":
49  process.load("Geometry.CMSCommonData.cmsExtendedGeometry2017newXML_cfi")
50 
51  elif score == "2017NewFPix":
52  process.load("Geometry.CMSCommonData.cmsExtendedGeometry2017XML_NewFPix_cfi")
53 
54  elif score == "2019":
55  process.load('Configuration.Geometry.GeometryExtended2019Reco_cff')
56 
57  elif score == "2023D1":
58  process.load('Geometry.CMSCommonData.cmsExtendedGeometry2023D1XML_cfi')
59 
60  elif score == "2023D2":
61  process.load('Geometry.CMSCommonData.cmsExtendedGeometry2023D2XML_cfi')
62 
63  elif score == "2023D3":
64  process.load('Geometry.CMSCommonData.cmsExtendedGeometry2023D3XML_cfi')
65 
66  elif score == "2023D4":
67  process.load('Geometry.CMSCommonData.cmsExtendedGeometry2023D4XML_cfi')
68 
69  elif score == "2023D5":
70  process.load('Geometry.CMSCommonData.cmsExtendedGeometry2023D5XML_cfi')
71 
72  elif score == "MaPSA":
73  process.load('Geometry.TrackerCommonData.mapsaGeometryXML_cfi')
74 
75  elif score == "CRack":
76  process.load('Geometry.TrackerCommonData.crackGeometryXML_cfi')
77 
78  elif score == "DB":
79  process.load("Configuration.StandardSequences.GeometryDB_cff")
80  process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
81  from Configuration.AlCa.autoCond import autoCond
82  process.GlobalTag.globaltag = autoCond['run2_mc']
83 
84  else:
85  help()
86 
87 
88 
90 
91 defaultTag=str(2015);
92 defaultLevel=14;
93 defaultOutputFileName="cmsSimGeom.root"
94 
95 options.register ('tag',
96  defaultTag, # default value
97  VarParsing.VarParsing.multiplicity.singleton,
98  VarParsing.VarParsing.varType.string,
99  "info about geometry database conditions")
100 options.register ('out',
101  defaultOutputFileName, # default value
102  VarParsing.VarParsing.multiplicity.singleton,
103  VarParsing.VarParsing.varType.string,
104  "Output file name")
105 
106 
107 options.parseArguments()
108 
109 
110 if (options.out == defaultOutputFileName ):
111  options.out = "cmsSimGeom-" + str(options.tag) + ".root"
112 
113 process = cms.Process("SIMDUMP")
114 simGeoLoad(options.tag)
115 
116 process.source = cms.Source("EmptySource")
117 
118 process.maxEvents = cms.untracked.PSet(input = cms.untracked.int32(1))
119 
120 process.add_(cms.ESProducer("TGeoMgrFromDdd",
121  verbose = cms.untracked.bool(False),
122  level = cms.untracked.int32(defaultLevel)
123 ))
124 
125 process.dump = cms.EDAnalyzer("DumpSimGeometry",
126  tag = cms.untracked.string(options.tag),
127  outputFileName = cms.untracked.string(options.out))
128 
129 process.p = cms.Path(process.dump)