70 {
71
73
76
82
83
85 double theta =angles.getHelAng(1);
86 double phi =angles.getHelAng(2);
87 double gamma=0;
88
89
90
91
92
97 double F33=-F00; double F32=-F01; double F30=-F03;
98 double F10=F01; double F23=-F10; double F22=-F11;
99
100
101
102
103
104 int j1,j2,j3;
105 for(j1=0;j1<=2;){
106 for(j2=0;j2<=3;){
107 for(j3=0;j3<=3;){
108 vertex(j1,j2,j3,0.0);j3++;}
109j2++;}
110j1++;}
111
112 vertex(0,0,0,
Djmn(1, 1, 0,phi,theta,gamma)*F00);
113 vertex(0,0,1,
Djmn(1, 1,-1,phi,theta,gamma)*F01);
114 vertex(0,0,3,
Djmn(1, 1, 1,phi,theta,gamma)*F03);
115 vertex(0,1,0,
Djmn(1, 1, 1,phi,theta,gamma)*F10);
116 vertex(0,1,1,
Djmn(1, 1, 0,phi,theta,gamma)*F11);
117 vertex(0,2,2,
Djmn(1, 1, 0,phi,theta,gamma)*F22);
118 vertex(0,2,3,
Djmn(1, 1,-1,phi,theta,gamma)*F23);
119 vertex(0,3,0,
Djmn(1, 1,-1,phi,theta,gamma)*F30);
120 vertex(0,3,2,
Djmn(1, 1, 1,phi,theta,gamma)*F32);
121 vertex(0,3,3,
Djmn(1, 1, 0,phi,theta,gamma)*F33);
122
123 vertex(1,0,0,
Djmn(1,-1, 0,phi,theta,gamma)*F00);
124 vertex(1,0,1,
Djmn(1,-1,-1,phi,theta,gamma)*F01);
125 vertex(1,0,3,
Djmn(1,-1, 1,phi,theta,gamma)*F03);
126 vertex(1,1,0,
Djmn(1,-1, 1,phi,theta,gamma)*F10);
127 vertex(1,1,1,
Djmn(1,-1, 0,phi,theta,gamma)*F11);
128 vertex(1,2,2,
Djmn(1,-1, 0,phi,theta,gamma)*F22);
129 vertex(1,2,3,
Djmn(1,-1,-1,phi,theta,gamma)*F23);
130 vertex(1,3,0,
Djmn(1,-1,-1,phi,theta,gamma)*F30);
131 vertex(1,3,2,
Djmn(1,-1, 1,phi,theta,gamma)*F32);
132 vertex(1,3,3,
Djmn(1,-1, 0,phi,theta,gamma)*F33);
133
134 vertex(2,0,0,
Djmn(1, 0, 0,phi,theta,gamma)*F00);
135 vertex(2,0,1,
Djmn(1, 0,-1,phi,theta,gamma)*F01);
136 vertex(2,0,3,
Djmn(1, 0, 1,phi,theta,gamma)*F03);
137 vertex(2,1,0,
Djmn(1, 0, 1,phi,theta,gamma)*F10);
138 vertex(2,1,1,
Djmn(1, 0, 0,phi,theta,gamma)*F11);
139 vertex(2,2,2,
Djmn(1, 0, 0,phi,theta,gamma)*F22);
140 vertex(2,2,3,
Djmn(1, 0,-1,phi,theta,gamma)*F23);
141 vertex(2,3,0,
Djmn(1, 0,-1,phi,theta,gamma)*F30);
142 vertex(2,3,2,
Djmn(1, 0, 1,phi,theta,gamma)*F32);
143 vertex(2,3,3,
Djmn(1, 0, 0,phi,theta,gamma)*F33);
144
145 return ;
146
147}
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)