BOSS 7.1.2
BESIII Offline Software System
Loading...
Searching...
No Matches
EvtDsToPipPipPimPi0 Class Reference

#include <EvtDsToPipPipPimPi0.hh>

+ Inheritance diagram for EvtDsToPipPipPimPi0:

Public Member Functions

 EvtDsToPipPipPimPi0 ()
 
virtual ~EvtDsToPipPipPimPi0 ()
 
void getName (std::string &name)
 
EvtDecayBaseclone ()
 
void init ()
 
void initProbMax ()
 
void decay (EvtParticle *p)
 
- Public Member Functions inherited from EvtDecayProb
void makeDecay (EvtParticle *p)
 
void setProb (double prob)
 
double getProb ()
 
void setWeight (double weight)
 
virtual ~EvtDecayProb ()
 
- Public Member Functions inherited from EvtDecayBase
virtual std::string commandName ()
 
virtual void command (std::string cmd)
 
double getProbMax (double prob)
 
double resetProbMax (double prob)
 
 EvtDecayBase ()
 
virtual ~EvtDecayBase ()
 
virtual bool matchingDecay (const EvtDecayBase &other) const
 
EvtId getParentId ()
 
double getBranchingFraction ()
 
void disableCheckQ ()
 
void checkQ ()
 
int getNDaug ()
 
EvtIdgetDaugs ()
 
EvtId getDaug (int i)
 
int getNArg ()
 
int getPHOTOS ()
 
void setPHOTOS ()
 
void setVerbose ()
 
void setSummary ()
 
double * getArgs ()
 
std::string * getArgsStr ()
 
double getArg (int j)
 
std::string getArgStr (int j)
 
std::string getModelName ()
 
int getDSum ()
 
int summary ()
 
int verbose ()
 
void saveDecayInfo (EvtId ipar, int ndaug, EvtId *daug, int narg, std::vector< std::string > &args, std::string name, double brfr)
 
void printSummary ()
 
void setProbMax (double prbmx)
 
void noProbMax ()
 
void checkNArg (int a1, int a2=-1, int a3=-1, int a4=-1)
 
void checkNDaug (int d1, int d2=-1)
 
void checkSpinParent (EvtSpinType::spintype sp)
 
void checkSpinDaughter (int d1, EvtSpinType::spintype sp)
 
virtual int nRealDaughters ()
 

Additional Inherited Members

- Static Public Member Functions inherited from EvtDecayBase
static void findMasses (EvtParticle *p, int ndaugs, EvtId daugs[10], double masses[10])
 
static void findMass (EvtParticle *p)
 
static double findMaxMass (EvtParticle *p)
 
- Protected Member Functions inherited from EvtDecayBase
bool daugsDecayedByParentModel ()
 
- Protected Attributes inherited from EvtDecayBase
bool _daugsDecayedByParentModel
 

Detailed Description

Definition at line 11 of file EvtDsToPipPipPimPi0.hh.

Constructor & Destructor Documentation

◆ EvtDsToPipPipPimPi0()

EvtDsToPipPipPimPi0::EvtDsToPipPipPimPi0 ( )
inline

Definition at line 16 of file EvtDsToPipPipPimPi0.hh.

16{}

Referenced by clone().

◆ ~EvtDsToPipPipPimPi0()

EvtDsToPipPipPimPi0::~EvtDsToPipPipPimPi0 ( )
virtual

Definition at line 29 of file EvtDsToPipPipPimPi0.cc.

29{}

Member Function Documentation

◆ clone()

EvtDecayBase * EvtDsToPipPipPimPi0::clone ( )
virtual

Implements EvtDecayBase.

Definition at line 38 of file EvtDsToPipPipPimPi0.cc.

38 {
39
40 return new EvtDsToPipPipPimPi0;
41
42}

◆ decay()

void EvtDsToPipPipPimPi0::decay ( EvtParticle * p)
virtual

Implements EvtDecayBase.

Definition at line 150 of file EvtDsToPipPipPimPi0.cc.

150 {
151
153
154 EvtVector4R PPip1 = p->getDaug(0)->getP4();
155 EvtVector4R PPip2 = p->getDaug(1)->getP4();
156 EvtVector4R PPim = p->getDaug(2)->getP4();
157 EvtVector4R PPi0 = p->getDaug(3)->getP4();
158
159 double Pip1[4], Pip2[4], Pim[4], Pi0[4];
160 double cof[2],amp_tmp[2],amp_PDF[2], PDF[2];
161 if(getParentId()==EvtPDL::getId("D_s+")){
162 Pip1[0] = PPip1.get(0); Pip1[1] = PPip1.get(1); Pip1[2] = PPip1.get(2); Pip1[3] = PPip1.get(3);
163 Pip2[0] = PPip2.get(0); Pip2[1] = PPip2.get(1); Pip2[2] = PPip2.get(2); Pip2[3] = PPip2.get(3);
164 Pim[0] = PPim.get(0); Pim[1] = PPim.get(1); Pim[2] = PPim.get(2); Pim[3] = PPim.get(3);
165 Pi0[0] = PPi0.get(0); Pi0[1] = PPi0.get(1); Pi0[2] = PPi0.get(2); Pi0[3] = PPi0.get(3);
166 }else{
167 Pip1[0] = PPip1.get(0); Pip1[1] = -(PPip1.get(1)); Pip1[2] = -(PPip1.get(2)); Pip1[3] = -(PPip1.get(3));
168 Pip2[0] = PPip2.get(0); Pip2[1] = -(PPip2.get(1)); Pip2[2] = -(PPip2.get(2)); Pip2[3] = -(PPip2.get(3));
169 Pim[0] = PPim.get(0); Pim[1] = -(PPim.get(1)); Pim[2] = -(PPim.get(2)); Pim[3] = -(PPim.get(3));
170 Pi0[0] = PPi0.get(0); Pi0[1] = -(PPi0.get(1)); Pi0[2] = -(PPi0.get(2)); Pi0[3] = -(PPi0.get(3));
171 }
172
173 double p12[4],p13[4],p14[4],p23[4],p24[4],p34[4];
174 double p123[4],p124[4],p134[4],p234[4],pD[4];
175 double Sf1,Sf2,Sf3,Sf4,Sf5,Sf6,Sf7,Sf8;
176 Sf1 = spinf1( Pip1[0],Pip1[1],Pip1[2],Pip1[3],
177 Pip2[0],Pip2[1],Pip2[2],Pip2[3],
178 Pim[0] ,Pim[1] ,Pim[2] ,Pim[3] ,
179 Pi0[0] ,Pi0[1] ,Pi0[2] ,Pi0[3]);
180 Sf2 = spinf2( Pip1[0],Pip1[1],Pip1[2],Pip1[3],
181 Pip2[0],Pip2[1],Pip2[2],Pip2[3],
182 Pim[0] ,Pim[1] ,Pim[2] ,Pim[3] ,
183 Pi0[0] ,Pi0[1] ,Pi0[2] ,Pi0[3]);
184 Sf3 = spinf3( Pip1[0],Pip1[1],Pip1[2],Pip1[3],
185 Pip2[0],Pip2[1],Pip2[2],Pip2[3],
186 Pim[0] ,Pim[1] ,Pim[2] ,Pim[3] ,
187 Pi0[0] ,Pi0[1] ,Pi0[2] ,Pi0[3]);
188 Sf4 = spinf4( Pip1[0],Pip1[1],Pip1[2],Pip1[3],
189 Pip2[0],Pip2[1],Pip2[2],Pip2[3],
190 Pim[0] ,Pim[1] ,Pim[2] ,Pim[3] ,
191 Pi0[0] ,Pi0[1] ,Pi0[2] ,Pi0[3]);
192 Sf5 = spinf5( Pip1[0],Pip1[1],Pip1[2],Pip1[3],
193 Pip2[0],Pip2[1],Pip2[2],Pip2[3],
194 Pim[0] ,Pim[1] ,Pim[2] ,Pim[3] ,
195 Pi0[0] ,Pi0[1] ,Pi0[2] ,Pi0[3]);
196 Sf6 = spinf6( Pip1[0],Pip1[1],Pip1[2],Pip1[3],
197 Pip2[0],Pip2[1],Pip2[2],Pip2[3],
198 Pim[0] ,Pim[1] ,Pim[2] ,Pim[3] ,
199 Pi0[0] ,Pi0[1] ,Pi0[2] ,Pi0[3]);
200 Sf7 = spinf7( Pip1[0],Pip1[1],Pip1[2],Pip1[3],
201 Pip2[0],Pip2[1],Pip2[2],Pip2[3],
202 Pim[0] ,Pim[1] ,Pim[2] ,Pim[3] ,
203 Pi0[0] ,Pi0[1] ,Pi0[2] ,Pi0[3]);
204 Sf8 = spinf8( Pip1[0],Pip1[1],Pip1[2],Pip1[3],
205 Pip2[0],Pip2[1],Pip2[2],Pip2[3],
206 Pim[0] ,Pim[1] ,Pim[2] ,Pim[3] ,
207 Pi0[0] ,Pi0[1] ,Pi0[2] ,Pi0[3]);
208
209
210 for(int i=0;i!=4;i++){
211 p12[i]=Pip1[i]+Pip2[i];
212 p13[i]=Pip1[i]+Pim[i];
213 p14[i]=Pip1[i]+Pi0[i];
214 p23[i]=Pip2[i]+Pim[i];
215 p24[i]=Pip2[i]+Pi0[i];
216 p34[i]=Pim[i]+Pi0[i];
217 p123[i]=Pip1[i]+Pip2[i]+Pim[i];
218 p124[i]=Pip1[i]+Pip2[i]+Pi0[i];
219 p134[i]=Pip1[i]+Pim[i]+Pi0[i];
220 p234[i]=Pip2[i]+Pim[i]+Pi0[i];
221 pD[i]=Pip1[i]+Pip2[i]+Pim[i]+Pi0[i];
222 }
223 double sPip1,sPip2,sPim,sPi0,s12,s13,s14,s23,s24,s34,s123,s124,s134,s234,sD;
224 sPi0 = SCADot(Pi0,Pi0);
225 sPip1 = SCADot(Pip1,Pip1);
226 sPip2 = SCADot(Pip2,Pip2);
227 sPim = SCADot(Pim,Pim);
228
229 s12 = SCADot(p12,p12);
230 s13 = SCADot(p13,p13);
231 s14 = SCADot(p14,p14);
232 s23 = SCADot(p23,p23);
233 s24 = SCADot(p24,p24);
234 s34 = SCADot(p34,p34);
235
236 s123 = SCADot(p123,p123);
237 s124 = SCADot(p124,p124);
238 s134 = SCADot(p134,p134);
239 s234 = SCADot(p234,p234);
240
241 sD = SCADot(pD,pD);
242
243 double spion12[2]={mass_Kaon*mass_Kaon,sPip1};
244 double spion22[2]={mass_Kaon*mass_Kaon,sPip2};
245 double spim2[2]={mass_Kaon*mass_Kaon,sPim};
246
247 double t1_24[4],t1_14[4],t1_13[4],t1_23[4],t1_12[4],t1_34[4];
248 double t1_14_23[4],t1_13_24[4],t1_12_34[4];
249 double t1_134_2[4],t1_234_1[4],t1_123_4[4];
250 double t1_13_4[4],t1_23_4[4],t1_14_3[4],t1_24_3[4],t1_34_1[4],t1_34_2[4];
251
252 double t2_13[4][4],t2_23[4][4];
253 double t2_13_24[4][4],t2_14_23[4][4];
254 double t2_123_4[4][4];
255 double t2_13_2[4][4],t2_23_1[4][4];
256
257 calt1(Pi0,Pip2,t1_24);
258 calt1(Pi0,Pip1,t1_14);
259
260 calt1(Pip1,Pim,t1_13);
261 calt1(Pip2,Pim,t1_23);
262
263 calt1(Pip1,Pip2,t1_12);
264 calt1(Pim,Pi0,t1_34);
265
266 calt1(p14,p23,t1_14_23);
267 calt1(p24,p13,t1_13_24);
268 calt1(p12,p34,t1_12_34);
269
270 calt1(p134,Pip2,t1_134_2);
271 calt1(p234,Pip1,t1_234_1);
272 calt1(p123,Pi0,t1_123_4);
273
274 calt1(p13,Pi0,t1_13_4);
275 calt1(p23,Pi0,t1_23_4);
276 calt1(p14,Pim,t1_14_3);
277 calt1(p24,Pim,t1_24_3);
278 calt1(p34,Pip1,t1_34_1);
279 calt1(p34,Pip2,t1_34_2);
280
281 calt2(Pip1,Pim,t2_13);
282 calt2(Pip2,Pim,t2_23);
283
284 calt2(p13,p24,t2_13_24);
285 calt2(p14,p23,t2_14_23);
286
287 calt2(p123,Pi0,t2_123_4);
288
289 calt2(p13,Pip2,t2_13_2);
290 calt2(p23,Pip1,t2_23_1);
291
292
293 amp_PDF[0] = 0;
294 amp_PDF[1] = 0;
295 PDF[0] = 0;
296 PDF[1] = 0;
297
298 double temp_PDF, tmp1, tmp2, tmp3,tmp4,temp_PDF1,amp_tmp1[2],amp_tmp2[2];
299 double pro[2], pro0[2], pro1[2],pro2[2],pro3[2],pro4[2];
300 double t1D[4],B[3], Bc[3];
301 double mass1sq, mass2sq;
302
303 for(int i=0; i<11; i++){
304 amp_tmp[0] = 0;
305 amp_tmp[1] = 0;
306 tmp1 = 0;tmp2 = 0;temp_PDF = 0;;
307 cof[0] = amp[i]*cos(phase[i]);
308 cof[1] = amp[i]*sin(phase[i]);
309 mass1sq = mass1[i]*mass1[i];
310 mass2sq = mass2[i]*mass2[i];
311 temp_PDF = 0;
312 temp_PDF1 = 0;
313 amp_tmp[0] = 0;
314 amp_tmp[1] = 0;
315 amp_tmp1[0] = 0;
316 amp_tmp1[1] = 0;
317 amp_tmp2[0] = 0;
318 amp_tmp2[1] = 0;
319 tmp1 = 0;
320 tmp2 = 0;
321 tmp3 = 0;
322 tmp4 = 0;
323
324 if(i==0){
325 temp_PDF=0;
326 propagator980(mass1[i],s23,spion12,spion22,pro0);
327 propagatorGS(mass2sq,mass2[i],width2[i],s14,sPip1,sPi0,rRes2,pro1);
328 Com_Multi(pro0,pro1,pro);
329
330 for(int a=0; a<4; a++){
331 temp_PDF += G[a][a]*t1_14_23[a]*t1_14[a];
332 }
333
334 B[1] = barrier(1,s14,sPip1,sPi0,rRes2,mass2[i]);
335 B[2] = barrier(1,sD,s23,s14,rD2,1.9683);
336 tmp1 = B[1]*B[2]*temp_PDF;
337 amp_tmp1[0] = tmp1*pro[0];
338 amp_tmp1[1] = tmp1*pro[1];
339
340 temp_PDF=0;
341 propagator980(mass1[i],s13,spion12,spion22,pro0);
342 propagatorGS(mass2sq,mass2[i],width2[i],s24,sPip2,sPi0,rRes2,pro1);
343 Com_Multi(pro0,pro1,pro);
344
345 for(int a=0; a<4; a++){
346 temp_PDF += G[a][a]*t1_13_24[a]*t1_24[a];
347 }
348
349 B[1] = barrier(1,s24,sPip2,sPi0,rRes2,mass2[i]);
350 B[2] = barrier(1,sD,s13,s24,rD2,1.9683);
351 tmp2 = B[1]*B[2]*temp_PDF;
352 amp_tmp2[0] = tmp2*pro[0];
353 amp_tmp2[1] = tmp2*pro[1];
354 }
355
356 if(i==1){
357 temp_PDF=0;
358 propagatorGS(mass2sq,mass2[i],width2[i],s14,sPip1,sPi0,rRes2,pro0);
359 propagatorGS(mass2sq,mass2[i],width2[i],s23,sPip2,sPim,rRes2,pro1);
360
361 for(int a=0; a<4; a++){
362 temp_PDF += G[a][a]*t1_14[a]*t1_23[a];
363 }
364
365 B[1] = barrier(1,s14,sPip1,sPi0,rRes2,mass2[i]);
366 B[2] = barrier(1,s23,sPip2,sPim,rRes2,mass2[i]);
367 tmp1 = B[1]*B[2]*temp_PDF;
368 amp_tmp1[0] = tmp1*pro0[0]*pro1[0];
369 amp_tmp1[1] = tmp1*pro0[1]*pro1[1];
370
371 temp_PDF=0;
372 propagatorGS(mass2sq,mass2[i],width2[i],s24,sPip2,sPi0,rRes2,pro0);
373 propagatorGS(mass2sq,mass2[i],width2[i],s13,sPip1,sPim,rRes2,pro1);
374
375 for(int a=0; a<4; a++){
376 temp_PDF += G[a][a]*t1_24[a]*t1_13[a];
377 }
378
379 B[1] = barrier(1,s24,sPip2,sPi0,rRes2,mass2[i]);
380 B[2] = barrier(1,s13,sPip1,sPim,rRes2,mass2[i]);
381 tmp2 = B[1]*B[2]*temp_PDF;
382 amp_tmp2[0] = tmp2*pro0[0]*pro1[0];
383 amp_tmp2[1] = tmp2*pro0[1]*pro1[1];
384 }
385
386 if(i==2){
387 amp_tmp1[0]=0;
388 amp_tmp1[1]=0;
389 amp_tmp2[0]=0;
390 amp_tmp2[1]=0;
391
392 temp_PDF=0;
393 propagatorRBW(mass1sq,mass1[i],width1[i],s134,s14,sPim,rRes1,1,pro1);
394 propagatorGS(mass2sq,mass2[i],width2[i],s14,sPip1,sPi0,rRes2,pro0);
395
396 temp_PDF=Sf3;
397
398 B[0] = barrier(1,sD,s134,sPip2,rD2,1.9683);
399 B[1] = barrier(1,s134,s14,sPim,rRes1,mass1[i]);
400 B[2] = barrier(1,s14,sPip1,sPi0,rRes2,mass2[i]);
401 tmp1 = B[0]*B[1]*B[2]*temp_PDF;
402 amp_tmp1[0] += tmp1*pro0[0]*pro1[0];
403 amp_tmp1[1] += tmp1*pro0[1]*pro1[1];
404
405 temp_PDF=0;
406 propagatorRBW(mass1sq,mass1[i],width1[i],s234,s24,sPim,rRes1,1,pro1);
407 propagatorGS(mass2sq,mass2[i],width2[i],s24,sPip2,sPi0,rRes2,pro0);
408
409 temp_PDF=Sf4;
410
411 B[0] = barrier(1,sD,s234,sPip1,rD2,1.9683);
412 B[1] = barrier(1,s234,s24,sPim,rRes1,mass1[i]);
413 B[2] = barrier(1,s24,sPip2,sPi0,rRes2,mass2[i]);
414 tmp2 = B[0]*B[1]*B[2]*temp_PDF;
415 amp_tmp2[0] += tmp2*pro0[0]*pro1[0];
416 amp_tmp2[1] += tmp2*pro0[1]*pro1[1];
417
418 temp_PDF=0;
419 propagatorRBW(mass1sq,mass1[i],width1[i],s134,s14,sPim,rRes1,1,pro1);
420 propagatorGS(mass2sq,mass2[i],width2[i],s13,sPip1,sPim,rRes2,pro0);
421
422 temp_PDF=Sf5;
423
424 B[0] = barrier(1,sD,s134,sPip2,rD2,1.9683);
425 B[1] = barrier(1,s134,s13,sPi0,rRes1,mass1[i]);
426 B[2] = barrier(1,s13,sPip1,sPim,rRes2,mass2[i]);
427 tmp1 = B[0]*B[1]*B[2]*temp_PDF;
428 amp_tmp1[0] -= tmp1*pro0[0]*pro1[0];
429 amp_tmp1[1] -= tmp1*pro0[1]*pro1[1];
430
431 temp_PDF=0;
432 propagatorRBW(mass1sq,mass1[i],width1[i],s234,s24,sPim,rRes1,1,pro1);
433 propagatorGS(mass2sq,mass2[i],width2[i],s23,sPip2,sPim,rRes2,pro0);
434
435 temp_PDF=Sf6;
436
437 B[0] = barrier(1,sD,s234,sPip1,rD2,1.9683);
438 B[1] = barrier(1,s234,s23,sPi0,rRes1,mass1[i]);
439 B[2] = barrier(1,s23,sPip2,sPim,rRes2,mass2[i]);
440 tmp2 = B[0]*B[1]*B[2]*temp_PDF;
441 amp_tmp2[0] -= tmp2*pro0[0]*pro1[0];
442 amp_tmp2[1] -= tmp2*pro0[1]*pro1[1];
443
444 temp_PDF=0;
445 propagatorRBW(mass1sq,mass1[i],width1[i],s134,s34,sPip1,rRes1,1,pro1);
446 propagatorGS(mass2sq,mass2[i],width2[i],s34,sPim,sPi0,rRes2,pro0);
447
448 temp_PDF=Sf7;
449
450 B[0] = barrier(1,sD,s134,sPip2,rD2,1.9683);
451 B[1] = barrier(1,s134,s34,sPip1,rRes1,mass1[i]);
452 B[2] = barrier(1,s34,sPim,sPi0,rRes2,mass2[i]);
453 tmp1 = B[0]*B[1]*B[2]*temp_PDF;
454 amp_tmp1[0] -= tmp1*pro0[0]*pro1[0];
455 amp_tmp1[1] -= tmp1*pro0[1]*pro1[1];
456
457 temp_PDF=0;
458 propagatorRBW(mass1sq,mass1[i],width1[i],s234,s34,sPip2,rRes1,1,pro1);
459 propagatorGS(mass2sq,mass2[i],width2[i],s34,sPim,sPi0,rRes2,pro0);
460
461 temp_PDF=Sf8;
462
463 B[0] = barrier(1,sD,s234,sPip1,rD2,1.9683);
464 B[1] = barrier(1,s234,s34,sPip2,rRes1,mass1[i]);
465 B[2] = barrier(1,s34,sPim,sPi0,rRes2,mass2[i]);
466 tmp2 = B[0]*B[1]*B[2]*temp_PDF;
467 amp_tmp2[0] -= tmp2*pro0[0]*pro1[0];
468 amp_tmp2[1] -= tmp2*pro0[1]*pro1[1];
469 }
470
471 if(i==3){
472 amp_tmp1[0]=0;
473 amp_tmp1[1]=0;
474 amp_tmp2[0]=0;
475 amp_tmp2[1]=0;
476
477 temp_PDF=0;
478 propagatorRBW(mass1sq,mass1[i],width1[i],s134,s14,sPim,rRes1,1,pro1);
479 propagatorGS(mass2sq,mass2[i],width2[i],s14,sPip1,sPi0,rRes2,pro0);
480
481 temp_PDF=Sf3;
482
483 B[0] = barrier(1,sD,s134,sPip2,rD2,1.9683);
484 B[1] = barrier(1,s134,s14,sPim,rRes1,mass1[i]);
485 B[2] = barrier(1,s14,sPip1,sPi0,rRes2,mass2[i]);
486 tmp1 = B[0]*B[1]*B[2]*temp_PDF;
487 amp_tmp1[0] += tmp1*pro0[0]*pro1[0];
488 amp_tmp1[1] += tmp1*pro0[1]*pro1[1];
489
490 temp_PDF=0;
491 propagatorRBW(mass1sq,mass1[i],width1[i],s234,s24,sPim,rRes1,1,pro1);
492 propagatorGS(mass2sq,mass2[i],width2[i],s24,sPip2,sPi0,rRes2,pro0);
493
494 temp_PDF=Sf4;
495
496 B[0] = barrier(1,sD,s234,sPip1,rD2,1.9683);
497 B[1] = barrier(1,s234,s24,sPim,rRes1,mass1[i]);
498 B[2] = barrier(1,s24,sPip2,sPi0,rRes2,mass2[i]);
499 tmp2 = B[0]*B[1]*B[2]*temp_PDF;
500 amp_tmp2[0] += tmp2*pro0[0]*pro1[0];
501 amp_tmp2[1] += tmp2*pro0[1]*pro1[1];
502
503 temp_PDF=0;
504 propagatorRBW(mass1sq,mass1[i],width1[i],s134,s14,sPim,rRes1,1,pro1);
505 propagatorGS(mass2sq,mass2[i],width2[i],s13,sPip1,sPim,rRes2,pro0);
506
507 temp_PDF=Sf5;
508
509 B[0] = barrier(1,sD,s134,sPip2,rD2,1.9683);
510 B[1] = barrier(1,s134,s13,sPi0,rRes1,mass1[i]);
511 B[2] = barrier(1,s13,sPip1,sPim,rRes2,mass2[i]);
512 tmp1 = B[0]*B[1]*B[2]*temp_PDF;
513 amp_tmp1[0] -= tmp1*pro0[0]*pro1[0];
514 amp_tmp1[1] -= tmp1*pro0[1]*pro1[1];
515
516 temp_PDF=0;
517 propagatorRBW(mass1sq,mass1[i],width1[i],s234,s24,sPim,rRes1,1,pro1);
518 propagatorGS(mass2sq,mass2[i],width2[i],s23,sPip2,sPim,rRes2,pro0);
519
520 temp_PDF=Sf6;
521
522 B[0] = barrier(1,sD,s234,sPip1,rD2,1.9683);
523 B[1] = barrier(1,s234,s23,sPi0,rRes1,mass1[i]);
524 B[2] = barrier(1,s23,sPip2,sPim,rRes2,mass2[i]);
525 tmp2 = B[0]*B[1]*B[2]*temp_PDF;
526 amp_tmp2[0] -= tmp2*pro0[0]*pro1[0];
527 amp_tmp2[1] -= tmp2*pro0[1]*pro1[1];
528
529 temp_PDF=0;
530 propagatorRBW(mass1sq,mass1[i],width1[i],s134,s34,sPip1,rRes1,1,pro1);
531 propagatorGS(mass2sq,mass2[i],width2[i],s34,sPim,sPi0,rRes2,pro0);
532
533 temp_PDF=Sf7;
534
535 B[0] = barrier(1,sD,s134,sPip2,rD2,1.9683);
536 B[1] = barrier(1,s134,s34,sPip1,rRes1,mass1[i]);
537 B[2] = barrier(1,s34,sPim,sPi0,rRes2,mass2[i]);
538 tmp1 = B[0]*B[1]*B[2]*temp_PDF;
539 amp_tmp1[0] -= tmp1*pro0[0]*pro1[0];
540 amp_tmp1[1] -= tmp1*pro0[1]*pro1[1];
541
542 temp_PDF=0;
543 propagatorRBW(mass1sq,mass1[i],width1[i],s234,s34,sPip2,rRes1,1,pro1);
544 propagatorGS(mass2sq,mass2[i],width2[i],s34,sPim,sPi0,rRes2,pro0);
545
546 temp_PDF=Sf8;
547
548 B[0] = barrier(1,sD,s234,sPip1,rD2,1.9683);
549 B[1] = barrier(1,s234,s34,sPip2,rRes1,mass1[i]);
550 B[2] = barrier(1,s34,sPim,sPi0,rRes2,mass2[i]);
551 tmp2 = B[0]*B[1]*B[2]*temp_PDF;
552 amp_tmp2[0] -= tmp2*pro0[0]*pro1[0];
553 amp_tmp2[1] -= tmp2*pro0[1]*pro1[1];
554 }
555
556 if(i==4){
557 temp_PDF=0;
558 //propagatorRBW(mass1sq,mass1[i],width1[i],s123,s13,sPip2,rRes1,0,pro1);
559 propagatorMW(1.230,s123,1,pro1);
560 propagatorGS(mass2sq,mass2[i],width2[i],s13,sPip1,sPim,rRes2,pro0);
561
562 for(int a=0; a<4; a++)
563 for(int b=0;b<4;b++)
564 temp_PDF += G[a][a]*G[b][b]*t1_123_4[a]*(-G[a][b]+p123[a]*p123[b]/s123)*t1_13[b];
565
566 B[0] = barrier(1,sD,s123,sPi0,rD2,1.9683);
567 B[1] = barrier(1,s13,sPip1,sPim,rRes2,mass2[i]);
568 tmp1 = B[0]*B[1]*temp_PDF;
569 amp_tmp1[0] = tmp1*pro0[0]*pro1[0];
570 amp_tmp1[1] = tmp1*pro0[1]*pro1[1];
571
572 temp_PDF=0;
573 //propagatorRBW(mass1sq,mass1[i],width1[i],s123,s23,sPip1,rRes1,0,pro1);
574 propagatorMW(1.230,s123,1,pro1);
575 propagatorGS(mass2sq,mass2[i],width2[i],s23,sPip2,sPim,rRes2,pro0);
576
577 for(int a=0; a<4; a++)
578 for(int b=0;b<4;b++)
579 temp_PDF += G[a][a]*G[b][b]*t1_123_4[a]*(-G[a][b]+p123[a]*p123[b]/s123)*t1_23[b];
580
581 B[0] = barrier(1,sD,s123,sPi0,rD2,1.9683);
582 B[1] = barrier(1,s23,sPip2,sPim,rRes2,mass2[i]);
583 tmp2 = B[0]*B[1]*temp_PDF;
584 amp_tmp2[0] = tmp2*pro0[0]*pro1[0];
585 amp_tmp2[1] = tmp2*pro0[1]*pro1[1];
586 }
587
588 if(i==5){
589 amp_tmp1[0]=0;
590 amp_tmp1[1]=0;
591 amp_tmp2[0]=0;
592 amp_tmp2[1]=0;
593
594 temp_PDF=0;
595 //propagatorRBW(mass1sq,mass1[i],width1[i],s134,s14,sPim,rRes1,0,pro1);
596 propagatorMW(1.230,s134,0,pro1);
597 propagatorGS(mass2sq,mass2[i],width2[i],s14,sPip1,sPi0,rRes2,pro0);
598
599 for(int a=0; a<4; a++)
600 for(int b=0;b<4;b++)
601 temp_PDF += G[a][a]*G[b][b]*t1_134_2[a]*(-G[a][b]+p134[a]*p134[b]/s134)*t1_14[b];
602
603 B[0] = barrier(1,sD,s134,sPip2,rD2,1.9683);
604 B[1] = barrier(1,s14,sPip1,sPi0,rRes2,mass2[i]);
605 tmp1 = B[0]*B[1]*temp_PDF;
606 amp_tmp1[0] += tmp1*pro0[0]*pro1[0]*1.;
607 amp_tmp1[1] += tmp1*pro0[1]*pro1[1]*1.;
608
609 temp_PDF=0;
610 //propagatorRBW(mass1sq,mass1[i],width1[i],s234,s24,sPim,rRes1,0,pro1);
611 propagatorMW(1.230,s234,0,pro1);
612 propagatorGS(mass2sq,mass2[i],width2[i],s24,sPip2,sPi0,rRes2,pro0);
613
614 for(int a=0; a<4; a++)
615 for(int b=0;b<4;b++)
616 temp_PDF += G[a][a]*G[b][b]*t1_234_1[a]*(-G[a][b]+p234[a]*p234[b]/s234)*t1_24[b];
617
618 B[0] = barrier(1,sD,s234,sPip1,rD2,1.9683);
619 B[1] = barrier(1,s24,sPip2,sPi0,rRes2,mass2[i]);
620 tmp2 = B[0]*B[1]*temp_PDF;
621 amp_tmp2[0] += tmp2*pro0[0]*pro1[0]*1.;
622 amp_tmp2[1] += tmp2*pro0[1]*pro1[1]*1.;
623
624 // a10 -> rho0 pi0 violation of C-Parity
625 //temp_PDF=0;
626 //propagatorRBW(mass1sq,mass1[i],width1[i],s134,s14,sPim,rRes1,0,pro1);
627 //propagatorGS(mass2sq,mass2[i],width2[i],s13,sPip1,sPim,rRes2,pro0);
628 //
629 //for(int a=0; a<4; a++)
630 // for(int b=0;b<4;b++)
631 // temp_PDF += G[a][a]*G[b][b]*t1_134_2[a]*(-G[a][b]+p134[a]*p134[b]/s134)*t1_13[b];
632 //
633 //B[0] = barrier(1,sD,s134,sPip2,rD2,1.9683);
634 //B[1] = barrier(1,s13,sPip1,sPim,rRes2,mass2[i]);
635 //tmp1 = B[0]*B[1]*temp_PDF;
636 //amp_tmp1[0] += tmp1*pro0[0]*pro1[0];
637 //amp_tmp1[1] += tmp1*pro0[1]*pro1[1];
638 //
639 //temp_PDF=0;
640 //propagatorRBW(mass1sq,mass1[i],width1[i],s234,s24,sPim,rRes1,0,pro1);
641 //propagatorGS(mass2sq,mass2[i],width2[i],s23,sPip2,sPim,rRes2,pro0);
642 //
643 //for(int a=0; a<4; a++)
644 // for(int b=0;b<4;b++)
645 // temp_PDF += G[a][a]*G[b][b]*t1_234_1[a]*(-G[a][b]+p234[a]*p234[b]/s234)*t1_23[b];
646 //
647 //B[0] = barrier(1,sD,s234,sPip1,rD2,1.9683);
648 //B[1] = barrier(1,s23,sPip2,sPim,rRes2,mass2[i]);
649 //tmp2 = B[0]*B[1]*temp_PDF;
650 //amp_tmp2[0] += tmp2*pro0[0]*pro1[0];
651 //amp_tmp2[1] += tmp2*pro0[1]*pro1[1];
652
653 temp_PDF=0;
654 //propagatorRBW(mass1sq,mass1[i],width1[i],s134,s34,sPip1,rRes1,0,pro1);
655 propagatorMW(1.230,s134,0,pro1);
656 propagatorGS(mass2sq,mass2[i],width2[i],s34,sPim,sPi0,rRes2,pro0);
657
658 for(int a=0; a<4; a++)
659 for(int b=0;b<4;b++)
660 temp_PDF += G[a][a]*G[b][b]*t1_134_2[a]*(-G[a][b]+p134[a]*p134[b]/s134)*t1_34[b];
661
662 B[0] = barrier(1,sD,s134,sPip2,rD2,1.9683);
663 B[1] = barrier(1,s34,sPim,sPi0,rRes2,mass2[i]);
664 tmp1 = B[0]*B[1]*temp_PDF;
665 amp_tmp1[0] += tmp1*pro0[0]*pro1[0]*-1.;
666 amp_tmp1[1] += tmp1*pro0[1]*pro1[1]*-1.;
667
668 temp_PDF=0;
669 //propagatorRBW(mass1sq,mass1[i],width1[i],s234,s34,sPip2,rRes1,0,pro1);
670 propagatorMW(1.230,s234,0,pro1);
671 propagatorGS(mass2sq,mass2[i],width2[i],s34,sPim,sPi0,rRes2,pro0);
672
673 for(int a=0; a<4; a++)
674 for(int b=0;b<4;b++)
675 temp_PDF += G[a][a]*G[b][b]*t1_234_1[a]*(-G[a][b]+p234[a]*p234[b]/s234)*t1_34[b];
676
677 B[0] = barrier(1,sD,s234,sPip1,rD2,1.9683);
678 B[1] = barrier(1,s34,sPim,sPi0,rRes2,mass2[i]);
679 tmp2 = B[0]*B[1]*temp_PDF;
680 amp_tmp2[0] += tmp2*pro0[0]*pro1[0]*-1.;
681 amp_tmp2[1] += tmp2*pro0[1]*pro1[1]*-1.;
682 }
683
684 if(i==6){
685 temp_PDF=0;
686 propagatorRBW(mass1sq,mass1[i],width1[i],s23,sPip2,sPim,rRes1,0,pro0);
687 propagatorGS(mass2sq,mass2[i],width2[i],s14,sPip1,sPi0,rRes2,pro1);
688 Com_Multi(pro0,pro1,pro);
689
690 for(int a=0; a<4; a++){
691 temp_PDF += G[a][a]*t1_14_23[a]*t1_14[a];
692 }
693
694 B[1] = barrier(1,s14,sPip1,sPi0,rRes2,mass2[i]);
695 B[2] = barrier(1,sD,s23,s14,rD2,1.9683);
696 tmp1 = B[1]*B[2]*temp_PDF;
697 amp_tmp1[0] = tmp1*pro[0];
698 amp_tmp1[1] = tmp1*pro[1];
699
700 temp_PDF=0;
701 propagatorRBW(mass1sq,mass1[i],width1[i],s13,sPip1,sPim,rRes1,0,pro0);
702 propagatorGS(mass2sq,mass2[i],width2[i],s24,sPip2,sPi0,rRes2,pro1);
703 Com_Multi(pro0,pro1,pro);
704
705 for(int a=0; a<4; a++){
706 temp_PDF += G[a][a]*t1_13_24[a]*t1_24[a];
707 }
708
709 B[1] = barrier(1,s24,sPip2,sPi0,rRes2,mass2[i]);
710 B[2] = barrier(1,sD,s13,s24,rD2,1.9683);
711 tmp2 = B[1]*B[2]*temp_PDF;
712 amp_tmp2[0] = tmp2*pro[0];
713 amp_tmp2[1] = tmp2*pro[1];
714 }
715
716 if(i==7){
717 temp_PDF=0;
718 propagatorRBW(mass1sq,mass1[i],width1[i],s23,sPip2,sPim,rRes1,2,pro0);
719 propagatorGS(mass2sq,mass2[i],width2[i],s14,sPip1,sPi0,rRes2,pro1);
720 Com_Multi(pro0,pro1,pro);
721
722 for(int a=0; a<4; a++){
723 for(int b=0; b<4; b++){
724 temp_PDF += G[a][a]*G[b][b]*t1_14_23[a]*t1_14[b]*t2_23[a][b];
725 }
726 }
727
728 B[0] = barrier(2,s23,sPip2,sPim,rRes1,mass1[i]);
729 B[1] = barrier(1,s14,sPip1,sPi0,rRes2,mass2[i]);
730 B[2] = barrier(1,sD,s23,s14,rD2,1.9683);
731 tmp1 = B[0]*B[1]*B[2]*temp_PDF;
732 amp_tmp1[0] = tmp1*pro[0];
733 amp_tmp1[1] = tmp1*pro[1];
734
735 temp_PDF=0;
736 propagatorRBW(mass1sq,mass1[i],width1[i],s13,sPip1,sPim,rRes1,2,pro0);
737 propagatorGS(mass2sq,mass2[i],width2[i],s24,sPip2,sPi0,rRes2,pro1);
738 Com_Multi(pro0,pro1,pro);
739
740 for(int a=0; a<4; a++){
741 for(int b=0; b<4; b++){
742 temp_PDF += G[a][a]*G[b][b]*t1_13_24[a]*t1_24[b]*t2_13[a][b];
743 }
744 }
745
746 B[0] = barrier(2,s13,sPip1,sPim,rRes1,mass1[i]);
747 B[1] = barrier(1,s24,sPip2,sPi0,rRes2,mass2[i]);
748 B[2] = barrier(1,sD,s13,s24,rD2,1.9683);
749 tmp2 = B[0]*B[1]*B[2]*temp_PDF;
750 amp_tmp2[0] = tmp2*pro[0];
751 amp_tmp2[1] = tmp2*pro[1];
752 }
753
754 if(i==8){
755 temp_PDF=0;
756 propagatorRBW(mass1sq,mass1[i],width1[i],s14,sPip1,sPi0,rRes1,1,pro0);
757 propagatorGS(mass2sq,mass2[i],width2[i],s23,sPip2,sPim,rRes2,pro1);
758
759 for(int a=0; a<4; a++){
760 temp_PDF += G[a][a]*t1_14[a]*t1_23[a];
761 }
762
763 B[1] = barrier(1,s14,sPip1,sPi0,rRes2,mass2[i]);
764 B[2] = barrier(1,s23,sPip2,sPim,rRes2,mass2[i]);
765 tmp1 = B[1]*B[2]*temp_PDF;
766 amp_tmp1[0] = tmp1*pro0[0]*pro1[0];
767 amp_tmp1[1] = tmp1*pro0[1]*pro1[1];
768
769 temp_PDF=0;
770 propagatorRBW(mass1sq,mass1[i],width1[i],s24,sPip2,sPi0,rRes1,1,pro0);
771 propagatorGS(mass2sq,mass2[i],width2[i],s13,sPip1,sPim,rRes2,pro1);
772
773 for(int a=0; a<4; a++){
774 temp_PDF += G[a][a]*t1_24[a]*t1_13[a];
775 }
776
777 B[1] = barrier(1,s24,sPip2,sPi0,rRes2,mass2[i]);
778 B[2] = barrier(1,s13,sPip1,sPim,rRes2,mass2[i]);
779 tmp2 = B[1]*B[2]*temp_PDF;
780 amp_tmp2[0] = tmp2*pro0[0]*pro1[0];
781 amp_tmp2[1] = tmp2*pro0[1]*pro1[1];
782 }
783
784 if(i==9){
785 temp_PDF=0;
786 propagatorGS(mass1sq,mass1[i],width1[i],s14,sPip1,sPi0,rRes1,pro0);
787 propagatorRBW(mass2sq,mass2[i],width2[i],s23,sPip2,sPim,rRes2,1,pro1);
788
789 temp_PDF=Sf1;
790
791 B[0] = barrier(1,sD,s14,s23,rD2,1.9683);
792 B[1] = barrier(1,s14,sPip1,sPi0,rRes2,mass2[i]);
793 B[2] = barrier(1,s23,sPip2,sPim,rRes2,mass2[i]);
794 tmp1 = B[1]*B[2]*B[0]*temp_PDF;
795 amp_tmp1[0] = tmp1*pro0[0]*pro1[0];
796 amp_tmp1[1] = tmp1*pro0[1]*pro1[1];
797
798 temp_PDF=0;
799 propagatorGS(mass1sq,mass1[i],width1[i],s24,sPip2,sPi0,rRes1,pro0);
800 propagatorRBW(mass2sq,mass2[i],width2[i],s13,sPip1,sPim,rRes2,1,pro1);
801
802 temp_PDF=Sf2;
803
804 B[0] = barrier(1,sD,s24,s13,rD2,1.9683);
805 B[1] = barrier(1,s24,sPip2,sPi0,rRes2,mass2[i]);
806 B[2] = barrier(1,s13,sPip1,sPim,rRes2,mass2[i]);
807 tmp2 = B[1]*B[2]*B[0]*temp_PDF;
808 amp_tmp2[0] = tmp2*pro0[0]*pro1[0];
809 amp_tmp2[1] = tmp2*pro0[1]*pro1[1];
810 }
811
812 if(i==10){
813 amp_tmp1[0]=0;
814 amp_tmp1[1]=0;
815 amp_tmp2[0]=0;
816 amp_tmp2[1]=0;
817
818 temp_PDF=0;
819 propagatorRBW(mass1sq,mass1[i],width1[i],s134,s14,sPim,rRes1,1,pro1);
820 propagatorGS(mass2sq,mass2[i],width2[i],s14,sPip1,sPi0,rRes2,pro0);
821
822 for(int a=0; a<4; a++)
823 temp_PDF += G[a][a]*t1_134_2[a]*t1_14[a];
824 //temp_PDF += G[a][a]*G[b][b]*t1_134_2[a]*(-G[a][b]+p134[a]*p134[b]/s134)*t1_14[b];
825
826 B[0] = barrier(1,s134,s14,sPim,rRes1,mass1[i]);
827 B[1] = barrier(1,s14,sPip1,sPi0,rRes2,mass2[i]);
828 tmp1 = B[0]*B[1]*temp_PDF;
829 amp_tmp1[0] += tmp1*pro0[0]*pro1[0]*1.;
830 amp_tmp1[1] += tmp1*pro0[1]*pro1[1]*1.;
831
832 temp_PDF=0;
833 propagatorRBW(mass1sq,mass1[i],width1[i],s234,s24,sPim,rRes1,1,pro1);
834 propagatorGS(mass2sq,mass2[i],width2[i],s24,sPip2,sPi0,rRes2,pro0);
835
836 for(int a=0; a<4; a++)
837 temp_PDF += G[a][a]*t1_234_1[a]*t1_24[a];
838 //temp_PDF += G[a][a]*G[b][b]*t1_234_1[a]*(-G[a][b]+p234[a]*p234[b]/s234)*t1_24[b];
839
840 B[0] = barrier(1,s234,s24,sPim,rRes1,mass1[i]);
841 B[1] = barrier(1,s24,sPip2,sPi0,rRes2,mass2[i]);
842 tmp2 = B[0]*B[1]*temp_PDF;
843 amp_tmp2[0] += tmp2*pro0[0]*pro1[0]*1.;
844 amp_tmp2[1] += tmp2*pro0[1]*pro1[1]*1.;
845
846 // pi1300 -> rho0 pi0 violation of C-Parity
847 //temp_PDF=0;
848 //propagatorRBW(mass1sq,mass1[i],width1[i],s134,s14,sPim,rRes1,0,pro1);
849 //propagatorGS(mass2sq,mass2[i],width2[i],s13,sPip1,sPim,rRes2,pro0);
850 //
851 //for(int a=0; a<4; a++)
852 // for(int b=0;b<4;b++)
853 // temp_PDF += G[a][a]*G[b][b]*t1_134_2[a]*(-G[a][b]+p134[a]*p134[b]/s134)*t1_13[b];
854 //
855 //B[0] = barrier(1,sD,s134,sPip2,rD2,1.9683);
856 //B[1] = barrier(1,s13,sPip1,sPim,rRes2,mass2[i]);
857 //tmp1 = B[0]*B[1]*temp_PDF;
858 //amp_tmp1[0] += tmp1*pro0[0]*pro1[0];
859 //amp_tmp1[1] += tmp1*pro0[1]*pro1[1];
860 //
861 //temp_PDF=0;
862 //propagatorRBW(mass1sq,mass1[i],width1[i],s234,s24,sPim,rRes1,0,pro1);
863 //propagatorGS(mass2sq,mass2[i],width2[i],s23,sPip2,sPim,rRes2,pro0);
864 //
865 //for(int a=0; a<4; a++)
866 // for(int b=0;b<4;b++)
867 // temp_PDF += G[a][a]*G[b][b]*t1_234_1[a]*(-G[a][b]+p234[a]*p234[b]/s234)*t1_23[b];
868 //
869 //B[0] = barrier(1,sD,s234,sPip1,rD2,1.9683);
870 //B[1] = barrier(1,s23,sPip2,sPim,rRes2,mass2[i]);
871 //tmp2 = B[0]*B[1]*temp_PDF;
872 //amp_tmp2[0] += tmp2*pro0[0]*pro1[0];
873 //amp_tmp2[1] += tmp2*pro0[1]*pro1[1];
874
875 temp_PDF=0;
876 propagatorRBW(mass1sq,mass1[i],width1[i],s134,s34,sPip1,rRes1,1,pro1);
877 propagatorGS(mass2sq,mass2[i],width2[i],s34,sPim,sPi0,rRes2,pro0);
878
879 for(int a=0; a<4; a++)
880 temp_PDF += G[a][a]*t1_134_2[a]*t1_34[a];
881 //temp_PDF += G[a][a]*G[b][b]*t1_134_2[a]*(-G[a][b]+p134[a]*p134[b]/s134)*t1_34[b];
882
883 B[0] = barrier(1,s134,s34,sPip1,rRes1,mass1[i]);
884 B[1] = barrier(1,s34,sPim,sPi0,rRes2,mass2[i]);
885 tmp1 = B[0]*B[1]*temp_PDF;
886 amp_tmp1[0] += tmp1*pro0[0]*pro1[0]*-1.;
887 amp_tmp1[1] += tmp1*pro0[1]*pro1[1]*-1.;
888
889 temp_PDF=0;
890 propagatorRBW(mass1sq,mass1[i],width1[i],s234,s34,sPip2,rRes1,1,pro1);
891 propagatorGS(mass2sq,mass2[i],width2[i],s34,sPim,sPi0,rRes2,pro0);
892
893 for(int a=0; a<4; a++)
894 temp_PDF += G[a][a]*t1_234_1[a]*t1_34[a];
895 //temp_PDF += G[a][a]*G[b][b]*t1_234_1[a]*(-G[a][b]+p234[a]*p234[b]/s234)*t1_34[b];
896
897 B[0] = barrier(1,s234,s34,sPip2,rRes1,mass1[i]);
898 B[1] = barrier(1,s34,sPim,sPi0,rRes2,mass2[i]);
899 tmp2 = B[0]*B[1]*temp_PDF;
900 amp_tmp2[0] += tmp2*pro0[0]*pro1[0]*-1.;
901 amp_tmp2[1] += tmp2*pro0[1]*pro1[1]*-1.;
902 }
903
904 amp_tmp[0] = amp_tmp1[0]+amp_tmp2[0];
905 amp_tmp[1] = amp_tmp1[1]+amp_tmp2[1];
906 //printf("amp_tmp = %f , %f\n", amp_tmp[0], amp_tmp[1]);
907 //printf("cof = %f , %f\n", cof[0], cof[1]);
908 Com_Multi(amp_tmp,cof,amp_PDF);
909 PDF[0] += amp_PDF[0];
910 PDF[1] += amp_PDF[1];
911 //printf("PDF = %f , %f\n", PDF[0], PDF[1]);
912 }
913
914 double value = PDF[0]*PDF[0] + PDF[1]*PDF[1];
915 //value = value/Gen_eva[id];
916 value = value;
917 if(value <=0) value = 1e-20;
918 //if(value > 0) printf("max prob = %f\n",value);
919
920 setProb(value);
921
922 return ;
923
924}
double sin(const BesAngle a)
Definition BesAngle.h:210
double cos(const BesAngle a)
Definition BesAngle.h:213
EvtId getParentId()
EvtId * getDaugs()
void setProb(double prob)
static EvtId getId(const std::string &name)
Definition EvtPDL.cc:287
const EvtVector4R & getP4() const
EvtParticle * getDaug(int i)
double initializePhaseSpace(int numdaughter, EvtId *daughters, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)
double get(int i) const
double double double double * s12
Definition qcdloop1.h:77
double double double double double * s23
Definition qcdloop1.h:77
const double b
Definition slope.cxx:9

◆ getName()

void EvtDsToPipPipPimPi0::getName ( std::string & name)
virtual

Implements EvtDecayBase.

Definition at line 31 of file EvtDsToPipPipPimPi0.cc.

31 {
32
33 model_name="DsToPipPipPimPi0";
34
35}

◆ init()

void EvtDsToPipPipPimPi0::init ( )
virtual

Reimplemented from EvtDecayBase.

Definition at line 44 of file EvtDsToPipPipPimPi0.cc.

44 {
45
46 //std::cout << "EvtDsToPipPipPimPi0 (Oct 17, 2022) ==> Initialization !" << std::endl;
47
48 // check that there are 0 arguments
49 checkNArg(0);
50 // check that there are 4 daughters
51 checkNDaug(4);
52 // check that parent and daughters are correct
53 if(getParentId()==EvtPDL::getId("D_s+")){
54 if(getDaug(0)!=EvtPDL::getId("pi+")){
55 report(ERROR,"EvtGen") << "In EvtDsToPipPipPimPi0, Decay Chain is Wrong!"<<endl;
56 ::abort();
57 }
58 if(getDaug(1)!=EvtPDL::getId("pi+")){
59 report(ERROR,"EvtGen") << "In EvtDsToPipPipPimPi0, Decay Chain is Wrong!"<<endl;
60 ::abort();
61 }
62 if(getDaug(2)!=EvtPDL::getId("pi-")){
63 report(ERROR,"EvtGen") << "In EvtDsToPipPipPimPi0, Decay Chain is Wrong!"<<endl;
64 ::abort();
65 }
66 if(getDaug(3)!=EvtPDL::getId("pi0")){
67 report(ERROR,"EvtGen") << "In EvtDsToPipPipPimPi0, Decay Chain is Wrong!"<<endl;
68 ::abort();
69 }
70 }else if(getParentId()==EvtPDL::getId("D_s-")){
71 if(getDaug(0)!=EvtPDL::getId("pi-")){
72 report(ERROR,"EvtGen") << "In EvtDsToPipPipPimPi0, Decay Chain is Wrong!"<<endl;
73 ::abort();
74 }
75 if(getDaug(1)!=EvtPDL::getId("pi-")){
76 report(ERROR,"EvtGen") << "In EvtDsToPipPipPimPi0, Decay Chain is Wrong!"<<endl;
77 ::abort();
78 }
79 if(getDaug(2)!=EvtPDL::getId("pi+")){
80 report(ERROR,"EvtGen") << "In EvtDsToPipPipPimPi0, Decay Chain is Wrong!"<<endl;
81 ::abort();
82 }
83 if(getDaug(3)!=EvtPDL::getId("pi0")){
84 report(ERROR,"EvtGen") << "In EvtDsToPipPipPimPi0, Decay Chain is Wrong!"<<endl;
85 ::abort();
86 }
87 }else{
88 report(ERROR,"EvtGen") << "In EvtDsToPipPipPimPi0, Mother is Wrong!"<<endl;
89 ::abort();
90 }
91
92}
ostream & report(Severity severity, const char *facility)
Definition EvtReport.cc:36
@ ERROR
Definition EvtReport.hh:49
void checkNDaug(int d1, int d2=-1)
void checkNArg(int a1, int a2=-1, int a3=-1, int a4=-1)
EvtId getDaug(int i)

◆ initProbMax()

void EvtDsToPipPipPimPi0::initProbMax ( )
virtual

Reimplemented from EvtDecayBase.

Definition at line 95 of file EvtDsToPipPipPimPi0.cc.

95 {
96
97 setProbMax(10000.0);
98
99}
void setProbMax(double prbmx)

The documentation for this class was generated from the following files: