histogramList.append(histoDATA_input.Get('ZMass_mu_MBMB')) histogramList.append(histoDATA_input.Get('ZMass_mu_MBME')) histogramList.append(histoDATA_input.Get('ZMass_mu_MEME')) #define lists for the fit function if ZTree : histTitleList = ['ZMass_ele_hist', 'ZMass_ele_hist_EBEB', 'ZMass_ele_hist_EBEE', 'ZMass_ele_hist_EEEE', 'ZMass_mu_hist', 'ZMass_mu_hist_MBMB', 'ZMass_mu_hist_MBME', 'ZMass_mu_hist_MEME'] else : histTitleList = ['ZMass_ele_hist', 'ZMass_ele_hist_extraMu', 'ZMass_ele_hist_extraEl', 'ZMass_ele_hist_EBEB', 'ZMass_ele_hist_EBEE', 'ZMass_ele_hist_EEEE', 'ZMass_mu_hist', 'ZMass_mu_hist_extraMu', 'ZMass_mu_hist_extraEl', 'ZMass_mu_hist_MBMB', 'ZMass_mu_hist_MBME', 'ZMass_mu_hist_MEME'] luminosityList = [ lumi for i in range(len(histogramList))] #do the fit fitResult = DoSimpleFit(histogramList, luminosityList, ZZTree, outputDir, histTitleList, fitMC, fitDATA) #fitResult = DoDCBunbinnedFit(histogramList, luminosityList, ZZTree, outputDir, histTitleList, fitMC, fitDATA) #to be fixed! print "Fit done!!" # ************************************ # store fit results in dictionaries if CRZLTree : massFitDATA_dict = {'Zee': fitResult[0].mean, 'Zee_extraMu': fitResult[1].mean, 'Zee_extraEl': fitResult[2].mean, 'Zee_EBEB': fitResult[3].mean, 'Zee_EBEE': fitResult[4].mean, 'Zee_EEEE': fitResult[5].mean, 'Zmumu': fitResult[6].mean, 'Zmumu_extraMu': fitResult[7].mean, 'Zmumu_extraEl': fitResult[8].mean, 'Zmumu_MBMB': fitResult[9].mean, 'Zmumu_MBME': fitResult[10].mean, 'Zmumu_MEME': fitResult[11].mean} widthFitDATA_dict = {'Zee': fitResult[0].width, 'Zee_extraMu': fitResult[1].width, 'Zee_extraEl': fitResult[2].width, 'Zee_EBEB': fitResult[3].width, 'Zee_EBEE': fitResult[4].width, 'Zee_EEEE': fitResult[5].width, 'Zmumu': fitResult[6].width, 'Zmumu_extraMu': fitResult[7].width, 'Zmumu_extraEl': fitResult[8].width, 'Zmumu_MBMB': fitResult[9].width, 'Zmumu_MBME': fitResult[10].width, 'Zmumu_MEME': fitResult[11].width}
legend.SetFillColor(kWhite) legend.SetLineColor(kBlack) legend.Draw() canvas.Update() canvas.SaveAs(OutputPathISOSIP + "/" + NameList_ISOSIPMax_inclusive[j] + ".pdf") canvas.SaveAs(OutputPathISOSIP + "/" + NameList_ISOSIPMax_inclusive[j] + ".png") #*************************************************** # DCB fit for ZPlots, # binned fit Data2017_result2 = DoSimpleFit(ZMass_F1_ele_hist, recorded, ZZTree, outDir_fit, period + "_Z_ele", fitMC, fitDATA) # Z->e, full acceptance Data2017_result2_EBEB = DoSimpleFit(ZMass_F1_ele_hist_EBEB, recorded, ZZTree, outDir_fit, period + "_Z_ele_EBEB", fitMC, fitDATA) # Z->e, BB Data2017_result2_EBEE = DoSimpleFit(ZMass_F1_ele_hist_EBEE, recorded, ZZTree, outDir_fit, period + "_Z_ele_EBEE", fitMC, fitDATA) # Z->e, BE Data2017_result2_EEEE = DoSimpleFit(ZMass_F1_ele_hist_EEEE, recorded, ZZTree, outDir_fit, period + "_Z_ele_EEEE", fitMC, fitDATA) # Z->e, EE if not ZTree : Data2017_result2_extraMu = DoSimpleFit(ZMass_F1_ele_hist_extraMu, recorded, ZZTree, outDir_fit, period + "_Z_ele_extraMu", fitMC, fitDATA) # Z->e, extra mu Data2017_result2_extraEl = DoSimpleFit(ZMass_F1_ele_hist_extraEl, recorded, ZZTree, outDir_fit, period + "_Z_ele_extraEl", fitMC, fitDATA) # Z->e, extra e Data2017_result3 = DoSimpleFit(ZMass_F1_mu_hist, recorded, ZZTree, outDir_fit, period + "_Z_mu", fitMC, fitDATA) # Z->mu, full acceptance Data2017_result3_MBMB = DoSimpleFit(ZMass_F1_mu_hist_MBMB, recorded, ZZTree, outDir_fit, period + "_Z_mu_MBMB", fitMC, fitDATA) # Z->mu, BB Data2017_result3_MBME = DoSimpleFit(ZMass_F1_mu_hist_MBME, recorded, ZZTree, outDir_fit, period + "_Z_mu_MBME", fitMC, fitDATA) # Z->mu, BE Data2017_result3_MEME = DoSimpleFit(ZMass_F1_mu_hist_MEME, recorded, ZZTree, outDir_fit, period + "_Z_mu_MEME", fitMC, fitDATA) # Z->mu, EE if not ZTree : Data2017_result3_extraMu = DoSimpleFit(ZMass_F1_mu_hist_extraMu, recorded, ZZTree, outDir_fit, period + "_Z_mu_extraMu", fitMC, fitDATA) # Z->mu, extra mu Data2017_result3_extraEl = DoSimpleFit(ZMass_F1_mu_hist_extraEl, recorded, ZZTree, outDir_fit, period + "_Z_mu_extraEl", fitMC, fitDATA) # Z->mu, extra e