22#include "EvtGenBase/EvtPatches.hh"
23#include "EvtGenBase/EvtPatches.hh"
24#include "EvtGenBase/EvtParticle.hh"
25#include "EvtGenBase/EvtGenKine.hh"
26#include "EvtGenBase/EvtPDL.hh"
27#include "EvtGenBase/EvtReport.hh"
28#include "EvtGenBase/EvtVector4C.hh"
29#include "EvtGenBase/EvtTensor4C.hh"
30#include "EvtGenBase/EvtDiracSpinor.hh"
31#include "EvtGenBase/EvtSemiLeptonicScalarAmp.hh"
32#include "EvtGenBase/EvtId.hh"
33#include "EvtGenBase/EvtAmp.hh"
34#include "EvtGenBase/EvtSemiLeptonicFF.hh"
36void EvtSemiLeptonicScalarAmp::CalcAmp(
EvtParticle *parent,
51 double q2 = (
q.mass2());
55 double parentmass = parent->
mass();
66 p4b.
set(parent->
mass(),0.0,0.0,0.0);
69 mdiffoverq2 = parentmass*parentmass - mesonmass*mesonmass;
70 mdiffoverq2 = mdiffoverq2 / q2;
77 if (l_num==EM||l_num==MUM||l_num==TAUM){
79 tds =
EvtVector4C(fpf*(p4b+p4meson - (mdiffoverq2*(p4b-p4meson)))+
80 + f0f*mdiffoverq2*(p4b-p4meson));
88 if (l_num==EP||l_num==MUP||l_num==TAUP){
90 tds =
EvtVector4C(fpf*(p4b+p4meson - (mdiffoverq2*(p4b-p4meson)))+
91 + f0f*mdiffoverq2*(p4b-p4meson));
99 report(
ERROR,
"EvtGen") <<
"dfnb89agngri wrong lepton number\n";
****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
EvtVector4C EvtLeptonVACurrent(const EvtDiracSpinor &d, const EvtDiracSpinor &dp)
ostream & report(Severity severity, const char *facility)
void vertex(const EvtComplex &)
static EvtId getId(const std::string &name)
virtual EvtDiracSpinor spParentNeutrino() const
virtual EvtDiracSpinor spParent(int) const
const EvtVector4R & getP4() const
EvtParticle * getDaug(int i)
virtual void getscalarff(EvtId parent, EvtId daught, double t, double mass, double *fpf, double *fmf)
void set(int i, double d)