35 double* fpf,
double* f0f )
94 if ( daught == PI0 || daught == PIP || daught == PIM || daught == ETA ||
95 daught == ETAPR || daught == D0 || daught == D0B || daught == DP ||
96 daught == DM || daught == KP || daught == KM || daught == K0 ||
97 daught == K0S || daught == K0L || daught == KB || daught == DSP ||
102 if ( daught == PI2S0 || daught == PI2SP || daught == PI2SM ||
103 daught == ETA2S || daught == D21S0P || daught == D21S0B ||
104 daught == D21S0N || daught == D21S00 ) {
108 if ( daught == A00 || daught == A0P || daught == A0M || daught == F0 ||
109 daught == F0PR || daught == D3P0P || daught == D3P00 ||
110 daught == D3P0B || daught == D3P0N || daught == K0STM ||
111 daught == K0STB || daught == K0STP || daught == D3P0SP ||
112 daught == D3P0SN || daught == K0ST0 ) {
116 *f0f = ( fmf / ( ( mb * mb - mass * mass ) / t ) ) + ( *fpf );
131 double* a1f,
double* a2f,
double* vf,
double* a0f )
133 double ff, gf, apf, amf;
207 if ( daught == DST0 || daught == DSTP || daught == DSTM || daught == DSTB ||
208 daught == OMEG || daught == RHO0 || daught == RHOM || daught == RHOP ||
209 daught == KSTP || daught == KSTM || daught == KST0 || daught == KSTB ||
210 daught == PHI || daught == DSSTP || daught == DSSTM ) {
211 EvtISGW2FF3S1( parent, daught, t, mass, &ff, &gf, &apf, &amf );
213 if ( daught == B10 || daught == B1P || daught == B1M || daught == H1 ||
214 daught == H1PR || daught == D1P1P || daught == D1P10 || daught == D1P1B ||
215 daught == D1P1SP || daught == D1P1SN || daught == D1P1N ||
216 daught == K10 || daught == K1B || daught == K1P || daught == K1M ) {
217 EvtISGW2FF1P1( parent, daught, t, mass, &ff, &gf, &apf, &amf );
219 if ( daught == RHO2S0 || daught == RHO2SP || daught == RHO2SM ||
220 daught == OMEG2S || daught == D23S1P || daught == D23S1B ||
221 daught == D23S1N || daught == D23S10 ) {
224 if ( daught == A10 || daught == A1P || daught == A1M || daught == F1 ||
225 daught == F1PR || daught == D3P1P || daught == D3P10 ||
226 daught == D3P1B || daught == D3P1N || daught == K1STM ||
227 daught == K1STB || daught == K1STP || daught == D3P1SP ||
228 daught == D3P1SN || daught == K1ST0 ) {
229 EvtISGW2FF3P1( parent, daught, t, mass, &ff, &gf, &apf, &amf );
237 *vf = ( gf ) * ( mb + mass );
238 *a1f = ( ff ) / ( mb + mass );
239 *a2f = -1.0 * ( apf ) * ( mb + mass );
241 double a3f = ( ( mb + mass ) / ( 2.0 * mass ) ) * ( *a1f ) -
242 ( ( mb - mass ) / ( 2.0 * mass ) ) * ( *a2f );
244 *a0f = a3f + ( ( t * amf ) / ( 2.0 * mass ) );
250 double mass,
double* fpf,
double* fmf )
252 double mtb, mbb( 0.0 );
253 double msd( 0.0 ), mx, mb, nf( 0.0 ), nfp( 0.0 );
254 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx;
255 double zji, cji, gammaji, chiji, betaji_fppfm;
256 double rfppfm, rfpmfm, f3fppfm, f3fpmfm, fppfm, fpmfm, ai, f3;
257 double mqm, msb( 0.0 ), bb2( 0.0 ), mup, bbx2, tm, r2, betaji_fpmfm;
263 static const EvtIdSet theB{
"B+",
"B-",
"B0",
"anti-B0" };
297 if ( dgt == PI0 || dgt == PIP || dgt == PIM || dgt == ETA ||
301 mbx = 0.75 * 0.770 + 0.25 * 0.14;
304 if ( dgt == D0 || dgt == D0B || dgt == DP || dgt == DM ) {
307 mbx = 0.75 * 2.01 + 0.25 * 1.87;
311 <<
"Not implemented daugt:" << daugt.
getId()
312 <<
" in get_isgw_ff_1S0.\n";
316 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM ) {
323 if ( dgt == PIP || dgt == PIM || dgt == PI0 || dgt == ETA ||
327 mbx = 0.75 * 0.770 + 0.25 * 0.14;
330 if ( dgt == K0 || dgt == K0S || dgt == K0L || dgt == KB ||
331 dgt == KP || dgt == KM ) {
334 mbx = 0.75 * 0.892 + 0.25 * 0.49767;
338 <<
"Not implemented daugt:" << daugt.
getId()
339 <<
" in get_isgw_ff_1S0.\n";
343 if ( prnt == DSP || prnt == DSM ) {
350 if ( dgt == K0 || dgt == K0S || dgt == K0L || dgt == KB ) {
353 mbx = 0.75 * 0.770 + 0.25 * 0.14;
356 if ( dgt == PI0 || dgt == ETA || dgt == ETAPR ) {
359 mbx = 0.75 * 0.892 + 0.25 * 0.49767;
363 <<
"Not implemented daugt:" << daugt.
getId()
364 <<
" in get_isgw_ff_1S0.\n";
369 if ( prnt == BS0 || prnt == BSB ) {
376 if ( dgt == DSP || dgt == DSM ) {
379 mbx = 0.75 * 2.11 + 0.25 * 1.97;
381 }
else if ( dgt == KP || dgt == KM ) {
384 mbx = 0.75 * 0.892 + 0.25 * 0.49767;
388 <<
"Not implemented daugt:" << daugt.
getId()
389 <<
" in get_isgw_ff_1S0.\n";
395 <<
"Not implemented parent in get_isgw_ff_1S0.\n";
397 <<
"Parent:" << parent.
getId() << endl;
408 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
409 bbx2 = 0.5 * ( bb2 + bx2 );
410 tm = ( mb - mx ) * ( mb - mx );
415 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
416 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
419 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 1.5 ) /
420 ( ( 1.0 + r2 * ( tm - t ) / 12.0 ) * ( 1.0 + r2 * ( tm - t ) / 12.0 ) );
425 ai = -1.0 * ( 6.0 / ( 33.0 - 2.0 * nf ) );
431 chiji = -1.0 - ( gammaji / ( 1 - zji ) );
432 betaji_fppfm = gammaji - ( 2.0 / 3.0 ) * chiji;
433 betaji_fpmfm = gammaji + ( 2.0 / 3.0 ) * chiji;
434 rfppfm = cji * ( 1.0 + betaji_fppfm *
EvtGetas( msq, sqrt( msb * msq ) ) /
436 rfpmfm = cji * ( 1.0 + betaji_fpmfm *
EvtGetas( msq, sqrt( msb * msq ) ) /
438 f3fppfm = f3 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), 0.5 );
439 f3fpmfm = f3 * pow( ( mbb / mtb ), 0.5 ) * pow( ( mbx / mtx ), -0.5 );
440 fppfm = f3fppfm * rfppfm *
441 ( 2.0 - ( ( mtx / msq ) * ( 1 - ( ( msd * msq * bb2 ) /
442 ( 2.0 * mup * mtx * bbx2 ) ) ) ) );
443 fpmfm = f3fpmfm * rfpmfm * ( mtb / msq ) *
444 ( 1 - ( ( msd * msq * bb2 ) / ( 2.0 * mup * mtx * bbx2 ) ) );
446 *fpf = ( fppfm + fpmfm ) / 2.0;
447 *fmf = ( fppfm - fpmfm ) / 2.0;
453 double* f,
double* g,
double* ap,
double* am )
490 double cf( 0.0 ), mtb, wt, msd( 0.0 ), mup, f3f, msq( 0.0 ), bb2( 0.0 ),
492 double cji, bx2( 0.0 ), f3appam, msb( 0.0 ), tm, mbb( 0.0 ), mbx( 0.0 );
493 double f3apmam, appam, apmam, mb, mx, f3;
494 double r_f, r_g, r_apmam, betaji_f, betaji_g;
495 double betaji_appam, betaji_apmam;
496 double mqm, r2, chiji, zji, ai, nf( 0.0 ), nfp( 0.0 ), gammaji;
501 if ( parent == B0 || parent == B0B || parent == BP || parent == BM ) {
508 if ( dgt == DST0 || dgt == DSTP || dgt == DSTM || dgt == DSTB ) {
512 mbx = 0.75 * 2.01 + 0.25 * 1.87;
515 if ( dgt == OMEG || dgt == RHO0 || dgt == RHOM || dgt == RHOP ) {
519 mbx = 0.75 * 0.770 + 0.25 * 0.14;
523 <<
"Not implemented daugt:" << daugt.
getId()
524 <<
" in get_isgw_ff_3S1.\n";
528 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM ) {
535 if ( dgt == KSTP || dgt == KSTM || dgt == KST0 || dgt == KSTB ) {
539 mbx = 0.75 * 0.892 + 0.25 * 0.494;
542 if ( dgt == RHO0 || dgt == OMEG || dgt == RHOM || dgt == RHOP ) {
546 mbx = 0.75 * 0.770 + 0.25 * 0.14;
550 <<
"Not implemented daugt:" << daugt.
getId()
551 <<
" in get_isgw_ff_3S1.\n";
555 if ( prnt == DSP || prnt == DSM ) {
562 if ( dgt == KSTB || dgt == KST0 ) {
577 <<
"Not implemented daugt:" << daugt.
getId()
578 <<
" in get_isgw_ff_3S1.\n";
583 if ( prnt == BS0 || prnt == BSB ) {
590 if ( dgt == DSSTP || dgt == DSSTM ) {
594 mbx = 0.75 * 2.11 + 0.25 * 1.97;
596 }
else if ( dgt == KSTP || dgt == KSTM || dgt == KST0 ||
601 mbx = 0.75 * 0.892 + 0.25 * 0.494;
605 <<
"Not implemented daugt:" << daugt.
getId()
606 <<
" in get_isgw_ff_1S0.\n";
612 <<
"Not implemented parent in get_isgw2_ff_3S1.\n";
621 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
622 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
623 bbx2 = 0.5 * ( bb2 + bx2 );
626 tm = ( mb - mx ) * ( mb - mx );
630 wt = 1.0 + ( tm - t ) / ( 2.0 * mbb * mbx );
633 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
634 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
637 ai = -1.0 * ( 6.0 / ( 33.0 - 2.0 * nf ) );
644 chiji = -1.0 - ( gammaji / ( 1 - zji ) );
646 betaji_g = ( 2.0 / 3.0 ) + gammaji;
647 betaji_f = ( -2.0 / 3.0 ) + gammaji;
648 betaji_appam = -1.0 - chiji + ( 4.0 / ( 3.0 * ( 1.0 - zji ) ) ) +
649 ( 2.0 * ( 1 + zji ) * gammaji /
650 ( 3.0 * ( 1.0 - zji ) * ( 1.0 - zji ) ) );
652 betaji_apmam = ( 1.0 / 3.0 ) - chiji - ( 4.0 / ( 3.0 * ( 1.0 - zji ) ) ) -
653 ( 2.0 * ( 1 + zji ) * gammaji /
654 ( 3.0 * ( 1.0 - zji ) * ( 1.0 - zji ) ) ) +
657 r_g = cji * ( 1 + ( betaji_g *
EvtGetas( msq, sqrt( mb * msq ) ) /
659 r_f = cji * ( 1 + ( betaji_f *
EvtGetas( msq, sqrt( mb * msq ) ) /
661 r_apmam = cji * ( 1 + ( betaji_apmam *
EvtGetas( msq, sqrt( mb * msq ) ) /
664 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 1.5 ) /
665 ( ( 1.0 + r2 * ( tm - t ) / 12.0 ) * ( 1.0 + r2 * ( tm - t ) / 12.0 ) );
667 f3f = sqrt( mbx * mbb / ( mtx * mtb ) ) * f3;
668 f3g = sqrt( mtx * mtb / ( mbx * mbb ) ) * f3;
669 f3appam = sqrt( mtb * mtb * mtb * mbx / ( mbb * mbb * mbb * mtx ) ) * f3;
670 f3apmam = sqrt( mtx * mtb / ( mbx * mbb ) ) * f3;
671 *f = cf * mtb * ( 1 + wt + msd * ( wt - 1 ) / ( 2 * mup ) ) * f3f * r_f;
672 *g = 0.5 * ( 1 / msq - msd * bb2 / ( 2 * mum * mtx * bbx2 ) ) * f3g * r_g;
675 ( msd * bx2 * ( 1 - msd * bx2 / ( 2 * mtb * bbx2 ) ) /
676 ( ( 1 + wt ) * msq * msb * bbx2 ) -
677 betaji_appam *
EvtGetas( msq, sqrt( msq * mb ) ) /
682 ( mtb / msb - msd * bx2 / ( 2 * mup * bbx2 ) +
683 wt * msd * mtb * bx2 * ( 1 - msd * bx2 / ( 2 * mtb * bbx2 ) ) /
684 ( ( wt + 1 ) * msq * msb * bbx2 ) ) *
685 f3apmam * r_apmam / mtx;
687 *ap = 0.5 * ( appam + apmam );
688 *am = 0.5 * ( appam - apmam );
693 double mass,
double* fppf,
double* fpmf )
717 double mtb, mbb( 0.0 );
718 double msd( 0.0 ), mx, mb, nfp( 0.0 );
719 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx;
720 double f3fppfm, f3fpmfm, fppfm, fpmfm, f3;
721 double mqm, msb( 0.0 );
722 double r2, wt, tm, bb2( 0.0 ), bbx2;
723 double tau, udef, vdef;
728 if ( prnt == B0 || prnt == B0B || prnt == BP || prnt == BM ) {
732 mbb = 0.75 * 5.325 + 0.25 * 5.279;
734 if ( dgt == PI2S0 || dgt == PI2SP || dgt == PI2SM || dgt == ETA2S ) {
737 mbx = 0.75 * 1.45 + 0.25 * 1.300;
740 if ( dgt == D21S0P || dgt == D21S0B || dgt == D21S0N ||
744 mbx = 0.75 * 2.64 + 0.25 * 2.58;
748 <<
"Not implemented daugt in get_EvtISGW2_ff_21S0.\n";
752 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM ) {
757 if ( dgt == PI2SP || dgt == PI2SM || dgt == PI2S0 || dgt == ETA2S ) {
760 mbx = 0.75 * 1.45 + 0.25 * 1.300;
764 <<
"Not implemented daugt in get_EvtISGW2_ff_21S0.\n";
768 <<
"Not implemented parent in get_EvtISGW2_ff_21S0.\n";
778 bbx2 = 0.5 * ( bb2 + bx2 );
779 tm = ( mb - mx ) * ( mb - mx );
782 wt = 1.0 + ( tm - t ) / ( 2.0 * mbb * mbx );
785 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
786 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
789 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) /
790 ( pow( ( 1.0 + r2 * ( tm - t ) / 24.0 ), 4.0 ) );
792 f3fppfm = f3 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), 0.5 );
793 f3fpmfm = f3 * pow( ( mbb / mtb ), 0.5 ) * pow( ( mbx / mtx ), -0.5 );
795 tau = msd * msd * bx2 * ( wt - 1 ) / ( bb2 * bbx2 );
796 udef = ( ( bb2 - bx2 ) / ( 2.0 * bbx2 ) ) +
797 ( ( bb2 * tau ) / ( 3.0 * bbx2 ) );
798 vdef = ( bb2 * ( 1.0 + ( msq / msb ) ) / ( 6.0 * bbx2 ) ) *
799 ( 7.0 - ( ( bb2 / bbx2 ) * ( 5 + tau ) ) );
801 fppfm = f3fppfm * sqrt( 1.5 ) *
802 ( ( 1.0 - ( msd / msq ) ) * udef - ( msd * vdef / msq ) );
803 fpmfm = f3fpmfm * sqrt( 1.5 ) * ( mtb / msq ) *
804 ( udef + ( msd * vdef / mtx ) );
806 *fppf = ( fppfm + fpmfm ) / 2.0;
807 *fpmf = ( fppfm - fpmfm ) / 2.0;
813 double mass,
double* fpf,
double* gpf,
814 double* appf,
double* apmf )
837 double mtb, mbb( 0.0 );
838 double msd( 0.0 ), mx, mb, nfp( 0.0 );
839 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx;
840 double f3appam, f3apmam, f3, appam, apmam, f3fp, f3gp;
841 double udef, tau, mum, bb2( 0.0 ), bbx2, tm, wt, mqm, r2, msb( 0.0 );
847 if ( prnt == B0 || prnt == B0B || prnt == BP || prnt == BM ) {
851 mbb = 0.75 * 5.325 + 0.25 * 5.279;
853 if ( dgt == RHO2S0 || dgt == RHO2SP || dgt == RHO2SM || dgt == OMEG2S ) {
857 mbx = 0.75 * 1.45 + 0.25 * 1.300;
861 if ( dgt == D23S1N || dgt == D23S1P || dgt == D23S1B ||
866 mbx = 0.75 * 2.64 + 0.25 * 2.58;
870 <<
"Not implemented daugt in get_isgw_ff_23P1.\n";
874 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM ) {
880 if ( dgt == RHO2S0 || dgt == RHO2SP || dgt == RHO2SM ||
885 mbx = 0.75 * 1.45 + 0.25 * 1.300;
889 <<
"Not implemented daugt in get_isgw_ff_23P1.\n";
893 <<
"Not implemented parent in get_isgw_ff_23P1.\n";
902 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
903 bbx2 = 0.5 * ( bb2 + bx2 );
904 tm = ( mb - mx ) * ( mb - mx );
908 wt = 1.0 + ( tm - t ) / ( 2.0 * mbb * mbx );
911 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
912 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
915 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) /
916 ( pow( ( 1.0 + r2 * ( tm - t ) / 24.0 ), 4.0 ) );
918 f3fp = f3 * pow( ( mbb / mtb ), 0.5 ) * pow( ( mbx / mtx ), 0.5 );
919 f3gp = f3 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), -0.5 );
920 f3appam = f3 * pow( ( mbb / mtb ), -1.5 ) * pow( ( mbx / mtx ), 0.5 );
921 f3apmam = f3 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), -0.5 );
923 tau = msd * msd * bx2 * ( wt - 1.0 ) / ( bb2 * bbx2 );
924 udef = ( ( bb2 - bx2 ) / ( 2.0 * bbx2 ) );
925 udef = udef + ( ( bb2 * tau ) / ( 3.0 * bbx2 ) );
927 *fpf = cfp * sqrt( 1.5 ) * mtb * ( 1.0 + wt ) * udef * f3fp;
929 *gpf = sqrt( 3.0 / 8.0 ) * f3gp *
930 ( ( ( 1.0 / msq ) - ( ( msd * bb2 ) / ( 2.0 * mum * mtx * bbx2 ) ) ) *
932 ( ( msd * bb2 * bx2 ) / ( 3.0 * mum * mtx * bbx2 * bbx2 ) ) );
934 appam = f3appam * sqrt( 2.0 / 3.0 ) * ( bb2 / ( msq * msb * bbx2 ) ) *
935 ( ( -7.0 * msd * msd * bx2 * bx2 * ( 1.0 + ( tau / 7.0 ) ) /
936 ( 8.0 * mtb * bbx2 * bbx2 ) ) +
937 ( 5.0 * msd * bx2 * ( 1.0 + ( tau / 5.0 ) ) / ( 4.0 * bbx2 ) ) +
938 ( 3.0 * msd * msd * bx2 * bx2 / ( 8.0 * mtb * bb2 * bbx2 ) ) -
939 ( 3.0 * msd * bx2 / ( 4.0 * bb2 ) ) );
942 f3apmam * sqrt( 3.0 / 2.0 ) * ( mtb / ( msb * mtx ) ) *
943 ( 1.0 - ( bb2 * ( 1.0 + ( tau / 7.0 ) ) / bbx2 ) -
945 ( 1.0 - ( 5.0 * bb2 * ( 1.0 + ( tau / 5.0 ) ) / ( 3.0 * bbx2 ) ) ) /
946 ( 2.0 * mtb * bbx2 ) ) -
947 ( 7.0 * msd * msd * bb2 * bx2 / ( 12.0 * msq * mtb * bbx2 * bbx2 ) ) *
948 ( 1.0 - ( bx2 / bbx2 ) + ( bb2 * tau / ( 7.0 * bbx2 ) ) ) );
950 *appf = ( appam + apmam ) / 2.0;
951 *apmf = ( appam - apmam ) / 2.0;
956 double* rf,
double* vf,
double* spf,
double* smf )
992 double mtb, mbb( 0.0 );
993 double msd( 0.0 ), mx, mb, nfp( 0.0 );
994 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx, f5;
995 double f5sppsm, f5spmsm;
996 double f5v, f5r, mup, mum, vv, rr, spmsm, sppsm;
997 double mqm, msb( 0.0 ), bb2( 0.0 ), bbx2, tm, wt, r2;
1000 if ( prnt == B0 || prnt == B0B || prnt == BP || prnt == BM ) {
1003 bb2 = 0.431 * 0.431;
1005 if ( dgt == B10 || dgt == B1P || dgt == B1M || dgt == H1 || dgt == H1PR ) {
1007 bx2 = 0.275 * 0.275;
1008 mbx = ( 3.0 * 1.123 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
1011 if ( dgt == D1P1P || dgt == D1P10 || dgt == D1P1B || dgt == D1P1N ) {
1014 mbx = ( 5.0 * 2.46 + 3.0 * 2.42 ) / 8.0;
1018 <<
"Not implemented daugt in get_isgw_ff_1P1.\n";
1022 if ( prnt == DM || prnt == DP || prnt == D0B || prnt == D0 ) {
1027 if ( dgt == B10 || dgt == B1P || dgt == B1M || dgt == H1 ||
1030 bx2 = 0.275 * 0.275;
1031 mbx = ( 3.0 * 1.123 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
1034 if ( dgt == K10 || dgt == K1B || dgt == K1P || dgt == K1M ) {
1037 mbx = ( 3.0 * 1.27 + 1.43 + 5.0 * 1.43 + 3.0 * 1.4 ) / 12.0;
1041 <<
"Not implemented daugt in get_isgw_ff_1P1.\n";
1046 if ( prnt == BS0 || prnt == BSB ) {
1052 if ( dgt == D1P1SP || dgt == D1P1SN ) {
1055 mbx = ( 5.0 * 2.61 + 3.0 * 2.54 ) / 8.0;
1057 }
else if ( dgt == K10 || dgt == K1B || dgt == K1P ||
1061 mbx = ( 3.0 * 1.27 + 1.43 + 5.0 * 1.43 + 3.0 * 1.4 ) / 12.0;
1065 <<
"Not implemented daugt:" << daugt.
getId()
1066 <<
" in get_isgw_ff_1S0.\n";
1072 <<
"Not implemented parent in get_isgw_ff_1P1.\n";
1083 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
1084 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
1085 bbx2 = 0.5 * ( bb2 + bx2 );
1086 tm = ( mb - mx ) * ( mb - mx );
1089 wt = 1.0 + ( tm - t ) / ( 2.0 * mbb * mbx );
1092 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
1093 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
1096 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) /
1097 ( pow( ( 1.0 + r2 * ( tm - t ) / 18.0 ), 3.0 ) );
1099 f5v = f5 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), -0.5 );
1100 f5r = f5 * pow( ( mbb / mtb ), 0.5 ) * pow( ( mbx / mtx ), 0.5 );
1101 f5sppsm = f5 * pow( ( mbb / mtb ), -1.5 ) * pow( ( mbx / mtx ), 0.5 );
1102 f5spmsm = f5 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), -0.5 );
1106 ( ( ( mtb * sqrt( bb2 ) ) / ( 4.0 * sqrt( 2.0 ) * msb * msq * mtx ) ) +
1107 ( ( ( wt - 1 ) * msd ) / ( 6.0 * sqrt( 2.0 * bb2 ) * mtx ) ) );
1109 rr = f5r * mtb * sqrt( bb2 / 2 ) *
1110 ( ( 1.0 / mup ) + ( ( msd * mtx * ( wt - 1 ) * ( wt - 1 ) ) /
1111 ( 3.0 * msq * bb2 ) ) );
1113 sppsm = msd * f5sppsm / ( sqrt( 2.0 * bb2 ) * mtb ) *
1114 ( 1.0 - ( msd / msq ) + ( ( msd * bb2 ) / ( 2.0 * mup * bbx2 ) ) );
1116 spmsm = msd * f5spmsm / ( sqrt( 2.0 * bb2 ) * msq ) *
1117 ( ( ( 4 - wt ) / 3.0 ) -
1118 ( ( msd * msq * bb2 ) / ( 2.0 * mtx * mup * bbx2 ) ) );
1121 vv = -1.0 * msd * f5v / ( 2.0 * sqrt( 3.0 * bb2 ) * mtx ) *
1122 ( ( wt + 1 ) / 2.0 + bb2 * mtb / ( 2.0 * msd * msq * msb ) );
1124 rr = -2.0 * mtb * sqrt( bb2 / 3.0 ) * f5r *
1125 ( 1.0 / msq + mtx * msd * ( wt - 1 ) / ( 2.0 * bb2 ) *
1126 ( ( wt + 1 ) / ( 2.0 * msq ) -
1127 msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) );
1129 sppsm = -1.0 * sqrt( 3.0 ) * msd * f5sppsm / ( 2.0 * sqrt( bb2 ) * mtb ) *
1130 ( 1 - msd / ( 3.0 * msq ) -
1131 msd * bb2 / ( 3.0 * bbx2 ) *
1132 ( 1.0 / ( 2.0 * mum ) - 1.0 / mup ) );
1134 spmsm = -1.0 * msd * f5spmsm / ( 2.0 * sqrt( 3.0 * bb2 ) * mtx ) *
1135 ( ( 2 - wt ) * mtx / msq +
1136 msd * bb2 / bbx2 * ( 1.0 / ( 2.0 * mum ) - 1.0 / mup ) );
1141 double q2max = parMass * parMass + mass * mass - 2.0 * parMass * mass;
1143 double q2maxNom = parMass * parMass + massNom * massNom -
1144 2.0 * parMass * massNom;
1145 double q2maxin = sqrt( q2maxNom / q2max );
1146 if ( q2maxin > 1000. )
1156 *spf = ( sppsm + spmsm ) / 2.0;
1157 *smf = ( sppsm - spmsm ) / 2.0;
1162 double* lf,
double* qf,
double* cpf,
double* cmf )
1198 double mtb, mbb( 0.0 );
1199 double msd( 0.0 ), mx, mb, nfp( 0.0 );
1200 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx;
1201 double f5cppcm, f5cpmcm, f5, ql, ll, cppcm, cpmcm, f5q, f5l;
1202 double mqm, msb( 0.0 ), bb2( 0.0 ), mum, bbx2, tm, wt, r2;
1203 EvtId prnt = parent;
1206 if ( prnt == B0 || prnt == B0B || prnt == BP || prnt == BM ) {
1209 bb2 = 0.431 * 0.431;
1212 if ( dgt == A10 || dgt == A1P || dgt == A1M || dgt == F1 || dgt == F1PR ) {
1214 bx2 = 0.275 * 0.275;
1215 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
1218 if ( dgt == D3P1P || dgt == D3P1N || dgt == D3P10 || dgt == D3P1B ) {
1221 mbx = ( 3.0 * 2.49 + 2.40 ) / 4.0;
1225 <<
"Not implemented daugt:" << daugt.
getId()
1226 <<
" in get_isgw_ff_3P1.\n";
1230 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM ) {
1236 if ( dgt == F1 || dgt == F1PR || dgt == A10 || dgt == A1P ||
1239 bx2 = 0.275 * 0.275;
1240 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
1243 if ( dgt == K1STM || dgt == K1STB || dgt == K1STP ||
1247 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
1251 <<
"Not implemented daugt:" << daugt.
getId()
1252 <<
" in get_isgw_ff_3P1.\n";
1257 if ( prnt == BS0 || prnt == BSB ) {
1263 if ( dgt == D3P1SP || dgt == D3P1SN ) {
1266 mbx = ( 3.0 * 2.54 + 2.46 ) / 4.0;
1268 }
else if ( dgt == K1STM || dgt == K1STB || dgt == K1STP ||
1272 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
1276 <<
"Not implemented daugt:" << daugt.
getId()
1277 <<
" in get_isgw_ff_1S0.\n";
1283 <<
"Not implemented parent in get_isgw_ff_3P1.\n";
1294 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
1295 bbx2 = 0.5 * ( bb2 + bx2 );
1296 tm = ( mb - mx ) * ( mb - mx );
1299 wt = 1.0 + ( tm - t ) / ( 2.0 * mbb * mbx );
1302 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
1303 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
1306 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) /
1307 ( pow( ( 1.0 + r2 * ( tm - t ) / 18.0 ), 3.0 ) );
1309 f5q = f5 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), -0.5 );
1310 f5l = f5 * pow( ( mbb / mtb ), 0.5 ) * pow( ( mbx / mtx ), 0.5 );
1311 f5cppcm = f5 * pow( ( mbb / mtb ), -1.5 ) * pow( ( mbx / mtx ), 0.5 );
1312 f5cpmcm = f5 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), -0.5 );
1316 ( msd * ( 5.0 + wt ) * f5q / ( 2.0 * mtx * sqrt( bb2 ) * 6.0 ) );
1318 ll = -1.0 * mtb * sqrt( bb2 ) * f5l *
1319 ( 1 / mum + ( ( msd * mtx * ( wt - 1 ) / bb2 ) *
1320 ( ( 5.0 + wt ) / ( 6.0 * msq ) -
1321 ( msd * bb2 ) / ( 2.0 * mum * mtx * bbx2 ) ) ) );
1324 ( msd * mtx * f5cppcm / ( 2.0 * msq * mtb * sqrt( bb2 ) ) ) *
1325 ( 1 - ( msd * msq * bb2 ) / ( 2.0 * mtx * mum * bbx2 ) ) );
1328 ( msd * mtx * f5cpmcm / ( 2.0 * msq * mtb * sqrt( bb2 ) ) ) *
1329 ( ( ( wt + 2.0 ) / 3.0 ) -
1330 ( msd * msq * bb2 ) / ( 2.0 * mtx * mum * bbx2 ) ) *
1333 ql = f5q * sqrt( 1.0 / 6.0 ) * msd / ( sqrt( bb2 ) * mtx ) *
1334 ( 1.0 - bb2 * mtb / ( 4.0 * msd * msq * msb ) );
1335 ll = f5l * sqrt( 2.0 / 3.0 ) * mtb * sqrt( bb2 ) *
1336 ( 1.0 / ( 2.0 * msq ) - 3.0 / ( 2.0 * msb ) +
1337 msd * mtx * ( wt - 1 ) / bb2 *
1338 ( 1.0 / msq - msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) );
1339 cppcm = msd * msd * bx2 * f5cppcm /
1340 ( sqrt( 6.0 ) * mtb * msq * sqrt( bb2 ) * bbx2 );
1341 cpmcm = -sqrt( 2.0 / 3.0 ) * msd * f5cpmcm / ( sqrt( bb2 ) * mtx ) *
1342 ( 1 + msd * bx2 / ( 2.0 * msq * bbx2 ) );
1347 double q2max = parMass * parMass + mass * mass - 2.0 * parMass * mass;
1349 double q2maxNom = parMass * parMass + massNom * massNom -
1350 2.0 * parMass * massNom;
1351 double q2maxin = sqrt( q2maxNom / q2max );
1352 if ( q2maxin > 1000. )
1361 *cpf = ( cppcm + cpmcm ) / 2.0;
1362 *cmf = ( cppcm - cpmcm ) / 2.0;
1367 double mass,
double* upf,
double* umf )
1406 double mtb, mbb( 0.0 );
1407 double msd( 0.0 ), mx, mb, nfp( 0.0 );
1408 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx;
1409 double f5uppum, f5upmum, uppum, upmum, f5;
1410 double mqm, r2, bb2( 0.0 ), bbx2, msb( 0.0 ), tm;
1412 EvtId prnt = parent;
1415 if ( prnt == B0 || prnt == B0B || prnt == BP || prnt == BM ) {
1418 bb2 = 0.431 * 0.431;
1420 if ( dgt == A00 || dgt == A0P || dgt == A0M || dgt == F0 || dgt == F0PR ) {
1422 bx2 = 0.275 * 0.275;
1423 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
1426 if ( dgt == D3P0P || dgt == D3P0N || dgt == D3P00 || dgt == D3P0B ) {
1429 mbx = ( 3.0 * 2.49 + 2.40 ) / 4.0;
1433 <<
"Not implemented daugt in get_EvtISGW2_ff_3P0.\n";
1437 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM ) {
1442 if ( dgt == F0 || dgt == F0PR || dgt == A00 || dgt == A0P ||
1445 bx2 = 0.275 * 0.275;
1446 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
1449 if ( dgt == K0STM || dgt == K0STB || dgt == K0STP ||
1453 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
1457 <<
"Not implemented daugt in get_EvtISGW2_ff_3P0.\n";
1461 if ( prnt == DSP || prnt == DSM ) {
1467 if ( dgt == F0 || dgt == F0PR || dgt == A00 || dgt == A0P ||
1471 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
1474 if ( dgt == K0STM || dgt == K0STB || dgt == K0STP ||
1478 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) /
1483 <<
"Not implemented daugt in get_EvtISGW2_ff_3P0.\n";
1488 if ( prnt == BS0 || prnt == BSB ) {
1494 if ( dgt == D3P0SP || dgt == D3P0SN ) {
1497 mbx = ( 3.0 * 2.54 + 2.46 ) / 4.0;
1499 }
else if ( dgt == K0STM || dgt == K0STB || dgt == K0STP ||
1503 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) /
1508 <<
"Not implemented daugt:" << daugt.
getId()
1509 <<
" in get_isgw_ff_1S0.\n";
1513 <<
"Not implemented parent in get_EvtISGW2_ff_3P0.\n";
1525 bbx2 = 0.5 * ( bb2 + bx2 );
1526 tm = ( mb - mx ) * ( mb - mx );
1531 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
1532 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
1535 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) /
1536 ( pow( ( 1.0 + r2 * ( tm - t ) / 18.0 ), 3.0 ) );
1538 f5uppum = f5 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), 0.5 );
1539 f5upmum = f5 * pow( ( mbb / mtb ), 0.5 ) * pow( ( mbx / mtx ), -0.5 );
1541 uppum = -1.0 * f5uppum * sqrt( 2.0 / ( 3.0 * bb2 ) ) * msd;
1542 upmum = 1.0 * f5upmum * sqrt( 2.0 / ( 3.0 * bb2 ) ) * msd * mtb / mtx;
1544 *upf = ( uppum + upmum ) / 2.0;
1545 *umf = ( uppum - upmum ) / 2.0;
1551 double* hf,
double* kf,
double* bpf,
double* bmf )
1587 double mtb, mbb( 0.0 );
1588 double msd( 0.0 ), mx, mb, nfp( 0.0 );
1589 double msq( 0.0 ), bx2( 0.0 ), mbx( 0.0 ), mtx, f5;
1590 double f5h, f5k, f5bppbm, f5bpmbm, bppbm, bpmbm;
1591 double mqm, mum, mup, tm, wt, r2, bb2( 0.0 ), bbx2;
1593 EvtId prnt = parent;
1596 if ( prnt == B0 || prnt == B0B || prnt == BP || prnt == BM ) {
1599 bb2 = 0.431 * 0.431;
1602 if ( dgt == A20 || dgt == A2P || dgt == A2M || dgt == F2 || dgt == F2PR ) {
1604 bx2 = 0.275 * 0.275;
1605 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
1611 if ( dgt == D3P2P || dgt == D3P2N || dgt == D3P20 || dgt == D3P2B ) {
1614 mbx = ( 5.0 * 2.46 + 3.0 * 2.42 ) / 8.0;
1618 <<
"Not implemented daugt in get_isgw_ff_3P2.\n";
1622 if ( prnt == D0 || prnt == D0B || prnt == DP || prnt == DM ) {
1627 if ( dgt == F2 || dgt == F2PR || dgt == A20 || dgt == A2P ||
1630 bx2 = 0.275 * 0.275;
1631 mbx = ( 3.0 * 1.23 + 0.98 + 5.0 * 1.32 + 3.0 * 1.26 ) / 12.0;
1634 if ( dgt == K2STM || dgt == K2STB || dgt == K2STP ||
1638 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
1642 <<
"Not implemented daugt in get_isgw_ff_3P2.\n";
1647 if ( prnt == BS0 || prnt == BSB ) {
1653 if ( dgt == D3P2SP || dgt == D3P2SN ) {
1656 mbx = ( 5.0 * 2.61 + 3.0 * 2.54 ) / 8.0;
1658 }
else if ( dgt == K2STM || dgt == K2STB || dgt == K2STP ||
1662 mbx = ( 3.0 * 1.40 + 1.43 + 5.0 * 1.43 + 3.0 * 1.27 ) / 12.0;
1666 <<
"Not implemented daugt:" << daugt.
getId()
1667 <<
" in get_isgw_ff_1S0.\n";
1673 <<
"Not implemented parent in get_isgw_ff_3P2.\n";
1682 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
1683 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
1684 bbx2 = 0.5 * ( bb2 + bx2 );
1685 tm = ( mb - mx ) * ( mb - mx );
1688 wt = 1.0 + ( tm - t ) / ( 2.0 * mbb * mbx );
1691 r2 = 3.0 / ( 4.0 * msb * msq ) + 3 * msd * msd / ( 2 * mbb * mbx * bbx2 ) +
1692 ( 16.0 / ( mbb * mbx * ( 33.0 - 2.0 * nfp ) ) ) *
1695 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) /
1696 ( pow( ( 1.0 + r2 * ( tm - t ) / 18.0 ), 3.0 ) );
1698 f5h = f5 * pow( ( mbb / mtb ), -1.5 ) * pow( ( mbx / mtx ), -0.5 );
1699 f5k = f5 * pow( ( mbb / mtb ), -0.5 ) * pow( ( mbx / mtx ), 0.5 );
1700 f5bppbm = f5 * pow( ( mbb / mtb ), -2.5 ) * pow( ( mbx / mtx ), 0.5 );
1701 f5bpmbm = f5 * pow( ( mbb / mtb ), -1.5 ) * pow( ( mbx / mtx ), -0.5 );
1703 *hf = f5h * ( msd / ( sqrt( 8.0 * bb2 ) * mtb ) ) *
1704 ( ( 1.0 / msq ) - ( msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) );
1706 *kf = f5k * ( msd / ( sqrt( 2.0 * bb2 ) ) ) * ( 1.0 + wt );
1708 bppbm = ( ( msd * msd * f5bppbm * bx2 ) /
1709 ( sqrt( 32.0 * bb2 ) * msq * msb * mtb * bbx2 ) ) *
1710 ( 1.0 - ( msd * bx2 / ( 2.0 * mtb * bbx2 ) ) );
1712 bpmbm = -1.0 * ( msd * f5bpmbm / ( sqrt( 2.0 * bb2 ) * msb * mtx ) ) *
1713 ( 1.0 - ( ( msd * msb * bx2 ) / ( 2.0 * mup * mtb * bbx2 ) ) +
1714 ( ( msd * bx2 * ( 1.0 - ( ( msd * bx2 ) / ( 2.0 * mtb * bbx2 ) ) ) ) /
1715 ( 4.0 * msq * bbx2 ) ) );
1717 *bpf = ( bppbm + bpmbm ) / 2.0;
1718 *bmf = ( bppbm - bpmbm ) / 2.0;