Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:03:26

0001 #  for phase2
0002 
0003 import FWCore.ParameterSet.Config as cms
0004 from Configuration.StandardSequences.Eras import eras
0005 import sys
0006 
0007 process = cms.Process("SiPixelLorentzAngleLoader",eras.Phase2)
0008 
0009 import FWCore.ParameterSet.VarParsing as opts
0010 opt = opts.VarParsing ('analysis')
0011 
0012 opt.register('geometry',          'T25',
0013              opts.VarParsing.multiplicity.singleton, 
0014              opts.VarParsing.varType.string,
0015              'Tracker Geometry Default = T15')
0016 
0017 opt.register('isEmpty',  False,
0018              opts.VarParsing.multiplicity.singleton, 
0019              opts.VarParsing.varType.bool,
0020              'If True, produce empty payload forWidth')
0021 
0022 opt.parseArguments()
0023 
0024 tGeometry = opt.geometry
0025 if tGeometry == 'T5':
0026     geometry_cff = 'GeometryExtended2023D17_cff'
0027     recoGeometry_cff = 'GeometryExtended2023D17Reco_cff'
0028     has3DinL1 = False
0029     LA_value = 0.106
0030     tag = 'SiPixelLorentzAngle_Phase2_T5' 
0031     
0032 elif tGeometry == 'T6':
0033     geometry_cff = 'GeometryExtended2023D35_cff'
0034     recoGeometry_cff = 'GeometryExtended2023D35Reco_cff'
0035     has3DinL1 = False
0036     LA_value = 0.106
0037     tag = 'SiPixelLorentzAngle_Phase2_T6' 
0038     
0039 elif tGeometry == 'T11':
0040     geometry_cff = 'GeometryExtended2023D29_cff'
0041     recoGeometry_cff = 'GeometryExtended2023D29Reco_cff'
0042     has3DinL1 = False
0043     LA_value = 0.106
0044     tag = 'SiPixelLorentzAngle_Phase2_T11' 
0045     
0046 elif tGeometry == 'T14':
0047     geometry_cff = 'GeometryExtended2023D41_cff'
0048     recoGeometry_cff = 'GeometryExtended2023D41Reco_cff'
0049     has3DinL1 = False
0050     LA_value = 0.106
0051     tag = 'SiPixelLorentzAngle_Phase2_T14' 
0052     
0053 elif tGeometry == 'T15':
0054     geometry_cff = 'GeometryExtended2023D42_cff'
0055     recoGeometry_cff = 'GeometryExtended2023D42Reco_cff'
0056     has3DinL1 = False
0057     LA_value = 0.0503
0058     tag = 'SiPixelLorentzAngle_Phase2_T15' 
0059 
0060 elif tGeometry == 'T25':
0061     geometry_cff = 'GeometryExtended2026D97_cff'
0062     recoGeometry_cff = 'GeometryExtended2026D97Reco_cff'
0063     has3DinL1 = True
0064     LA_value = 0.0503
0065     tag = 'SiPixelLorentzAngle_Phase2_T25_v1'
0066 
0067 elif tGeometry == 'T33':
0068     geometry_cff = 'GeometryExtended2026D102_cff'
0069     recoGeometry_cff = 'GeometryExtended2026D102Reco_cff'
0070     has3DinL1 = True
0071     LA_value = 0.0503
0072     tag = 'SiPixelLorentzAngle_Phase2_T33_v1'
0073 else:
0074     print("Unknown tracker geometry")
0075     print("What are you doing ?!?!?!?!")
0076     exit(1)
0077     
0078 if opt.isEmpty:
0079     LA_value = 0
0080     tag += '_forWidthEmpty'
0081     
0082 sqlite_file = 'sqlite_file:' + tag + '.db'
0083 geometry_cff = 'Configuration.Geometry.' + geometry_cff
0084 recoGeometry_cff = 'Configuration.Geometry.' + recoGeometry_cff
0085 
0086 
0087 process.load(recoGeometry_cff)
0088 process.load(geometry_cff)
0089 
0090 process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
0091 from Configuration.AlCa.GlobalTag import GlobalTag
0092 process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase2_realistic_'+tGeometry, '')
0093 
0094 process.load("FWCore.MessageService.MessageLogger_cfi")
0095 
0096 process.source = cms.Source("EmptyIOVSource",
0097                             firstValue = cms.uint64(1),
0098                             lastValue = cms.uint64(1),
0099                             timetype = cms.string('runnumber'),
0100                             interval = cms.uint64(1)
0101 )
0102 
0103 process.maxEvents = cms.untracked.PSet(
0104     input = cms.untracked.int32(1)
0105 )
0106 
0107 ##### DATABASE CONNNECTION AND INPUT TAGS ######
0108 process.PoolDBOutputService = cms.Service(
0109     "PoolDBOutputService",
0110     BlobStreamerName = cms.untracked.string('TBufferBlobStreamingService'),
0111     DBParameters = cms.PSet(
0112     authenticationPath = cms.untracked.string('.'),
0113         connectionRetrialPeriod = cms.untracked.int32(10),
0114         idleConnectionCleanupPeriod = cms.untracked.int32(10),
0115         messageLevel = cms.untracked.int32(1),
0116         enablePoolAutomaticCleanUp = cms.untracked.bool(False),
0117         enableConnectionSharing = cms.untracked.bool(True),
0118         connectionRetrialTimeOut = cms.untracked.int32(60),
0119         connectionTimeOut = cms.untracked.int32(0),
0120         enableReadOnlySessionOnUpdateConnection = cms.untracked.bool(False)
0121     ),
0122     timetype = cms.untracked.string('runnumber'),    
0123     connect = cms.string(sqlite_file),        
0124     toPut = cms.VPSet(
0125         cms.PSet(
0126             #record = cms.string('SiPixelLorentzAngleSimRcd'),
0127             record = cms.string('SiPixelLorentzAngleRcd'),
0128             tag = cms.string(tag)         
0129         ),
0130     )
0131 )
0132 
0133 ###### LORENTZ ANGLE OBJECT ######
0134 process.SiPixelLorentzAngle = cms.EDAnalyzer(
0135     "SiPixelLorentzAngleDBLoader",
0136     
0137     # enter -9999 if individual input
0138     bPixLorentzAnglePerTesla = cms.untracked.double(-9999 if has3DinL1 else LA_value),
0139     fPixLorentzAnglePerTesla = cms.untracked.double(-9999 if has3DinL1 else LA_value),
0140 
0141     #in case of PSet (only works if above is -9999)
0142     # One common value for BPix for now
0143     BPixParameters = cms.untracked.VPSet(
0144         cms.PSet(layer = cms.int32(1), angle = cms.double(0.00)),
0145         cms.PSet(layer = cms.int32(2), angle = cms.double(LA_value)),
0146         cms.PSet(layer = cms.int32(3), angle = cms.double(LA_value)),
0147         cms.PSet(layer = cms.int32(4), angle = cms.double(LA_value)),
0148     ),
0149     FPixParameters = cms.untracked.VPSet(
0150         cms.PSet(angle = cms.double(0.0) 
0151              ),
0152     ),    
0153     # List of Exceptions
0154     ModuleParameters = cms.untracked.VPSet(
0155     ),
0156 
0157     useFile = cms.bool(False),
0158     #record = cms.untracked.string('SiPixelLorentzAngleRcd'),  
0159     #record = cms.untracked.string('SiPixelLorentzAngleSimRcd'),  
0160     fileName = cms.string('lorentzFit.txt') 
0161 )
0162 
0163 process.p = cms.Path(
0164     #    process.SiPixelLorentzAngleSim
0165     process.SiPixelLorentzAngle
0166 )
0167