34 double* fpf,
double* f0f )
93 if ( daught == PI0 || daught == PIP || daught == PIM || daught == ETA ||
94 daught == ETAPR || daught == D0 || daught == D0B || daught == DP ||
95 daught == DM || daught == KP || daught == KM || daught == K0 ||
96 daught == K0L || daught == KB || daught == DSP || daught == DSM ||
101 if ( daught == PI2S0 || daught == PI2SP || daught == PI2SM ||
102 daught == ETA2S || daught == D21S0P || daught == D21S0B ||
103 daught == D21S0N || daught == D21S00 ) {
107 if ( daught == A00 || daught == A0P || daught == A0M || daught == F0 ||
108 daught == F0PR || daught == D3P0P || daught == D3P00 ||
109 daught == D3P0B || daught == D3P0N || daught == K0STM ||
110 daught == K0STB || daught == K0STP || daught == D3P0SP ||
111 daught == D3P0SN || daught == K0ST0 ) {
115 *f0f = ( fmf / ( ( mb * mb - mass * mass ) / t ) ) + ( *fpf );
121 double* hf,
double* kf,
double* bpf,
double* bmf )
130 double* a1f,
double* a2f,
double* vf,
double* a0f )
204 double ff, gf, apf, amf;
206 if ( daught == DST0 || daught == DSTP || daught == DSTM || daught == DSTB ||
207 daught == OMEG || daught == RHO0 || daught == RHOM || daught == RHOP ||
208 daught == KSTP || daught == KSTM || daught == KST0 || daught == KSTB ||
209 daught == PHI || daught == DSSTP || daught == DSSTM ) {
210 EvtISGW1FF3S1( parent, daught, t, mass, &ff, &gf, &apf, &amf );
212 if ( daught == B10 || daught == B1P || daught == B1M || daught == H1 ||
213 daught == H1PR || daught == D1P1P || daught == D1P10 || daught == D1P1B ||
214 daught == D1P1SP || daught == D1P1SN || daught == D1P1N ||
215 daught == K10 || daught == K1B || daught == K1P || daught == K1M ) {
216 EvtISGW1FF1P1( parent, daught, t, mass, &ff, &gf, &apf, &amf );
218 if ( daught == RHO2S0 || daught == RHO2SP || daught == RHO2SM ||
219 daught == OMEG2S || daught == D23S1P || daught == D23S1B ||
220 daught == D23S1N || daught == D23S10 ) {
223 if ( daught == A10 || daught == A1P || daught == A1M || daught == F1 ||
224 daught == F1PR || daught == D3P1P || daught == D3P10 ||
225 daught == D3P1B || daught == D3P1N || daught == K1STM ||
226 daught == K1STB || daught == K1STP || daught == D3P1SP ||
227 daught == D3P1SN || daught == K1ST0 ) {
228 EvtISGW1FF3P1( parent, daught, t, mass, &ff, &gf, &apf, &amf );
236 *vf = ( gf ) * ( mb + mass );
237 *a1f = ( ff ) / ( mb + mass );
238 *a2f = -1.0 * ( apf ) * ( mb + mass );
239 double a3f = ( ( mb + mass ) / ( 2.0 * mass ) ) * ( *a1f ) -
240 ( ( mb - mass ) / ( 2.0 * mass ) ) * ( *a2f );
242 *a0f = a3f - ( ( t * amf ) / ( 2.0 * mass ) );
248 double* hf,
double* kf,
double* bpf,
double* bmf )
269 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
270 double msq( 0.0 ), bx2( 0.0 ), mtx, f5;
271 double mum, mup, tm, bb2( 0.0 ), bbx2;
272 double msb( 0.0 ), kap;
274 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
278 if ( daugt == A20 || daugt == A2P || daugt == A2M || daugt == F2 ||
283 if ( daugt == D3P2P || daugt == D3P2N || daugt == D3P2B ||
289 <<
"Not implemented daugt in get_isgw_ff_3P1.\n";
294 <<
"Not implemented parent in get_isgw_ff_3P1.\n";
303 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
304 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
305 bbx2 = 0.5 * ( bb2 + bx2 );
307 tm = ( mb - mx ) * ( mb - mx );
312 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
314 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
316 *hf = f5 * ( msd / ( sqrt( 8.0 * bb2 ) * mtb ) ) *
317 ( ( 1.0 / msq ) - ( msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) );
319 *kf = f5 * msd * sqrt( 2.0 / bb2 );
321 *bpf = ( -1.0 * f5 * msd / ( sqrt( 8.0 * bb2 ) * msb * mtx ) ) *
322 ( 1.0 - ( msd * msb * bx2 / ( 2.0 * mup * mtb * bbx2 ) ) +
323 ( msd * msb * bx2 * ( 1.0 - ( msd * bx2 / ( 2.0 * mtb * bbx2 ) ) ) /
324 ( 4.0 * mtb * mum * bbx2 ) ) );
330 double* fpf,
double* fmf )
351 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
352 double msq( 0.0 ), bx2( 0.0 ), mtx;
354 double msb( 0.0 ), bb2( 0.0 ), mup, mum, bbx2, tm;
356 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
360 if ( daugt == PIP || daugt == PIM || daugt == PI0 || daugt == ETA ||
365 if ( daugt == D0 || daugt == DP || daugt == DM || daugt == D0B ) {
370 <<
"Not implemented daugt in get_isgw_ff_1S0.\n";
375 <<
"Not implemented parent in get_isgw_ff_1S0.\n";
377 <<
"Parent:" << parent.
getId() << endl;
384 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
385 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
386 bbx2 = 0.5 * ( bb2 + bx2 );
387 tm = ( mb - mx ) * ( mb - mx );
392 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) *
394 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
396 *fpf = f3 * ( 1 + ( msb / ( 2.0 * mum ) ) -
397 ( msb * msq * msd * bb2 / ( 4.0 * mup * mum * mtx * bbx2 ) ) );
398 *fmf = f3 * ( 1.0 - ( mtb + mtx ) *
400 ( msd * bb2 / ( 4.0 * mup * mtx * bbx2 ) ) ) );
406 double* f,
double* g,
double* ap,
double* am )
425 double msd( 0.0 ), msq( 0.0 ), bb2( 0.0 ), mum, mtx, bbx2;
426 double bx2( 0.0 ), msb( 0.0 ), tm;
427 double mb, mx, f3, kap;
429 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
433 if ( daugt == DSTP || daugt == DSTM || daugt == DSTB || daugt == DST0 ) {
437 if ( daugt == RHOP || daugt == RHOM || daugt == RHO0 ||
443 <<
"Not implemented daugt in get_isgw_ff_3S1.\n";
448 <<
"Not implemented parent in get_isgw_ff_3S1.\n";
456 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
457 bbx2 = 0.5 * ( bb2 + bx2 );
460 tm = ( mb - mx ) * ( mb - mx );
465 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) *
467 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
470 *g = 0.5 * f3 * ( ( 1 / msq ) - ( msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) );
471 *ap = ( -1.0 * f3 / ( 2.0 * mtx ) ) *
472 ( 1.0 + ( msd * ( bb2 - bx2 ) / ( msb * ( bb2 + bx2 ) ) ) -
473 ( msd * msd * bx2 * bx2 / ( 4.0 * mum * mtb * bbx2 * bbx2 ) ) );
478 double mass,
double* fpf,
double* gpf,
479 double* appf,
double* apmf )
498 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
499 double msq( 0.0 ), bx2( 0.0 ), mtx;
501 double mum, bb2( 0.0 ), bbx2, tm, msb( 0.0 );
503 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
507 if ( daugt == RHO2SP || daugt == RHO2SM || daugt == RHO2S0 ||
512 if ( daugt == D23S1N || daugt == D23S10 || daugt == D23S1P ||
518 <<
"Not implemented daugt in get_isgw_ff_23P1.\n";
523 <<
"Not implemented parent in get_isgw_ff_23P1.\n";
530 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
531 bbx2 = 0.5 * ( bb2 + bx2 );
532 tm = ( mb - mx ) * ( mb - mx );
536 double kap = 0.7 * 0.7;
537 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) *
539 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
541 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
543 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
545 *fpf = sqrt( 6.0 ) * f3 * mtb *
546 ( ( ( bb2 - bx2 ) / ( bb2 + bx2 ) ) +
547 ( ( msd * msd * bx2 * ( tm - t ) ) /
548 ( 6.0 * mtx * mtb * bbx2 * kap * bbx2 ) ) );
550 *gpf = sqrt( 3.0 / 8.0 ) * f3 *
551 ( ( ( ( ( bb2 - bx2 ) / ( bb2 + bx2 ) ) +
552 ( ( msd * msd * bx2 * ( tm - t ) ) /
553 ( 6.0 * mtx * mtb * bbx2 * kap * bbx2 ) ) ) *
554 ( ( 1.0 / msq ) - ( ( msd * bb2 ) / ( 2.0 * mum * mtx * bbx2 ) ) ) ) +
555 ( ( msd * bb2 * bx2 ) / ( 3.0 * mum * mtx * bbx2 * bbx2 ) ) );
557 tt = ( msd * msd * bx2 * ( tm - t ) ) / ( mtx * mtb * bb2 * kap * bbx2 );
559 *appf = ( f5 / ( sqrt( 6.0 ) * mtx ) ) *
560 ( ( ( 3.0 * mtb * bbx2 / ( 2.0 * msb * sqrt( bb2 * bx2 ) ) ) *
561 ( 1.0 - ( ( msd * msd * msb * bx2 * bx2 ) /
562 ( 4.0 * mtb * mtb * mum * bbx2 * bbx2 ) ) ) ) -
563 ( ( 3.0 * msd * sqrt( bx2 / bb2 ) ) / ( 2.0 * msb ) ) +
564 ( ( 5.0 * msd * sqrt( bx2 * bb2 ) * ( 1.0 + 0.1 * tt ) ) /
565 ( 2.0 * msb * bbx2 ) ) -
566 ( ( 3.0 * mtb * sqrt( bb2 / bx2 ) * ( 1.0 + ( tt / 6.0 ) ) ) /
568 ( ( 7.0 * msd * msd * sqrt( bb2 / bx2 ) * bx2 * bx2 *
569 ( 1.0 + ( tt / 14.0 ) ) ) /
570 ( 8.0 * mtb * mum * bbx2 * bbx2 ) ) );
577 double* lf,
double* qf,
double* cpf,
double* cmf )
598 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
599 double msq( 0.0 ), bx2( 0.0 ), mtx, f5;
600 double msb( 0.0 ), bb2( 0.0 ), mum, bbx2, tm;
603 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
607 if ( daugt == A10 || daugt == A1P || daugt == A1M || daugt == F1 ||
612 if ( daugt == D3P1P || daugt == D3P1N || daugt == D3P1B ||
618 <<
"Not implemented daugt in get_isgw_ff_3P1.\n";
623 <<
"Not implemented parent in get_isgw_ff_3P1.\n";
632 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
633 bbx2 = 0.5 * ( bb2 + bx2 );
634 tm = ( mb - mx ) * ( mb - mx );
639 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
641 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
643 *qf = ( f5 * msd ) / ( 2.0 * mtx * sqrt( bb2 ) );
645 *lf = -1.0 * mtb * sqrt( bb2 ) * f5 *
646 ( 1 / mum + ( msd * ( tm - t ) / ( 2.0 * mtb * kap * bb2 ) ) *
648 ( 1.0 * msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) ) );
650 *cpf = ( f5 * msd * msb / ( 4.0 * mtb * sqrt( bb2 ) * mum ) ) *
651 ( 1.0 - ( msd * msq * bb2 / ( 2.0 * mtx * mum * bbx2 ) ) );
657 double* upf,
double* umf )
678 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
679 double msq( 0.0 ), bx2( 0.0 ), mtx;
681 double mum, bb2( 0.0 ), bbx2, msb( 0.0 ), tm;
683 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
687 if ( daugt == A00 || daugt == A0P || daugt == A0M || daugt == F0 ||
692 if ( daugt == D3P0P || daugt == D3P0N || daugt == D3P0B ||
698 <<
"Not implemented daugt in get_isgw_ff_3P0.\n";
703 <<
"Not implemented parent in get_isgw_ff_3P0.\n";
712 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
713 bbx2 = 0.5 * ( bb2 + bx2 );
714 tm = ( mb - mx ) * ( mb - mx );
718 double kap = 0.7 * 0.7;
719 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
721 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
723 *upf = f5 * msd * msq * msb / ( sqrt( 6.0 * bb2 ) * mtx * mum );
729 double* vf,
double* rf,
double* spf,
double* smf )
750 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
751 double msq( 0.0 ), bx2( 0.0 ), mtx, f5;
752 double mup, mum, kap;
753 double msb( 0.0 ), bb2( 0.0 ), bbx2, tm;
755 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
759 if ( daugt == H1 || daugt == H1PR || daugt == B10 || daugt == B1P ||
764 if ( daugt == D1P1P || daugt == D1P1N || daugt == D1P10 ||
770 <<
"Not implemented daugt in get_isgw_ff_3P1.\n";
775 <<
"Not implemented parent in get_isgw_ff_3P1.\n";
784 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
785 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
786 bbx2 = 0.5 * ( bb2 + bx2 );
787 tm = ( mb - mx ) * ( mb - mx );
792 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
794 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
797 ( ( ( mtb * sqrt( bb2 ) ) / ( 4.0 * sqrt( 2.0 ) * msb * msq * mtx ) ) );
798 *rf = f5 * mtb * sqrt( bb2 / 2 ) * ( ( 1.0 / mup ) );
800 *spf = ( f5 * msd / ( sqrt( 2.0 * bb2 ) * mtb ) ) *
801 ( 1.0 + ( msb / ( 2.0 * mum ) ) -
802 ( msb * msq * msd * bb2 / ( 4.0 * mup * mum * mtx * bbx2 ) ) );
810 double mass,
double* fppf,
double* fpmf )
830 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
831 double msq( 0.0 ), bx2( 0.0 ), mtx;
834 double mum, mup, tm, bb2( 0.0 ), bbx2;
836 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
840 if ( daugt == PI2S0 || daugt == PI2SP || daugt == PI2SM ||
845 if ( daugt == D21S00 || daugt == D21S0P || daugt == D21S0N ||
851 <<
"Not implemented daugt in get_isgw1_ff_21S0.\n";
856 <<
"Not implemented parent in get_isgw1_ff_21S0.\n";
865 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
866 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
867 bbx2 = 0.5 * ( bb2 + bx2 );
868 tm = ( mb - mx ) * ( mb - mx );
872 double kap = 0.7 * 0.7;
873 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) *
875 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
877 *fppf = f3 * sqrt( 3.0 / 8.0 ) * ( msb / mup ) *
878 ( ( ( bb2 - bx2 ) / ( bb2 + bx2 ) ) +
879 ( ( ( msq * msd * bb2 ) / ( 3.0 * mum * mtx * bbx2 ) ) *
880 ( ( 7.0 * bx2 - 3.0 * bb2 ) / ( 4.0 * bbx2 ) ) ) +
881 ( ( ( msd * msd * bx2 * ( tm - t ) ) /
882 ( 6.0 * mtx * mtb * bbx2 * kap * bbx2 ) ) *
883 ( 1.0 - ( ( msq * msd * bb2 ) / ( 2.0 * mum * mtx * bbx2 ) ) ) ) );
893 <<
"Not implemented :getbaryonff in EvtISGWFF.\n";
898 double*,
double*,
double*,
double* )
901 <<
"Not implemented :getdiracff in EvtISGWFF.\n";
906 double*,
double*,
double*,
double*,
double*,
double* )
909 <<
"Not implemented :getraritaff in EvtISGWFF.\n";
std::ostream & EvtGenReport(EvtGenSeverity severity, const char *facility=0)
void EvtISGW1FF21S0(EvtId parent, EvtId daught, double t, double mass, double *fppf, double *fpmf)
void gettensorff(EvtId parent, EvtId daught, double t, double mass, double *hf, double *kf, double *bpf, double *bmf) override
void EvtISGW1FF1S0(EvtId parent, EvtId daught, double t, double mass, double *fpf, double *fmf)
static double getMeanMass(EvtId i)
void EvtISGW1FF3P0(EvtId parent, EvtId daught, double t, double mass, double *upf, double *umf)
void getdiracff(EvtId, EvtId, double, double, double *, double *, double *, double *, double *, double *) override
static EvtId getId(const std::string &name)
void EvtISGW1FF3P1(EvtId parent, EvtId daught, double t, double mass, double *lf, double *qf, double *cpf, double *cmf)
void getvectorff(EvtId parent, EvtId daught, double t, double mass, double *a1f, double *a2f, double *vf, double *a0f) override
void getscalarff(EvtId parent, EvtId daught, double t, double mass, double *fpf, double *f0f) override
void getraritaff(EvtId, EvtId, double, double, double *, double *, double *, double *, double *, double *, double *, double *) override
EvtComplex exp(const EvtComplex &c)
void EvtISGW1FF3S1(EvtId parent, EvtId daught, double t, double mass, double *ff, double *gf, double *apf, double *amf)
void EvtISGW1FF1P1(EvtId parent, EvtId daught, double t, double mass, double *vf, double *rf, double *spf, double *smf)
void EvtISGW1FF3P2(EvtId parent, EvtId daught, double t, double mass, double *h, double *k, double *bp, double *bm)
void EvtISGW1FF23S1(EvtId parent, EvtId daught, double t, double mass, double *fpf, double *gpf, double *app, double *apm)
void getbaryonff(EvtId, EvtId, double, double, double *, double *, double *, double *) override