21#include "EvtGenBase/EvtPatches.hh"
23#include "EvtGenBase/EvtParticle.hh"
24#include "EvtGenBase/EvtGenKine.hh"
25#include "EvtGenBase/EvtPDL.hh"
26#include "EvtGenBase/EvtVector4C.hh"
27#include "EvtGenBase/EvtVector4R.hh"
28#include "EvtGenBase/EvtTensor4C.hh"
29#include "EvtGenBase/EvtReport.hh"
30#include "EvtGenBase/EvtHelSys.hh"
32#include "EvtGenBase/EvtdFunctionSingle.hh"
60 report(
ERROR,
"EvtGen") <<
"EvtP2GC1 generator radiative decays expected "<<endl;
92 double A02=sqrt((1+
alpha)/2);
93 double A00=sqrt((1-
alpha)/4);
94 double A12=-A02,A11=-A00;
99 vertex(j1,j2,j3,0.0);j3++;}
103 vertex(0,1,2,
Djmn(1, 1,-1,phi,theta,gamma)*A12);
104 vertex(0,1,1,
Djmn(1, 1, 0,phi,theta,gamma)*A11);
105 vertex(0,0,2,
Djmn(1, 1, 1,phi,theta,gamma)*A02);
106 vertex(0,0,0,
Djmn(1, 1, 0,phi,theta,gamma)*A00);
108 vertex(1,1,2,
Djmn(1,-1,-1,phi,theta,gamma)*A12);
109 vertex(1,1,1,
Djmn(1,-1, 0,phi,theta,gamma)*A11);
110 vertex(1,0,2,
Djmn(1,-1, 1,phi,theta,gamma)*A02);
111 vertex(1,0,0,
Djmn(1,-1, 0,phi,theta,gamma)*A00);
113 vertex(2,1,2,
Djmn(1, 0,-1,phi,theta,gamma)*A12);
114 vertex(2,1,1,
Djmn(1, 0, 0,phi,theta,gamma)*A11);
115 vertex(2,0,2,
Djmn(1, 0, 1,phi,theta,gamma)*A02);
116 vertex(2,0,0,
Djmn(1, 0, 0,phi,theta,gamma)*A00);
**********Class see also m_nmax DOUBLE PRECISION m_amel DOUBLE PRECISION m_x2 DOUBLE PRECISION m_alfinv DOUBLE PRECISION m_Xenph INTEGER m_KeyWtm INTEGER m_idyfs DOUBLE PRECISION m_zini DOUBLE PRECISION m_q2 DOUBLE PRECISION m_Wt_KF DOUBLE PRECISION m_WtCut INTEGER m_KFfin *COMMON c_KarLud $ !Input CMS energy[GeV] $ !CMS energy after beam spread beam strahlung[GeV] $ !Beam energy spread[GeV] $ !z boost due to beam spread $ !electron beam mass *ff pair spectrum $ !minimum v
EvtComplex Djmn(int j, int m, int n, double phi, double theta, double gamma)
ostream & report(Severity severity, const char *facility)
void vertex(const EvtComplex &)
void checkSpinDaughter(int d1, EvtSpinType::spintype sp)
void checkSpinParent(EvtSpinType::spintype sp)
void setProbMax(double prbmx)
void checkNDaug(int d1, int d2=-1)
void checkNArg(int a1, int a2=-1, int a3=-1, int a4=-1)
void getName(std::string &name)
void decay(EvtParticle *p)
static EvtId getId(const std::string &name)
const EvtVector4R & getP4() const
EvtParticle * getDaug(int i)
double initializePhaseSpace(int numdaughter, EvtId *daughters, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)