def GetLikelihoodFitStat(File_Asi, File_Obs, Graph="Graph", Likelihood="Likelihood"): f_obs = ROOT.TFile(File_Obs) f_asi = ROOT.TFile(File_Asi) g_obs = f_obs.Get(Graph) g_asi = f_asi.Get(Graph) x_obs, y_obs = g_obs.GetX(), g_obs.GetY() x_asi, y_asi = g_asi.GetX(), g_asi.GetY() Sigma = abs( ROOT.TMath.NormQuantile( 1 - ROOT.TMath.Prob(y_obs[list(x_obs).index(0)], 1))) Sigma_68CL_asi = Utilities.Get1DIntersectionsGivenY(x_asi, y_asi, 1.) Sigma_95CL_asi = Utilities.Get1DIntersectionsGivenY(x_asi, y_asi, 3.841) Sigma_68CL_obs = Utilities.Get1DIntersectionsGivenY(x_obs, y_obs, 1.) Sigma_95CL_obs = Utilities.Get1DIntersectionsGivenY(x_obs, y_obs, 3.841) pos_obs = list(y_obs).index(min(y_obs)) t_obs = f_obs.Get(Likelihood) t_obs.GetEntry(pos_obs) BSM_min_obs = t_obs.BSM_coupling SM_min_obs = t_obs.SM_coupling Type = 'fixed' if 'fixed' in File_Asi else 'free' SM_text = '-' if 'fixed' in File_Asi else "{0:.2f}".format(SM_min_obs) s = '$\kappa_\\text{SM}$ \\text{fixed} &' + Utilities.BracketListStr( Sigma_68CL_asi) + '&' + Utilities.BracketListStr( Sigma_95CL_asi) + '&' + Utilities.BracketListStr( Sigma_68CL_obs) + '&' + Utilities.BracketListStr( Sigma_95CL_asi) + '&' + "{0:.2f}".format( BSM_min_obs) + '&' + SM_text + '&' + "{0:.2f}".format( Sigma) print s