name='OSSS_corr_qcd_ctt', file='{INDIR}/{CHANNEL}/{CATEGORY}/pieces/Correction_Data_QCD_OSSS{FF}.root'.format(INDIR=indir,CHANNEL=channel,CATEGORY=category,FF=FFtype), object='QCD_SS_Data_FFSSMuMediumData_OSSS_correction', vars=['mvis'] ) ] ) qcd_os_up = replace_nodes( qcd_os, {'ff_qcd_os': Node( name='ff_qcd_os_up', formula='(1.+{sys_qcd_up})*{ff_qcd_os}', leaves=[ Leaf( name='sys_qcd_up', file='{INDIR}/{CHANNEL}/{CATEGORY}/pieces/uncertainties_QCD_W{FF}.root'.format(INDIR=indir,CHANNEL=channel,CATEGORY=category,FF=FFtype), object='uncertainties_QCD_MVis_Iso_SS2OS_up', vars=['mvis','tau2_pt'] ), qcd_os.find('ff_qcd_os') ] ) } ) qcd_os_down = replace_nodes( qcd_os, {'ff_qcd_os': Node( name='ff_qcd_os_down', formula='max(0.,1.-{sys_qcd_down})*{ff_qcd_os}', leaves=[
#print_tree(comb) fill(ff_comb, comb) ## Define systematics ############################ comb_sys_nonclosure_qcd = replace_nodes( comb, {'ff_qcd': Node( name='ff_qcd_sys_nonclosure', formula='{ff_qcd_nonclosure}*{ff_qcd}', leaves=[ Leaf( name='ff_qcd_nonclosure', file=dir+'/nonClosures.root', object='QCDSS_Histo_Smooth_Ratio', vars=['mvis'] ), comb.find('ff_qcd') ] ) } ) comb_sys_nonclosure_w = replace_nodes( comb, {'ff_w_corr': Node( name='ff_w_corr_sys_nonclosure',
]) #print_tree(comb) fill(ff_comb, comb) ## Define systematics ############################ comb_sys_nonclosure_qcd = replace_nodes( comb, { 'ff_qcd': Node(name='ff_qcd_sys_nonclosure', formula='{ff_qcd_nonclosure}*{ff_qcd}', leaves=[ Leaf(name='ff_qcd_nonclosure', file=dir + '/nonClosures.root', object='QCDSS_Histo_Smooth_Ratio', vars=['mvis']), comb.find('ff_qcd') ]) }) comb_sys_nonclosure_w = replace_nodes( comb, { 'ff_w_corr': Node(name='ff_w_corr_sys_nonclosure', formula='{ff_w_nonclosure}*{ff_w_corr}', leaves=[ Leaf(name='ff_w_nonclosure', file=dir + '/nonClosures.root',
vars=['mt']) leaf2_sys = Leaf( name='corr_mt_statup', file= '/afs/cern.ch/work/j/jsauvan/public/HTauTau/FakeFactors/mtCorrections.root', object='mt_correction_statup', vars=['mt']) node = Node(name='ff_W_corr', formula='{corr_mt}*{ff_W}', leaves=[leaf1, leaf2]) node_sys = Node(name='ff_W_corr_statup', formula='({corr_mt} + {corr_mt_statup} - {corr_mt})*{ff_W}', leaves=[leaf1, leaf2, leaf2_sys]) fill(ff, node) nodesys = replace_nodes(node, {'corr_mt': leaf2_sys}) nodesys2 = replace_nodes(node, {'ff_W_corr': node_sys}) fill(ff, nodesys, 'Sys_CorrMT_StatUp') fill(ff, nodesys2, 'Sys_CorrMT_StatUp2') ff_sys = FakeFactor(vars=['tau_pt', 'tau_decay', 'mt']) ff_sys2 = FakeFactor(vars=['tau_pt', 'tau_decay', 'mt']) fill(ff_sys, nodesys) fill(ff_sys2, nodesys2) print ff.value([30, 1, 10]) print '' print ff_sys.value([30, 1, 10]) print ff_sys2.value([30, 1, 10]) print '' print ff.value([30, 1, 10], 'Sys_CorrMT_StatUp') print ff.value([30, 1, 10], 'Sys_CorrMT_StatUp2')
file='{HOME}/public/Htautau/FakeRate/{VERSION}/pieces/Correction_Data_QCD_MuIso.root'.format(HOME=home,VERSION=version), object='QCD_SS_Data_FFSSMuMediumData_isomu_correction', vars=['mu_iso'] ) ] ) # Define systematics qcd_ss_up = replace_nodes( qcd_ss, {'ff_qcd_ss': Node( name='ff_qcd_ss_up', formula='(1.+{sys_qcd_up})*{ff_qcd_ss}', leaves=[ Leaf( name='sys_qcd_up', file='{HOME}/public/Htautau/FakeRate/{VERSION}/pieces/uncertainties_QCD_W.root'.format(HOME=home,VERSION=version), object='uncertainties_QCD_SS_MVis_Iso_up', vars=['mvis', 'mu_iso'] ), qcd_ss.find('ff_qcd_ss') ] ) } ) qcd_ss_down = replace_nodes( qcd_ss, {'ff_qcd_ss': Node( name='ff_qcd_ss_down', formula='max(0.,1.-{sys_qcd_down})*{ff_qcd_ss}', leaves=[
name='OSSS_corr_qcd', file='{HOME}/public/Htautau/FakeRate/{VERSION}/{CHANNEL}/{CATEGORY}/pieces/Correction_Data_QCD_OSSS.root'.format(HOME=home,VERSION=version,CHANNEL=channel,CATEGORY=category), object='QCD_SS_Data_FFSSMuMediumData_OSSS_correction', vars=['mvis'] ) ] ) qcd_os_up = replace_nodes( qcd_os, {'ff_qcd_os': Node( name='ff_qcd_os_up', formula='(1.+{sys_qcd_up})*{ff_qcd_os}', leaves=[ Leaf( name='sys_qcd_up', file='{HOME}/public/Htautau/FakeRate/{VERSION}/{CHANNEL}/uncertainties_QCD_W.root'.format(HOME=home,VERSION=version,CHANNEL=channel,CATEGORY=category), object='uncertainties_QCD_MVis_Iso_SS2OS_up', vars=['mvis', 'mu_iso'] ), qcd_os.find('ff_qcd_os') ] ) } ) qcd_os_down = replace_nodes( qcd_os, {'ff_qcd_os': Node( name='ff_qcd_os_down', formula='max(0.,1.-{sys_qcd_down})*{ff_qcd_os}', leaves=[
object='mt_correction_statup', vars=['mt'] ) node = Node( name='ff_W_corr', formula='{corr_mt}*{ff_W}', leaves=[leaf1,leaf2] ) node_sys = Node( name='ff_W_corr_statup', formula='({corr_mt} + {corr_mt_statup} - {corr_mt})*{ff_W}', leaves=[leaf1,leaf2,leaf2_sys] ) fill(ff, node) nodesys = replace_nodes(node, {'corr_mt':leaf2_sys}) nodesys2 = replace_nodes(node, {'ff_W_corr':node_sys}) fill(ff, nodesys, 'Sys_CorrMT_StatUp') fill(ff, nodesys2, 'Sys_CorrMT_StatUp2') ff_sys = FakeFactor(vars=['tau_pt', 'tau_decay', 'mt']) ff_sys2 = FakeFactor(vars=['tau_pt', 'tau_decay', 'mt']) fill(ff_sys, nodesys) fill(ff_sys2, nodesys2) print ff.value([30,1,10]) print '' print ff_sys.value([30,1,10]) print ff_sys2.value([30,1,10]) print '' print ff.value([30,1,10], 'Sys_CorrMT_StatUp') print ff.value([30,1,10], 'Sys_CorrMT_StatUp2')
file= '{HOME}/public/Htautau/FakeRate/{VERSION}/pieces/Correction_Data_QCD_MuIso.root' .format(HOME=home, VERSION=version), object='QCD_SS_Data_FFSSMuMediumData_isomu_correction', vars=['mu_iso']) ]) # Define systematics qcd_ss_up = replace_nodes( qcd_ss, { 'ff_qcd_ss': Node( name='ff_qcd_ss_up', formula='(1.+{sys_qcd_up})*{ff_qcd_ss}', leaves=[ Leaf( name='sys_qcd_up', file= '{HOME}/public/Htautau/FakeRate/{VERSION}/pieces/uncertainties_QCD_W.root' .format(HOME=home, VERSION=version), object='uncertainties_QCD_SS_MVis_Iso_up', vars=['mvis', 'mu_iso']), qcd_ss.find('ff_qcd_ss') ]) }) qcd_ss_down = replace_nodes( qcd_ss, { 'ff_qcd_ss': Node( name='ff_qcd_ss_down', formula='max(0.,1.-{sys_qcd_down})*{ff_qcd_ss}', leaves=[