diff options
Diffstat (limited to 'utils')
| -rw-r--r-- | utils/fr.py | 8 | ||||
| -rw-r--r-- | utils/likelihood.py | 16 |
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: |
