aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_gf_simple.py
blob: 7241da2fd9f667d089b99f8bb62168116ceaefb2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
import numpy as np
import matplotlib as mpl
mpl.use('Agg')
import matplotlib.pyplot as plt

import GolemFitPy as gf

FASTMODE = False

dp = gf.DataPaths()
npp = gf.NewPhysicsParams()
sp = gf.SteeringParams(gf.sampleTag.MagicTau)

sp.quiet = False
if FASTMODE:
    sp.fastmode = True
# sp.frequentist = True
sp.load_data_from_text_file = False

golem = gf.GolemFit(dp, sp, npp)

fp = gf.FitParameters(gf.sampleTag.MagicTau)
fp.astroFlavorAngle1 = 4./9.
fp.astroFlavorAngle2 = 0.

# golem.SetupAsimov(fp)
seed = 0
golem.Swallow(golem.SpitRealization(fp, seed))

fp_sh = gf.FitParameters(gf.sampleTag.MagicTau)
# fp_sh.astroFlavorAngle1 = 0.36
# fp_sh.astroFlavorAngle2 = -0.57
fp_sh.astroFlavorAngle1 = 1.
fp_sh.astroFlavorAngle2 = 0.

print 'Eval fp = {0}'.format(golem.EvalLLH(fp))

# energy_centers = golem.GetEnergyBinsMC()[:-1]+ np.diff(golem.GetEnergyBinsMC())/2.

# plt.hist(energy_centers,bins=golem.GetEnergyBinsMC(),
#          weights=np.sum(golem.GetExpectation(fp),axis=(0,1,2,3)),
#          histtype="step", lw = 2, label='injected')

# data_energy_dist = np.sum(golem.GetDataDistribution(),axis=(0,1,2,3))
# energy_centers=golem.GetEnergyBinsData()[:-1]+ np.diff(golem.GetEnergyBinsData())/2.
# plt.errorbar(energy_centers,data_energy_dist,yerr = np.sqrt(data_energy_dist),fmt='o')

print 'Eval fp_sh = {0}'.format(golem.EvalLLH(fp_sh))

# plt.hist(energy_centers,bins=golem.GetEnergyBinsMC(),
#          weights=np.sum(golem.GetExpectation(fp_sh),axis=(0,1,2,3)),
#          histtype="step", lw = 2, label='test')

# data_energy_dist = np.sum(golem.GetDataDistribution(),axis=(0,1,2,3))
# energy_centers=golem.GetEnergyBinsData()[:-1]+ np.diff(golem.GetEnergyBinsData())/2.
# plt.errorbar(energy_centers,data_energy_dist,yerr = np.sqrt(data_energy_dist),fmt='o')

# plt.loglog(nonposy="clip")
# plt.xlabel(r"Deposited energy/GeV")
# plt.ylabel(r"Events")

# outname = 'Expectation'
# if FASTMODE:
#     plt.savefig(outname + 'fastmode.png')
# else:
#     plt.savefig(outname + '.png')