HiggsAnalysis-KITHiggsToTauTau
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
makePlots_datacardsLFVZlt Namespace Reference

Functions

def is_control_region
 
def matching_process
 
def remove_procs_and_systs_with_zero_yield
 

Variables

tuple log = logging.getLogger(__name__)
 
tuple parser
 
string help = "Input directory."
 
list default = ["et", "mt", "em"]
 
tuple args = parser.parse_args()
 
tuple sample_settings = samples.Samples()
 
tuple binnings_settings = binnings.BinningsDict()
 
tuple systematics_factory = systematics.SystematicsFactory()
 
list plot_configs = []
 
list output_files = []
 
list merged_output_files = []
 
list hadd_commands = []
 
tuple datacards = lfvzltdatacards.LFVZltDatacards(ttbarFit=args.ttbar_fit,mmFit=args.mm_fit,year=args.era,noJECuncSplit=args.no_jec_unc_split)
 
string tmp_input_root_filename_template = "input/${ANALYSIS}_${CHANNEL}_${BIN}_${SYSTEMATIC}_${ERA}.root"
 
string input_root_filename_template = "input/${ANALYSIS}_${CHANNEL}_${BIN}_${ERA}.root"
 
string bkg_histogram_name_template = "${BIN}/${PROCESS}"
 
string sig_histogram_name_template = "${BIN}/${PROCESS}"
 
string bkg_syst_histogram_name_template = "${BIN}/${PROCESS}_${SYSTEMATIC}"
 
string sig_syst_histogram_name_template = "${BIN}/${PROCESS}_${SYSTEMATIC}"
 
 datacard_filename_templates = datacards.configs.LFV_datacard_filename_templates
 
string output_root_filename_template = "datacards/common/${ANALYSIS}.input_${ERA}.root"
 
list jecUncertNames
 
dictionary ss_os_factors
 
dictionary wj_sf_shifts
 
dictionary zmm_cr_factors
 
string zmm_cr_0jet_global = "(1.0)"
 
string zmm_cr_boosted_global = "(1.0)"
 
string zmm_cr_vbf_global = "(1.02)"
 
dictionary zmm_cr_factors_official
 
list top_pt_reweight_nicks
 
list categoriesWithRelaxedIsolationForW
 
list categoriesWithRelaxedIsolationForQCD
 
dictionary signalCrossSectionTimesBR
 
 do_not_normalize_by_bin_width = args.do_not_normalize_by_bin_width
 
list categories = [channel + "_" + category for category in categories]
 
tuple categories_save = sorted(categories)
 
tuple datacards_per_channel_category = lfvzltdatacards.LFVZltDatacards(cb=datacards.cb.cp().channel([channel]).bin([category]))
 
tuple exclude_cuts = copy.deepcopy(args.exclude_cuts)
 
list higgs_masses = [mass for mass in datacards_per_channel_category.cb.mass_set() if mass != "*"]
 
tuple output_file
 
list tmp_output_files = []
 
tuple nominal = (shape_systematic == "nominal")
 
tuple list_of_samples = (["data"] if nominal else [])
 
string systematic = "nominal"
 
string samples = "\", \""
 
 channel = channel,
 
 category = category,
 
tuple ss_os_factor = ss_os_factors.get(category,0.0)
 
tuple wj_sf_shift = wj_sf_shifts.get(category,0.0)
 
tuple zmm_cr_factor = zmm_cr_factors_official.get(category, "(1.0)")
 
tuple config
 
tuple systematics_settings = systematics_factory.get(shape_systematic)
 
list weightAtIndex = config["weights"]
 
string binnings_key = "binningHtt13TeV_"
 
list two_d_inputs = []
 
 histogram_name_template = bkg_histogram_name_templateifnominalelsebkg_syst_histogram_name_template
 
tuple PROCESS = datacards.configs.sample2process(sample)
 
 BIN = category,
 
 SYSTEMATIC = systematic
 
tuple tmp_output_file
 
 DST = output_file,
 
string SRC = " "
 
list debug_plot_configs = []
 
 update_systematics = True
 
tuple processes = datacards.cb.cp()
 
float add_threshold = 0.05
 
dictionary datacards_cbs = {}
 
dictionary datacards_poi_ranges = {}
 
tuple channels = cb.channel_set()
 
tuple datacards_workspaces = datacards.text2workspace(datacards_cbs, n_processes=args.n_processes)
 
tuple datacards_postfit_shapes = datacards.postfit_shapes_fromworkspace(datacards_cbs, datacards_workspaces, False, args.n_processes, "--sampling" + (" --print" if args.n_processes <= 1 else ""))
 
dictionary backgrounds_to_merge
 
dictionary x_tick_labels
 
dictionary texts
 
dictionary texts_x
 
dictionary vertical_lines
 
tuple prefit_postfit_plot_configs = datacards.prefit_postfit_plots(datacards_cbs, datacards_postfit_shapes, plotting_args={"ratio" : args.ratio, "args" : args.args, "lumi" : args.lumi, "normalize" : not(do_not_normalize_by_bin_width), "era" : args.era, "x_expressions" : config["x_expressions"][0], "return_configs" : True, "merge_backgrounds" : backgrounds_to_merge, "add_soverb_ratio" : True}, n_processes=args.n_processes)
 
list plot_category = plot_config["filename"]
 
list plot_channel = plot_config["title"]
 

Function Documentation

def makePlots_datacardsLFVZlt.is_control_region (   obj)
def makePlots_datacardsLFVZlt.matching_process (   obj1,
  obj2 
)
def makePlots_datacardsLFVZlt.remove_procs_and_systs_with_zero_yield (   proc)

Variable Documentation

float makePlots_datacardsLFVZlt.add_threshold = 0.05
tuple makePlots_datacardsLFVZlt.args = parser.parse_args()
dictionary makePlots_datacardsLFVZlt.backgrounds_to_merge
Initial value:
1 = {
2  "ZLL" : ["ZL", "ZJ"],
3  "TT" : ["TTT", "TTJJ"],
4  "EWK" : ["EWKZ", "VVT", "VVJ", "VV", "W", "hww_gg125", "hww_qq125"]
5  }
makePlots_datacardsLFVZlt.BIN = category,
string makePlots_datacardsLFVZlt.binnings_key = "binningHtt13TeV_"
tuple makePlots_datacardsLFVZlt.binnings_settings = binnings.BinningsDict()
string makePlots_datacardsLFVZlt.bkg_histogram_name_template = "${BIN}/${PROCESS}"
string makePlots_datacardsLFVZlt.bkg_syst_histogram_name_template = "${BIN}/${PROCESS}_${SYSTEMATIC}"
tuple makePlots_datacardsLFVZlt.categories = [channel + "_" + category for category in categories]
tuple makePlots_datacardsLFVZlt.categories_save = sorted(categories)
list makePlots_datacardsLFVZlt.categoriesWithRelaxedIsolationForQCD
Initial value:
1 = [
2  "ZeroJet2D",
3  "Boosted2D",
4  "Vbf2D"
5  ]
list makePlots_datacardsLFVZlt.categoriesWithRelaxedIsolationForW
Initial value:
1 = [
2  "Boosted2D",
3  "Vbf2D"
4  ]
makePlots_datacardsLFVZlt.category = category,
makePlots_datacardsLFVZlt.channel = channel,
tuple makePlots_datacardsLFVZlt.channels = cb.channel_set()
tuple makePlots_datacardsLFVZlt.config
Initial value:
1 = sample_settings.get_config(
2  samples=[getattr(samples.Samples, sample) for sample in list_of_samples],
3  channel=channel,
4  category="catHtt13TeV_"+category,
5  weight=args.weight,
6  lumi = args.lumi * 1000,
7  exclude_cuts=exclude_cuts,
8  higgs_masses=90,
9  cut_type="smhtt2016" if args.era == "2016" else "baseline",
10  estimationMethod=args.background_method,
11  ss_os_factor=ss_os_factor,
12  wj_sf_shift=wj_sf_shift,
13  zmm_cr_factor=zmm_cr_factor,
14  no_ewkz_as_dy = args.no_ewkz_as_dy,
15  useRelaxedIsolationForW = (category.split("_")[1] in categoriesWithRelaxedIsolationForW),
16  useRelaxedIsolationForQCD = (category.split("_")[1] in categoriesWithRelaxedIsolationForQCD)
17  )
makePlots_datacardsLFVZlt.datacard_filename_templates = datacards.configs.LFV_datacard_filename_templates
tuple makePlots_datacardsLFVZlt.datacards = lfvzltdatacards.LFVZltDatacards(ttbarFit=args.ttbar_fit,mmFit=args.mm_fit,year=args.era,noJECuncSplit=args.no_jec_unc_split)
dictionary makePlots_datacardsLFVZlt.datacards_cbs = {}
tuple makePlots_datacardsLFVZlt.datacards_per_channel_category = lfvzltdatacards.LFVZltDatacards(cb=datacards.cb.cp().channel([channel]).bin([category]))
dictionary makePlots_datacardsLFVZlt.datacards_poi_ranges = {}
tuple makePlots_datacardsLFVZlt.datacards_postfit_shapes = datacards.postfit_shapes_fromworkspace(datacards_cbs, datacards_workspaces, False, args.n_processes, "--sampling" + (" --print" if args.n_processes <= 1 else ""))
tuple makePlots_datacardsLFVZlt.datacards_workspaces = datacards.text2workspace(datacards_cbs, n_processes=args.n_processes)
list makePlots_datacardsLFVZlt.debug_plot_configs = []
string makePlots_datacardsLFVZlt.default = ["et", "mt", "em"]
makePlots_datacardsLFVZlt.do_not_normalize_by_bin_width = args.do_not_normalize_by_bin_width
makePlots_datacardsLFVZlt.DST = output_file,
tuple makePlots_datacardsLFVZlt.exclude_cuts = copy.deepcopy(args.exclude_cuts)
list makePlots_datacardsLFVZlt.hadd_commands = []
string makePlots_datacardsLFVZlt.help = "Input directory."
list makePlots_datacardsLFVZlt.higgs_masses = [mass for mass in datacards_per_channel_category.cb.mass_set() if mass != "*"]
makePlots_datacardsLFVZlt.histogram_name_template = bkg_histogram_name_templateifnominalelsebkg_syst_histogram_name_template
string makePlots_datacardsLFVZlt.input_root_filename_template = "input/${ANALYSIS}_${CHANNEL}_${BIN}_${ERA}.root"
list makePlots_datacardsLFVZlt.jecUncertNames
tuple makePlots_datacardsLFVZlt.list_of_samples = (["data"] if nominal else [])
tuple makePlots_datacardsLFVZlt.log = logging.getLogger(__name__)
list makePlots_datacardsLFVZlt.merged_output_files = []
tuple makePlots_datacardsLFVZlt.nominal = (shape_systematic == "nominal")
tuple makePlots_datacardsLFVZlt.output_file
Initial value:
1 = os.path.join(args.output_dir, input_root_filename_template.replace("$", "").format(
2  ANALYSIS="LFV",
3  CHANNEL=channel,
4  BIN=category,
5  ERA="13TeV"
6  ))
tuple makePlots_datacardsLFVZlt.output_files = []
string makePlots_datacardsLFVZlt.output_root_filename_template = "datacards/common/${ANALYSIS}.input_${ERA}.root"
tuple makePlots_datacardsLFVZlt.parser
Initial value:
1 = argparse.ArgumentParser(description="Create ROOT inputs and datacards for SM HTT analysis.",
2  parents=[logger.loggingParser])
list makePlots_datacardsLFVZlt.plot_category = plot_config["filename"]
list makePlots_datacardsLFVZlt.plot_channel = plot_config["title"]
list makePlots_datacardsLFVZlt.plot_configs = []
tuple makePlots_datacardsLFVZlt.prefit_postfit_plot_configs = datacards.prefit_postfit_plots(datacards_cbs, datacards_postfit_shapes, plotting_args={"ratio" : args.ratio, "args" : args.args, "lumi" : args.lumi, "normalize" : not(do_not_normalize_by_bin_width), "era" : args.era, "x_expressions" : config["x_expressions"][0], "return_configs" : True, "merge_backgrounds" : backgrounds_to_merge, "add_soverb_ratio" : True}, n_processes=args.n_processes)
tuple makePlots_datacardsLFVZlt.PROCESS = datacards.configs.sample2process(sample)
tuple makePlots_datacardsLFVZlt.processes = datacards.cb.cp()
tuple makePlots_datacardsLFVZlt.sample_settings = samples.Samples()
string makePlots_datacardsLFVZlt.samples = "\", \""
string makePlots_datacardsLFVZlt.sig_histogram_name_template = "${BIN}/${PROCESS}"
string makePlots_datacardsLFVZlt.sig_syst_histogram_name_template = "${BIN}/${PROCESS}_${SYSTEMATIC}"
dictionary makePlots_datacardsLFVZlt.signalCrossSectionTimesBR
Initial value:
1 = {
2  "ggh125" : "((48.58*0.0627)/(3.0469376))",
3  "qqh125" : "((3.781*0.0627)/(0.237207))",
4  "zh120" : "((0.994*0.0698)/(0.0611821157257))",
5  "zh125" : "((0.884*0.0627)/(0.05495872))",
6  "zh130" : "((0.790*0.0541)/(0.0474205223604))",
7  "wph120" : "((0.9558*0.0698)/(0.0667244))",
8  "wph125" : "((0.8400*0.0627)/(0.0526848))",
9  "wph130" : "((0.7414*0.0541)/(0.0401172))",
10  "wmh120" : "((0.6092*0.0698)/(0.0425283))",
11  "wmh125" : "((0.5328*0.0627)/(0.0334172))",
12  "wmh130" : "((0.4676*0.0541)/(0.0253018))"
13  }
string makePlots_datacardsLFVZlt.SRC = " "
tuple makePlots_datacardsLFVZlt.ss_os_factor = ss_os_factors.get(category,0.0)
dictionary makePlots_datacardsLFVZlt.ss_os_factors
Initial value:
1 = {
2  "mt_ZeroJet2D" : 1.07,
3  "mt_Boosted2D" : 1.06,
4  "mt_Vbf2D" : 1.0,
5  "et_ZeroJet2D" : 1.0,
6  "et_Boosted2D" : 1.28,
7  "et_Vbf2D" : 1.0,
8  "em_ZeroJet2D" : 2.27,
9  "em_Boosted2D" : 2.26,
10  "em_Vbf2D" : 2.84
11  }
makePlots_datacardsLFVZlt.systematic = "nominal"
makePlots_datacardsLFVZlt.SYSTEMATIC = systematic
tuple makePlots_datacardsLFVZlt.systematics_factory = systematics.SystematicsFactory()
tuple makePlots_datacardsLFVZlt.systematics_settings = systematics_factory.get(shape_systematic)
dictionary makePlots_datacardsLFVZlt.texts
Initial value:
1 = {
2  "mt_ZeroJet2D" : ["h^{#pm}", "h^{#pm}#pi^{0}", "h^{#pm}h^{#pm}h^{#mp}"],
3  "et_ZeroJet2D" : ["h^{#pm}", "h^{#pm}#pi^{0}", "h^{#pm}h^{#pm}h^{#mp}"],
4  "em_ZeroJet2D" : ["15 < p_{T}(#mu) < 25 GeV", "25 < p_{T}(#mu) < 35 GeV", "p_{T}(#mu) > 35 GeV"],
5  "mt_Boosted2D" : ["0 < p_{T}^{#tau#tau} < 100 GeV", "100 < p_{T}^{#tau#tau} < 150 GeV", "150 < p_{T}^{#tau#tau} < 200 GeV", "200 < p_{T}^{#tau#tau} < 250 GeV", "250 < p_{T}^{#tau#tau} < 300 GeV", "p_{T}^{#tau#tau} > 300 GeV"],
6  "et_Boosted2D" : ["0 < p_{T}^{#tau#tau} < 100 GeV", "100 < p_{T}^{#tau#tau} < 150 GeV", "150 < p_{T}^{#tau#tau} < 200 GeV", "200 < p_{T}^{#tau#tau} < 250 GeV", "250 < p_{T}^{#tau#tau} < 300 GeV", "p_{T}^{#tau#tau} > 300 GeV"],
7  "em_Boosted2D" : ["0 < p_{T}^{#tau#tau} < 100 GeV", "100 < p_{T}^{#tau#tau} < 150 GeV", "150 < p_{T}^{#tau#tau} < 200 GeV", "200 < p_{T}^{#tau#tau} < 250 GeV", "250 < p_{T}^{#tau#tau} < 300 GeV", "p_{T}^{#tau#tau} > 300 GeV"],
8  "tt_Boosted2D" : ["0 < p_{T}^{#tau#tau} < 100 GeV", "100 < p_{T}^{#tau#tau} < 170 GeV", "170 < p_{T}^{#tau#tau} < 300 GeV", "p_{T}^{#tau#tau} > 300 GeV"],
9  "mt_Vbf2D" : ["300 < m_{jj} < 700 GeV", "700 < m_{jj} < 1100 GeV", "1100 < m_{jj} < 1500 GeV", "m_{jj} > 1500 GeV"],
10  "et_Vbf2D" : ["300 < m_{jj} < 700 GeV", "700 < m_{jj} < 1100 GeV", "1100 < m_{jj} < 1500 GeV", "m_{jj} > 1500 GeV"],
11  "em_Vbf2D" : ["300 < m_{jj} < 700 GeV", "700 < m_{jj} < 1100 GeV", "1100 < m_{jj} < 1500 GeV", "m_{jj} > 1500 GeV"],
12  "tt_Vbf2D" : ["0 < m_{jj} < 300 GeV", "300 < m_{jj} < 500 GeV", "500 < m_{jj} < 800 GeV", "m_{jj} > 800 GeV"]
13  }
dictionary makePlots_datacardsLFVZlt.texts_x
Initial value:
1 = {
2  "mt_ZeroJet2D" : [0.14, 0.4, 0.67],
3  "et_ZeroJet2D" : [0.14, 0.4, 0.67],
4  "em_ZeroJet2D" : [0.2, 0.46, 0.705],
5  "mt_Boosted2D" : [0.17, 0.2975, 0.43, 0.56, 0.6925, 0.81],
6  "et_Boosted2D" : [0.17, 0.2975, 0.43, 0.56, 0.6925, 0.81],
7  "em_Boosted2D" : [0.17, 0.2975, 0.43, 0.56, 0.6925, 0.81],
8  "tt_Boosted2D" : [0.19, 0.38, 0.58, 0.76],
9  "mt_Vbf2D" : [0.19, 0.39, 0.59, 0.76],
10  "et_Vbf2D" : [0.19, 0.39, 0.59, 0.76],
11  "em_Vbf2D" : [0.19, 0.39, 0.59, 0.76],
12  "tt_Vbf2D" : [0.18, 0.38, 0.58, 0.75]
13  }
string makePlots_datacardsLFVZlt.tmp_input_root_filename_template = "input/${ANALYSIS}_${CHANNEL}_${BIN}_${SYSTEMATIC}_${ERA}.root"
tuple makePlots_datacardsLFVZlt.tmp_output_file
Initial value:
1 = os.path.join(args.output_dir, tmp_input_root_filename_template.replace("$", "").format(
2  ANALYSIS="LFV",
3  CHANNEL=channel,
4  BIN=category,
5  SYSTEMATIC=systematic,
6  ERA="13TeV"
7  ))
tuple makePlots_datacardsLFVZlt.tmp_output_files = []
list makePlots_datacardsLFVZlt.top_pt_reweight_nicks
Initial value:
1 = [
2  "noplot_ttj_ss_lowmt", # mt & et channels: qcd yield subtract
3  "noplot_ttj_shape_ss_qcd_control", # mt & et channels: qcd shape subtract
4  "noplot_ttj_os_highmt", # mt & et channels: w+jets yield subtract
5  "noplot_ttj_ss_highmt" # mt & et channels: qcd high mt yield subtract
6  ]
list makePlots_datacardsLFVZlt.two_d_inputs = []
makePlots_datacardsLFVZlt.update_systematics = True
dictionary makePlots_datacardsLFVZlt.vertical_lines
Initial value:
1 = {
2  "mt_ZeroJet2D" : [12, 24],
3  "et_ZeroJet2D" : [12, 24],
4  "em_ZeroJet2D" : [12, 24],
5  "mt_Boosted2D" : [10, 20, 30, 40, 50],
6  "et_Boosted2D" : [10, 20, 30, 40, 50],
7  "em_Boosted2D" : [10, 20, 30, 40, 50],
8  "tt_Boosted2D" : [12, 24, 36],
9  "mt_Vbf2D" : [5, 10, 15],
10  "et_Vbf2D" : [5, 10, 15],
11  "em_Vbf2D" : [5, 10, 15],
12  "tt_Vbf2D" : [12, 24, 36]
13  }
tuple makePlots_datacardsLFVZlt.weightAtIndex = config["weights"]
float makePlots_datacardsLFVZlt.wj_sf_shift = wj_sf_shifts.get(category,0.0)
dictionary makePlots_datacardsLFVZlt.wj_sf_shifts
Initial value:
1 = {
2  "mt_ZeroJet2D" : 0.10,
3  "mt_Boosted2D" : 0.05,
4  "mt_Vbf2D" : 0.10,
5  "et_ZeroJet2D" : 0.10,
6  "et_Boosted2D" : 0.05,
7  "et_Vbf2D" : 0.10
8  }
dictionary makePlots_datacardsLFVZlt.x_tick_labels
Initial value:
1 = {
2  "mt_ZeroJet2D" : ["0-60","60-65","65-70","70-75","75-80","80-85","85-90","90-95","95-100","100-105","105-110","110-400"] * 3,
3  "et_ZeroJet2D" : ["0-60","60-65","65-70","70-75","75-80","80-85","85-90","90-95","95-100","100-105","105-110","110-400"] * 3,
4  "em_ZeroJet2D" : ["0-50","50-55", "55-60","60-65","65-70","70-75","75-80","80-85","85-90","90-95","95-100","100-400"] * 3,
5  "mt_Boosted2D" : ["0-80","80-90","90-100","100-110","110-120","120-130","130-140","140-150","150-160","160-300"] * 6,
6  "et_Boosted2D" : ["0-80","80-90","90-100","100-110","110-120","120-130","130-140","140-150","150-160","160-300"] * 6,
7  "em_Boosted2D" : ["0-80","80-90","90-100","100-110","110-120","120-130","130-140","140-150","150-160","160-300"] * 6,
8  "tt_Boosted2D" : ["0-40","40-60","60-70","70-80","80-90","90-100","100-110","110-120","120-130","130-150","150-200","200-250"] * 4,
9  "mt_Vbf2D" : ["0-95","95-115","115-135","135-155","155-400"] * 4,
10  "et_Vbf2D" : ["0-95","95-115","115-135","135-155","155-400"] * 4,
11  "em_Vbf2D" : ["0-95","95-115","115-135","135-155","155-400"] * 4,
12  "tt_Vbf2D" : ["0-40","40-60","60-70","70-80","80-90","90-100","100-110","110-120","120-130","130-150","150-200","200-250"] * 4
13  }
string makePlots_datacardsLFVZlt.zmm_cr_0jet_global = "(1.0)"
string makePlots_datacardsLFVZlt.zmm_cr_boosted_global = "(1.0)"
tuple makePlots_datacardsLFVZlt.zmm_cr_factor = zmm_cr_factors_official.get(category, "(1.0)")
dictionary makePlots_datacardsLFVZlt.zmm_cr_factors
Initial value:
1 = {
2  "ZeroJet2D" : "(1.0395)",
3  "Boosted2D" : "(((ptvis<100)*1.0321) + ((ptvis>=100)*(ptvis<150)*1.023) + ((ptvis>=150)*(ptvis<200)*1.007) + ((ptvis>=200)*(ptvis<250)*1.016) + ((ptvis>=250)*(ptvis<300)*1.02) + ((ptvis>=300)*1.03))",
4  "Vbf2D" : "(((mjj<300)*1.0) + ((mjj>=300)*(mjj<700)*1.0605) + ((mjj>=700)*(mjj<1100)*1.017) + ((mjj>=1100)*(mjj<1500)*0.975) + ((mjj>=1500)*0.97))",
5  "Vbf2D_Up" : "(((mjj<300)*1.0) + ((mjj>=300)*(mjj<700)*1.121) + ((mjj>=700)*(mjj<1100)*1.034) + ((mjj>=1100)*(mjj<1500)*0.95) + ((mjj>=1500)*0.94))",
6  "Vbf2D_Down" : "(1.0)"
7  }
dictionary makePlots_datacardsLFVZlt.zmm_cr_factors_official
Initial value:
1 = {
2  "mt_ZeroJet2D" : zmm_cr_0jet_global,
3  "et_ZeroJet2D" : zmm_cr_0jet_global,
4  "em_ZeroJet2D" : "(1.02)",
5  "tt_ZeroJet2D" : zmm_cr_0jet_global,
6  "mt_Boosted2D" : zmm_cr_boosted_global,
7  "et_Boosted2D" : zmm_cr_boosted_global,
8  "em_Boosted2D" : zmm_cr_boosted_global,
9  "tt_Boosted2D" : zmm_cr_boosted_global,
10  "mt_Vbf2D" : zmm_cr_vbf_global+"*(((mjj>=300)*(mjj<700)*1.06) + ((mjj>=700)*(mjj<1100)*0.98) + ((mjj>=1100)*(mjj<1500)*0.95) + ((mjj>=1500)*0.95))",
11  "et_Vbf2D" : zmm_cr_vbf_global+"*(((mjj>=300)*(mjj<700)*1.06) + ((mjj>=700)*(mjj<1100)*0.98) + ((mjj>=1100)*(mjj<1500)*0.95) + ((mjj>=1500)*0.95))",
12  "em_Vbf2D" : zmm_cr_vbf_global+"*(((mjj>=300)*(mjj<700)*1.06) + ((mjj>=700)*(mjj<1100)*0.98) + ((mjj>=1100)*(mjj<1500)*0.95) + ((mjj>=1500)*0.95))",
13  "tt_Vbf2D" : "(((mjj<300)*1.00) + ((mjj>=300)*(mjj<500)*1.02) + ((mjj>=500)*(mjj<800)*1.06) + ((mjj>=800)*1.04))",
14  "mt_Vbf2D_Up" : zmm_cr_vbf_global+"*(((mjj>=300)*(mjj<700)*1.12) + ((mjj>=700)*(mjj<1100)*0.96) + ((mjj>=1100)*(mjj<1500)*0.90) + ((mjj>=1500)*0.90))",
15  "et_Vbf2D_Up" : zmm_cr_vbf_global+"*(((mjj>=300)*(mjj<700)*1.12) + ((mjj>=700)*(mjj<1100)*0.96) + ((mjj>=1100)*(mjj<1500)*0.90) + ((mjj>=1500)*0.90))",
16  "em_Vbf2D_Up" : zmm_cr_vbf_global+"*(((mjj>=300)*(mjj<700)*1.12) + ((mjj>=700)*(mjj<1100)*0.96) + ((mjj>=1100)*(mjj<1500)*0.90) + ((mjj>=1500)*0.90))",
17  "tt_Vbf2D_Up" : "(((mjj<300)*1.00) + ((mjj>=300)*(mjj<500)*1.04) + ((mjj>=500)*(mjj<800)*1.12) + ((mjj>=800)*1.08))",
18  "mt_Vbf2D_Down" : zmm_cr_vbf_global,
19  "et_Vbf2D_Down" : zmm_cr_vbf_global,
20  "em_Vbf2D_Down" : zmm_cr_vbf_global,
21  "tt_Vbf2D_Down" : "(1.0)"
22  }
string makePlots_datacardsLFVZlt.zmm_cr_vbf_global = "(1.02)"