60 {
61
63
65 EvtVector4R pv, ps, ppr;
66
72
73
74 EvtHelSys angles( ppr, pv );
75 double theta = angles.getHelAng( 1 );
76 double phi = angles.getHelAng( 2 );
77 double gamma = 0;
78
79
80
81
82
83
86 double F10 = -F01;
87 double F11 = -F00;
88
89 vertex( 0, 0, 0,
Djmn( 1, 1, 0, phi, theta, gamma ) * F00 );
90
91 vertex( 0, 0, 1,
Djmn( 1, 1, 1, phi, theta, gamma ) * F01 );
92 vertex( 0, 1, 0,
Djmn( 1, 1, -1, phi, theta, gamma ) * F10 );
93 vertex( 0, 1, 1,
Djmn( 1, 1, 0, phi, theta, gamma ) * F11 );
94
95 vertex( 1, 0, 0,
Djmn( 1, -1, 0, phi, theta, gamma ) * F00 );
96
97 vertex( 1, 0, 1,
Djmn( 1, -1, 1, phi, theta, gamma ) * F01 );
98 vertex( 1, 1, 0,
Djmn( 1, -1, -1, phi, theta, gamma ) * F10 );
99 vertex( 1, 1, 1,
Djmn( 1, -1, 0, phi, theta, gamma ) * F11 );
100
101 vertex( 2, 0, 0,
Djmn( 1, 0, 0, phi, theta, gamma ) * F00 );
102
103 vertex( 2, 0, 1,
Djmn( 1, 0, 1, phi, theta, gamma ) * F01 );
104 vertex( 2, 1, 0,
Djmn( 1, 0, -1, phi, theta, gamma ) * F10 );
105 vertex( 2, 1, 1,
Djmn( 1, 0, 0, phi, theta, gamma ) * F11 );
106
107 return;
108}
EvtComplex Djmn(int j, int m, int n, double phi, double theta, double gamma)
**********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
void vertex(const EvtComplex &)
const EvtVector4R & getP4() const
EvtParticle * getDaug(int i)
double initializePhaseSpace(int numdaughter, EvtId *daughters, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)