204 EvtId parnum, mesnum, lnum;
210 if ( parnum == BP || parnum == BM || parnum == B0 || parnum == B0B ||
211 parnum == BS0 || parnum == BSB ) {
212 if ( mesnum == DST0 || mesnum == DSTP || mesnum == DSTB ||
213 mesnum == DSTM || mesnum == DSSTP || mesnum == DSSTM ) {
214 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
218 if ( lnum == TAUP || lnum == TAUM ) {
224 if ( mesnum == D0 || mesnum == DP || mesnum == D0B || mesnum == DM ||
225 mesnum == DSP || mesnum == DSM ) {
226 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
230 if ( lnum == TAUP || lnum == TAUM ) {
236 if ( mesnum == D1P1P || mesnum == D1P1N || mesnum == D1P10 ||
237 mesnum == D1P1B || mesnum == DS1P || mesnum == DS1M ) {
238 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
242 if ( lnum == TAUP || lnum == TAUM ) {
248 if ( mesnum == D3P1P || mesnum == D3P1N || mesnum == D3P10 ||
249 mesnum == D3P1B || mesnum == DS0STP || mesnum == DS0STM ) {
250 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
254 if ( lnum == TAUP || lnum == TAUM ) {
260 if ( mesnum == D3P0P || mesnum == D3P0N || mesnum == D3P00 ||
261 mesnum == D3P0B || mesnum == DPS1P || mesnum == DPS1M ) {
262 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
266 if ( lnum == TAUP || lnum == TAUM ) {
271 if ( mesnum == D3P2P || mesnum == D3P2N || mesnum == D3P20 ||
272 mesnum == D3P2B || mesnum == DS2STP || mesnum == DS2STM ) {
273 if ( mesnum == DS2STP || mesnum == DS2STM ) {
277 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
281 if ( lnum == TAUP || lnum == TAUM ) {
287 if ( mesnum == D21S0P || mesnum == D21S0N || mesnum == D21S00 ||
289 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
293 if ( lnum == TAUP || lnum == TAUM ) {
299 if ( mesnum == D23S1P || mesnum == D23S1N || mesnum == D23S10 ||
301 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
305 if ( lnum == TAUP || lnum == TAUM ) {
311 if ( mesnum == RHOP || mesnum == RHOM || mesnum == RHO0 ) {
312 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
316 if ( lnum == TAUP || lnum == TAUM ) {
322 if ( mesnum == OMEG ) {
323 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
327 if ( lnum == TAUP || lnum == TAUM ) {
333 if ( mesnum == PIP || mesnum == PIM || mesnum == PI0 ) {
334 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
338 if ( lnum == TAUP || lnum == TAUM ) {
344 if ( mesnum == ETA ) {
345 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
349 if ( lnum == TAUP || lnum == TAUM ) {
355 if ( mesnum == ETAPR ) {
356 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
360 if ( lnum == TAUP || lnum == TAUM ) {
366 if ( mesnum == B1P || mesnum == B1M || mesnum == B10 ) {
367 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
371 if ( lnum == TAUP || lnum == TAUM ) {
377 if ( mesnum == A0P || mesnum == A0M || mesnum == A00 ) {
378 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
382 if ( lnum == TAUP || lnum == TAUM ) {
388 if ( mesnum == A1P || mesnum == A1M || mesnum == A10 ) {
389 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
393 if ( lnum == TAUP || lnum == TAUM ) {
399 if ( mesnum == A2P || mesnum == A2M || mesnum == A20 ) {
400 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
404 if ( lnum == TAUP || lnum == TAUM ) {
410 if ( mesnum == H1 ) {
411 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
415 if ( lnum == TAUP || lnum == TAUM ) {
421 if ( mesnum == H1PR ) {
422 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
426 if ( lnum == TAUP || lnum == TAUM ) {
432 if ( mesnum == F2 ) {
433 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
437 if ( lnum == TAUP || lnum == TAUM ) {
443 if ( mesnum == F2PR ) {
444 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
448 if ( lnum == TAUP || lnum == TAUM ) {
454 if ( mesnum == F1 ) {
455 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
459 if ( lnum == TAUP || lnum == TAUM ) {
465 if ( mesnum == F1PR ) {
466 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
470 if ( lnum == TAUP || lnum == TAUM ) {
476 if ( mesnum == F0 ) {
477 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
481 if ( lnum == TAUP || lnum == TAUM ) {
487 if ( mesnum == F0PR ) {
488 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
492 if ( lnum == TAUP || lnum == TAUM ) {
498 if ( mesnum == RHO2SP || mesnum == RHO2SM || mesnum == RHO2S0 ) {
499 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
503 if ( lnum == TAUP || lnum == TAUM ) {
509 if ( mesnum == OMEG2S ) {
510 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
514 if ( lnum == TAUP || lnum == TAUM ) {
520 if ( mesnum == PI2SP || mesnum == PI2SM || mesnum == PI2S0 ) {
521 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
525 if ( lnum == TAUP || lnum == TAUM ) {
531 if ( mesnum == ETA2S ) {
532 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
536 if ( lnum == TAUP || lnum == TAUM ) {
542 if ( mesnum == KP || mesnum == KM || mesnum == K1P || mesnum == K1M ||
543 mesnum == K1STP || mesnum == K1STM ) {
544 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
548 if ( lnum == TAUP || lnum == TAUM ) {
554 if ( mesnum == KSTP || mesnum == KSTM ) {
555 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
559 if ( lnum == TAUP || lnum == TAUM ) {
566 if ( parnum == D0 || parnum == DP || parnum == DM || parnum == D0B ) {
567 if ( mesnum == RHOP || mesnum == RHOM || mesnum == RHO0 ) {
568 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
574 if ( mesnum == OMEG ) {
575 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
581 if ( mesnum == PIP || mesnum == PIM || mesnum == PI0 ) {
582 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
588 if ( mesnum == ETA ) {
589 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
595 if ( mesnum == ETAPR ) {
596 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
602 if ( mesnum == KP || mesnum == KM || mesnum == K0 || mesnum == K0S ||
603 mesnum == K0L || mesnum == KB ) {
604 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
610 if ( mesnum == K1STP || mesnum == K1STM || mesnum == K1ST0 ||
612 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
618 if ( mesnum == K1P || mesnum == K1M || mesnum == K10 || mesnum == K1B ) {
619 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
625 if ( mesnum == KSTP || mesnum == KSTM || mesnum == KST0 ||
627 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
633 if ( mesnum == K2STP || mesnum == K2STM || mesnum == K2ST0 ||
635 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
644 if ( mesnum == F0 ) {
645 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
652 if ( parnum == DSP || parnum == DSM ) {
653 if ( mesnum == PHI ) {
654 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
660 if ( mesnum == ETA ) {
661 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
667 if ( mesnum == ETAPR ) {
668 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
674 if ( mesnum == KST0 || mesnum == KSTB ) {
675 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
681 if ( mesnum == K0 || mesnum == KB || mesnum == K0S || mesnum == K0L ) {
682 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
688 if ( mesnum == F0 ) {
689 if ( lnum == EP || lnum == EM || lnum == MUP || lnum == MUM ) {
696 if ( parnum == BCP || parnum == BCM ) {
721 switch ( mesontype ) {
723 calcamp = std::make_unique<EvtSemiLeptonicScalarAmp>();
726 calcamp = std::make_unique<EvtSemiLeptonicVectorAmp>();
729 calcamp = std::make_unique<EvtSemiLeptonicTensorAmp>();
void initProbMax() override
EvtDecayBase * clone() override
static EvtSpinType::spintype getSpinType(EvtId i)
void setProbMax(double prbmx)
void decay(EvtParticle *p) override
std::unique_ptr< EvtSemiLeptonicFF > isgw2ffmodel
EvtId getParentId() const
double initializePhaseSpace(unsigned int numdaughter, EvtId *daughters, bool forceResetMasses=false, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)
void checkNDaug(int d1, int d2=-1)
void checkSpinParent(EvtSpinType::spintype sp)
void checkNArg(int a1, int a2=-1, int a3=-1, int a4=-1)
static EvtId getId(const std::string &name)
void checkSpinDaughter(int d1, EvtSpinType::spintype sp)
std::unique_ptr< EvtSemiLeptonicAmp > calcamp
std::string getName() override
EvtId getDaug(int i) const