def test_bsz3(self): c = copy.deepcopy(default_parameters) bsz_parameters.bsz_load_v1_lcsr(c) # compare to numbers in table 4 of arXiv:1503.05534v1 # B->K* all FFs ffbsz3 = Implementation['B->K* BSZ3'].get_central(constraints_obj=c, wc_obj=None, q2=0) self.assertAlmostEqual(ffbsz3['A0'], 0.391, places=2) self.assertAlmostEqual(ffbsz3['A1'], 0.289, places=3) self.assertAlmostEqual(ffbsz3['A12'], 0.281, places=3) self.assertAlmostEqual(ffbsz3['V'], 0.366, places=3) self.assertAlmostEqual(ffbsz3['T1'], 0.308, places=3) self.assertAlmostEqual(ffbsz3['T23'], 0.793, places=3) self.assertAlmostEqual(ffbsz3['T1'], ffbsz3['T2'], places=16) # A1 for the remaining transitions ffbsz3 = Implementation['B->rho BSZ3'].get_central(constraints_obj=c, wc_obj=None, q2=0) self.assertAlmostEqual(ffbsz3['A1'], 0.267, places=3) ffbsz3 = Implementation['B->omega BSZ3'].get_central(constraints_obj=c, wc_obj=None, q2=0) self.assertAlmostEqual(ffbsz3['A1'], 0.237, places=3) ffbsz3 = Implementation['Bs->phi BSZ3'].get_central(constraints_obj=c, wc_obj=None, q2=0) self.assertAlmostEqual(ffbsz3['A1'], 0.315, places=3) ffbsz3 = Implementation['Bs->K* BSZ3'].get_central(constraints_obj=c, wc_obj=None, q2=0) self.assertAlmostEqual(ffbsz3['A1'], 0.246, places=3)
def test_bsz3(self): c = copy.deepcopy(default_parameters) bsz_parameters.bsz_load_v1_lcsr(c) # compare to numbers in table 4 of arXiv:1503.05534v1 # B->K* all FFs ffbsz3 = Implementation['B->K* BSZ3'].get_central(constraints_obj=c, wc_obj=None, q2=0) self.assertAlmostEqual(ffbsz3['A0'], 0.391, places=2) self.assertAlmostEqual(ffbsz3['A1'], 0.289, places=3) self.assertAlmostEqual(ffbsz3['A12'], 0.281, places=1) self.assertAlmostEqual(ffbsz3['V'], 0.366, places=3) self.assertAlmostEqual(ffbsz3['T1'], 0.308, places=3) self.assertAlmostEqual(ffbsz3['T23'], 0.793, places=3) self.assertAlmostEqual(ffbsz3['T1'], ffbsz3['T2'], places=16) # A1 for the remaining transitions ffbsz3 = Implementation['B->rho BSZ3'].get_central(constraints_obj=c, wc_obj=None, q2=0) self.assertAlmostEqual(ffbsz3['A1'], 0.267, places=3) ffbsz3 = Implementation['B->omega BSZ3'].get_central(constraints_obj=c, wc_obj=None, q2=0) self.assertAlmostEqual(ffbsz3['A1'], 0.237, places=3) ffbsz3 = Implementation['Bs->phi BSZ3'].get_central(constraints_obj=c, wc_obj=None, q2=0) self.assertAlmostEqual(ffbsz3['A1'], 0.315, places=3) ffbsz3 = Implementation['Bs->K* BSZ3'].get_central(constraints_obj=c, wc_obj=None, q2=0) self.assertAlmostEqual(ffbsz3['A1'], 0.246, places=3)
import unittest import numpy as np from flavio.physics.bdecays.bvll.qcdf import * from flavio.physics.bdecays.bvll.amplitudes import * from flavio.physics.eft import WilsonCoefficients from flavio.physics.bdecays.wilsoncoefficients import wctot_dict from flavio.physics.bdecays.formfactors.b_v import bsz_parameters from flavio.physics.running import running from flavio.parameters import default_parameters import copy s = 1.519267515435317e+24 c = copy.deepcopy(default_parameters) bsz_parameters.bsz_load_v1_lcsr(c) par = c.get_central_all() wc_obj = WilsonCoefficients() wc = wctot_dict(wc_obj, 'bsmumu', 4.2, par) class TestQCDF(unittest.TestCase): def test_qcdf(self): q2 = 3.5 B = 'B0' V = 'K*0' u = 0.5 scale = 4.8 # compare to David's old Mathematica code # (commented lines correspond to errors in the old code) np.testing.assert_almost_equal(L1(1.), 0, decimal=5)
import unittest import numpy as np from flavio.physics.bdecays.bvll.qcdf import * from flavio.physics.bdecays.bvll.amplitudes import * from flavio.physics.eft import WilsonCoefficients from flavio.physics.bdecays.wilsoncoefficients import wctot_dict from flavio.physics.bdecays.formfactors.b_v import bsz_parameters from flavio.physics.running import running from flavio.parameters import default_parameters import copy s = 1.519267515435317e+24 c = copy.deepcopy(default_parameters) bsz_parameters.bsz_load_v1_lcsr(c) par = c.get_central_all() wc_obj = WilsonCoefficients() wc = wctot_dict(wc_obj, 'bsmumu', 4.2, par) class TestQCDF(unittest.TestCase): def test_qcdf(self): q2=3.5 B='B0' V='K*0' u=0.5 scale=4.8 # compare to David's old Mathematica code np.testing.assert_almost_equal(L1(1.), 0, decimal=5) np.testing.assert_almost_equal(L1(-1.), -0.582241, decimal=5) np.testing.assert_almost_equal(L1(0), -1.64493, decimal=5)