56 double q2 = (
q.mass2() );
58 double a1f, a2f, vf, a0f, a3f;
64 double costhl_flag = 1.0;
66 if ( parent->
getId() == D0 || parent->
getId() == D0B || parent->
getId() == DP ||
67 parent->
getId() == DM )
68 { costhl_flag = -1.0; }
69 if ( parent->
getId() == DSP || parent->
getId() == DSM ) { costhl_flag = -1.0; }
70 vf = vf * costhl_flag;
73 p4b.
set( parent->
mass(), 0.0, 0.0, 0.0 );
82 a3f = ( (
m_b + m_meson ) / ( 2.0 * m_meson ) ) * a1f -
83 ( (
m_b - m_meson ) / ( 2.0 * m_meson ) ) * a2f;
86 if ( l_num == EM || l_num == MUM || l_num == TAUM )
91 tds.
addDirProd( ( -a2f / (
m_b + m_meson ) ) * p4b, p4b + p4meson );
95 tds.
addDirProd( ( a0f - a3f ) * 2.0 * ( m_meson / q2 ) * p4b, p4b - p4meson );
104 if ( l_num == EP || l_num == MUP || l_num == TAUP )
108 tds.
addDirProd( ( -a2f / (
m_b + m_meson ) ) * p4b, p4b + p4meson );
112 tds.
addDirProd( ( a0f - a3f ) * 2.0 * ( m_meson / q2 ) * p4b, p4b - p4meson );
119 else {
report(
ERROR,
"EvtGen" ) <<
"Wrong lepton number" << endl; }
Evt3Rank3C directProd(const EvtVector3C &c1, const EvtVector3C &c2, const EvtVector3C &c3)
EvtVector4C EvtLeptonVACurrent(const EvtDiracSpinor &d, const EvtDiracSpinor &dp)
ostream & report(Severity severity, const char *facility)
EvtTensor4C dual(const EvtTensor4C &t2)
*********DOUBLE PRECISION m_pi INTEGER m_lenwt !max no of aux weights INTEGER m_phmax !maximum photon multiplicity ISR FSR *DOUBLE COMPLEX m_Pauli4 DOUBLE COMPLEX m_AmpBorn DOUBLE COMPLEX m_AmpBoxy DOUBLE COMPLEX m_AmpBorn1 DOUBLE COMPLEX m_AmpBorn2 DOUBLE COMPLEX m_AmpExpo2p DOUBLE COMPLEX m_Rmat DOUBLE COMPLEX m_BoxGZut !DOUBLE COMPLEX m_F1finPair2 !DOUBLE PRECISION m_Vcut DOUBLE PRECISION m_Alfinv DOUBLE PRECISION m_Lorin1 DOUBLE PRECISION m_Lorin2 DOUBLE PRECISION m_b
****INTEGER imax DOUBLE PRECISION m_pi *DOUBLE PRECISION m_amfin DOUBLE PRECISION m_Chfin DOUBLE PRECISION m_Xenph DOUBLE PRECISION m_sinw2 DOUBLE PRECISION m_GFermi DOUBLE PRECISION m_MfinMin DOUBLE PRECISION m_ta2 INTEGER m_out INTEGER m_KeyFSR INTEGER m_KeyQCD *COMMON c_Semalib $ !copy of input $ !CMS energy $ !beam mass $ !final mass $ !beam charge $ !final charge $ !smallest final mass $ !Z mass $ !Z width $ !EW mixing angle $ !Gmu Fermi $ alphaQED at q
void vertex(const EvtComplex &)
static EvtId getId(const std::string &name)
virtual EvtVector4C epsParent(int i) const
virtual EvtDiracSpinor spParentNeutrino() const
virtual EvtDiracSpinor spParent(int) const
const EvtVector4R & getP4() const
EvtParticle * getDaug(int i)
virtual void getvectorff(EvtId parent, EvtId daught, double t, double mass, double *a1f, double *a2f, double *vf, double *a0f)
void CalcAmp(EvtParticle *parent, EvtAmp &, EvtSemiLeptonicFF *FormFactors)
EvtVector4C cont1(const EvtVector4C &v4) const
static const EvtTensor4C & g()
EvtTensor4C & addDirProd(const EvtVector4R &p1, const EvtVector4R &p2)
EvtComplex cont(const EvtVector4C &v4) const
void set(int i, double d)