9#include "EvtGenBase/EvtParticle.hh"
10#include "EvtGenBase/EvtPDL.hh"
11#include "EvtGenBase/EvtSemiLeptonicVectorAmp.hh"
12#include "EvtGenBase/EvtSemiLeptonicScalarAmp.hh"
15#include "generators/evtgen/EvtGenModelRegister.h"
16#include "generators/evtgen/models/EvtHNLBCL.h"
17#include "generators/evtgen/models/EvtBCLFF.h"
18#include "generators/evtgen/models/EvtHNLSemiLeptonicScalarAmp.h"
19#include "generators/evtgen/models/EvtHNLSemiLeptonicVectorAmp.h"
53 p->initializePhaseSpace(getNDaug(), getDaugs());
61 EvtId parnum, mesnum, lnum, nunum;
63 parnum = getParentId();
68 double mymaxprob =
calcamp->CalcMaxProb(parnum, mesnum, lnum, nunum,
bclmodel);
70 setProbMax(mymaxprob);
82 checkSpinParent(EvtSpinType::SCALAR);
83 checkSpinDaughter(1, EvtSpinType::DIRAC);
84 checkSpinDaughter(2, EvtSpinType::DIRAC);
86 EvtSpinType::spintype mesontype = EvtPDL::getSpinType(getDaug(0));
90 if (mesontype == EvtSpinType::SCALAR) {
93 if (mesontype == EvtSpinType::VECTOR) {
The class provides the form factors for orbitally excited semileptonic decays.
EvtSemiLeptonicAmp * calcamp
Pointers needed to calculate amplitude.
EvtSemiLeptonicFF * bclmodel
Pointers needed for FFs.
Amplitude calculator for semileptonic HNL scalar decays.
Amplitude calculator for semileptonic HNL Vector decays.
void init()
Initializes module.
virtual ~EvtHNLBCL()
virtual destructor
EvtDecayBase * clone()
Clones module.
void initProbMax()
Sets maximal probab.
std::string getName()
Returns name of module.
#define B2_EVTGEN_REGISTER_MODEL(classname)
Class to register B2_EVTGEN_REGISTER_MODEL.
EvtHNLBCL()
Default constructor.
void decay(EvtParticle *p)
Creates a decay.
Abstract base class for different kinds of events.