aboutsummaryrefslogtreecommitdiffstats
path: root/utils
diff options
context:
space:
mode:
Diffstat (limited to 'utils')
-rw-r--r--utils/fr.py8
-rw-r--r--utils/likelihood.py16
2 files changed, 15 insertions, 9 deletions
diff --git a/utils/fr.py b/utils/fr.py
index 51d5b6a..f529796 100644
--- a/utils/fr.py
+++ b/utils/fr.py
@@ -194,12 +194,13 @@ def normalise_fr(fr):
array([ 0.16666667, 0.33333333, 0.5 ])
"""
- return np.array(fr) / np.sum(fr)
+ return np.array(fr) / float(np.sum(fr))
def estimate_scale(args):
"""Estimate the scale at which new physics will enter."""
- m_eign = args.m3x_2
+ try: m_eign = args.m3x_2
+ except: m_eign = MASS_EIGENVALUES[1]
if args.energy_dependance is EnergyDependance.MONO:
scale = np.power(
10, np.round(np.log10(m_eign/args.energy)) - \
@@ -459,8 +460,7 @@ def u_to_fr(source_fr, matrix):
"""
composition = np.einsum(
- 'ai, bi, a -> b',
- np.abs(matrix)**2, np.abs(matrix)**2, source_fr,
+ 'ai, bi, a -> b', np.abs(matrix)**2, np.abs(matrix)**2, source_fr,
)
ratio = composition / np.sum(source_fr)
return ratio
diff --git a/utils/likelihood.py b/utils/likelihood.py
index cd1ead8..2e4a22d 100644
--- a/utils/likelihood.py
+++ b/utils/likelihood.py
@@ -115,12 +115,16 @@ def triangle_llh(theta, args, asimov_paramset, llh_paramset, fitter):
)
m_eig_names = ['m21_2', 'm3x_2']
- mass_eigenvalues = [x.value for x in llh_paramset if x.name in m_eig_names]
-
ma_names = ['s_12_2', 'c_13_4', 's_23_2', 'dcp']
- sm_u = fr_utils.angles_to_u(
- [x.value for x in llh_paramset if x.name in ma_names]
- )
+
+ if set(m_eig_names+ma_names).issubset(set(llh_paramset.names)):
+ mass_eigenvalues = [x.value for x in llh_paramset if x.name in m_eig_names]
+ sm_u = fr_utils.angles_to_u(
+ [x.value for x in llh_paramset if x.name in ma_names]
+ )
+ else:
+ mass_eigenvalues = fr_utils.MASS_EIGENVALUES
+ sm_u = fr_utils.NUFIT_U
if args.energy_dependance is EnergyDependance.MONO:
u = fr_utils.params_to_BSMu(
@@ -164,6 +168,8 @@ def triangle_llh(theta, args, asimov_paramset, llh_paramset, fitter):
param.value = flavour_angles[idx]
print 'llh_paramset', llh_paramset
+ print 'hypo_paramset', hypo_paramset
+ print 'fr', fr
if args.likelihood is Likelihood.FLAT:
llh = 1.
elif args.likelihood is Likelihood.GAUSSIAN: