33 double* fpf,
double* f0f )
92 if ( daught == PI0 || daught == PIP || daught == PIM || daught == ETA ||
93 daught == ETAPR || daught == D0 || daught == D0B || daught == DP ||
94 daught == DM || daught == KP || daught == KM || daught == K0 ||
95 daught == K0L || daught == KB || daught == DSP || daught == DSM ||
100 if ( daught == PI2S0 || daught == PI2SP || daught == PI2SM ||
101 daught == ETA2S || daught == D21S0P || daught == D21S0B ||
102 daught == D21S0N || daught == D21S00 ) {
106 if ( daught == A00 || daught == A0P || daught == A0M || daught == F0 ||
107 daught == F0PR || daught == D3P0P || daught == D3P00 ||
108 daught == D3P0B || daught == D3P0N || daught == K0STM ||
109 daught == K0STB || daught == K0STP || daught == D3P0SP ||
110 daught == D3P0SN || daught == K0ST0 ) {
114 *f0f = ( fmf / ( ( mb * mb - mass * mass ) / t ) ) + ( *fpf );
120 double* hf,
double* kf,
double* bpf,
double* bmf )
129 double* a1f,
double* a2f,
double* vf,
double* a0f )
203 double ff, gf, apf, amf;
205 if ( daught == DST0 || daught == DSTP || daught == DSTM || daught == DSTB ||
206 daught == OMEG || daught == RHO0 || daught == RHOM || daught == RHOP ||
207 daught == KSTP || daught == KSTM || daught == KST0 || daught == KSTB ||
208 daught == PHI || daught == DSSTP || daught == DSSTM ) {
209 EvtISGW1FF3S1( parent, daught, t, mass, &ff, &gf, &apf, &amf );
211 if ( daught == B10 || daught == B1P || daught == B1M || daught == H1 ||
212 daught == H1PR || daught == D1P1P || daught == D1P10 || daught == D1P1B ||
213 daught == D1P1SP || daught == D1P1SN || daught == D1P1N ||
214 daught == K10 || daught == K1B || daught == K1P || daught == K1M ) {
215 EvtISGW1FF1P1( parent, daught, t, mass, &ff, &gf, &apf, &amf );
217 if ( daught == RHO2S0 || daught == RHO2SP || daught == RHO2SM ||
218 daught == OMEG2S || daught == D23S1P || daught == D23S1B ||
219 daught == D23S1N || daught == D23S10 ) {
222 if ( daught == A10 || daught == A1P || daught == A1M || daught == F1 ||
223 daught == F1PR || daught == D3P1P || daught == D3P10 ||
224 daught == D3P1B || daught == D3P1N || daught == K1STM ||
225 daught == K1STB || daught == K1STP || daught == D3P1SP ||
226 daught == D3P1SN || daught == K1ST0 ) {
227 EvtISGW1FF3P1( parent, daught, t, mass, &ff, &gf, &apf, &amf );
235 *vf = ( gf ) * ( mb + mass );
236 *a1f = ( ff ) / ( mb + mass );
237 *a2f = -1.0 * ( apf ) * ( mb + mass );
238 double a3f = ( ( mb + mass ) / ( 2.0 * mass ) ) * ( *a1f ) -
239 ( ( mb - mass ) / ( 2.0 * mass ) ) * ( *a2f );
241 *a0f = a3f - ( ( t * amf ) / ( 2.0 * mass ) );
247 double* hf,
double* kf,
double* bpf,
double* bmf )
268 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
269 double msq( 0.0 ), bx2( 0.0 ), mtx, f5;
270 double mum, mup, tm, bb2( 0.0 ), bbx2;
271 double msb( 0.0 ), kap;
273 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
277 if ( daugt == A20 || daugt == A2P || daugt == A2M || daugt == F2 ||
282 if ( daugt == D3P2P || daugt == D3P2N || daugt == D3P2B ||
288 <<
"Not implemented daugt in get_isgw_ff_3P1.\n";
293 <<
"Not implemented parent in get_isgw_ff_3P1.\n";
302 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
303 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
304 bbx2 = 0.5 * ( bb2 + bx2 );
306 tm = ( mb - mx ) * ( mb - mx );
311 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
313 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
315 *hf = f5 * ( msd / ( sqrt( 8.0 * bb2 ) * mtb ) ) *
316 ( ( 1.0 / msq ) - ( msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) );
318 *kf = f5 * msd * sqrt( 2.0 / bb2 );
320 *bpf = ( -1.0 * f5 * msd / ( sqrt( 8.0 * bb2 ) * msb * mtx ) ) *
321 ( 1.0 - ( msd * msb * bx2 / ( 2.0 * mup * mtb * bbx2 ) ) +
322 ( msd * msb * bx2 * ( 1.0 - ( msd * bx2 / ( 2.0 * mtb * bbx2 ) ) ) /
323 ( 4.0 * mtb * mum * bbx2 ) ) );
329 double* fpf,
double* fmf )
350 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
351 double msq( 0.0 ), bx2( 0.0 ), mtx;
353 double msb( 0.0 ), bb2( 0.0 ), mup, mum, bbx2, tm;
355 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
359 if ( daugt == PIP || daugt == PIM || daugt == PI0 || daugt == ETA ||
364 if ( daugt == D0 || daugt == DP || daugt == DM || daugt == D0B ) {
369 <<
"Not implemented daugt in get_isgw_ff_1S0.\n";
374 <<
"Not implemented parent in get_isgw_ff_1S0.\n";
376 <<
"Parent:" << parent.
getId() << endl;
383 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
384 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
385 bbx2 = 0.5 * ( bb2 + bx2 );
386 tm = ( mb - mx ) * ( mb - mx );
391 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) *
393 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
395 *fpf = f3 * ( 1 + ( msb / ( 2.0 * mum ) ) -
396 ( msb * msq * msd * bb2 / ( 4.0 * mup * mum * mtx * bbx2 ) ) );
397 *fmf = f3 * ( 1.0 - ( mtb + mtx ) *
399 ( msd * bb2 / ( 4.0 * mup * mtx * bbx2 ) ) ) );
405 double* f,
double* g,
double* ap,
double* am )
424 double msd( 0.0 ), msq( 0.0 ), bb2( 0.0 ), mum, mtx, bbx2;
425 double bx2( 0.0 ), msb( 0.0 ), tm;
426 double mb, mx, f3, kap;
428 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
432 if ( daugt == DSTP || daugt == DSTM || daugt == DSTB || daugt == DST0 ) {
436 if ( daugt == RHOP || daugt == RHOM || daugt == RHO0 ||
442 <<
"Not implemented daugt in get_isgw_ff_3S1.\n";
447 <<
"Not implemented parent in get_isgw_ff_3S1.\n";
455 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
456 bbx2 = 0.5 * ( bb2 + bx2 );
459 tm = ( mb - mx ) * ( mb - mx );
464 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) *
466 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
469 *g = 0.5 * f3 * ( ( 1 / msq ) - ( msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) );
470 *ap = ( -1.0 * f3 / ( 2.0 * mtx ) ) *
471 ( 1.0 + ( msd * ( bb2 - bx2 ) / ( msb * ( bb2 + bx2 ) ) ) -
472 ( msd * msd * bx2 * bx2 / ( 4.0 * mum * mtb * bbx2 * bbx2 ) ) );
477 double mass,
double* fpf,
double* gpf,
478 double* appf,
double* apmf )
497 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
498 double msq( 0.0 ), bx2( 0.0 ), mtx;
500 double mum, bb2( 0.0 ), bbx2, tm, msb( 0.0 );
502 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
506 if ( daugt == RHO2SP || daugt == RHO2SM || daugt == RHO2S0 ||
511 if ( daugt == D23S1N || daugt == D23S10 || daugt == D23S1P ||
517 <<
"Not implemented daugt in get_isgw_ff_23P1.\n";
522 <<
"Not implemented parent in get_isgw_ff_23P1.\n";
529 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
530 bbx2 = 0.5 * ( bb2 + bx2 );
531 tm = ( mb - mx ) * ( mb - mx );
535 double kap = 0.7 * 0.7;
536 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) *
538 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
540 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
542 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
544 *fpf = sqrt( 6.0 ) * f3 * mtb *
545 ( ( ( bb2 - bx2 ) / ( bb2 + bx2 ) ) +
546 ( ( msd * msd * bx2 * ( tm - t ) ) /
547 ( 6.0 * mtx * mtb * bbx2 * kap * bbx2 ) ) );
549 *gpf = sqrt( 3.0 / 8.0 ) * f3 *
550 ( ( ( ( ( bb2 - bx2 ) / ( bb2 + bx2 ) ) +
551 ( ( msd * msd * bx2 * ( tm - t ) ) /
552 ( 6.0 * mtx * mtb * bbx2 * kap * bbx2 ) ) ) *
553 ( ( 1.0 / msq ) - ( ( msd * bb2 ) / ( 2.0 * mum * mtx * bbx2 ) ) ) ) +
554 ( ( msd * bb2 * bx2 ) / ( 3.0 * mum * mtx * bbx2 * bbx2 ) ) );
556 tt = ( msd * msd * bx2 * ( tm - t ) ) / ( mtx * mtb * bb2 * kap * bbx2 );
558 *appf = ( f5 / ( sqrt( 6.0 ) * mtx ) ) *
559 ( ( ( 3.0 * mtb * bbx2 / ( 2.0 * msb * sqrt( bb2 * bx2 ) ) ) *
560 ( 1.0 - ( ( msd * msd * msb * bx2 * bx2 ) /
561 ( 4.0 * mtb * mtb * mum * bbx2 * bbx2 ) ) ) ) -
562 ( ( 3.0 * msd * sqrt( bx2 / bb2 ) ) / ( 2.0 * msb ) ) +
563 ( ( 5.0 * msd * sqrt( bx2 * bb2 ) * ( 1.0 + 0.1 * tt ) ) /
564 ( 2.0 * msb * bbx2 ) ) -
565 ( ( 3.0 * mtb * sqrt( bb2 / bx2 ) * ( 1.0 + ( tt / 6.0 ) ) ) /
567 ( ( 7.0 * msd * msd * sqrt( bb2 / bx2 ) * bx2 * bx2 *
568 ( 1.0 + ( tt / 14.0 ) ) ) /
569 ( 8.0 * mtb * mum * bbx2 * bbx2 ) ) );
576 double* lf,
double* qf,
double* cpf,
double* cmf )
597 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
598 double msq( 0.0 ), bx2( 0.0 ), mtx, f5;
599 double msb( 0.0 ), bb2( 0.0 ), mum, bbx2, tm;
602 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
606 if ( daugt == A10 || daugt == A1P || daugt == A1M || daugt == F1 ||
611 if ( daugt == D3P1P || daugt == D3P1N || daugt == D3P1B ||
617 <<
"Not implemented daugt in get_isgw_ff_3P1.\n";
622 <<
"Not implemented parent in get_isgw_ff_3P1.\n";
631 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
632 bbx2 = 0.5 * ( bb2 + bx2 );
633 tm = ( mb - mx ) * ( mb - mx );
638 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
640 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
642 *qf = ( f5 * msd ) / ( 2.0 * mtx * sqrt( bb2 ) );
644 *lf = -1.0 * mtb * sqrt( bb2 ) * f5 *
645 ( 1 / mum + ( msd * ( tm - t ) / ( 2.0 * mtb * kap * bb2 ) ) *
647 ( 1.0 * msd * bb2 / ( 2.0 * mum * mtx * bbx2 ) ) ) );
649 *cpf = ( f5 * msd * msb / ( 4.0 * mtb * sqrt( bb2 ) * mum ) ) *
650 ( 1.0 - ( msd * msq * bb2 / ( 2.0 * mtx * mum * bbx2 ) ) );
656 double* upf,
double* umf )
677 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
678 double msq( 0.0 ), bx2( 0.0 ), mtx;
680 double mum, bb2( 0.0 ), bbx2, msb( 0.0 ), tm;
682 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
686 if ( daugt == A00 || daugt == A0P || daugt == A0M || daugt == F0 ||
691 if ( daugt == D3P0P || daugt == D3P0N || daugt == D3P0B ||
697 <<
"Not implemented daugt in get_isgw_ff_3P0.\n";
702 <<
"Not implemented parent in get_isgw_ff_3P0.\n";
711 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
712 bbx2 = 0.5 * ( bb2 + bx2 );
713 tm = ( mb - mx ) * ( mb - mx );
717 double kap = 0.7 * 0.7;
718 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
720 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
722 *upf = f5 * msd * msq * msb / ( sqrt( 6.0 * bb2 ) * mtx * mum );
728 double* vf,
double* rf,
double* spf,
double* smf )
749 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
750 double msq( 0.0 ), bx2( 0.0 ), mtx, f5;
751 double mup, mum, kap;
752 double msb( 0.0 ), bb2( 0.0 ), bbx2, tm;
754 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
758 if ( daugt == H1 || daugt == H1PR || daugt == B10 || daugt == B1P ||
763 if ( daugt == D1P1P || daugt == D1P1N || daugt == D1P10 ||
769 <<
"Not implemented daugt in get_isgw_ff_3P1.\n";
774 <<
"Not implemented parent in get_isgw_ff_3P1.\n";
783 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
784 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
785 bbx2 = 0.5 * ( bb2 + bx2 );
786 tm = ( mb - mx ) * ( mb - mx );
791 f5 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 5.0 / 2.0 ) *
793 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
796 ( ( ( mtb * sqrt( bb2 ) ) / ( 4.0 * sqrt( 2.0 ) * msb * msq * mtx ) ) );
797 *rf = f5 * mtb * sqrt( bb2 / 2 ) * ( ( 1.0 / mup ) );
799 *spf = ( f5 * msd / ( sqrt( 2.0 * bb2 ) * mtb ) ) *
800 ( 1.0 + ( msb / ( 2.0 * mum ) ) -
801 ( msb * msq * msd * bb2 / ( 4.0 * mup * mum * mtx * bbx2 ) ) );
809 double mass,
double* fppf,
double* fpmf )
829 double msd( 0.0 ), mx( 0.0 ), mb( 0.0 );
830 double msq( 0.0 ), bx2( 0.0 ), mtx;
833 double mum, mup, tm, bb2( 0.0 ), bbx2;
835 if ( parent == BM || parent == BP || parent == B0 || parent == B0B ) {
839 if ( daugt == PI2S0 || daugt == PI2SP || daugt == PI2SM ||
844 if ( daugt == D21S00 || daugt == D21S0P || daugt == D21S0N ||
850 <<
"Not implemented daugt in get_isgw1_ff_21S0.\n";
855 <<
"Not implemented parent in get_isgw1_ff_21S0.\n";
864 mup = 1.0 / ( 1.0 / msq + 1.0 / msb );
865 mum = 1.0 / ( 1.0 / msq - 1.0 / msb );
866 bbx2 = 0.5 * ( bb2 + bx2 );
867 tm = ( mb - mx ) * ( mb - mx );
871 double kap = 0.7 * 0.7;
872 f3 = sqrt( mtx / mtb ) * pow( sqrt( bx2 * bb2 ) / bbx2, 3.0 / 2.0 ) *
874 ( ( msd * msd * ( tm - t ) / ( 4.0 * mtb * mtx * kap * bbx2 ) ) ) );
876 *fppf = f3 * sqrt( 3.0 / 8.0 ) * ( msb / mup ) *
877 ( ( ( bb2 - bx2 ) / ( bb2 + bx2 ) ) +
878 ( ( ( msq * msd * bb2 ) / ( 3.0 * mum * mtx * bbx2 ) ) *
879 ( ( 7.0 * bx2 - 3.0 * bb2 ) / ( 4.0 * bbx2 ) ) ) +
880 ( ( ( msd * msd * bx2 * ( tm - t ) ) /
881 ( 6.0 * mtx * mtb * bbx2 * kap * bbx2 ) ) *
882 ( 1.0 - ( ( msq * msd * bb2 ) / ( 2.0 * mum * mtx * bbx2 ) ) ) ) );
892 <<
"Not implemented :getbaryonff in EvtISGWFF.\n";
897 double*,
double*,
double*,
double* )
900 <<
"Not implemented :getdiracff in EvtISGWFF.\n";
905 double*,
double*,
double*,
double*,
double*,
double* )
908 <<
"Not implemented :getraritaff in EvtISGWFF.\n";
EvtComplex exp(const EvtComplex &c)
std::ostream & EvtGenReport(EvtGenSeverity severity, const char *facility=nullptr)
void gettensorff(EvtId parent, EvtId daught, double t, double mass, double *hf, double *kf, double *bpf, double *bmf) override
void EvtISGW1FF21S0(EvtId parent, EvtId daught, double t, double mass, double *fppf, double *fpmf)
void EvtISGW1FF3P0(EvtId parent, EvtId daught, double t, double mass, double *upf, double *umf)
void EvtISGW1FF1P1(EvtId parent, EvtId daught, double t, double mass, double *vf, double *rf, double *spf, double *smf)
void getbaryonff(EvtId, EvtId, double, double, double *, double *, double *, double *) override
void EvtISGW1FF3P1(EvtId parent, EvtId daught, double t, double mass, double *lf, double *qf, double *cpf, double *cmf)
void getraritaff(EvtId, EvtId, double, double, double *, double *, double *, double *, double *, double *, double *, double *) override
void EvtISGW1FF23S1(EvtId parent, EvtId daught, double t, double mass, double *fpf, double *gpf, double *app, double *apm)
void EvtISGW1FF3S1(EvtId parent, EvtId daught, double t, double mass, double *ff, double *gf, double *apf, double *amf)
void getscalarff(EvtId parent, EvtId daught, double t, double mass, double *fpf, double *f0f) override
void EvtISGW1FF1S0(EvtId parent, EvtId daught, double t, double mass, double *fpf, double *fmf)
void getvectorff(EvtId parent, EvtId daught, double t, double mass, double *a1f, double *a2f, double *vf, double *a0f) override
void getdiracff(EvtId, EvtId, double, double, double *, double *, double *, double *, double *, double *) override
void EvtISGW1FF3P2(EvtId parent, EvtId daught, double t, double mass, double *h, double *k, double *bp, double *bm)
static double getMeanMass(EvtId i)
static EvtId getId(const std::string &name)