# interactive import ROOT inputFile = ROOT.TFile("outDelphes.root") tree = inputFile.Get("inclusive/tree") tree.Show(0) ''' ======> EVENT:0 massReco = 92.4257 xsec = 842.92 N = 0 eventWeight = 0.084292 ''' massReco = ROOT.RooRealVar("massReco","massReco", 0, 300) ''' RooFit v3.60 -- Developed by Wouter Verkerke and David Kirkby Copyright (C) 2000-2013 NIKHEF, University of California & Stanford University All rights reserved, please read http://roofit.sourceforge.net/license.txt ''' eventWeight = ROOT.RooRealVar("eventWeight","eventWeight", 0, 1) dataset = ROOT.RooDataSet("dataset","dataset", {massReco,eventWeight}, Import=tree) dataset.Print() ''' RooDataSet::dataset[eventWeight,massReco] = 3818 entries ''' dataset.Print("v") ''' DataStore dataset (dataset) Contains 3818 entries Observables: 1) eventWeight = 0.084292 L(0 - 1) "eventWeight" 2) massReco = 81.7025 L(0 - 300) "massReco" ''' dataset.get(0) '''
''' obs = dataset.get(0) obs.find("massReco").getVal() ''' 92.42565069491252 ''' obs.find("eventWeight").getVal() ''' 0.08429199829101562 ''' lumi = ROOT.RootRealVar("lumi","integrated luminosity",0, 300) lumi.setVal(150) lumi.setConstant(True) weight = ROOT.RooFormulaVar("weight","1000*lumi*eventWeight", ROOT.RooArgSet(lumi,eventWeight)) dataset.weight() ''' 1.0 ''' dataset.isWeighted() ''' False ''' dataset.addColumn(weight) '''
''' dataset.Print() ''' RooDataSet::dataset[eventWeight,massReco,weight] = 3818 entries ''' dataset.Print("v") ''' DataStore dataset (dataset) Contains 3818 entries Observables: 1) eventWeight = 0.084292 L(0 - 1) "eventWeight" 2) massReco = 81.7025 L(0 - 300) "massReco" 3) weight = 12643.8 C L(-INF - +INF) "1000*lumi*eventWeight" ''' obs = dataset.get(0) obs.find("weight") '''
''' obs.find("weight").getVal() 12643.799743652344 dataset.isWeighted() ''' False ''' # produce weighted data with dataset_weighted = ROOT.RooDataSet(dataset.GetName()+"weighted", dataset.GetTitle(), dataset, dataset.get(), "", weight.GetName()) dataset_weighted.Print() ''' RooDataSet::datasetweighted[eventWeight,massReco,weight:weight] = 3818 entries (4.8274e+07 weighted) ''' dataset_weighted.Print("v") ''' DataStore datasetweighted (dataset) Contains 3818 entries Observables: 1) eventWeight = 0.084292 L(0 - 1) "eventWeight" 2) massReco = 81.7025 L(0 - 300) "massReco" Dataset variable "weight" is interpreted as the event weight ''' dataset_weighted.weight() ''' 12643.799743652344 ''' dataset_weighted.get(0) '''
''' obs = dataset_weighted.get(0) obs.find("weight") '''
'''