59 return "D0GAMMADALITZ";
86 for (
int index = 0; index < 3; index++ ) {
91 for (
int index = 0; index < 3; index++ ) {
92 if ( ( dau[index] ==
m_K0B ) || ( dau[index] ==
m_KS ) ||
93 ( dau[index] ==
m_KL ) ) {
95 }
else if ( ( dau[index] ==
m_PIP ) || ( dau[index] ==
m_KP ) ) {
97 }
else if ( ( dau[index] ==
m_PIM ) || ( dau[index] ==
m_KM ) ) {
121 if ( parent !=
nullptr &&
125 if ( ( parId ==
m_BP ) || ( parId ==
m_BM ) || ( parId ==
m_B0 ) ||
126 ( parId ==
m_B0B ) ) {
153 const double mSqAB = ( pA + pB ).mass2();
154 const double mSqAC = ( pA + pC ).mass2();
155 const double mSqBC = ( pB + pC ).mass2();
182 amp = ampCnj + rB *
exp(
EvtComplex( 0., delta + gamma ) ) * ampDir;
184 amp = ampDir + rB *
exp(
EvtComplex( 0., delta - gamma ) ) * ampCnj;
320 <<
"EvtD0gammaDalitz: Invalid mode." << std::endl;
EvtComplex exp(const EvtComplex &c)
std::ostream & EvtGenReport(EvtGenSeverity severity, const char *facility=nullptr)
std::string getName() const override
static const EvtCyclic3::Pair & m_AC
void decay(EvtParticle *p) override
void reportInvalidAndExit() const
EvtComplex dalitzKsKK(const EvtDalitzPoint &point) const
static const EvtSpinType::spintype & m_SCALAR
static const EvtDalitzReso::NumType & m_RBW
static const EvtDalitzReso::NumType & m_GS
static const EvtCyclic3::Pair & m_AB
EvtComplex dalitzKsPiPi(const EvtDalitzPoint &point) const
static const EvtSpinType::spintype & m_TENSOR
static const EvtDalitzReso::CouplingType & m_PicPicKK
static const EvtDalitzReso::NumType & m_KMAT
void initProbMax() override
static const EvtCyclic3::Pair & m_BC
static const EvtSpinType::spintype & m_VECTOR
EvtDecayBase * clone() const override
static const EvtDalitzReso::CouplingType & m_EtaPic
EvtComplex evaluate(const EvtDalitzPoint &p) const
void vertex(const EvtComplex &)
void checkSpinDaughter(int d1, EvtSpinType::spintype sp)
void checkSpinParent(EvtSpinType::spintype sp)
double getArg(unsigned int j)
void setProbMax(double prbmx)
EvtId getParentId() const
EvtId getDaug(int i) const
void checkNDaug(int d1, int d2=-1)
void checkNArg(int a1, int a2=-1, int a3=-1, int a4=-1)
const EvtId * getDaugs() const
static EvtDecayTable & getInstance()
EvtDecayBase * getDecayFunc(EvtParticle *p)
static double getMass(EvtId i)
static EvtId getId(const std::string &name)
double initializePhaseSpace(size_t numdaughter, const EvtId *daughters, bool forceResetMasses=false, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)
const EvtVector4R & getP4() const
EvtParticle * getDaug(const int i)
EvtParticle * getParent() const