def calc_wstat_xspec(mu_sig, n_on, n_off, alpha): from xspec_stats import xspec_wstat as wstat from xspec_stats import xspec_wstat_f, xspec_wstat_d td = test_data() # alpha = t_s / t_b t_b = 1. / alpha t_s = 1 d = xspec_wstat_d(t_s, t_b, mu_sig, n_on, n_off) f = xspec_wstat_f(n_on, n_off, t_s, t_b, mu_sig, d) bkg = f * t_b stat = wstat(t_s, t_b, mu_sig, n_on, n_off) print("XSPEC mu_bkg (f * t_b): {}".format(bkg)) print("XSPEC stat: {}".format(stat))
) data.set_background(background, 1) return model, data def test_case(args): import sherpa.stats as ss mu_sig = float(args[1]) n_on = float(args[2]) n_off = float(args[3]) alpha = float(args[4]) model, data = get_data(mu_sig, n_on, n_off, alpha) wstat, cash, cstat = ss.WStat(), ss.Cash(), ss.CStat() print('wstat: {}'.format(wstat.calc_stat(model=model, data=data)[0])) print('cash: {}'.format(cash.calc_stat(model=model, data=data)[0])) print('cstat: {}'.format(cstat.calc_stat(model=model, data=data)[0])) if __name__ == "__main__": td = test_data() for mu_sig, n_on, n_off, alpha in zip(td["mu_sig"], td["n_on"], td["n_off"], td["alpha"]): test_case([None, mu_sig, n_on, n_off, alpha]) print("\n-------------------------\n")
data.set_background(background, 1) return model, data def test_case(args): import sherpa.stats as ss mu_sig = float(args[1]) n_on = float(args[2]) n_off = float(args[3]) alpha = float(args[4]) model, data = get_data(mu_sig, n_on, n_off, alpha) wstat, cash, cstat = ss.WStat(), ss.Cash(), ss.CStat() print('wstat: {}'.format(wstat.calc_stat(model=model, data=data)[0])) print('cash: {}'.format(cash.calc_stat(model=model, data=data)[0])) print('cstat: {}'.format(cstat.calc_stat(model=model, data=data)[0])) if __name__ == "__main__": td = test_data() for mu_sig, n_on, n_off, alpha in zip( td["mu_sig"], td["n_on"], td["n_off"], td["alpha"] ): test_case([None, mu_sig, n_on, n_off, alpha]) print("\n-------------------------\n")