222 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			222 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
#!/usr/bin/env python
 | 
						|
import os
 | 
						|
 | 
						|
 | 
						|
channel_list = ['Kplus',
 | 
						|
				'Kshort'
 | 
						|
				]
 | 
						|
 | 
						|
decay_list = ['BtoKstMuMu',
 | 
						|
 		      'BtoKstJpsi',
 | 
						|
		      'PHSP',
 | 
						|
		      'BtoXJpsi',
 | 
						|
		      'B0toKstMuMu',
 | 
						|
		      'B0toKstJpsi',
 | 
						|
		      'BtoK1MuMu',
 | 
						|
		      'BtoK1Jpsi'
 | 
						|
            ]
 | 
						|
 | 
						|
 | 
						|
polarity_list = ['MagDown',
 | 
						|
	              'MagUp']
 | 
						|
 | 
						|
decay_year_dict = {'BtoKstMuMu' : ['2011','2012','2015','2016'],
 | 
						|
                 'BtoKstJpsi' : ['2011','2012'],
 | 
						|
                 'PHSP'       : ['2011','2012','2015','2016'],
 | 
						|
                 'BtoXJpsi'   : ['2011','2012','2015','2016'],
 | 
						|
                 'B0toKstMuMu': ['2011','2012','2015','2016'],
 | 
						|
                 'B0toKstJpsi': ['2011','2012','2015','2016'],
 | 
						|
                 'BtoK1MuMu'  : ['2011','2012'],
 | 
						|
                 'BtoK1Jpsi'  : ['2012']
 | 
						|
		}
 | 
						|
 | 
						|
decay_mdst_file_dict = {'BtoKstMuMu' : {'2011': 'False',
 | 
						|
                                       '2012': 'False',
 | 
						|
                                       '2015': 'True',
 | 
						|
                                       '2016': 'True'
 | 
						|
                                       },
 | 
						|
                     'BtoKstJpsi' : {'2011': 'False',
 | 
						|
                                     '2012': 'False'
 | 
						|
                                       },
 | 
						|
                     'PHSP'	     : {'2011': 'False',
 | 
						|
                                   '2012': 'False',
 | 
						|
                                   '2015': 'True',
 | 
						|
                                   '2016': 'True'
 | 
						|
                                   },
 | 
						|
                    'BtoXJpsi'   : {'2011': 'False',
 | 
						|
                                     '2012': 'False',
 | 
						|
                                     '2015': 'True',
 | 
						|
                                     '2016': 'False'
 | 
						|
                                   },
 | 
						|
                    'B0toKstMuMu': {'2011': 'False',
 | 
						|
                                   '2012': 'False',
 | 
						|
                                   '2015': 'False',
 | 
						|
                                   '2016': 'False'
 | 
						|
                	},
 | 
						|
                    'B0toKstJpsi': {'2011': 'False',
 | 
						|
                                   '2012': 'False',
 | 
						|
                                   '2015': 'True',
 | 
						|
                                   '2016': 'True'
 | 
						|
                	},
 | 
						|
                    'BtoK1MuMu'  : {'2011': 'False',
 | 
						|
                                    '2012': 'False'
 | 
						|
                	},
 | 
						|
                    'BtoK1Jpsi'  : {'2012': 'False'
 | 
						|
                	}
 | 
						|
		}
 | 
						|
 | 
						|
decay_line_dict = {'BtoKstMuMu' : "B2XMuMu_Line",
 | 
						|
		'BtoKstJpsi' : "B2XMuMu_Line",
 | 
						|
		'PHSP'	     : "B2XMuMu_Line",
 | 
						|
		'BtoXJpsi'   : "B2XMuMu_Line",
 | 
						|
		'B0toKstMuMu': "B2XMuMu_Line",
 | 
						|
		'B0toKstJpsi': "B2XMuMu_Line",
 | 
						|
		'BtoK1MuMu'  : "B2XMuMu_Line",
 | 
						|
		'BtoK1Jpsi'  : "B2XMuMu_Line"
 | 
						|
		}
 | 
						|
 | 
						|
decay_stream_dict = {'BtoKstMuMu' : "AllStreams",
 | 
						|
		'BtoKstJpsi' : "AllStreams",
 | 
						|
		'PHSP'	     : "B2XMuMu.Strip",
 | 
						|
		'BtoXJpsi'   : "AllStreams",
 | 
						|
		'B0toKstMuMu': "AllStreams",
 | 
						|
		'B0toKstJpsi': "AllStreams",
 | 
						|
		'BtoK1MuMu'  : "AllStreams",
 | 
						|
		'BtoK1Jpsi'  : "AllStreams"
 | 
						|
		}
 | 
						|
 | 
						|
polarity_CondB_dict = {'MagDown' : 'md100',
 | 
						|
                        'MagUp'  : 'mu100'
 | 
						|
                        }
 | 
						|
#tags from vanyas amazing script
 | 
						|
# export PATH=$PATH:/afs/cern.ch/user/i/ibelyaev/public/scripts
 | 
						|
#lhcb-proxy-init
 | 
						|
#get_bookkeeping_info  10000027
 | 
						|
 | 
						|
decay_CondDB_dict = { 	'BtoKstMuMu' : {'2011': 'sim-20160614-1-vc-',
 | 
						|
                                       '2012':  'sim-20160321-2-vc-',
 | 
						|
                                       '2015':  'sim-20161124-vc-',
 | 
						|
                                       '2016':  'sim-20161124-vc-',
 | 
						|
                                       },
 | 
						|
                     'BtoKstJpsi' : {'2011': 'sim-20160614-1-vc-',
 | 
						|
                                     '2012': 'sim-20160321-2-vc-'
 | 
						|
                                       },
 | 
						|
                     'PHSP'	     : {'2011': 'sim-20160614-1-vc-',
 | 
						|
                                   '2012': 'sim-20160321-2-vc-',
 | 
						|
                                   '2015': 'sim-20161124-vc-',
 | 
						|
                                   '2016': 'sim-20170721-2-vc-'
 | 
						|
                                   },
 | 
						|
                    'BtoXJpsi'   : {'2011': 'sim-20130522-vc-',
 | 
						|
                                     '2012': 'Sim08-20130503-1-vc-',
 | 
						|
                                     '2015': 'sim-20150813-vc-',
 | 
						|
                                     '2016': 'sim-20161124-2-vc-'
 | 
						|
                                   },
 | 
						|
                    'B0toKstMuMu': {'2011': 'sim-20130522-vc-',
 | 
						|
                                   '2012': 'Sim08-20130503-1-vc-',
 | 
						|
                                   '2015': 'sim-20161124-vc-',
 | 
						|
                                   '2016': 'sim-20161124-2-vc-'
 | 
						|
                                   },
 | 
						|
                    'B0toKstJpsi': {'2011': 'sim-20130522-vc-',
 | 
						|
                                   '2012': 'sim-20130522-1-vc-',
 | 
						|
                                   '2015': 'sim-20161124-vc-',
 | 
						|
                                   '2016': 'sim-20170721-2-vc-'
 | 
						|
                                   },
 | 
						|
                    'BtoK1MuMu'  : {'2011': 'sim-20130522-vc-',
 | 
						|
                                    '2012': 'sim-20130522-1-vc-',
 | 
						|
                                   },
 | 
						|
                    'BtoK1Jpsi'  : {'2012': 'Sim08-20130503-1-vc-'
 | 
						|
                                   }
 | 
						|
                }
 | 
						|
 | 
						|
decay_DDDB_dict = { 'BtoKstMuMu' : {'2011': 'dddb-20160318-1',
 | 
						|
                                       '2012':  'dddb-20150928',
 | 
						|
                                       '2015':  'dddb-20150724',
 | 
						|
                                       '2016':  'dddb-20170721-3'
 | 
						|
                                       },
 | 
						|
                     'BtoKstJpsi' : {'2011': 'dddb-20160318-1',
 | 
						|
                                     '2012': 'dddb-20150928'
 | 
						|
                                       },
 | 
						|
                     'PHSP'	     :{'2011': 'dddb-20160318-1',
 | 
						|
                                   '2012': 'dddb-20150928',
 | 
						|
                                   '2015': 'dddb-20150724',
 | 
						|
                                   '2016': 'dddb-20170721-3'
 | 
						|
                                   },
 | 
						|
                    'BtoXJpsi'   : {'2011': 'dddb-20130929',
 | 
						|
                                     '2012': 'Sim08-20130503-1',
 | 
						|
                                     '2015': 'dddb-20150724',
 | 
						|
                                     '2016': 'dddb-20150724'
 | 
						|
                                   },
 | 
						|
                    'B0toKstMuMu': {'2011': 'dddb-20130929',
 | 
						|
                                   '2012': 'Sim08-20130503-1',
 | 
						|
                                   '2015': 'dddb-20170721-3',
 | 
						|
                                   '2016': 'dddb-20150724'
 | 
						|
                                   },
 | 
						|
                    'B0toKstJpsi': {'2011': 'dddb-20130929',
 | 
						|
                                   '2012': 'dddb-20130929-1',
 | 
						|
                                   '2015': 'dddb-20170721-3',
 | 
						|
                                   '2016': 'dddb-20170721-3'
 | 
						|
                                   },
 | 
						|
                    'BtoK1MuMu'  : {'2011': 'dddb-20130929',
 | 
						|
                                    '2012': 'dddb-20130929-1',
 | 
						|
                                   },
 | 
						|
                    'BtoK1Jpsi'  : {'2012': 'Sim08-20130503-1'
 | 
						|
                                   }
 | 
						|
            }
 | 
						|
 | 
						|
for channel in channel_list:
 | 
						|
	for decay in decay_list:
 | 
						|
	    for year in decay_year_dict[decay]:
 | 
						|
    		for polarity in  polarity_list:
 | 
						|
    		    script_opts = { "DATA_TYPE":"MC",
 | 
						|
    			        "CHAN": channel,
 | 
						|
                                "YEAR":year,
 | 
						|
                                "POL": polarity,
 | 
						|
                                "DEC": decay,
 | 
						|
                                "MDST": decay_mdst_file_dict[decay][year],
 | 
						|
                                "LINE": decay_line_dict[decay],
 | 
						|
                                "STREAM":decay_stream_dict[decay],
 | 
						|
                                "CONDB":decay_CondDB_dict[decay][year],
 | 
						|
                                "CONDB_POL":polarity_CondB_dict[polarity],
 | 
						|
                                "DDDBtag":decay_DDDB_dict[decay][year]
 | 
						|
                                }
 | 
						|
 | 
						|
                    #lfn_file = "../LFN_files/%(DEC)s_%(YEAR)s%(POL)s.py" % script_opts
 | 
						|
                    #xml_file = "../xml_files/catalog_%(DEC)s_%(YEAR)s%(POL)s.xml" % script_opts
 | 
						|
                    #if not os.path.exists( "./%(DEC)s/" %script_opts):
 | 
						|
                    #    os.makedirs( "./%(DEC)s/" %script_opts)
 | 
						|
                    #if not os.path.exists( "../local_tests_output/%(DEC)s/" %script_opts):
 | 
						|
                    #    os.makedirs( "../local_tests_output/%(DEC)s/" %script_opts)
 | 
						|
                    opt_file = "./%(DEC)s/%(YEAR)s%(POL)s_%(CHAN)s.py" %script_opts
 | 
						|
                    f1 = open(opt_file, 'w')
 | 
						|
                    f1.write(	'############# Global settings\n'		)
 | 
						|
                    f1.write(	'runFilters = False\n'                )
 | 
						|
                    f1.write(	'MDST = %(MDST)s\n'        % script_opts)
 | 
						|
                    f1.write(	'data = False\n'            )
 | 
						|
                    f1.write(	'down = %s\n'              % (polarity == 'MagDown'))
 | 
						|
                    f1.write(	'year = "%(YEAR)s"\n'       % script_opts)
 | 
						|
                    f1.write(	'stream = "%(STREAM)s"\n'  % script_opts)
 | 
						|
                    f1.write(	'line = "%(LINE)s"\n\n'    % script_opts)
 | 
						|
                    f1.write(	'channel = "%s"\n\n'       % decay)
 | 
						|
                    f1.write(	'#subdecay chains\n'                	)
 | 
						|
                    f1.write(	'KShortPiPlus = %s\n'   % (channel == 'Kshort') )
 | 
						|
                    f1.write(	'KplusPi0Merged = False\n'   )
 | 
						|
                    f1.write(	'KplusPi0Resolved = %s\n' % (channel == 'Kplus'))
 | 
						|
 | 
						|
                   # f_lfns = open('../../LFN_files/%(DEC)s_%(YEAR)s%(POL)s.py'%script_opts)
 | 
						|
                   # for line in f_lfns.readlines():
 | 
						|
                   #     f1.write(line)
 | 
						|
                   # f1.write("from Gaudi.Configuration import FileCatalog\n")
 | 
						|
                   # f1.write("""FileCatalog().Catalogs +=['xmlcatalog_file:/afs/cern.ch/work/r/rekopecn/public/B_2_KstarMuMu/DaVinciDev_v41r2/tuplecreation/xml_files/catalog_%(DEC)s_%(YEAR)s%(POL)s.xml']\n""" % script_opts)
 | 
						|
                   #f_lfns.close()
 | 
						|
 | 
						|
                    f = open('./BasicOptfile.py')
 | 
						|
                    for line in f.readlines():
 | 
						|
                        f1.write(line)
 | 
						|
                    f.close()
 | 
						|
 | 
						|
                    f1.write(	"""dv.EvtMax = -1\n"""  	)
 | 
						|
                    f1.write(	"""dv.TupleFile = "%(DEC)s_%(YEAR)s%(POL)s.root"\n"""   % script_opts	)
 | 
						|
                    f1.write(	"""dv.CondDBtag = "%(CONDB)s%(CONDB_POL)s"\n"""   % script_opts	)
 | 
						|
                    f1.write(	"""dv.DDDBtag = "%(DDDBtag)s"\n"""                % script_opts	)
 | 
						|
                    f1.close()
 |