对13
TeV 的cross section测量,我们现在打算用某一些特定TCK取下的数据,这就要求在扫描数据的时候将不需要的TCK事例扔掉。如果依靠tuple level的筛选,那么最终的 integrated luminosity 很难确定出来。
在LHCb上,是依靠ganga来实现这个功能的。
在ganga的脚本里,关于dataset的定义修改为如下:
job=Job(
name = Name,
application = Application,
splitter = SplitByFiles ( filesPerJob = NFilePerJob, maxFiles = MaxFiles, ignoremissing = True ),
merger = RootMerger (files=[OutputTuple],overwrite=True,ignorefailed=True),
inputsandbox = [],
outputfiles = [LocalFile(OutputTuple)],
backend = Dirac(),
inputdata = FilterTCKs (bkk_directory) )
job.submit()
其中,
def FilterTCKs (path):
badtcks=['0x10600a6', '0x10600a7', '0x10700a1']
dataset = BKQuery(path, type = "Path", dqflag=['OK']).getDataset()
datasetM = BKQuery(path, type = "Path", dqflag=['OK']).getDatasetMetadata()
filteredFiles = []
for f in dataset.files:
if datasetM['Value'][f.localDir]['TCK'] in badtcks:
filteredFiles.append(f)
for f in filteredFiles:
dataset.files.remove(f)
return dataset
这样就能把A1,A6,A7取下的数据扔掉。
另外,2015年的MagUp没有用到到以上的TCK,所以只需要重新扫描一遍MagDown数据。
--
HangYin - 2016-06-06
Topic revision: r1 - 2016-06-06
- HangYin