Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-11-27 03:17:54

0001 #
0002 # configuration file fragment containing user choices
0003 # for release to run, sample and data type to use in
0004 # a cfg file
0005 #
0006  
0007 #
0008 
0009 import FWCore.ParameterSet.Config as cms
0010 import sys
0011 
0012     
0013 
0014 ###################### user choices ######################
0015 
0016 # number of events to be run (-1 for all)
0017 maxNumberEvents = 10
0018 maxNumberEvents = -1
0019 
0020 # useRelValSample: choose the type of sample used:
0021 #   True to use MC RelVal
0022 #   False to use data
0023 
0024 # default value
0025 useRelValSample = False
0026 #
0027 # comment/uncomment the next line to choose sample type 
0028 # (un-commented selects MC RelVal)
0029 #useRelValSample=True
0030 
0031 if useRelValSample == False :
0032     
0033     # choose the global tag type 
0034     # WARNING: global mess in global tag management, 
0035     #      must be chosen per sample
0036     #      must be checked in the release
0037     #  
0038     globalTag = '75X_dataRun2_HLT_v2'
0039     
0040     # choose one sample identifier from the list of data samples 
0041     #
0042     sampleIdentifier = '251162'
0043     #sampleIdentifier = '165633-CAFDQM'
0044     #sampleIdentifier = '191833_RAW'
0045     #sampleIdentifier = '205666.A.storageManager'
0046 
0047 else :
0048     # choose the global tag type 
0049     # WARNING: global mess in global tag management, 
0050     #      must be chosen per sample
0051     #      must be checked in the release
0052     #  
0053     globalTag = 'auto:run1_mc'
0054     #globalTag = 'auto:MCRUN2_72_V3A'
0055     #globalTag = 'auto:run1_mc_hi'
0056     
0057     # choose (pre)release used to produce the RelVal samples
0058     sampleFromRelease = 'CMSSW_7_5_0'
0059 
0060     # RelVals samples - add the "short name" of the dataset e.g. /RelValLM1_sfts/...
0061     #
0062     #dataset = 'RelValMinBias'
0063     dataset = 'RelValTTbar'
0064     
0065     # data type
0066     #
0067     dataType = 'RAW'
0068     #dataType = 'RECO'
0069         
0070 # change to True to use local files
0071 #     the type of file must be matched by hand
0072 
0073 useLocalFiles = False 
0074 #useLocalFiles = True 
0075 
0076 # override default global tag - expert choice, do it only if you know what you do
0077 overrideGlobalTag = False
0078 #overrideGlobalTag = True
0079 
0080 if overrideGlobalTag == True :
0081     myGlobalTag = 'GR_P_V28'
0082 
0083 ###################### end user choices ###################
0084 
0085 #
0086 errorUserOptions = False
0087 
0088 # initialize list of files, of secondary files, list of selected events and luminosity segments
0089 readFiles = cms.untracked.vstring()
0090 secFiles = cms.untracked.vstring() 
0091 selectedEvents = cms.untracked.VEventRange()
0092 selectedLumis= cms.untracked.VLuminosityBlockRange()
0093 
0094 # type of sample used (True for RelVal, False for data)
0095 
0096 if (useRelValSample == True) and (useLocalFiles == False) :
0097     
0098     #            
0099 
0100     print("   Release:   ", sampleFromRelease)
0101     print("   Dataset:   ", dataset)
0102     print("   Data type: ", dataType)
0103     print() 
0104 
0105     useDAS = True
0106     
0107     if useDAS :
0108         import das_client
0109         import os
0110         
0111         # query DAS
0112         
0113         myQuery =  'dataset release=' + sampleFromRelease
0114         dasClientCommand = 'das_client.py --limit=0 --format=plain --query='+'"'+myQuery+'"'
0115         datasets = os.popen(dasClientCommand)
0116         
0117         
0118         # adjust strings for dataset and sampleFromRelease to search the dataset exact name 
0119         dataset = '/' + dataset + '/'
0120         sampleFromRelease = sampleFromRelease +'-'
0121         
0122         if 'start' in globalTag :
0123             gTag = 'START'
0124         elif 'mc' in globalTag :
0125             gTag = 'MC'
0126         else :
0127             gTag =''  
0128         
0129         datasetName = ''
0130         for line in datasets.readlines() :
0131             if dataset in line :
0132               if sampleFromRelease in line :
0133                   if gTag in line :
0134                       if dataType in line :
0135                           if 'ALCA' not in line :
0136                               datasetName = line.strip(' \n')
0137                               # print datasetName
0138 
0139         # print datasetName
0140         
0141         if datasetName == '' :
0142             print("\n   No dataset found.")
0143             errorUserOptions = True 
0144 
0145         if not errorUserOptions :
0146             
0147             myQuery = 'file dataset=' + '"' + datasetName + '"'
0148             dasClientCommand = 'das_client.py --limit=0 --format=plain --query=' + '"' + myQuery + '"'
0149             data = os.popen(dasClientCommand)
0150             filePaths = data.readlines()
0151 
0152             
0153             print('\n   das_client using the query')
0154             print('      ', myQuery)
0155             print('   retrieved the following files\n')
0156         
0157             for line in filePaths :
0158                 print('      ', line)
0159            
0160             readFiles.extend(filePaths);
0161         
0162         
0163             # nothing added to secondary files by DAS 
0164             secFiles.extend([
0165                 ])
0166     
0167    
0168     
0169 
0170 elif (useRelValSample == False) and (useLocalFiles == False) :
0171 
0172     # data
0173     
0174     if sampleIdentifier == '191833_RAW' :
0175         runNumber = '191833'
0176         dataset = '/DoubleElectron/Run2012A-v1/RAW'
0177         dataType = 'RAW'
0178         useDAS = True
0179         selectedLumis= cms.untracked.VLuminosityBlockRange(
0180                                                 '191833:1'
0181                                                 )
0182         selectedEvents = cms.untracked.VEventRange(
0183                                     '191833:256674',
0184                                     '191833:588211'
0185                                     )
0186         
0187     elif sampleIdentifier == '251162' :
0188         runNumber = '251162'
0189         dataset = '/Run2015B/DoubleMuon/RAW'
0190         dataType = 'RAW'
0191         useDAS = False
0192         readFiles.extend( [
0193                 '/store/data/Run2015B/DoubleMuon/RAW/v1/000/251/162/00000/9A6A3CB4-AD25-E511-84E5-02163E01264D.root'       
0194                 ] );
0195         
0196 
0197     elif sampleIdentifier == '191833_RECO' :
0198         runNumber = '191833'
0199         dataset = '/DoubleElectron/Run2012A-PromptReco-v1/RECO'
0200         dataType = 'RECO'
0201         useDAS = True
0202         selectedLumis= cms.untracked.VLuminosityBlockRange(
0203                                                 '191833:1'
0204                                                 )
0205         selectedEvents = cms.untracked.VEventRange(
0206                                     '191833:256674',
0207                                     '191833:588211'
0208                                     )
0209 
0210     elif sampleIdentifier == '191833_AOD' :
0211         runNumber = '191833'
0212         dataset = '/DoubleElectron/Run2012A-PromptReco-v1/AOD'
0213         dataType = 'RECO'
0214         useDAS = True
0215         selectedLumis= cms.untracked.VLuminosityBlockRange(
0216                                                 '191833:1'
0217                                                 )
0218         selectedEvents = cms.untracked.VEventRange(
0219                                     '191833:256674',
0220                                     '191833:588211'
0221                                     )
0222 
0223     # splash events 2012    
0224     elif sampleIdentifier == '187858' :
0225         runNumber = '187858'
0226         dataset = '/Commissioning/Commissioning12-v1/RAW'
0227         dataType = 'RAW'
0228         useDAS = True
0229         selectedLumis= cms.untracked.VLuminosityBlockRange(
0230                                                 '187858:394', 
0231                                                 '187858:499'
0232                                                 )
0233         selectedEvents = cms.untracked.VEventRange(
0234                                     '187858:3244833',
0235                                     '187858:4094284'
0236                                     )
0237        
0238     # high PU run 2011   
0239     elif sampleIdentifier == '179828' :
0240         runNumber = '179828'
0241         dataset =  '/ZeroBiasHPF0/Run2011B-v1/RAW'
0242         dataType = 'RAW'
0243         useDAS = True
0244         
0245         
0246     elif sampleIdentifier == '165633-CAFDQM' :
0247         runNumber = '165633'
0248         dataset = '/ZeroBiasHPF0/Run2011B-v1/RAW'
0249         dataType = 'RAW'
0250         useDAS = False
0251         readFiles.extend( [ 
0252                 'file:/afs/cern.ch/cms/CAF/CMSCOMM/COMM_DQM/DQMTest/MinimumBias__RAW__v1__165633__1CC420EE-B686-E011-A788-0030487CD6E8.root'                       
0253                 ]);    
0254                                                                                                            
0255        
0256     elif sampleIdentifier == '137028' :
0257         runNumber = '137028'
0258         dataset = '/Run2010A/ZeroBias/RECO-v2'
0259         dataType = 'RECO'
0260         useDAS = False
0261         readFiles.extend( [
0262                 '/store/data/Run2010A/ZeroBias/RECO/v2/000/137/028/08BF857D-2471-DF11-9CEB-003048D2BBF0.root'       
0263                 ] );
0264                 
0265  
0266     elif sampleIdentifier == 'StreamFile_105760' :
0267         runNumber = '105760'
0268         dataset = 'A_Stream'
0269         dataType = 'StreamFile'
0270         useDAS = False
0271         readFiles.extend( [
0272                 'file:/lookarea_SM/MWGR_29.00105760.0001.A.storageManager.00.0000.dat'       
0273                 ] );
0274                 
0275     # run with L1 GT data - emulator disagreements for the selectedEvents               
0276     elif sampleIdentifier == '205666.A.storageManager' :
0277         runNumber = '205666'
0278         dataset = 'A.storageManager'
0279         dataType = 'StreamFile'
0280         useDAS = False
0281         
0282         selectedEvents = cms.untracked.VEventRange(
0283                                     '205666:101:125069341',
0284                                     '205666:161:238160322',
0285                                     '205666:281:443371795',
0286                                     '205666:341:537654884',
0287                                     '205666:361:567121052'
0288                                     )
0289         
0290         readFiles.extend( [ 
0291 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0001.A.storageManager.00.0000.dat',
0292 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0021.A.storageManager.01.0000.dat',
0293 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0041.A.storageManager.02.0000.dat',
0294 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0061.A.storageManager.03.0000.dat',
0295 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0081.A.storageManager.04.0000.dat',
0296             'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0101.A.storageManager.05.0000.dat',
0297 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0121.A.storageManager.06.0000.dat',
0298 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0141.A.storageManager.07.0000.dat',
0299             'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0161.A.storageManager.08.0000.dat',
0300 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0181.A.storageManager.09.0000.dat',                   
0301 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0201.A.storageManager.10.0000.dat',                   
0302 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0221.A.storageManager.11.0000.dat',                   
0303 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0241.A.storageManager.12.0000.dat',                   
0304 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0261.A.storageManager.13.0000.dat',
0305             'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0281.A.storageManager.14.0000.dat',
0306 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0301.A.storageManager.15.0000.dat',
0307 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0321.A.storageManager.00.0000.dat',
0308             'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0341.A.storageManager.01.0000.dat',
0309             'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0361.A.storageManager.02.0000.dat',
0310 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0381.A.storageManager.03.0000.dat',
0311 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0401.A.storageManager.04.0000.dat',
0312 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0421.A.storageManager.05.0000.dat',
0313 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0441.A.storageManager.06.0000.dat',
0314 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0461.A.storageManager.07.0000.dat',
0315 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0481.A.storageManager.08.0000.dat',
0316 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0501.A.storageManager.09.0000.dat',
0317 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0521.A.storageManager.10.0000.dat',
0318 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0541.A.storageManager.11.0000.dat',
0319 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0561.A.storageManager.12.0000.dat',
0320 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0581.A.storageManager.13.0000.dat',
0321 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0601.A.storageManager.14.0000.dat',
0322 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0621.A.storageManager.15.0000.dat',
0323 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0641.A.storageManager.00.0000.dat',
0324 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0661.A.storageManager.01.0000.dat',
0325 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0681.A.storageManager.02.0000.dat',
0326 #            'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0701.A.storageManager.03.0000.dat',
0327             'file:/afs/cern.ch/user/g/ghete/work/L1Trigger/data/Data.00205666.0721.A.storageManager.04.0000.dat'                     
0328            ]);    
0329                 
0330                 
0331     else :
0332         print('Error: sample identifier ', sampleIdentifier, ' not defined.\n')
0333         errorUserOptions = True 
0334         runNumber = '0'
0335         dataset = 'None'
0336         dataType = 'None'
0337         useDAS = False
0338        
0339      
0340     #            
0341     # end of data samples 
0342     #            
0343 
0344     print("   Run number: ", runNumber)
0345     print("   Dataset: ", dataset)
0346     print("   Data type: ", dataType)
0347 
0348     if useDAS :
0349         import das_client
0350         import os
0351 
0352         # query DAS
0353         myQuery =  'file dataset=' + dataset + ' run=' + runNumber
0354         dasClientCommand = 'das_client.py --limit=0 --format=plain --query='+'"'+myQuery+'"'
0355         data = os.popen(dasClientCommand)
0356         filePaths = data.readlines()
0357             
0358        
0359         print('\n   das_client using the query')
0360         print('      ', myQuery)
0361         print('   retrieved the following files\n')
0362         
0363         for line in filePaths :
0364             print('      ', line)
0365            
0366         readFiles.extend(filePaths);
0367         
0368         
0369         # nothing added to secondary files by DAS 
0370         secFiles.extend([
0371                 ])
0372 
0373         
0374             
0375 else :
0376     # local file(s)
0377     
0378 
0379     if sampleIdentifier == 'dummy' :
0380         dataType = 'RAW'
0381         readFiles.extend( [                        
0382             'file:/afs/cern.ch/user/g/ghete/scratch0/CmsswTestFiles/LocalFile_source.root'
0383             ]);                                                                                               
0384 
0385         secFiles.extend([
0386             ])
0387 
0388     print('Local file(s)', readFiles)
0389 
0390 if overrideGlobalTag == True :
0391     globalTag = myGlobalTag
0392   
0393 if globalTag.count('auto') :
0394     from Configuration.AlCa.autoCond import autoCond
0395     useGlobalTag = autoCond[globalTag.replace('auto:', '')]
0396 else :
0397     useGlobalTag = globalTag   
0398     
0399 print("\n   Using global tag ", useGlobalTag, "\n")
0400     
0401