sample_dic["data"].df = sample_df["data"][(sample_df["data"].bkg<cut)] datah = createHisto(sample_dic["data"], var,norm = sample_dic["data"].norm , over = overflow_underflow)[0] ''' #factor obsolete if (over == True and fac == True): factor = (histos[0].Integral()+histos[0].GetBinContent(0)+histos[0].GetBinContent(var.nbins+1))/(histos[1].Integral()+histos[1].GetBinContent(0)+histos[1].GetBinContent(var.nbins+1)) elif (over == False and fac == True): factor = histos[0].Integral() / histos[1].Integral() else: factor = 1 ''' makeStack(datah, histos, var, addFileName = "Pass_cut"+cutStr, rootFile = True, ratioPad = False, path = pathDir) addShapeUncHisto(sample_dic["mu"], var, sample_dic["mu"].df["ctau_weight_up"], sample_dic["mu"].df["ctau_weight_down"], addFileName = "Pass_cut"+cutStr) addShapeUncHisto(sample_dic["tau"], var, sample_dic["tau"].df["ctau_weight_up"], sample_dic["tau"].df["ctau_weight_down"], addFileName = "Pass_cut"+cutStr) create_datacard_signal(datah.Integral(),histos, dat_name = var.name+"_Pass") makeStack(datah0, histos0, var, addFileName = "Fail_cut"+cutStr, rootFile = True, ratioPad = False, path = pathDir) addShapeUncHisto(sample_dic["mu"], var, sample_dic["mu"].df["ctau_weight_up"], sample_dic["mu"].df["ctau_weight_down"], addFileName = "Fail_cut"+cutStr) addShapeUncHisto(sample_dic["tau"], var, sample_dic["tau"].df["ctau_weight_up"], sample_dic["tau"].df["ctau_weight_down"], addFileName = "Fail_cut"+cutStr) create_datacard_control(datah0.Integral(),histos0,dat_name = var.name+"_Fail") with open(pathDir+"/info.txt","w") as info:
print("data",histo_d.Integral()) makeSinglePlot(histo_d, var, sample_coll[-1]) his_c=f.Get("shapes_fit_s/control/mc_comb") histo_c= ROOT.TH1F("mc_comb","mc_comb", var.nbins, var.xmin, var.xmax) for i in range(1,his_c.GetNbinsX()+1): histo_c.SetBinContent(i,his_c.GetBinContent(i)) histo_c.SetBinError(i,his_c.GetBinError(i)) makeSinglePlot(histo_c, var, sample_coll[3]) print("comb",histo_c.Integral()) makeStack(histo_d,[histo_m, histo_t, histo_x, histo_c], var, path = 'fitPlt',fit=False) if(asimov): fw=ROOT.TFile.Open("root_files/asimov_file_"+var.name+".root","RECREATE") histo_m.SetName("mc_mu") histo_t.SetName("mc_tau") histo_x.SetName("mis_id") histo_c.SetName("mc_comb") histo_data = ROOT.TH1F("data_obs","data_obs", var.nbins, var.xmin, var.xmax) for i in range(1,histo_data.GetNbinsX()+1): histo_data.SetBinContent(i,histo_m.GetBinContent(i) + histo_t.GetBinContent(i) + histo_x.GetBinContent(i) + histo_c.GetBinContent(i)) histo_data.SetBinError(i,math.sqrt(histo_data.GetBinContent(i))) fw.cd()
norm=sample_dic["data"].norm, over=overflow_underflow)[0] ''' #factor obsolete if (over == True and fac == True): factor = (histos[0].Integral()+histos[0].GetBinContent(0)+histos[0].GetBinContent(var.nbins+1))/(histos[1].Integral()+histos[1].GetBinContent(0)+histos[1].GetBinContent(var.nbins+1)) elif (over == False and fac == True): factor = histos[0].Integral() / histos[1].Integral() else: factor = 1 ''' makeStack(datah, histos, var, addFileName="Pass_cut" + cutStr, rootFile=True, ratioPad=False, path=pathPassFail, rootPath="rootFiles/" + flag + "_cut" + cutStr) addShapeUncHisto(sample_dic["mu"], var, sample_dic["mu"].df["ctau_weight_up"], sample_dic["mu"].df["ctau_weight_down"], addFileName="Pass_cut" + cutStr) addShapeUncHisto(sample_dic["tau"], var, sample_dic["tau"].df["ctau_weight_up"], sample_dic["tau"].df["ctau_weight_down"], addFileName="Pass_cut" + cutStr)
for i in range(1, histo.GetNbinsX() + 1): histo_new.SetBinContent(i, histo.GetBinContent(i)) histo_new.SetBinError(i, histo.GetBinError(i)) #histo_new.Scale(scale) print("INTEGRAL" + sname, histo_new.Integral()) histos.append(histo_new) #DATA his_d = f.Get("shapes_fit_s/" + directoryName + "/data") histo_d = ROOT.TH1F("data", "data", var.nbins, var.xmin, var.xmax) for i in range(0, his_d.GetN()): histo_d.SetBinContent(i + 1, his_d.GetPointY(i)) # histo_d.Scale(scale) print("data", histo_d.Integral()) makeStack(histo_d, histos, var, path=pathDir, fit=True, addFileName='post_fit_' + directoryName) f.Close() if (saveonwww): print("Sinc with the website...") os.system( "rsync -aP www/" + flag + "/postFit/ [email protected]:/afs/cern.ch/user/f/friti/eos/www/" + flag + "/postFit/.")