示例#1
0
def wJetScale(mtplot, dataName):

    # WJets_data = data - DY - TTbar
    wjet = copy.deepcopy(mtplot.Hist(dataName))
    wjet.Add(mtplot.Hist('DYJets'), -1)
    try:
        dyJetsFakes = mtplot.Hist('DYJets_Fakes')
        wjet.Add(mtplot.Hist('DYJets_Fakes'), -1)
    except:
        pass
    # FIXME
    wjet.Add(mtplot.Hist('TTJets'), -1)

    # adding the WJets_data estimation to the stack
    mtplot.AddHistogram('Data - DY - TT', wjet.weighted, 1010)
    mtplot.Hist('Data - DY - TT').stack = False
    # with a nice pink color
    pink = kPink + 7
    sPinkHollow = Style(lineColor=pink, markerColor=pink, markerStyle=4)
    mtplot.Hist('Data - DY - TT').SetStyle(sPinkHollow)

    # determine scaling factor for the WJet MC
    mtmin, mtmax = 60, 200
    # scale = WJets_data / WJets
    scale_WJets = mtplot.Hist('Data - DY - TT').Integral(True, mtmin, mtmax) \
                  / mtplot.Hist('WJets').Integral(True, mtmin, mtmax)
    # apply this additional scaling factor to the WJet component
    # mtplot.Hist('WJets').Scale(scale_WJets)

    # hide the WJets_data component from the mtplot. can be set to True interactively
    mtplot.Hist('Data - DY - TT').on = True

    return scale_WJets
示例#2
0
def fW(mtplot, dataName, xmin, xmax, VVgroup=None, channel='TauMu'):

    wjet = copy.deepcopy(mtplot.Hist(dataName))
    oldIntegral = wjet.Integral(True, xmin, xmax)
    wjet.Add(mtplot.Hist('Ztt'), -1)
    wjet.Add(mtplot.Hist('Ztt_ZL'), -1)
    wjet.Add(mtplot.Hist('Ztt_ZJ'), -1)
    wjet.Add(mtplot.Hist('Ztt_TL'), -1)
    wjet.Add(mtplot.Hist('TTJets'), -1)
    if VVgroup:
        wjet.Add(mtplot.Hist('VV'), -1)

    subtrIntegral = wjet.Integral(True, xmin, xmax)

    relSysError = 0.1 * (oldIntegral - subtrIntegral) / subtrIntegral
    print 'W+Jets, high MT: Relative error due to BG subtraction', relSysError

    mtplot.AddHistogram('Data-DY-TT-VV', wjet.weighted, 1010)
    mtplot.Hist('Data-DY-TT-VV').stack = False
    # with a nice pink color
    pink = kPink + 7
    sPinkHollow = Style(lineColor=pink, markerColor=pink, markerStyle=4)
    mtplot.Hist('Data-DY-TT-VV').SetStyle(sPinkHollow)

    data_integral = mtplot.Hist('Data-DY-TT-VV').Integral(True, xmin, xmax)

    error_data = Double(0.)
    error_mc = Double(0.)
    data_integral_jan = mtplot.Hist('Data-DY-TT-VV').weighted.IntegralAndError(
        mtplot.Hist('Data-DY-TT-VV').weighted.FindFixBin(xmin),
        mtplot.Hist('Data-DY-TT-VV').weighted.FindFixBin(xmax) - 1, error_data)

    if data_integral_jan != data_integral:
        print 'WARNING, not the same integral in w+jets estimation'

    print 'Adding relative error due to data error', error_data / data_integral
    relSysError = math.sqrt(error_data**2 / data_integral**2 + relSysError**2)
    print 'TOTAL ERROR on high mass SF', relSysError
    mc_integral = mtplot.Hist('WJets').Integral(True, xmin, xmax)
    # Do not double-count W+jets uncertainty (is in high-low ratio)
    return data_integral, mc_integral
示例#3
0
文件: plotmod.py 项目: anantoni/CMG
def fW(mtplot, dataName, xmin, xmax, VVgroup=None, channel='TauMu'):

    wjet = copy.deepcopy(mtplot.Hist(dataName))
    wjet.Add(mtplot.Hist('Ztt'), -1)
    wjet.Add(mtplot.Hist('Ztt_ZL'), -1)
    wjet.Add(mtplot.Hist('Ztt_ZJ'), -1)
    wjet.Add(mtplot.Hist('Ztt_TL'), -1)
    wjet.Add(mtplot.Hist('TTJets'), -1)
    if VVgroup:
        wjet.Add(mtplot.Hist('VV'), -1)

    mtplot.AddHistogram('Data-DY-TT-VV', wjet.weighted, 1010)
    mtplot.Hist('Data-DY-TT-VV').stack = False
    # with a nice pink color
    pink = kPink + 7
    sPinkHollow = Style(lineColor=pink, markerColor=pink, markerStyle=4)
    mtplot.Hist('Data-DY-TT-VV').SetStyle(sPinkHollow)

    data_integral = mtplot.Hist('Data-DY-TT-VV').Integral(True, xmin, xmax)
    mc_integral = mtplot.Hist('WJets').Integral(True, xmin, xmax)
    return data_integral, mc_integral
示例#4
0
文件: LPTree.py 项目: anantoni/CMG
import os, sys
from ROOT import gROOT, TFile, TCanvas, TH1F, TGraphAsymmErrors, TChain

from CMGTools.RootTools.RootTools import *
from CMGTools.RootTools.Style import *

gROOT.Macro(os.path.expanduser('~/rootlogon.C'))

style1 = Style()
style2 = Style(markerColor=2, lineColor=2)
style3 = Style(markerColor=3, lineColor=3)
style4 = Style(markerColor=4, lineColor=4)
style5 = Style(markerColor=5, lineColor=5)

basename = 'rfio:/castor/cern.ch/cms/store/cmst3/user/lenzip/CMG/SusyLP/WJetsToLNu_TuneD6T_7TeV-madgraph-tauola/Spring11-PU_S1_START311_V1G1-v1/CMGtuple/'
vfile = []
for i in range(6):
    vfile.append(basename + 'susy_tree_CMG_' + str(i) + '.root')

events = TChain('Events', 'Events')
for file in vfile:
    events.AddFile(file)
#file = TFile( sys.argv[1] )
#events = file.Get('Events')

from CMGTools.RootTools.cmgTuple import *

cmg = cmgTuple(events)

LPcanvas = TCanvas('LPcanvas', 'LP', 1000, 800)
LPcanvas.Divide(2, 3)
    FULL_mt_ss_wjet.Add(FULL_mt_ss.Hist('TTJets'), -1)

    if FULL_mt_ss.histosDict.get('VV', None) != None:
        FULL_mt_ss_wjet.Add(FULL_mt_ss.Hist('VV'), -1)
    else:
        print 'VV group not found, VV not subtracted'

    # adding the WJets_data estimation to the stack
    FULL_mt_ss.AddHistogram(
        'Data - DY - TT',  #PG put it back in the 
        FULL_mt_ss_wjet.weighted,
        1010)
    FULL_mt_ss.Hist('Data - DY - TT').stack = False
    # with a nice pink color
    pink = kPink + 7
    sPinkHollow = Style(lineColor=pink, markerColor=pink, markerStyle=4)
    FULL_mt_ss.Hist('Data - DY - TT').SetStyle(sPinkHollow)

    #PG compare the MC-subtracted data to the WJets MC only for SS
    #PG ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----

    can0 = TCanvas('can0', '', 100, 100, 600, 600)
    p_main = TPad("p1", "", 0, 0.3, 1, 1)
    p_ratio = TPad("p1", "", 0, 0, 1, 0.3)
    p_main.Draw()
    p_main.SetLogy()
    p_ratio.Draw()

    p_main.cd()
    W_ss_WJets = FULL_mt_ss.Hist('WJets').weighted
    W_ss_Data = FULL_mt_ss.Hist('Data - DY - TT').weighted
示例#6
0
from CMGTools.RootTools.Style import *

sZZ = Style(lineColor=4, lineWidth=4, fillColor=4, fillStyle=3013)
sWW = Style(lineColor=3, lineWidth=4, fillColor=4, fillStyle=3013)
sQQ = Style(lineColor=6, lineWidth=4, fillColor=4, fillStyle=3013)
sHiggs = Style(lineColor=2, lineWidth=4, fillStyle=0)