49 double q2,
double M1,
double mb,
60 double M_res[] = { 0.7758, 0.78259, 1.019456 };
61 double Gamma[] = { 0.1503, 0.00849, 0.00426 };
63 double f_lept[] = { 5.04, 17.1, -13.2 };
64 double g_plus[] = { 0.27, -0.27, -0.38 };
65 g_plus[0] = g_plus[0] / sqrt( 2.0 );
66 g_plus[1] = g_plus[1] / sqrt( 2.0 );
68 double hatq2 = q2 / pow( M1, 2 );
70 double E = 0.5 * M1 * ( 1 - hatq2 );
74 double beta[] = { 0.28, 0.30, 0.26, 0.33 };
75 double Delta[] = { 0.04, 0.04, 0.30, 0.30 };
79 Fv = unit1 * beta[0] * fb * M1 / ( Delta[0] + E );
80 Ftvq0 = unit1 * beta[1] * fb * M1 / ( Delta[1] + E );
81 Fa = unit1 * beta[2] * fb * M1 / ( Delta[2] + E );
82 Ftaq0 = unit1 * beta[3] * fb * M1 / ( Delta[3] + E );
83 Ftv00 = unit1 * beta[1] * fb * M1 / ( Delta[1] + 0.5 * M1 );
84 Fta00 = unit1 * beta[3] * fb * M1 / ( Delta[3] + 0.5 * M1 );
93 ResSum = 2.0 * g_plus[2] * q2 /
94 ( f_lept[2] * ( unit1 * ( q2 - pow( M_res[2], 2 ) ) +
95 uniti * M_res[2] * Gamma[2] ) );
100 for (
int i = 0; i < 2; i++ ) {
102 2.0 * g_plus[i] * q2 /
103 ( f_lept[i] * ( unit1 * ( q2 - pow( M_res[i], 2 ) ) +
104 uniti * M_res[i] * Gamma[i] ) );
117 if (
abs( c7gam ) < 0.0000001 ) {
119 <<
"\n\n The function Evtbs2llGammaFFMNT::getPhotonFF"
120 <<
"\n Error: the Wilson coefficient C7gamma = 0!"
121 <<
" c7gam = " << c7gam << std::endl;
126 <<
"\n\n The function Evtbs2llGammaFFMNT::getPhotonFF"
127 <<
" mb = " << mb <<
" << 5 GeV!" << std::endl;
131 switch ( decay_id ) {
134 Ftv_WA = ( 16.0 / 3.0 ) * ( lambda_qu + lambda_qc ) *
135 (
a1 / c7gam ) * ( fb / mb );
136 Ftv = ( 1.0 + mq / mb ) * Ftv - Ftv_WA;
137 Fta = ( 1.0 - mq / mb ) * Fta;
143 Ftv_WA = ( 16.0 / 3.0 ) *
conj( lambda_qu + lambda_qc ) *
144 (
a1 / c7gam ) * ( fb / mb );
145 Ftv = ( 1.0 + mq / mb ) * Ftv + Ftv_WA;
146 Fta = ( 1.0 - mq / mb ) * Fta;
void getPhotonFF(int decay_id, double fb, EvtId parent, double q2, double M1, double mb, double mq, EvtComplex c7gam, EvtComplex a1, EvtComplex lambda_qu, EvtComplex lambda_qc, EvtComplex &Fv, EvtComplex &Fa, EvtComplex &Ftv, EvtComplex &Fta) override