import array import math import shutil thisdir = os.path.dirname(os.path.realpath(__file__)) basedir = os.path.dirname(thisdir) sys.path.append(basedir) import config import utils from datasets import allsamples from tp.efake_conf import skimConfig, lumiSamples, outputDir, roofitDictsDir, getBinning, itune, vetoCut, fitBinningT, dataSource, tpconfs, monophSel, analysis dataType = sys.argv[1] # "data" or "mc" binningName = sys.argv[2] # see efake_conf fitBins = getBinning(binningName)[2] lumi = sum(allsamples[s].lumi for s in lumiSamples) sys.argv = [] import ROOT ROOT.gROOT.SetBatch(True) ROOT.gSystem.Load('libRooFit.so') ROOT.gROOT.LoadMacro(basedir + '/../common/MultiDraw.cc+') ROOT.gSystem.Load(roofitDictsDir + '/libCommonRooFit.so') # defines KeysShape ### Files ### outputName = outputDir + '/fittemplates_' + dataType + '_' + binningName + '.root'
import os import array import math import collections thisdir = os.path.dirname(os.path.realpath(__file__)) basedir = os.path.dirname(thisdir) sys.path.append(basedir) from datasets import allsamples from plotstyle import SimpleCanvas from tp.efake_conf import lumiSamples, outputDir, getBinning dataType = sys.argv[1] binningName = sys.argv[2] binningTitle, binning, fitBins = getBinning(binningName) sys.argv = [] toyUncert = True import ROOT ROOT.gROOT.SetBatch(True) inputTree = ROOT.TChain('yields') inputTree.Add(outputDir + '/fityields_' + dataType + '_' + binningName + '.root') if toyUncert: inputTree.Add(outputDir + '/toys_' + dataType + '_' + binningName + '.root') vTPconf = array.array('i', [0]) vBinName = array.array('c', '\0' * 128)
import math import collections from subprocess import Popen, PIPE thisdir = os.path.dirname(os.path.realpath(__file__)) basedir = os.path.dirname(thisdir) sys.path.append(basedir) from datasets import allsamples from plotstyle import WEBDIR, SimpleCanvas from tp.efake_conf import lumiSamples, outputName, outputDir, roofitDictsDir, getBinning binningName = sys.argv[1] ADDFIT = True binningTitle, binning, fitBins = getBinning(binningName) binLabels = False if len(binning) == 0: binLabels = True binning = range(len(fitBins) + 1) sys.argv = [] import ROOT ROOT.gROOT.SetBatch(True) ROOT.gSystem.Load('libRooFit.so') ROOT.gSystem.Load(roofitDictsDir + '/libCommonRooFit.so') # defines KeysShape ROOT.gStyle.SetNdivisions(510, 'X')
sys.exit(1) import ROOT ROOT.gROOT.SetBatch(True) proxyTree = ROOT.TChain('events') proxyTree.Add(config.skimDir + '/wlnu-100_wenu.root') proxyTree.Add(config.skimDir + '/wlnu-200_wenu.root') proxyTree.Add(config.skimDir + '/wlnu-400_wenu.root') proxyTree.Add(config.skimDir + '/wlnu-600_wenu.root') tpTree = ROOT.TChain('skimmedEvents') tpTree.Add(efake.skimDir + '/dy-50_eg.root') title, binningList, fitBins = efake.getBinning(variable) binning = array.array('d', binningList) source = ROOT.TFile.Open(efake.outputDir + '/results_data_' + variable + '.root') frate = source.Get(variable + '_frate') # pixel seeding efficiency for electrons efficiency = ROOT.TH1D('efficiency', '', len(binning) - 1, binning) inefficiency = ROOT.TH1D('inefficiency', '', len(binning) - 1, binning) for iX in range(1, frate.GetNbinsX() + 1): f = frate.GetBinContent(iX) eff = 1. / (1. + f) err = eff * frate.GetBinError(iX) / (1. + f) efficiency.SetBinContent(iX, eff) efficiency.SetBinError(iX, err)
thisdir = os.path.dirname(os.path.realpath(__file__)) basedir = os.path.dirname(thisdir) sys.path.append(basedir) import config from datasets import allsamples from plotstyle import SimpleCanvas from tp.efake_conf import skimDir, outputDir, roofitDictsDir, getBinning # set to nonzero if you want to run toys in runMode single too nToys = 0 dataType = sys.argv[1] # "data" or "mc" binningName = sys.argv[2] # see efake_conf fitBins = getBinning(binningName)[2] # switching runMode runMode = 'single' pdf = 'default' if len(sys.argv) == 7: # batch toy generation # args = <data/mc> <binningName> <nToys> <ee/eg> <bin> <seed> nToys = int(sys.argv[3]) conf = sys.argv[4] binName = sys.argv[5] seed = int(sys.argv[6]) if conf not in ['ee', 'eg']: raise RuntimeError('Unknown conf ' + conf)