Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-11-25 02:29:25

0001 import os
0002 import shlex, subprocess
0003 import shutil, getpass
0004 
0005 import FWCore.ParameterSet.Config as cms
0006 
0007 process = cms.Process("SiPixelInclusiveBuilder")
0008 
0009 process.load("FWCore.MessageService.MessageLogger_cfi")
0010 process.MessageLogger.cerr.enable = False
0011 process.MessageLogger.cout = dict(enable = True, threshold = "INFO")
0012 
0013 process.load("Configuration.StandardSequences.MagneticField_cff")
0014 
0015 process.load("Geometry.CMSCommonData.cmsIdealGeometryXML_cfi")
0016 
0017 process.load("CalibTracker.Configuration.TrackerAlignment.TrackerAlignment_Fake_cff")
0018 
0019 process.load("Geometry.TrackerGeometryBuilder.trackerGeometry_cfi")
0020 
0021 process.load("Geometry.TrackerNumberingBuilder.trackerNumberingGeometry_cfi")
0022 
0023 process.load("CondTools.SiPixel.SiPixelGainCalibrationService_cfi")
0024 
0025 process.load("CondCore.CondDB.CondDB_cfi")
0026 
0027 process.source = cms.Source("EmptyIOVSource",
0028     firstValue = cms.uint64(1),
0029     lastValue = cms.uint64(1),
0030     timetype = cms.string('runnumber'),
0031     interval = cms.uint64(1)
0032 )
0033 
0034 process.maxEvents = cms.untracked.PSet(
0035     input = cms.untracked.int32(1)
0036 )
0037 
0038 try:
0039     user = os.environ["USER"]
0040 except KeyError:
0041     # user = commands.getoutput('whoami')
0042     # user = subprocess.call('whoami')
0043     # faster, "cheaper" (in terms of resources), and more secure
0044     user = getpass.getuser()
0045  
0046 #file = "/tmp/" + user + "/prova.db"
0047 file = "prova.db"
0048 sqlfile = "sqlite_file:" + file
0049 print('\n-> Uploading as user %s into file %s, i.e. %s\n' % (user, file, sqlfile))
0050 
0051 #subprocess.call(["/bin/cp", "prova.db", file])
0052 #subprocess.call(["/bin/mv", "prova.db", "prova_old.db"])
0053 #faster as it doesn't spawn a process
0054 shutil.move("prova.db", "prova_old.db")
0055 
0056 
0057 ##### DATABASE CONNNECTION AND INPUT TAGS ######
0058 process.PoolDBOutputService = cms.Service("PoolDBOutputService",
0059     BlobStreamerName = cms.untracked.string('TBufferBlobStreamingService'),
0060     DBParameters = cms.PSet(
0061         authenticationPath = cms.untracked.string('.'),
0062         connectionRetrialPeriod = cms.untracked.int32(10),
0063         idleConnectionCleanupPeriod = cms.untracked.int32(10),
0064         messageLevel = cms.untracked.int32(1),
0065         enablePoolAutomaticCleanUp = cms.untracked.bool(False),
0066         enableConnectionSharing = cms.untracked.bool(True),
0067         connectionRetrialTimeOut = cms.untracked.int32(60),
0068         connectionTimeOut = cms.untracked.int32(0),
0069         enableReadOnlySessionOnUpdateConnection = cms.untracked.bool(False)
0070     ),
0071     timetype = cms.untracked.string('runnumber'),
0072     connect = cms.string(sqlfile),
0073     toPut = cms.VPSet(
0074 #        cms.PSet(
0075 #            record = cms.string('SiPixelFedCablingMapRcd'),
0076 #            tag = cms.string('SiPixelFedCablingMap_v14')
0077 #        ), 
0078         cms.PSet(
0079             record = cms.string('SiPixelLorentzAngleRcd'),
0080             tag = cms.string('SiPixelLorentzAngle_v01')
0081         ),
0082 ###        cms.PSet(
0083 ###            record = cms.string('SiPixelLorentzAngleSimRcd'),
0084 ###            tag = cms.string('SiPixelLorentzAngleSim_v01')
0085 ###        ),
0086 #        cms.PSet(
0087 #            record = cms.string('SiPixelTemplateDBObjectRcd'),
0088 #            tag = cms.string('SiPixelTemplateDBObject')
0089 #        ),
0090 #        cms.PSet(
0091 #           record = cms.string('SiPixelQualityFromDbRcd'),
0092 #           tag = cms.string('SiPixelQuality_test')
0093 #        ),
0094 #        cms.PSet(
0095 #            record = cms.string('SiPixelGainCalibrationOfflineRcd'),
0096 #            tag = cms.string('SiPixelGainCalibration_TBuffer_const')
0097 #        ), 
0098 #        cms.PSet(
0099 #            record = cms.string('SiPixelGainCalibrationForHLTRcd'),
0100 #            tag = cms.string('SiPixelGainCalibration_TBuffer_hlt_const')
0101 #        ),
0102 #        cms.PSet(
0103 #            record = cms.string('SiPixelGainCalibrationOfflineSimRcd'),
0104 #            tag = cms.string('SiPixelGainCalibrationSim_TBuffer_const_new')
0105 #        ), 
0106 #        cms.PSet(
0107 #            record = cms.string('SiPixelGainCalibrationForHLTSimRcd'),
0108 #            tag = cms.string('SiPixelGainCalibrationSim_TBuffer_hlt_const')
0109 #        )
0110                      )
0111 )
0112 
0113 
0114 
0115 
0116 
0117 
0118 
0119 
0120 ###### TEMPLATE OBJECT UPLOADER ######
0121 MagFieldValue = 3.8
0122 if ( MagFieldValue==0 ):
0123     MagFieldString = '0'
0124     files_to_upload = cms.vstring(
0125         "CalibTracker/SiPixelESProducers/data/template_summary_zp0022.out",
0126         "CalibTracker/SiPixelESProducers/data/template_summary_zp0023.out")
0127     theDetIds      = cms.vuint32( 1, 2) # 0 is for all, 1 is Barrel, 2 is EndCap
0128     theTemplateIds = cms.vuint32(22,23)
0129 elif(MagFieldValue==4):
0130     MagFieldString = '4'
0131     files_to_upload = cms.vstring(
0132         "CalibTracker/SiPixelESProducers/data/template_summary_zp0018.out",
0133         "CalibTracker/SiPixelESProducers/data/template_summary_zp0019.out")
0134     theDetIds      = cms.vuint32( 1, 2)
0135     theTemplateIds = cms.vuint32(18,19)
0136 elif(MagFieldValue==3.8 or MagFieldValue==38):
0137     MagFieldString = '38'
0138     files_to_upload = cms.vstring(
0139         "CalibTracker/SiPixelESProducers/data/template_summary_zp0020.out",
0140         "CalibTracker/SiPixelESProducers/data/template_summary_zp0021.out")
0141     theDetIds      = cms.vuint32( 1, 2)
0142     theTemplateIds = cms.vuint32(20,21)
0143 elif(MagFieldValue==2):
0144     MagFieldString = '2'
0145     files_to_upload = cms.vstring(
0146         "CalibTracker/SiPixelESProducers/data/template_summary_zp0030.out",
0147         "CalibTracker/SiPixelESProducers/data/template_summary_zp0031.out")
0148     theDetIds      = cms.vuint32( 1, 2)
0149     theTemplateIds = cms.vuint32(30,31)
0150 elif(MagFieldValue==3):
0151     MagFieldString = '3'
0152     files_to_upload = cms.vstring(
0153         "CalibTracker/SiPixelESProducers/data/template_summary_zp0032.out",
0154         "CalibTracker/SiPixelESProducers/data/template_summary_zp0033.out")
0155     theDetIds      = cms.vuint32( 1, 2)
0156     theTemplateIds = cms.vuint32(32,33)
0157 elif(MagFieldValue==3.5 or MagFieldValue==35):
0158     MagFieldString = '35'
0159     files_to_upload = cms.vstring(
0160         "CalibTracker/SiPixelESProducers/data/template_summary_zp0034.out",
0161         "CalibTracker/SiPixelESProducers/data/template_summary_zp0035.out")
0162     theDetIds      = cms.vuint32( 1, 2)
0163     theTemplateIds = cms.vuint32(34,35)
0164 
0165 version = "v2"
0166 template_base = 'SiPixelTemplateDBObject' + MagFieldString + 'T'
0167 print('\nUploading %s%s with record SiPixelTemplateDBObjectRcd in file siPixelTemplates%sT.db\n' % (template_base,version,MagFieldString))
0168 
0169 process.TemplateUploader = cms.EDAnalyzer("SiPixelTemplateDBObjectUploader",
0170                                           siPixelTemplateCalibrations = files_to_upload,
0171                                           theTemplateBaseString = cms.string(template_base),
0172                                           Version = cms.double(3.0),
0173                                           MagField = cms.double(MagFieldValue),
0174                                           detIds = theDetIds,
0175                                           templateIds = theTemplateIds
0176 )
0177 
0178 
0179 
0180 
0181 ###### QUALITY OBJECT MAKER #######
0182 process.QualityObjectMaker = cms.EDAnalyzer("SiPixelBadModuleByHandBuilder",
0183     BadModuleList = cms.untracked.VPSet(cms.PSet(
0184         errortype = cms.string('whole'),
0185         detid = cms.uint32(302197784)
0186          ),
0187         cms.PSet(
0188             errortype = cms.string('whole'),
0189             detid = cms.uint32(302195232)
0190         ),
0191         cms.PSet(
0192             errortype = cms.string('whole'),
0193             detid = cms.uint32(344014348)
0194         )),
0195     Record = cms.string('SiPixelQualityFromDbRcd'),
0196     SinceAppendMode = cms.bool(True),
0197     IOVMode = cms.string('Run'),
0198     printDebug = cms.untracked.bool(True),
0199     doStoreOnDB = cms.bool(True)
0200 
0201 )
0202 
0203 
0204 
0205 ##### CABLE MAP OBJECT ######
0206 process.PixelToLNKAssociateFromAsciiESProducer = cms.ESProducer("PixelToLNKAssociateFromAsciiESProducer",
0207     fileName = cms.string('pixelToLNK.ascii')
0208 )
0209 
0210 
0211 process.MapWriter = cms.EDAnalyzer("SiPixelFedCablingMapWriter",
0212     record = cms.string('SiPixelFedCablingMapRcd'),
0213     associator = cms.untracked.string('PixelToLNKAssociateFromAscii')
0214 )
0215 
0216 
0217 
0218 ###### LORENTZ ANGLE OBJECT ######
0219 process.SiPixelLorentzAngle = cms.EDAnalyzer("SiPixelLorentzAngleDB",
0220     magneticField = cms.double(3.8),
0221     #in case of PSet
0222     BPixParameters = cms.untracked.VPSet(
0223         cms.PSet(
0224             layer = cms.uint32(1),
0225             module = cms.uint32(1),
0226             angle = cms.double(0.09103)
0227         ),
0228         cms.PSet(
0229             layer = cms.uint32(1),
0230             module = cms.uint32(2),
0231             angle = cms.double(0.09103)
0232         ),
0233         cms.PSet(
0234             layer = cms.uint32(1),
0235             module = cms.uint32(3),
0236             angle = cms.double(0.09103)
0237         ),
0238         cms.PSet(
0239             layer = cms.uint32(1),
0240             module = cms.uint32(4),
0241             angle = cms.double(0.09103)
0242         ),
0243         cms.PSet(
0244             layer = cms.uint32(1),
0245             module = cms.uint32(5),
0246             angle = cms.double(0.09574)
0247         ),
0248         cms.PSet(
0249             layer = cms.uint32(1),
0250             module = cms.uint32(6),
0251             angle = cms.double(0.09574)
0252         ),
0253         cms.PSet(
0254             layer = cms.uint32(1),
0255             module = cms.uint32(7),
0256             angle = cms.double(0.09574)
0257         ),
0258         cms.PSet(
0259             layer = cms.uint32(1),
0260             module = cms.uint32(8),
0261             angle = cms.double(0.09574)
0262         ),
0263         cms.PSet(
0264             layer = cms.uint32(2),
0265             module = cms.uint32(1),
0266             angle = cms.double(0.09415)
0267         ),
0268         cms.PSet(
0269             layer = cms.uint32(2),
0270             module = cms.uint32(2),
0271             angle = cms.double(0.09415)
0272         ),
0273         cms.PSet(
0274             layer = cms.uint32(2),
0275             module = cms.uint32(3),
0276             angle = cms.double(0.09415)
0277         ),
0278         cms.PSet(
0279             layer = cms.uint32(2),
0280             module = cms.uint32(4),
0281             angle = cms.double(0.09415)
0282         ),
0283         cms.PSet(
0284             layer = cms.uint32(2),
0285             module = cms.uint32(5),
0286             angle = cms.double(0.09955)
0287         ),
0288         cms.PSet(
0289             layer = cms.uint32(2),
0290             module = cms.uint32(6),
0291             angle = cms.double(0.09955)
0292         ),
0293         cms.PSet(
0294             layer = cms.uint32(2),
0295             module = cms.uint32(7),
0296             angle = cms.double(0.09955)
0297         ),
0298         cms.PSet(
0299             layer = cms.uint32(2),
0300             module = cms.uint32(8),
0301             angle = cms.double(0.09955)
0302         ),
0303         cms.PSet(
0304             layer = cms.uint32(3),
0305             module = cms.uint32(1),
0306             angle = cms.double(0.09541)
0307         ),
0308         cms.PSet(
0309             layer = cms.uint32(3),
0310             module = cms.uint32(2),
0311             angle = cms.double(0.09541)
0312         ),
0313         cms.PSet(
0314             layer = cms.uint32(3),
0315             module = cms.uint32(3),
0316             angle = cms.double(0.09541)
0317         ),
0318         cms.PSet(
0319             layer = cms.uint32(3),
0320             module = cms.uint32(4),
0321             angle = cms.double(0.09541)
0322         ),
0323         cms.PSet(
0324             layer = cms.uint32(3),
0325             module = cms.uint32(5),
0326             angle = cms.double(0.10121)
0327         ),
0328         cms.PSet(
0329             layer = cms.uint32(3),
0330             module = cms.uint32(6),
0331             angle = cms.double(0.10121)
0332         ),
0333         cms.PSet(
0334             layer = cms.uint32(3),
0335             module = cms.uint32(7),
0336             angle = cms.double(0.10121)
0337         ),
0338         cms.PSet(
0339             layer = cms.uint32(3),
0340             module = cms.uint32(8),
0341             angle = cms.double(0.10121)
0342         ),
0343     ),
0344     FPixParameters = cms.untracked.VPSet(
0345         cms.PSet(
0346             side = cms.uint32(1),
0347             disk = cms.uint32(1),
0348             HVgroup = cms.uint32(1),
0349             angle = cms.double(0.06404)
0350         ),
0351         cms.PSet(
0352             side = cms.uint32(1),
0353             disk = cms.uint32(2),
0354             HVgroup = cms.uint32(1),
0355             angle = cms.double(0.06404)
0356         ),
0357         cms.PSet(
0358             side = cms.uint32(2),
0359             disk = cms.uint32(1),
0360             HVgroup = cms.uint32(1),
0361             angle = cms.double(0.06404)
0362         ),
0363         cms.PSet(
0364             side = cms.uint32(2),
0365             disk = cms.uint32(2),
0366             HVgroup = cms.uint32(1),
0367             angle = cms.double(0.06404)
0368         ),
0369         cms.PSet(
0370             side = cms.uint32(1),
0371             disk = cms.uint32(1),
0372             HVgroup = cms.uint32(2),
0373             angle = cms.double(0.06404)
0374         ),
0375         cms.PSet(
0376             side = cms.uint32(1),
0377             disk = cms.uint32(2),
0378             HVgroup = cms.uint32(2),
0379             angle = cms.double(0.06404)
0380         ),
0381         cms.PSet(
0382             side = cms.uint32(2),
0383             disk = cms.uint32(1),
0384             HVgroup = cms.uint32(2),
0385             angle = cms.double(0.06404)
0386         ),
0387         cms.PSet(
0388             side = cms.uint32(2),
0389             disk = cms.uint32(2),
0390             HVgroup = cms.uint32(2),
0391             angle = cms.double(0.06404)
0392         ),
0393     ),
0394     #in case lorentz angle values for bpix should be read from file -> not implemented yet
0395     useFile = cms.bool(False),
0396     record = cms.untracked.string('SiPixelLorentzAngleRcd'),  
0397     fileName = cms.string('lorentzFit.txt') 
0398 )
0399 
0400 process.SiPixelLorentzAngleSim = cms.EDAnalyzer("SiPixelLorentzAngleDB",
0401     magneticField = cms.double(3.8),
0402     #in case lorentz angle values for bpix should be read from file -> not implemented yet
0403     useFile = cms.bool(False),
0404     record = cms.untracked.string('SiPixelLorentzAngleSimRcd'),
0405     fileName = cms.string('lorentzFit.txt') 
0406 )
0407 
0408 ###### OFFLINE GAIN OBJECT ######
0409 process.SiPixelCondObjOfflineBuilder = cms.EDAnalyzer("SiPixelCondObjOfflineBuilder",
0410     process.SiPixelGainCalibrationServiceParameters,
0411     numberOfModules = cms.int32(2000),
0412     deadFraction = cms.double(0.00),
0413     noisyFraction = cms.double(0.00),
0414     appendMode = cms.untracked.bool(False),
0415     rmsGain = cms.double(0.),
0416     meanGain = cms.double(2.8),
0417     meanPed = cms.double(28.2),
0418     rmsPed = cms.double(0.),
0419 # separate input for the FPIX. If not entered the default values are used.
0420     rmsGainFPix = cms.untracked.double(0.),
0421     meanGainFPix = cms.untracked.double(2.8),
0422     meanPedFPix = cms.untracked.double(28.2),
0423     rmsPedFPix = cms.untracked.double(0.),
0424     fileName = cms.string('../macros/phCalibrationFit_C0.dat'),
0425     record = cms.string('SiPixelGainCalibrationOfflineRcd'),
0426     secondRocRowGainOffset = cms.double(0.0),
0427     fromFile = cms.bool(False),
0428     secondRocRowPedOffset = cms.double(0.0)
0429 )
0430 
0431 process.SiPixelCondObjOfflineBuilderSim = cms.EDAnalyzer("SiPixelCondObjOfflineBuilder",
0432     process.SiPixelGainCalibrationServiceParameters,
0433     numberOfModules = cms.int32(2000),
0434     deadFraction = cms.double(0.00),
0435     noisyFraction = cms.double(0.00),
0436     appendMode = cms.untracked.bool(False),
0437     rmsGain = cms.double(0.),
0438     meanGain = cms.double(2.8),
0439     meanPed = cms.double(28.2),
0440     rmsPed = cms.double(0.),
0441 # separate input for the FPIX. If not entered the default values are used.
0442     rmsGainFPix = cms.untracked.double(0.),
0443     meanGainFPix = cms.untracked.double(2.8),
0444     meanPedFPix = cms.untracked.double(28.2),
0445     rmsPedFPix = cms.untracked.double(0.),
0446     fileName = cms.string('../macros/phCalibrationFit_C0.dat'),
0447     record = cms.string('SiPixelGainCalibrationOfflineSimRcd'),
0448     secondRocRowGainOffset = cms.double(0.0),
0449     fromFile = cms.bool(False),
0450     secondRocRowPedOffset = cms.double(0.0)
0451 )
0452 
0453 
0454 ##### HLT GAIN OBJECT #####
0455 process.SiPixelCondObjForHLTBuilder = cms.EDAnalyzer("SiPixelCondObjForHLTBuilder",
0456     process.SiPixelGainCalibrationServiceParameters,
0457     numberOfModules = cms.int32(2000),
0458     deadFraction = cms.double(0.00),
0459     noisyFraction = cms.double(0.00),
0460     appendMode = cms.untracked.bool(False),
0461     rmsGain = cms.double(0.0),
0462     meanGain = cms.double(2.8),
0463     meanPed = cms.double(28.0),
0464     fileName = cms.string('../macros/phCalibrationFit_C0.dat'),
0465     record = cms.string('SiPixelGainCalibrationForHLTRcd'),
0466     secondRocRowGainOffset = cms.double(0.0),
0467     rmsPed = cms.double(0.0),
0468     fromFile = cms.bool(False),
0469     secondRocRowPedOffset = cms.double(0.0)
0470 )
0471 
0472 process.SiPixelCondObjForHLTBuilderSim = cms.EDAnalyzer("SiPixelCondObjForHLTBuilder",
0473     process.SiPixelGainCalibrationServiceParameters,
0474     numberOfModules = cms.int32(2000),
0475     deadFraction = cms.double(0.00),
0476     noisyFraction = cms.double(0.00),
0477     appendMode = cms.untracked.bool(False),
0478     rmsGain = cms.double(0.0),
0479     rmsPed = cms.double(0.0),
0480     meanGain = cms.double(2.8),
0481     meanPed = cms.double(28.0),
0482     fileName = cms.string('../macros/phCalibrationFit_C0.dat'),
0483     record = cms.string('SiPixelGainCalibrationForHLTSimRcd'),
0484     secondRocRowGainOffset = cms.double(0.0),
0485     fromFile = cms.bool(False),
0486     secondRocRowPedOffset = cms.double(0.0)
0487 )
0488 
0489 
0490 process.p = cms.Path(
0491 #    process.MapWriter*
0492 #    process.SiPixelCondObjOfflineBuilder*
0493 #    process.SiPixelCondObjForHLTBuilder*
0494 #    process.TemplateUploader*
0495 #    process.QualityObjectMaker*
0496 #    process.SiPixelLorentzAngleSim*
0497 #    process.SiPixelCondObjForHLTBuilderSim*
0498 #    process.SiPixelCondObjOfflineBuilderSim*
0499     process.SiPixelLorentzAngle
0500     )
0501