75 {
77
79
80 EvtDiracParticle* theLambda =
static_cast<EvtDiracParticle*
>( p->
getDaug( 0 ) );
81 EvtVector4R lambdaMomentum = theLambda->
getP4Lab();
82
83 EvtDiracParticle* theAntiP =
static_cast<EvtDiracParticle*
>( p->
getDaug( 1 ) );
84
85 EvtPhotonParticle* thePhoton =
static_cast<EvtPhotonParticle*
>( p->
getDaug( 2 ) );
86 EvtVector4R photonMomentum = thePhoton->
getP4Lab();
87
88
89 for ( int i = 0; i < 2; ++i )
90 {
91 EvtDiracSpinor lambdaPol = theLambda->
spParent( i );
92 for ( int j = 0; j < 2; ++j )
93 {
94 EvtDiracSpinor antiP_Pol = theAntiP->
spParent( j );
95 for ( int k = 0; k < 2; ++k )
96 {
97 EvtVector4C photonPol =
99 EvtGammaMatrix photonGamma;
100
101 for ( int mu = 0; mu < 4; ++mu )
102 for ( int nu = 0; nu < 4; ++nu )
104 photonMomentum.
get( nu );
105
106 EvtComplex amp =
107 -
I * _gLambdab * lambdaPol.
adjoint() *
109 photonGamma *
110 (
slash( lambdaMomentum ) +
slash( photonMomentum ) +
112 ( ( lambdaMomentum + photonMomentum ) * ( lambdaMomentum + photonMomentum ) -
113 _mLambdab * _mLambdab ) *
115
116
118 }
119 }
120 }
121}
EvtGammaMatrix slash(const EvtVector4C &p)
void vertex(const EvtComplex &)
EvtDiracSpinor spParent(int i) const
EvtDiracSpinor adjoint() const
static const EvtGammaMatrix & sigmaLower(unsigned int mu, unsigned int nu)
static const EvtGammaMatrix & id()
static const EvtGammaMatrix & g5()
EvtParticle * getDaug(int i)
double initializePhaseSpace(int numdaughter, EvtId *daughters, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)
EvtVector4C epsParentPhoton(int i)
const EvtComplex & get(int) const