188 if ( daught == PI0 || daught == PIP || daught == PIM || daught == ETA || daught == ETAPR ||
189 daught == D0 || daught == D0B || daught == DP || daught == DM || daught == KP ||
190 daught == KM || daught == K0 || daught == K0S || daught == K0L || daught == KB ||
191 daught == DSP || daught == DSM )
192 { EvtISGW2FF1S0( parent, daught,
t,
mass, fpf, &fmf ); }
194 if ( daught == PI2S0 || daught == PI2SP || daught == PI2SM || daught == ETA2S ||
195 daught == D21S0P || daught == D21S0B || daught == D21S0N || daught == D21S00 )
196 { EvtISGW2FF21S0( parent, daught,
t,
mass, fpf, &fmf ); }
198 if ( daught == A00 || daught == A0P || daught == A0M || daught == F0 || daught == F0PR ||
199 daught == D3P0P || daught == D3P00 || daught == D3P0B || daught == D3P0N ||
200 daught == K0STM || daught == K0STB || daught == K0STP || daught == D3P0SP ||
201 daught == D3P0SN || daught == K0ST0 )
202 { EvtISGW2FF3P0( parent, daught,
t,
mass, fpf, &fmf ); }
204 *f0f = ( fmf / ( ( mb * mb -
mass *
mass ) /
t ) ) + ( *fpf );
210 double* kf,
double* bpf,
double* bmf ) {
366 EvtISGW2FF3P2( parent, daught,
t,
mass, hf, kf, bpf, bmf );
372 double* a2f,
double* vf,
double* a0f ) {
373 double ff, gf, apf, amf;
529 if ( daught == DST0 || daught == DSTP || daught == DSTM || daught == DSTB ||
530 daught == OMEG || daught == RHO0 || daught == RHOM || daught == RHOP ||
531 daught == KSTP || daught == KSTM || daught == KST0 || daught == KSTB || daught == PHI ||
532 daught == DSSTP || daught == DSSTM )
533 { EvtISGW2FF3S1( parent, daught,
t,
mass, &ff, &gf, &apf, &amf ); }
534 if ( daught == B10 || daught == B1P || daught == B1M || daught == H1 || daught == H1PR ||
535 daught == D1P1P || daught == D1P10 || daught == D1P1B || daught == D1P1SP ||
536 daught == D1P1SN || daught == D1P1N || daught == K10 || daught == K1B ||
537 daught == K1P || daught == K1M )
538 { EvtISGW2FF1P1( parent, daught,
t,
mass, &ff, &gf, &apf, &amf ); }
539 if ( daught == RHO2S0 || daught == RHO2SP || daught == RHO2SM || daught == OMEG2S ||
540 daught == D23S1P || daught == D23S1B || daught == D23S1N || daught == D23S10 )
541 { EvtISGW2FF23S1( parent, daught,
t,
mass, &ff, &gf, &apf, &amf ); }
542 if ( daught == A10 || daught == A1P || daught == A1M || daught == F1 || daught == F1PR ||
543 daught == D3P1P || daught == D3P10 || daught == D3P1B || daught == D3P1N ||
544 daught == K1STM || daught == K1STB || daught == K1STP || daught == D3P1SP ||
545 daught == D3P1SN || daught == K1ST0 )
546 { EvtISGW2FF3P1( parent, daught,
t,
mass, &ff, &gf, &apf, &amf ); }
553 *vf = ( gf ) * ( mb +
mass );
554 *a1f = ( ff ) / ( mb +
mass );
555 *a2f = -1.0 * ( apf ) * ( mb +
mass );
557 double a3f = ( ( mb +
mass ) / ( 2.0 *
mass ) ) * ( *a1f ) -
558 ( ( mb -
mass ) / ( 2.0 *
mass ) ) * ( *a2f );
560 *a0f = a3f + ( (
t * amf ) / ( 2.0 *
mass ) );
565void EvtISGW2FF::EvtISGW2FF1S0(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* fpf,
568 double mtb, mbb( 0.0 );
569 double msd( 0.0 ), mx, mb, nf( 0.0 ), nfp( 0.0 );
570 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx;
571 double zji, cji,
w, gammaji, chiji, betaji_fppfm;
572 double rfppfm, rfpmfm, f3fppfm, f3fpmfm, fppfm, fpmfm, al,
ai, rcji, f3;
573 double mqm, msb( 0.0 ), bb2( 0.0 ), mup, mum, bbx2, tm, wt, r2, betaji_fpmfm;
586 static EvtIdSet theB(
"B+",
"B-",
"B0",
"anti-B0" );
729 if ( theB.contains( prnt ) )
738 if ( dgt == PI0 || dgt == PIP || dgt == PIM || dgt == ETA || dgt == ETAPR )
743 mbx = 0.75 * 0.770 + 0.25 * 0.14;
748 if ( dgt == D0 || dgt == D0B || dgt == DP || dgt == DM )
752 mbx = 0.75 * 2.01 + 0.25 * 1.87;
758 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_1S0.\n";
764 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM )
772 if ( dgt == PIP || dgt == PIM || dgt == PI0 || dgt == ETA || dgt == ETAPR )
776 mbx = 0.75 * 0.770 + 0.25 * 0.14;
781 if ( dgt == K0 || dgt == K0S || dgt == K0L || dgt == KB || dgt == KP || dgt == KM )
785 mbx = 0.75 * 0.892 + 0.25 * 0.49767;
791 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_1S0.\n";
797 if ( prnt == DSP || prnt == DSM )
805 if ( dgt == K0 || dgt == K0S || dgt == K0L || dgt == KB )
810 mbx = 0.75 * 0.770 + 0.25 * 0.14;
815 if ( dgt == PI0 || dgt == ETA || dgt == ETAPR )
819 mbx = 0.75 * 0.892 + 0.25 * 0.49767;
826 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_1S0.\n";
833 if ( prnt == BS0 || prnt == BSB )
842 if ( dgt == DSP || dgt == DSM )
847 mbx = 0.75 * 2.11 + 0.25 * 1.97;
850 else if ( dgt == KP || dgt == KM )
855 mbx = 0.75 * 0.892 + 0.25 * 0.49767;
861 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_1S0.\n";
867 report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw_ff_1S0.\n";
879 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
880 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
881 bbx2 = 0.5 * ( bb2 + bx2 );
882 tm = ( mb - mx ) * ( mb - mx );
883 if (
t > tm )
t = 0.99 * tm;
884 wt = 1.0 + ( tm -
t ) / ( 2.0 * mbb * mbx );
887 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
888 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
889 log( EvtGetas( mqm, mqm ) / EvtGetas( msq, msq ) );
891 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 1.5 ) /
892 ( ( 1.0 + r2 * ( tm -
t ) / 12.0 ) * ( 1.0 + r2 * ( tm -
t ) / 12.0 ) );
897 w = 1.0 + ( ( tm -
t ) / ( 2.0 * mb * mx ) );
898 rcji = ( 1 / sqrt(
w *
w - 1 ) ) * log(
w + sqrt(
w *
w - 1 ) );
899 al = ( 8.0 / ( 33.0 - 2.0 * nfp ) ) * (
w * rcji - 1.0 );
900 ai = -1.0 * ( 6.0 / ( 33.0 - 2.0 * nf ) );
901 cji = pow( ( EvtGetas( msb, msb ) / EvtGetas( msq, msq ) ),
ai );
905 gammaji = EvtGetGammaji( zji );
906 chiji = -1.0 - ( gammaji / ( 1 - zji ) );
907 betaji_fppfm = gammaji - ( 2.0 / 3.0 ) * chiji;
908 betaji_fpmfm = gammaji + ( 2.0 / 3.0 ) * chiji;
909 rfppfm = cji * ( 1.0 + betaji_fppfm * EvtGetas( msq, sqrt( msb * msq ) ) /
EvtConst::pi );
910 rfpmfm = cji * ( 1.0 + betaji_fpmfm * EvtGetas( msq, sqrt( msb * msq ) ) /
EvtConst::pi );
911 f3fppfm = f3 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), 0.5 );
912 f3fpmfm = f3 * pow( ( mbb / mtb ), 0.5 ) * pow( ( mbx / mtx ), -0.5 );
913 fppfm = f3fppfm * rfppfm *
915 ( ( mtx / msq ) * ( 1 - ( ( msd * msq * bb2 ) / ( 2.0 * mup * mtx * bbx2 ) ) ) ) );
916 fpmfm = f3fpmfm * rfpmfm * ( mtb / msq ) *
917 ( 1 - ( ( msd * msq * bb2 ) / ( 2.0 * mup * mtx * bbx2 ) ) );
919 *fpf = ( fppfm + fpmfm ) / 2.0;
920 *fmf = ( fppfm - fpmfm ) / 2.0;
925void EvtISGW2FF::EvtISGW2FF3S1(
EvtId parent,
EvtId daugt,
double t,
double mass,
double*
f,
926 double* g,
double* ap,
double* am ) {
1082 double cf( 0.0 ), mtb, wt, msd( 0.0 ), mup, f3f, msq( 0.0 ), bb2( 0.0 ), mum, mtx, bbx2, f3g;
1083 double cji, bx2( 0.0 ), f3appam, msb( 0.0 ), tm, mbb( 0.0 ), mbx( 0.0 );
1084 double f3apmam, appam, apmam, mb, mx, f3;
1085 double r_f, r_g, r_appam, r_apmam, betaji_f, betaji_g;
1086 double betaji_appam, betaji_apmam;
1087 double w, mqm, r2, chiji, zji,
ai, al, rcji, nf( 0.0 ), nfp( 0.0 ), gammaji;
1089 EvtId prnt = parent;
1092 if ( parent == B0 || parent == B0B || parent == BP || parent == BM )
1097 bb2 = 0.431 * 0.431;
1101 if ( dgt == DST0 || dgt == DSTP || dgt == DSTM || dgt == DSTB )
1107 mbx = 0.75 * 2.01 + 0.25 * 1.87;
1112 if ( dgt == OMEG || dgt == RHO0 || dgt == RHOM || dgt == RHOP )
1117 bx2 = 0.299 * 0.299;
1118 mbx = 0.75 * 0.770 + 0.25 * 0.14;
1124 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_3S1.\n";
1130 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM )
1139 if ( dgt == KSTP || dgt == KSTM || dgt == KST0 || dgt == KSTB )
1145 mbx = 0.75 * 0.892 + 0.25 * 0.494;
1150 if ( dgt == RHO0 || dgt == OMEG || dgt == RHOM || dgt == RHOP )
1154 bx2 = 0.299 * 0.299;
1155 mbx = 0.75 * 0.770 + 0.25 * 0.14;
1161 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_3S1.\n";
1167 if ( prnt == DSP || prnt == DSM )
1176 if ( dgt == KSTB || dgt == KST0 )
1198 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_3S1.\n";
1205 if ( prnt == BS0 || prnt == BSB )
1214 if ( dgt == DSSTP || dgt == DSSTM )
1220 mbx = 0.75 * 2.11 + 0.25 * 1.97;
1223 else if ( dgt == KSTP || dgt == KSTM || dgt == KST0 || dgt == KSTB )
1229 mbx = 0.75 * 0.892 + 0.25 * 0.494;
1235 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_1S0.\n";
1239 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw2_ff_3S1.\n"; }
1247 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
1248 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
1249 bbx2 = 0.5 * ( bb2 + bx2 );
1252 tm = ( mb - mx ) * ( mb - mx );
1253 if (
t > tm )
t = 0.99 * tm;
1255 wt = 1.0 + ( tm -
t ) / ( 2.0 * mbb * mbx );
1258 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
1259 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
1260 log( EvtGetas( mqm, mqm ) / EvtGetas( msq, msq ) );
1262 w = 1.0 + ( ( tm -
t ) / ( 2.0 * mb * mx ) );
1264 rcji = ( 1 / sqrt(
w *
w - 1 ) ) * log(
w + sqrt(
w *
w - 1 ) );
1266 al = ( 8.0 / ( 33.0 - 2.0 * nfp ) ) * (
w * rcji - 1.0 );
1268 ai = -1.0 * ( 6.0 / ( 33.0 - 2.0 * nf ) );
1270 cji = pow( ( EvtGetas( msb, msb ) / EvtGetas( msq, msq ) ),
ai );
1273 gammaji = EvtGetGammaji( zji );
1275 chiji = -1.0 - ( gammaji / ( 1 - zji ) );
1277 betaji_g = ( 2.0 / 3.0 ) + gammaji;
1278 betaji_f = ( -2.0 / 3.0 ) + gammaji;
1279 betaji_appam = -1.0 - chiji + ( 4.0 / ( 3.0 * ( 1.0 - zji ) ) ) +
1280 ( 2.0 * ( 1 + zji ) * gammaji / ( 3.0 * ( 1.0 - zji ) * ( 1.0 - zji ) ) );
1282 betaji_apmam = ( 1.0 / 3.0 ) - chiji - ( 4.0 / ( 3.0 * ( 1.0 - zji ) ) ) -
1283 ( 2.0 * ( 1 + zji ) * gammaji / ( 3.0 * ( 1.0 - zji ) * ( 1.0 - zji ) ) ) +
1286 r_g = cji * ( 1 + ( betaji_g * EvtGetas( msq, sqrt( mb * msq ) ) / (
EvtConst::pi ) ) );
1287 r_f = cji * ( 1 + ( betaji_f * EvtGetas( msq, sqrt( mb * msq ) ) / (
EvtConst::pi ) ) );
1289 cji * ( 1 + ( betaji_appam * EvtGetas( msq, sqrt( mb * msq ) ) / (
EvtConst::pi ) ) );
1291 cji * ( 1 + ( betaji_apmam * EvtGetas( msq, sqrt( mb * msq ) ) / (
EvtConst::pi ) ) );
1293 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 1.5 ) /
1294 ( ( 1.0 + r2 * ( tm -
t ) / 12.0 ) * ( 1.0 + r2 * ( tm -
t ) / 12.0 ) );
1296 f3f = sqrt( mbx * mbb / ( mtx * mtb ) ) * f3;
1297 f3g = sqrt( mtx * mtb / ( mbx * mbb ) ) * f3;
1298 f3appam = sqrt( mtb * mtb * mtb * mbx / ( mbb * mbb * mbb * mtx ) ) * f3;
1299 f3apmam = sqrt( mtx * mtb / ( mbx * mbb ) ) * f3;
1300 *
f = cf * mtb * ( 1 + wt + msd * ( wt - 1 ) / ( 2 * mup ) ) * f3f * r_f;
1301 *g = 0.5 * ( 1 / msq - msd * bb2 / ( 2 * mum * mtx * bbx2 ) ) * f3g * r_g;
1304 ( msd * bx2 * ( 1 - msd * bx2 / ( 2 * mtb * bbx2 ) ) /
1305 ( ( 1 + wt ) * msq * msb * bbx2 ) -
1306 betaji_appam * EvtGetas( msq, sqrt( msq * mb ) ) / ( mtb *
EvtConst::pi ) ) *
1310 ( mtb / msb - msd * bx2 / ( 2 * mup * bbx2 ) +
1311 wt * msd * mtb * bx2 * ( 1 - msd * bx2 / ( 2 * mtb * bbx2 ) ) /
1312 ( ( wt + 1 ) * msq * msb * bbx2 ) ) *
1313 f3apmam * r_apmam / mtx;
1315 *ap = 0.5 * ( appam + apmam );
1316 *am = 0.5 * ( appam - apmam );
1320void EvtISGW2FF::EvtISGW2FF21S0(
EvtId parent,
EvtId daugt,
double t,
double mass,
1321 double* fppf,
double* fpmf ) {
1477 double mtb, mbb( 0.0 );
1478 double msd( 0.0 ), mx, mb, nf, nfp( 0.0 );
1479 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx;
1480 double f3fppfm, f3fpmfm, fppfm, fpmfm, f3;
1481 double mqm, msb( 0.0 );
1482 double mum, mup, r2, wt, tm, bb2( 0.0 ), bbx2;
1483 double tau, udef, vdef;
1485 EvtId prnt = parent;
1488 if ( prnt == B0 || prnt == B0B || prnt == BP || prnt == BM )
1493 bb2 = 0.431 * 0.431;
1494 mbb = 0.75 * 5.325 + 0.25 * 5.279;
1497 if ( dgt == PI2S0 || dgt == PI2SP || dgt == PI2SM || dgt == ETA2S )
1501 bx2 = 0.406 * 0.406;
1502 mbx = 0.75 * 1.45 + 0.25 * 1.300;
1507 if ( dgt == D21S0P || dgt == D21S0B || dgt == D21S0N || dgt == D21S00 )
1511 mbx = 0.75 * 2.64 + 0.25 * 2.58;
1514 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_EvtISGW2_ff_21S0.\n"; }
1519 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM )
1526 if ( dgt == PI2SP || dgt == PI2SM || dgt == PI2S0 || dgt == ETA2S )
1529 bx2 = 0.406 * 0.406;
1530 mbx = 0.75 * 1.45 + 0.25 * 1.300;
1533 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_EvtISGW2_ff_21S0.\n"; }
1535 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_EvtISGW2_ff_21S0.\n"; }
1544 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
1545 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
1546 bbx2 = 0.5 * ( bb2 + bx2 );
1547 tm = ( mb - mx ) * ( mb - mx );
1548 if (
t > tm )
t = 0.99 * tm;
1549 wt = 1.0 + ( tm -
t ) / ( 2.0 * mbb * mbx );
1552 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
1553 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
1554 log( EvtGetas( mqm ) / EvtGetas( msq ) );
1556 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) /
1557 ( pow( ( 1.0 + r2 * ( tm -
t ) / 24.0 ), 4.0 ) );
1559 f3fppfm = f3 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), 0.5 );
1560 f3fpmfm = f3 * pow( ( mbb / mtb ), 0.5 ) * pow( ( mbx / mtx ), -0.5 );
1562 tau = msd * msd * bx2 * ( wt - 1 ) / ( bb2 * bbx2 );
1563 udef = ( ( bb2 - bx2 ) / ( 2.0 * bbx2 ) ) + ( ( bb2 * tau ) / ( 3.0 * bbx2 ) );
1564 vdef = ( bb2 * ( 1.0 + ( msq / msb ) ) / ( 6.0 * bbx2 ) ) *
1565 ( 7.0 - ( ( bb2 / bbx2 ) * ( 5 + tau ) ) );
1567 fppfm = f3fppfm * sqrt( 1.5 ) * ( ( 1.0 - ( msd / msq ) ) * udef - ( msd * vdef / msq ) );
1568 fpmfm = f3fpmfm * sqrt( 1.5 ) * ( mtb / msq ) * ( udef + ( msd * vdef / mtx ) );
1570 *fppf = ( fppfm + fpmfm ) / 2.0;
1571 *fpmf = ( fppfm - fpmfm ) / 2.0;
1576void EvtISGW2FF::EvtISGW2FF23S1(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* fpf,
1577 double* gpf,
double* appf,
double* apmf ) {
1733 double mtb, mbb( 0.0 );
1734 double msd( 0.0 ), mx, mb, nf, nfp( 0.0 );
1735 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx;
1736 double f3appam, f3apmam, f3, appam, apmam, f3fp, f3gp;
1737 double udef, tau, mum, mup, bb2( 0.0 ), bbx2, tm, wt, mqm, r2, msb( 0.0 );
1740 EvtId prnt = parent;
1743 if ( prnt == B0 || prnt == B0B || prnt == BP || prnt == BM )
1748 bb2 = 0.431 * 0.431;
1749 mbb = 0.75 * 5.325 + 0.25 * 5.279;
1752 if ( dgt == RHO2S0 || dgt == RHO2SP || dgt == RHO2SM || dgt == OMEG2S )
1757 bx2 = 0.299 * 0.299;
1758 mbx = 0.75 * 1.45 + 0.25 * 1.300;
1763 if ( dgt == D23S1N || dgt == D23S1P || dgt == D23S1B || dgt == D23S10 )
1768 mbx = 0.75 * 2.64 + 0.25 * 2.58;
1771 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_23P1.\n"; }
1776 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM )
1784 if ( dgt == RHO2S0 || dgt == RHO2SP || dgt == RHO2SM || dgt == OMEG2S )
1788 bx2 = 0.299 * 0.299;
1789 mbx = 0.75 * 1.45 + 0.25 * 1.300;
1792 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_23P1.\n"; }
1794 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw_ff_23P1.\n"; }
1802 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
1803 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
1804 bbx2 = 0.5 * ( bb2 + bx2 );
1805 tm = ( mb - mx ) * ( mb - mx );
1807 if (
t > tm )
t = 0.99 * tm;
1808 wt = 1.0 + ( tm -
t ) / ( 2.0 * mbb * mbx );
1811 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
1812 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
1813 log( EvtGetas( mqm ) / EvtGetas( msq ) );
1815 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) /
1816 ( pow( ( 1.0 + r2 * ( tm -
t ) / 24.0 ), 4.0 ) );
1818 f3fp = f3 * pow( ( mbb / mtb ), 0.5 ) * pow( ( mbx / mtx ), 0.5 );
1819 f3gp = f3 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), -0.5 );
1820 f3appam = f3 * pow( ( mbb / mtb ), -1.5 ) * pow( ( mbx / mtx ), 0.5 );
1821 f3apmam = f3 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), -0.5 );
1823 tau = msd * msd * bx2 * ( wt - 1.0 ) / ( bb2 * bbx2 );
1824 udef = ( ( bb2 - bx2 ) / ( 2.0 * bbx2 ) );
1825 udef = udef + ( ( bb2 * tau ) / ( 3.0 * bbx2 ) );
1827 *fpf = cfp * sqrt( 1.5 ) * mtb * ( 1.0 + wt ) * udef * f3fp;
1829 *gpf = sqrt( 3.0 / 8.0 ) * f3gp *
1830 ( ( ( 1.0 / msq ) - ( ( msd * bb2 ) / ( 2.0 * mum * mtx * bbx2 ) ) ) * udef +
1831 ( ( msd * bb2 * bx2 ) / ( 3.0 * mum * mtx * bbx2 * bbx2 ) ) );
1833 appam = f3appam * sqrt( 2.0 / 3.0 ) * ( bb2 / ( msq * msb * bbx2 ) ) *
1834 ( ( -7.0 * msd * msd * bx2 * bx2 * ( 1.0 + ( tau / 7.0 ) ) /
1835 ( 8.0 * mtb * bbx2 * bbx2 ) ) +
1836 ( 5.0 * msd * bx2 * ( 1.0 + ( tau / 5.0 ) ) / ( 4.0 * bbx2 ) ) +
1837 ( 3.0 * msd * msd * bx2 * bx2 / ( 8.0 * mtb * bb2 * bbx2 ) ) -
1838 ( 3.0 * msd * bx2 / ( 4.0 * bb2 ) ) );
1840 apmam = f3apmam * sqrt( 3.0 / 2.0 ) * ( mtb / ( msb * mtx ) ) *
1841 ( 1.0 - ( bb2 * ( 1.0 + ( tau / 7.0 ) ) / bbx2 ) -
1842 ( msd * bx2 * ( 1.0 - ( 5.0 * bb2 * ( 1.0 + ( tau / 5.0 ) ) / ( 3.0 * bbx2 ) ) ) /
1843 ( 2.0 * mtb * bbx2 ) ) -
1844 ( 7.0 * msd * msd * bb2 * bx2 / ( 12.0 * msq * mtb * bbx2 * bbx2 ) ) *
1845 ( 1.0 - ( bx2 / bbx2 ) + ( bb2 * tau / ( 7.0 * bbx2 ) ) ) );
1847 *appf = ( appam + apmam ) / 2.0;
1848 *apmf = ( appam - apmam ) / 2.0;
1852void EvtISGW2FF::EvtISGW2FF1P1(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* rf,
1853 double* vf,
double* spf,
double* smf ) {
2009 double mtb, mbb( 0.0 );
2010 double msd( 0.0 ), mx, mb, nf, nfp( 0.0 );
2011 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx, f5;
2012 double f5sppsm, f5spmsm;
2013 double f5v, f5r, mup, mum, vv, rr, spmsm, sppsm;
2014 double mqm, msb( 0.0 ), bb2( 0.0 ), bbx2, tm, wt, r2;
2015 EvtId prnt = parent;
2017 if ( prnt == B0 || prnt == B0B || prnt == BP || prnt == BM )
2021 bb2 = 0.431 * 0.431;
2024 if ( dgt == B10 || dgt == B1P || dgt == B1M || dgt == H1 || dgt == H1PR )
2027 bx2 = 0.275 * 0.275;
2028 mbx = ( 3.0 * 1.123 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
2033 if ( dgt == D1P1P || dgt == D1P10 || dgt == D1P1B || dgt == D1P1N )
2037 mbx = ( 5.0 * 2.46 + 3.0 * 2.42 ) / 8.0;
2040 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_1P1.\n"; }
2045 if ( prnt == DM || prnt == DP || prnt == D0B || prnt == D0 )
2052 if ( dgt == B10 || dgt == B1P || dgt == B1M || dgt == H1 || dgt == H1PR )
2055 bx2 = 0.275 * 0.275;
2056 mbx = ( 3.0 * 1.123 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
2061 if ( dgt == K10 || dgt == K1B || dgt == K1P || dgt == K1M )
2065 mbx = ( 3.0 * 1.27 + 1.43 + 5.0 * 1.43 + 3.0 * 1.4 ) / 12.0;
2068 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_1P1.\n"; }
2074 if ( prnt == BS0 || prnt == BSB )
2083 if ( dgt == D1P1SP || dgt == D1P1SN )
2088 mbx = ( 5.0 * 2.61 + 3.0 * 2.54 ) / 8.0;
2091 else if ( dgt == K10 || dgt == K1B || dgt == K1P || dgt == K1M )
2095 mbx = ( 3.0 * 1.27 + 1.43 + 5.0 * 1.43 + 3.0 * 1.4 ) / 12.0;
2101 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_1S0.\n";
2105 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw_ff_1P1.\n"; }
2115 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
2116 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
2117 bbx2 = 0.5 * ( bb2 + bx2 );
2118 tm = ( mb - mx ) * ( mb - mx );
2119 if (
t > tm )
t = 0.99 * tm;
2120 wt = 1.0 + ( tm -
t ) / ( 2.0 * mbb * mbx );
2123 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
2124 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
2125 log( EvtGetas( mqm, mqm ) / EvtGetas( msq, msq ) );
2127 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) /
2128 ( pow( ( 1.0 + r2 * ( tm -
t ) / 18.0 ), 3.0 ) );
2130 f5v = f5 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), -0.5 );
2131 f5r = f5 * pow( ( mbb / mtb ), 0.5 ) * pow( ( mbx / mtx ), 0.5 );
2132 f5sppsm = f5 * pow( ( mbb / mtb ), -1.5 ) * pow( ( mbx / mtx ), 0.5 );
2133 f5spmsm = f5 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), -0.5 );
2137 vv = f5v * ( ( ( mtb * sqrt( bb2 ) ) / ( 4.0 * sqrt( 2.0 ) * msb * msq * mtx ) ) +
2138 ( ( ( wt - 1 ) * msd ) / ( 6.0 * sqrt( 2.0 * bb2 ) * mtx ) ) );
2140 rr = f5r * mtb * sqrt( bb2 / 2 ) *
2141 ( ( 1.0 / mup ) + ( ( msd * mtx * ( wt - 1 ) * ( wt - 1 ) ) / ( 3.0 * msq * bb2 ) ) );
2143 sppsm = msd * f5sppsm / ( sqrt( 2.0 * bb2 ) * mtb ) *
2144 ( 1.0 - ( msd / msq ) + ( ( msd * bb2 ) / ( 2.0 * mup * bbx2 ) ) );
2146 spmsm = msd * f5spmsm / ( sqrt( 2.0 * bb2 ) * msq ) *
2147 ( ( ( 4 - wt ) / 3.0 ) - ( ( msd * msq * bb2 ) / ( 2.0 * mtx * mup * bbx2 ) ) );
2151 vv = -1.0 * msd * f5v / ( 2.0 * sqrt( 3.0 * bb2 ) * mtx ) *
2152 ( ( wt + 1 ) / 2.0 + bb2 * mtb / ( 2.0 * msd * msq * msb ) );
2154 rr = -2.0 * mtb * sqrt( bb2 / 3.0 ) * f5r *
2156 mtx * msd * ( wt - 1 ) / ( 2.0 * bb2 ) *
2157 ( ( wt + 1 ) / ( 2.0 * msq ) - msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) );
2159 sppsm = -1.0 * sqrt( 3.0 ) * msd * f5sppsm / ( 2.0 * sqrt( bb2 ) * mtb ) *
2160 ( 1 - msd / ( 3.0 * msq ) -
2161 msd * bb2 / ( 3.0 * bbx2 ) * ( 1.0 / ( 2.0 * mum ) - 1.0 / mup ) );
2164 -1.0 * msd * f5spmsm / ( 2.0 * sqrt( 3.0 * bb2 ) * mtx ) *
2165 ( ( 2 - wt ) * mtx / msq + msd * bb2 / bbx2 * ( 1.0 / ( 2.0 * mum ) - 1.0 / mup ) );
2170 double q2max = parMass * parMass +
mass *
mass - 2.0 * parMass *
mass;
2172 double q2maxNom = parMass * parMass + massNom * massNom - 2.0 * parMass * massNom;
2173 double q2maxin = sqrt( q2maxNom / q2max );
2174 if ( q2maxin > 1000. ) q2maxin = 1000.;
2183 *spf = ( sppsm + spmsm ) / 2.0;
2184 *smf = ( sppsm - spmsm ) / 2.0;
2188void EvtISGW2FF::EvtISGW2FF3P1(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* lf,
2189 double* qf,
double* cpf,
double* cmf ) {
2344 double mtb, mbb( 0.0 );
2345 double msd( 0.0 ), mx, mb, nf, nfp( 0.0 );
2346 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx;
2347 double f5cppcm, f5cpmcm, f5, ql, ll, cppcm, cpmcm, f5q, f5l;
2348 double mqm, msb( 0.0 ), bb2( 0.0 ), mup, mum, bbx2, tm, wt, r2;
2349 EvtId prnt = parent;
2352 if ( prnt == B0 || prnt == B0B || prnt == BP || prnt == BM )
2357 bb2 = 0.431 * 0.431;
2361 if ( dgt == A10 || dgt == A1P || dgt == A1M || dgt == F1 || dgt == F1PR )
2365 bx2 = 0.275 * 0.275;
2366 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
2371 if ( dgt == D3P1P || dgt == D3P1N || dgt == D3P10 || dgt == D3P1B )
2375 mbx = ( 3.0 * 2.49 + 2.40 ) / 4.0;
2381 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_3P1.\n";
2387 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM )
2396 if ( dgt == F1 || dgt == F1PR || dgt == A10 || dgt == A1P || dgt == A1M )
2400 bx2 = 0.275 * 0.275;
2401 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
2406 if ( dgt == K1STM || dgt == K1STB || dgt == K1STP || dgt == K1ST0 )
2410 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
2416 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_3P1.\n";
2423 if ( prnt == BS0 || prnt == BSB )
2432 if ( dgt == D3P1SP || dgt == D3P1SN )
2437 mbx = ( 3.0 * 2.54 + 2.46 ) / 4.0;
2440 else if ( dgt == K1STM || dgt == K1STB || dgt == K1STP || dgt == K1ST0 )
2444 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
2450 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_1S0.\n";
2454 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw_ff_3P1.\n"; }
2464 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
2465 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
2466 bbx2 = 0.5 * ( bb2 + bx2 );
2467 tm = ( mb - mx ) * ( mb - mx );
2468 if (
t > tm )
t = 0.99 * tm;
2469 wt = 1.0 + ( tm -
t ) / ( 2.0 * mbb * mbx );
2472 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
2473 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
2474 log( EvtGetas( mqm ) / EvtGetas( msq ) );
2476 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) /
2477 ( pow( ( 1.0 + r2 * ( tm -
t ) / 18.0 ), 3.0 ) );
2479 f5q = f5 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), -0.5 );
2480 f5l = f5 * pow( ( mbb / mtb ), 0.5 ) * pow( ( mbx / mtx ), 0.5 );
2481 f5cppcm = f5 * pow( ( mbb / mtb ), -1.5 ) * pow( ( mbx / mtx ), 0.5 );
2482 f5cpmcm = f5 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), -0.5 );
2487 ql = -1.0 * ( msd * ( 5.0 + wt ) * f5q / ( 2.0 * mtx * sqrt( bb2 ) * 6.0 ) );
2489 ll = -1.0 * mtb * sqrt( bb2 ) * f5l *
2491 ( ( msd * mtx * ( wt - 1 ) / bb2 ) *
2492 ( ( 5.0 + wt ) / ( 6.0 * msq ) - ( msd * bb2 ) / ( 2.0 * mum * mtx * bbx2 ) ) ) );
2494 cppcm = ( -1.0 * ( msd * mtx * f5cppcm / ( 2.0 * msq * mtb * sqrt( bb2 ) ) ) *
2495 ( 1 - ( msd * msq * bb2 ) / ( 2.0 * mtx * mum * bbx2 ) ) );
2497 cpmcm = 1.0 * ( msd * mtx * f5cpmcm / ( 2.0 * msq * mtb * sqrt( bb2 ) ) ) *
2498 ( ( ( wt + 2.0 ) / 3.0 ) - ( msd * msq * bb2 ) / ( 2.0 * mtx * mum * bbx2 ) ) *
2504 ql = f5q * sqrt( 1.0 / 6.0 ) * msd / ( sqrt( bb2 ) * mtx ) *
2505 ( 1.0 - bb2 * mtb / ( 4.0 * msd * msq * msb ) );
2506 ll = f5l * sqrt( 2.0 / 3.0 ) * mtb * sqrt( bb2 ) *
2507 ( 1.0 / ( 2.0 * msq ) - 3.0 / ( 2.0 * msb ) +
2508 msd * mtx * ( wt - 1 ) / bb2 *
2509 ( 1.0 / msq - msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) );
2510 cppcm = msd * msd * bx2 * f5cppcm / ( sqrt( 6.0 ) * mtb * msq * sqrt( bb2 ) * bbx2 );
2511 cpmcm = -sqrt( 2.0 / 3.0 ) * msd * f5cpmcm / ( sqrt( bb2 ) * mtx ) *
2512 ( 1 + msd * bx2 / ( 2.0 * msq * bbx2 ) );
2517 double q2max = parMass * parMass +
mass *
mass - 2.0 * parMass *
mass;
2519 double q2maxNom = parMass * parMass + massNom * massNom - 2.0 * parMass * massNom;
2520 double q2maxin = sqrt( q2maxNom / q2max );
2521 if ( q2maxin > 1000. ) q2maxin = 1000.;
2529 *cpf = ( cppcm + cpmcm ) / 2.0;
2530 *cmf = ( cppcm - cpmcm ) / 2.0;
2534void EvtISGW2FF::EvtISGW2FF3P0(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* upf,
2691 double mtb, mbb( 0.0 );
2692 double msd( 0.0 ), mx, mb, nf, nfp( 0.0 );
2693 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx;
2694 double f5uppum, f5upmum, uppum, upmum, f5;
2695 double mqm, mum, mup, wt, r2, bb2( 0.0 ), bbx2, msb( 0.0 ), tm;
2697 EvtId prnt = parent;
2700 if ( prnt == B0 || prnt == B0B || prnt == BP || prnt == BM )
2705 bb2 = 0.431 * 0.431;
2708 if ( dgt == A00 || dgt == A0P || dgt == A0M || dgt == F0 || dgt == F0PR )
2712 bx2 = 0.275 * 0.275;
2713 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
2718 if ( dgt == D3P0P || dgt == D3P0N || dgt == D3P00 || dgt == D3P0B )
2722 mbx = ( 3.0 * 2.49 + 2.40 ) / 4.0;
2725 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_EvtISGW2_ff_3P0.\n"; }
2730 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM )
2738 if ( dgt == F0 || dgt == F0PR || dgt == A00 || dgt == A0P || dgt == A0M )
2741 bx2 = 0.275 * 0.275;
2742 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
2747 if ( dgt == K0STM || dgt == K0STB || dgt == K0STP || dgt == K0ST0 )
2751 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
2755 {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_EvtISGW2_ff_3P0.\n"; }
2760 if ( prnt == DSP || prnt == DSM )
2768 if ( dgt == F0 || dgt == F0PR || dgt == A00 || dgt == A0P || dgt == A0M )
2772 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
2777 if ( dgt == K0STM || dgt == K0STB || dgt == K0STP || dgt == K0ST0 )
2781 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
2785 {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_EvtISGW2_ff_3P0.\n"; }
2791 if ( prnt == BS0 || prnt == BSB )
2800 if ( dgt == D3P0SP || dgt == D3P0SN )
2805 mbx = ( 3.0 * 2.54 + 2.46 ) / 4.0;
2808 else if ( dgt == K0STM || dgt == K0STB || dgt == K0STP || dgt == K0ST0 )
2812 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
2818 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_1S0.\n";
2822 {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_EvtISGW2_ff_3P0.\n"; }
2833 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
2834 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
2835 bbx2 = 0.5 * ( bb2 + bx2 );
2836 tm = ( mb - mx ) * ( mb - mx );
2837 if (
t > tm )
t = 0.99 * tm;
2838 wt = 1.0 + ( tm -
t ) / ( 2.0 * mbb * mbx );
2841 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
2842 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
2843 log( EvtGetas( mqm ) / EvtGetas( msq ) );
2845 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) /
2846 ( pow( ( 1.0 + r2 * ( tm -
t ) / 18.0 ), 3.0 ) );
2848 f5uppum = f5 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), 0.5 );
2849 f5upmum = f5 * pow( ( mbb / mtb ), 0.5 ) * pow( ( mbx / mtx ), -0.5 );
2851 uppum = -1.0 * f5uppum * sqrt( 2.0 / ( 3.0 * bb2 ) ) * msd;
2852 upmum = 1.0 * f5upmum * sqrt( 2.0 / ( 3.0 * bb2 ) ) * msd * mtb / mtx;
2854 *upf = ( uppum + upmum ) / 2.0;
2855 *umf = ( uppum - upmum ) / 2.0;
2860void EvtISGW2FF::EvtISGW2FF3P2(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* hf,
2861 double* kf,
double* bpf,
double* bmf ) {
3017 double mtb, mbb( 0.0 );
3018 double msd( 0.0 ), mx, mb, nf, nfp( 0.0 );
3019 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx, f5;
3020 double f5h, f5k, f5bppbm, f5bpmbm, bppbm, bpmbm;
3021 double mqm, mum, mup, tm, wt, r2, bb2( 0.0 ), bbx2;
3023 EvtId prnt = parent;
3026 if ( prnt == B0 || prnt == B0B || prnt == BP || prnt == BM )
3031 bb2 = 0.431 * 0.431;
3035 if ( dgt == A20 || dgt == A2P || dgt == A2M || dgt == F2 || dgt == F2PR )
3039 bx2 = 0.275 * 0.275;
3040 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
3046 if ( dgt == D3P2P || dgt == D3P2N || dgt == D3P20 || dgt == D3P2B )
3051 mbx = ( 5.0 * 2.46 + 3.0 * 2.42 ) / 8.0;
3054 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_3P2.\n"; }
3059 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM )
3067 if ( dgt == F2 || dgt == F2PR || dgt == A20 || dgt == A2P || dgt == A2M )
3070 bx2 = 0.275 * 0.275;
3071 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
3076 if ( dgt == K2STM || dgt == K2STB || dgt == K2STP || dgt == K2ST0 )
3080 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
3083 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_3P2.\n"; }
3089 if ( prnt == BS0 || prnt == BSB )
3098 if ( dgt == D3P2SP || dgt == D3P2SN )
3103 mbx = ( 5.0 * 2.61 + 3.0 * 2.54 ) / 8.0;
3106 else if ( dgt == K2STM || dgt == K2STB || dgt == K2STP || dgt == K2ST0 )
3110 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
3116 <<
"Not implemented daugt:" << daugt.
getId() <<
" in get_isgw_ff_1S0.\n";
3120 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw_ff_3P2.\n"; }
3128 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
3129 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
3130 bbx2 = 0.5 * ( bb2 + bx2 );
3131 tm = ( mb - mx ) * ( mb - mx );
3132 if (
t > tm )
t = 0.99 * tm;
3133 wt = 1.0 + ( tm -
t ) / ( 2.0 * mbb * mbx );
3136 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
3137 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
3138 log( EvtGetas( mqm ) / EvtGetas( msq ) );
3140 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) /
3141 ( pow( ( 1.0 + r2 * ( tm -
t ) / 18.0 ), 3.0 ) );
3143 f5h = f5 * pow( ( mbb / mtb ), -1.5 ) * pow( ( mbx / mtx ), -0.5 );
3144 f5k = f5 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), 0.5 );
3145 f5bppbm = f5 * pow( ( mbb / mtb ), -2.5 ) * pow( ( mbx / mtx ), 0.5 );
3146 f5bpmbm = f5 * pow( ( mbb / mtb ), -1.5 ) * pow( ( mbx / mtx ), -0.5 );
3148 *hf = f5h * ( msd / ( sqrt( 8.0 * bb2 ) * mtb ) ) *
3149 ( ( 1.0 / msq ) - ( msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) );
3151 *kf = f5k * ( msd / ( sqrt( 2.0 * bb2 ) ) ) * ( 1.0 + wt );
3153 bppbm = ( ( msd * msd * f5bppbm * bx2 ) / ( sqrt( 32.0 * bb2 ) * msq * msb * mtb * bbx2 ) ) *
3154 ( 1.0 - ( msd * bx2 / ( 2.0 * mtb * bbx2 ) ) );
3156 bpmbm = -1.0 * ( msd * f5bpmbm / ( sqrt( 2.0 * bb2 ) * msb * mtx ) ) *
3157 ( 1.0 - ( ( msd * msb * bx2 ) / ( 2.0 * mup * mtb * bbx2 ) ) +
3158 ( ( msd * bx2 * ( 1.0 - ( ( msd * bx2 ) / ( 2.0 * mtb * bbx2 ) ) ) ) /
3159 ( 4.0 * msq * bbx2 ) ) );
3161 *bpf = ( bppbm + bpmbm ) / 2.0;
3162 *bmf = ( bppbm - bpmbm ) / 2.0;
3166double EvtISGW2FF::EvtGetGammaji(
double z )
3171 temp = 2 + ( ( 2.0 * z ) / ( 1 - z ) ) * log( z );
3178double EvtISGW2FF::EvtGetas(
double massq,
double massx ) {
3179 double lqcd2 = 0.04;
3185 if ( massq < 1.85 ) { nflav = 3.0; }
3187 temp = 12.0 *
EvtConst::pi / ( 33.0 - 2.0 * nflav ) / log( massx * massx / lqcd2 );
3193double EvtISGW2FF::EvtGetas(
double mass )
3196 double lqcd2 = 0.04;
3202 if (
mass < 1.85 ) { nflav = 3.0; }
3213 report(
ERROR,
"EvtGen" ) <<
"Not implemented :getbaryonff in EvtISGW2FF.\n";
TFile f("ana_bhabha660a_dqa_mcPat_zy_old.root")
ostream & report(Severity severity, const char *facility)
void getscalarff(EvtId parent, EvtId daught, double t, double mass, double *fpf, double *f0f)
void getvectorff(EvtId parent, EvtId daught, double t, double mass, double *a1f, double *a2f, double *vf, double *a0f)
void gettensorff(EvtId parent, EvtId daught, double t, double mass, double *hf, double *kf, double *bpf, double *bmf)
void getbaryonff(EvtId, EvtId, double, double, double *, double *, double *, double *)
static double getMeanMass(EvtId i)
static EvtId getId(const std::string &name)