74 {
75
84
91
96
99
101
104
110
112 double theta =angles.getHelAng(1);
113 double phi =angles.getHelAng(2);
114 double gamma=0;
115
116
117
118
119
120
121
122
123
124
125
126 double mass_b1,mass_b2;
129
130
131
132 if((d1==XP)||(d1==XM)||(d1==XZP)||(d1==XZM)) {mass_b1=1.532;}
133 else if((d1==SPP)||(d1==SPM)||(d1==SMP)||(d1==SMM)||(d1==SZP)||(d1==SZM)){mass_b1=1.383;}
134 else if((d1==DZP)||(d1==DZM)||(d1==DPP)||(d1==DPM)||(d1==DMP)||(d1==DMM)||(d1==DPPP)||(d1==DPPM)){mass_b1=1.232;}
135 else if((d1==OP)||d1==OM){mass_b1=1.67245;}
136 else{cout<<"The decay is not the process: J/psi->B10 B10bar(decuplet baryon) ."<<endl;}
137
138 mass_b2=mass_b1;
140
141
142
143
144 double R=pow(mass_b1+mass_M/2.0,2.0);
145 double c1=mass_M*mass_M/4.0-mass_b1*mass_b1;
146 double u=pow((R-c1)/(R+c1),2.0);
147
149 else{
151 }
152
153 double F00,F01,F03,F10,F11,F22,F23,F30,F32,F33;
154 double scale1=sqrt(3.0)*
u/(
u-2.0);
155 double scale2=3.0*
u/(3.0*
u-4);
156
157
158
159
160 F00=sqrt((1-
alpha)/(4.0*(1.0+scale2*scale2)));
161 F03=sqrt((1+
alpha)/(2.0*(1.0+2.0*scale1*scale1)));
162 F01=scale1*F03;F11=scale2*F00;
163 F22=F11;F32=F01;F33=F00;F30=F03;F10=F01;F23=F32;
164
165
166
167 vertex(0,0,0,
Djmn(1, 1, 0,phi,theta,gamma)*F00);
168 vertex(0,0,1,
Djmn(1, 1,-1,phi,theta,gamma)*F01);
170 vertex(0,0,3,
Djmn(1, 1, 1,phi,theta,gamma)*F03);
171 vertex(0,1,0,
Djmn(1, 1, 1,phi,theta,gamma)*F10);
172 vertex(0,1,1,
Djmn(1, 1, 0,phi,theta,gamma)*F11);
177 vertex(0,2,2,
Djmn(1, 1, 0,phi,theta,gamma)*F22);
178 vertex(0,2,3,
Djmn(1, 1,-1,phi,theta,gamma)*F23);
179 vertex(0,3,0,
Djmn(1, 1,-1,phi,theta,gamma)*F30);
181 vertex(0,3,2,
Djmn(1, 1, 1,phi,theta,gamma)*F32);
182 vertex(0,3,3,
Djmn(1, 1, 0,phi,theta,gamma)*F33);
183
184 vertex(1,0,0,
Djmn(1,-1, 0,phi,theta,gamma)*F00);
185 vertex(1,0,1,
Djmn(1,-1,-1,phi,theta,gamma)*F01);
187 vertex(1,0,3,
Djmn(1,-1, 1,phi,theta,gamma)*F03);
188 vertex(1,1,0,
Djmn(1,-1, 1,phi,theta,gamma)*F10);
189 vertex(1,1,1,
Djmn(1,-1, 0,phi,theta,gamma)*F11);
194 vertex(1,2,2,
Djmn(1,-1, 0,phi,theta,gamma)*F22);
195 vertex(1,2,3,
Djmn(1,-1,-1,phi,theta,gamma)*F23);
196 vertex(1,3,0,
Djmn(1,-1,-1,phi,theta,gamma)*F30);
198 vertex(1,3,2,
Djmn(1,-1, 1,phi,theta,gamma)*F32);
199 vertex(1,3,3,
Djmn(1,-1, 0,phi,theta,gamma)*F33);
200
201 vertex(2,0,0,
Djmn(1, 0, 0,phi,theta,gamma)*F00);
202 vertex(2,0,1,
Djmn(1, 0,-1,phi,theta,gamma)*F01);
204 vertex(2,0,3,
Djmn(1, 0, 1,phi,theta,gamma)*F03);
205 vertex(2,1,0,
Djmn(1, 0, 1,phi,theta,gamma)*F10);
206 vertex(2,1,1,
Djmn(1, 0, 0,phi,theta,gamma)*F11);
211 vertex(2,2,2,
Djmn(1, 0, 0,phi,theta,gamma)*F22);
212 vertex(2,2,3,
Djmn(1, 0,-1,phi,theta,gamma)*F23);
213 vertex(2,3,0,
Djmn(1, 0,-1,phi,theta,gamma)*F30);
215 vertex(2,3,2,
Djmn(1, 0, 1,phi,theta,gamma)*F32);
216 vertex(2,3,3,
Djmn(1, 0, 0,phi,theta,gamma)*F33);
217
218 return ;
219
220}
**********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)
void vertex(const EvtComplex &)
static double getMass(EvtId i)
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)
complex_t R(double Q2, double M2, double G, double Mp2, double Mm2)