31void EvtISGWFF::getscalarff(
EvtId parent,
EvtId daught,
double t,
double mass,
double* fpf,
190 if ( daught == PI0 || daught == PIP || daught == PIM || daught == ETA || daught == ETAPR ||
191 daught == D0 || daught == D0B || daught == DP || daught == DM || daught == KP ||
192 daught == KM || daught == K0 || daught == K0L || daught == KB || daught == DSP ||
193 daught == DSM || daught == K0S )
194 { EvtISGW1FF1S0( parent, daught,
t,
mass, fpf, &fmf ); }
196 if ( daught == PI2S0 || daught == PI2SP || daught == PI2SM || daught == ETA2S ||
197 daught == D21S0P || daught == D21S0B || daught == D21S0N || daught == D21S00 )
198 { EvtISGW1FF21S0( parent, daught,
t,
mass, fpf, &fmf ); }
200 if ( daught == A00 || daught == A0P || daught == A0M || daught == F0 || daught == F0PR ||
201 daught == D3P0P || daught == D3P00 || daught == D3P0B || daught == D3P0N ||
202 daught == K0STM || daught == K0STB || daught == K0STP || daught == D3P0SP ||
203 daught == D3P0SN || daught == K0ST0 )
204 { EvtISGW1FF3P0( parent, daught,
t,
mass, fpf, &fmf ); }
206 *f0f = ( fmf / ( ( mb * mb -
mass *
mass ) /
t ) ) + ( *fpf );
211void EvtISGWFF::gettensorff(
EvtId parent,
EvtId daught,
double t,
double mass,
double* hf,
212 double* kf,
double* bpf,
double* bmf ) {
368 EvtISGW1FF3P2( parent, daught,
t,
mass, hf, kf, bpf, bmf );
373void EvtISGWFF::getvectorff(
EvtId parent,
EvtId daught,
double t,
double mass,
double* a1f,
374 double* a2f,
double* vf,
double* a0f ) {
530 double ff, gf, apf, amf;
532 if ( daught == DST0 || daught == DSTP || daught == DSTM || daught == DSTB ||
533 daught == OMEG || daught == RHO0 || daught == RHOM || daught == RHOP ||
534 daught == KSTP || daught == KSTM || daught == KST0 || daught == KSTB || daught == PHI ||
535 daught == DSSTP || daught == DSSTM )
536 { EvtISGW1FF3S1( parent, daught,
t,
mass, &ff, &gf, &apf, &amf ); }
537 if ( daught == B10 || daught == B1P || daught == B1M || daught == H1 || daught == H1PR ||
538 daught == D1P1P || daught == D1P10 || daught == D1P1B || daught == D1P1SP ||
539 daught == D1P1SN || daught == D1P1N || daught == K10 || daught == K1B ||
540 daught == K1P || daught == K1M )
541 { EvtISGW1FF1P1( parent, daught,
t,
mass, &ff, &gf, &apf, &amf ); }
542 if ( daught == RHO2S0 || daught == RHO2SP || daught == RHO2SM || daught == OMEG2S ||
543 daught == D23S1P || daught == D23S1B || daught == D23S1N || daught == D23S10 )
544 { EvtISGW1FF23S1( parent, daught,
t,
mass, &ff, &gf, &apf, &amf ); }
545 if ( daught == A10 || daught == A1P || daught == A1M || daught == F1 || daught == F1PR ||
546 daught == D3P1P || daught == D3P10 || daught == D3P1B || daught == D3P1N ||
547 daught == K1STM || daught == K1STB || daught == K1STP || daught == D3P1SP ||
548 daught == D3P1SN || daught == K1ST0 )
549 { EvtISGW1FF3P1( parent, daught,
t,
mass, &ff, &gf, &apf, &amf ); }
556 *vf = ( gf ) * ( mb +
mass );
557 *a1f = ( ff ) / ( mb +
mass );
558 *a2f = -1.0 * ( apf ) * ( mb +
mass );
559 double a3f = ( ( mb +
mass ) / ( 2.0 *
mass ) ) * ( *a1f ) -
560 ( ( mb -
mass ) / ( 2.0 *
mass ) ) * ( *a2f );
562 *a0f = a3f - ( (
t * amf ) / ( 2.0 *
mass ) );
567void EvtISGWFF::EvtISGW1FF3P2(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* hf,
568 double* kf,
double* bpf,
double* bmf ) {
725 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
726 double msq( 0.0 ), bx2( 0.0 ), mtx, f5;
727 double mum, mup, tm, bb2( 0.0 ), bbx2;
728 double msb( 0.0 ), kap;
730 if ( parent == BM || parent == BP || parent == B0 || parent == B0B )
735 if ( daugt == A20 || daugt == A2P || daugt == A2M || daugt == F2 || daugt == F2PR )
742 if ( daugt == D3P2P || daugt == D3P2N || daugt == D3P2B || daugt == D3P20 )
747 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_3P1.\n"; }
750 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw_ff_3P1.\n"; }
758 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
759 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
760 bbx2 = 0.5 * ( bb2 + bx2 );
762 tm = ( mb - mx ) * ( mb - mx );
763 if (
t > tm )
t = 0.99 * tm;
766 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
767 exp( -1.0 * ( ( msd * msd * ( tm -
t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
769 *hf = f5 * ( msd / ( sqrt( 8.0 * bb2 ) * mtb ) ) *
770 ( ( 1.0 / msq ) - ( msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) );
772 *kf = f5 * msd * sqrt( 2.0 / bb2 );
774 *bpf = ( -1.0 * f5 * msd / ( sqrt( 8.0 * bb2 ) * msb * mtx ) ) *
775 ( 1.0 - ( msd * msb * bx2 / ( 2.0 * mup * mtb * bbx2 ) ) +
776 ( msd * msb * bx2 * ( 1.0 - ( msd * bx2 / ( 2.0 * mtb * bbx2 ) ) ) /
777 ( 4.0 * mtb * mum * bbx2 ) ) );
782void EvtISGWFF::EvtISGW1FF1S0(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* fpf,
940 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
941 double msq( 0.0 ), bx2( 0.0 ), mtx;
943 double msb( 0.0 ), bb2( 0.0 ), mup, mum, bbx2, tm;
945 if ( parent == BM || parent == BP || parent == B0 || parent == B0B )
950 if ( daugt == PIP || daugt == PIM || daugt == PI0 || daugt == ETA || daugt == ETAPR )
957 if ( daugt == D0 || daugt == DP || daugt == DM || daugt == D0B )
962 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_1S0.\n"; }
967 report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw_ff_1S0.\n";
975 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
976 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
977 bbx2 = 0.5 * ( bb2 + bx2 );
978 tm = ( mb - mx ) * ( mb - mx );
979 if (
t > tm )
t = 0.99 * tm;
982 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) *
983 exp( -1.0 * ( ( msd * msd * ( tm -
t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
985 *fpf = f3 * ( 1 + ( msb / ( 2.0 * mum ) ) -
986 ( msb * msq * msd * bb2 / ( 4.0 * mup * mum * mtx * bbx2 ) ) );
988 ( 1.0 - ( mtb + mtx ) * ( 0.5 / msq - ( msd * bb2 / ( 4.0 * mup * mtx * bbx2 ) ) ) );
993void EvtISGWFF::EvtISGW1FF3S1(
EvtId parent,
EvtId daugt,
double t,
double mass,
double*
f,
994 double* g,
double* ap,
double* am ) {
1150 double msd( 0.0 ), mup, msq( 0.0 ), bb2( 0.0 ), mum, mtx, bbx2;
1151 double bx2( 0.0 ), msb( 0.0 ), tm;
1152 double mb, mx, f3, kap;
1154 if ( parent == BM || parent == BP || parent == B0 || parent == B0B )
1159 if ( daugt == DSTP || daugt == DSTM || daugt == DSTB || daugt == DST0 )
1166 if ( daugt == RHOP || daugt == RHOM || daugt == RHO0 || daugt == OMEG )
1171 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_3S1.\n"; }
1174 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw_ff_3S1.\n"; }
1181 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
1182 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
1183 bbx2 = 0.5 * ( bb2 + bx2 );
1186 tm = ( mb - mx ) * ( mb - mx );
1187 if (
t > tm )
t = 0.99 * tm;
1190 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) *
1191 exp( -1.0 * ( ( msd * msd * ( tm -
t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
1193 *
f = 2.0 * mtb * f3;
1194 *g = 0.5 * f3 * ( ( 1 / msq ) - ( msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) );
1195 *ap = ( -1.0 * f3 / ( 2.0 * mtx ) ) *
1196 ( 1.0 + ( msd * ( bb2 - bx2 ) / ( msb * ( bb2 + bx2 ) ) ) -
1197 ( msd * msd * bx2 * bx2 / ( 4.0 * mum * mtb * bbx2 * bbx2 ) ) );
1201void EvtISGWFF::EvtISGW1FF23S1(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* fpf,
1202 double* gpf,
double* appf,
double* apmf ) {
1358 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
1359 double msq( 0.0 ), bx2( 0.0 ), mtx;
1361 double mum, mup, bb2( 0.0 ), bbx2, tm, msb( 0.0 );
1363 if ( parent == BM || parent == BP || parent == B0 || parent == B0B )
1368 if ( daugt == RHO2SP || daugt == RHO2SM || daugt == RHO2S0 || daugt == OMEG2S )
1375 if ( daugt == D23S1N || daugt == D23S10 || daugt == D23S1P || daugt == D23S1B )
1380 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_23P1.\n"; }
1383 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw_ff_23P1.\n"; }
1389 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
1390 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
1391 bbx2 = 0.5 * ( bb2 + bx2 );
1392 tm = ( mb - mx ) * ( mb - mx );
1393 if (
t > tm )
t = 0.99 * tm;
1395 double kap = 0.7 * 0.7;
1396 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) *
1397 exp( -1.0 * ( ( msd * msd * ( tm -
t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
1399 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
1400 exp( -1.0 * ( ( msd * msd * ( tm -
t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
1402 *fpf = sqrt( 6.0 ) * f3 * mtb *
1403 ( ( ( bb2 - bx2 ) / ( bb2 + bx2 ) ) +
1404 ( ( msd * msd * bx2 * ( tm -
t ) ) / ( 6.0 * mtx * mtb * bbx2 * kap * bbx2 ) ) );
1407 sqrt( 3.0 / 8.0 ) * f3 *
1408 ( ( ( ( ( bb2 - bx2 ) / ( bb2 + bx2 ) ) +
1409 ( ( msd * msd * bx2 * ( tm -
t ) ) / ( 6.0 * mtx * mtb * bbx2 * kap * bbx2 ) ) ) *
1410 ( ( 1.0 / msq ) - ( ( msd * bb2 ) / ( 2.0 * mum * mtx * bbx2 ) ) ) ) +
1411 ( ( msd * bb2 * bx2 ) / ( 3.0 * mum * mtx * bbx2 * bbx2 ) ) );
1413 tt = ( msd * msd * bx2 * ( tm -
t ) ) / ( mtx * mtb * bb2 * kap * bbx2 );
1415 *appf = ( f5 / ( sqrt( 6.0 ) * mtx ) ) *
1416 ( ( ( 3.0 * mtb * bbx2 / ( 2.0 * msb * sqrt( bb2 * bx2 ) ) ) *
1417 ( 1.0 - ( ( msd * msd * msb * bx2 * bx2 ) /
1418 ( 4.0 * mtb * mtb * mum * bbx2 * bbx2 ) ) ) ) -
1419 ( ( 3.0 * msd * sqrt( bx2 / bb2 ) ) / ( 2.0 * msb ) ) +
1420 ( ( 5.0 * msd * sqrt( bx2 * bb2 ) * ( 1.0 + 0.1 * tt ) ) / ( 2.0 * msb * bbx2 ) ) -
1421 ( ( 3.0 * mtb * sqrt( bb2 / bx2 ) * ( 1.0 + ( tt / 6.0 ) ) ) / ( 2.0 * msb ) ) +
1422 ( ( 7.0 * msd * msd * sqrt( bb2 / bx2 ) * bx2 * bx2 * ( 1.0 + ( tt / 14.0 ) ) ) /
1423 ( 8.0 * mtb * mum * bbx2 * bbx2 ) ) );
1429void EvtISGWFF::EvtISGW1FF3P1(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* lf,
1430 double* qf,
double* cpf,
double* cmf ) {
1586 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
1587 double msq( 0.0 ), bx2( 0.0 ), mtx, f5;
1588 double msb( 0.0 ), bb2( 0.0 ), mup, mum, bbx2, tm;
1591 if ( parent == BM || parent == BP || parent == B0 || parent == B0B )
1596 if ( daugt == A10 || daugt == A1P || daugt == A1M || daugt == F1 || daugt == F1PR )
1603 if ( daugt == D3P1P || daugt == D3P1N || daugt == D3P1B || daugt == D3P10 )
1608 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_3P1.\n"; }
1611 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw_ff_3P1.\n"; }
1619 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
1620 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
1621 bbx2 = 0.5 * ( bb2 + bx2 );
1622 tm = ( mb - mx ) * ( mb - mx );
1623 if (
t > tm )
t = 0.99 * tm;
1626 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
1627 exp( -1.0 * ( ( msd * msd * ( tm -
t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
1629 *qf = ( f5 * msd ) / ( 2.0 * mtx * sqrt( bb2 ) );
1631 *lf = -1.0 * mtb * sqrt( bb2 ) * f5 *
1632 ( 1 / mum + ( msd * ( tm -
t ) / ( 2.0 * mtb * kap * bb2 ) ) *
1633 ( ( 1.0 / msq ) - ( 1.0 * msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) ) );
1635 *cpf = ( f5 * msd * msb / ( 4.0 * mtb * sqrt( bb2 ) * mum ) ) *
1636 ( 1.0 - ( msd * msq * bb2 / ( 2.0 * mtx * mum * bbx2 ) ) );
1641void EvtISGWFF::EvtISGW1FF3P0(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* upf,
1798 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
1799 double msq( 0.0 ), bx2( 0.0 ), mtx;
1801 double mum, mup, bb2( 0.0 ), bbx2, msb( 0.0 ), tm;
1803 if ( parent == BM || parent == BP || parent == B0 || parent == B0B )
1808 if ( daugt == A00 || daugt == A0P || daugt == A0M || daugt == F0 || daugt == F0PR )
1815 if ( daugt == D3P0P || daugt == D3P0N || daugt == D3P0B || daugt == D3P00 )
1820 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_3P0.\n"; }
1823 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw_ff_3P0.\n"; }
1831 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
1832 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
1833 bbx2 = 0.5 * ( bb2 + bx2 );
1834 tm = ( mb - mx ) * ( mb - mx );
1835 if (
t > tm )
t = 0.99 * tm;
1837 double kap = 0.7 * 0.7;
1838 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
1839 exp( -1.0 * ( ( msd * msd * ( tm -
t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
1841 *upf = f5 * msd * msq * msb / ( sqrt( 6.0 * bb2 ) * mtx * mum );
1846void EvtISGWFF::EvtISGW1FF1P1(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* vf,
1847 double* rf,
double* spf,
double* smf ) {
2003 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
2004 double msq( 0.0 ), bx2( 0.0 ), mtx, f5;
2005 double mup, mum, kap;
2006 double msb( 0.0 ), bb2( 0.0 ), bbx2, tm;
2008 if ( parent == BM || parent == BP || parent == B0 || parent == B0B )
2014 if ( daugt == H1 || daugt == H1PR || daugt == B10 || daugt == B1P || daugt == B1M )
2021 if ( daugt == D1P1P || daugt == D1P1N || daugt == D1P10 || daugt == D1P1B )
2026 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw_ff_3P1.\n"; }
2029 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw_ff_3P1.\n"; }
2037 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
2038 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
2039 bbx2 = 0.5 * ( bb2 + bx2 );
2040 tm = ( mb - mx ) * ( mb - mx );
2041 if (
t > tm )
t = 0.99 * tm;
2044 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
2045 exp( -1.0 * ( ( msd * msd * ( tm -
t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
2047 *vf = f5 * ( ( ( mtb * sqrt( bb2 ) ) / ( 4.0 * sqrt( 2.0 ) * msb * msq * mtx ) ) );
2048 *rf = f5 * mtb * sqrt( bb2 / 2 ) * ( ( 1.0 / mup ) );
2050 *spf = ( f5 * msd / ( sqrt( 2.0 * bb2 ) * mtb ) ) *
2051 ( 1.0 + ( msb / ( 2.0 * mum ) ) -
2052 ( msb * msq * msd * bb2 / ( 4.0 * mup * mum * mtx * bbx2 ) ) );
2059void EvtISGWFF::EvtISGW1FF21S0(
EvtId parent,
EvtId daugt,
double t,
double mass,
double* fppf,
2216 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
2217 double msq( 0.0 ), bx2( 0.0 ), mtx;
2220 double mum, mup, tm, bb2( 0.0 ), bbx2;
2222 if ( parent == BM || parent == BP || parent == B0 || parent == B0B )
2227 if ( daugt == PI2S0 || daugt == PI2SP || daugt == PI2SM || daugt == ETA2S )
2234 if ( daugt == D21S00 || daugt == D21S0P || daugt == D21S0N || daugt == D21S0B )
2239 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented daugt in get_isgw1_ff_21S0.\n"; }
2242 else {
report(
ERROR,
"EvtGen" ) <<
"Not implemented parent in get_isgw1_ff_21S0.\n"; }
2250 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
2251 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
2252 bbx2 = 0.5 * ( bb2 + bx2 );
2253 tm = ( mb - mx ) * ( mb - mx );
2254 if (
t > tm )
t = 0.99 * tm;
2256 double kap = 0.7 * 0.7;
2257 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) *
2258 exp( -1.0 * ( ( msd * msd * ( tm -
t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
2260 *fppf = f3 * sqrt( 3.0 / 8.0 ) * ( msb / mup ) *
2261 ( ( ( bb2 - bx2 ) / ( bb2 + bx2 ) ) +
2262 ( ( ( msq * msd * bb2 ) / ( 3.0 * mum * mtx * bbx2 ) ) *
2263 ( ( 7.0 * bx2 - 3.0 * bb2 ) / ( 4.0 * bbx2 ) ) ) +
2264 ( ( ( msd * msd * bx2 * ( tm -
t ) ) / ( 6.0 * mtx * mtb * bbx2 * kap * bbx2 ) ) *
2265 ( 1.0 - ( ( msq * msd * bb2 ) / ( 2.0 * mum * mtx * bbx2 ) ) ) ) );
TFile f("ana_bhabha660a_dqa_mcPat_zy_old.root")
EvtComplex exp(const EvtComplex &c)
ostream & report(Severity severity, const char *facility)
static double getMeanMass(EvtId i)
static EvtId getId(const std::string &name)