BOSS 6.6.4.p01
BESIII Offline Software System
Loading...
Searching...
No Matches
EvtISGW2.cc
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2//
3// Environment:
4// This software is part of the EvtGen package developed jointly
5// for the BaBar and CLEO collaborations. If you use all or part
6// of it, please give an appropriate acknowledgement.
7//
8// Copyright Information: See EvtGen/COPYRIGHT
9// Copyright (C) 1998 Caltech, UCSB
10//
11// Module: EvtISGW2.cc
12//
13// Description: Routine to implement semileptonic decays according
14// to the model ISGW2
15//
16// Modification history:
17//
18// DJL/RYD September 25, 1996 Module created
19//
20//------------------------------------------------------------------------
21//
23#include <stdlib.h>
26#include "EvtGenBase/EvtPDL.hh"
31#include <string>
36
38 isgw2ffmodel(0)
39 ,calcamp(0)
40{}
41
42
44 delete isgw2ffmodel;
45 isgw2ffmodel=0;
46 delete calcamp;
47 calcamp=0;
48}
49
50void EvtISGW2::getName(std::string& model_name){
51
52 model_name="ISGW2";
53
54}
55
56
57
59
60 return new EvtISGW2;
61
62}
63
65
67
68 calcamp->CalcAmp(p,_amp2,isgw2ffmodel);
69
70}
71
73
74 //added by Lange Jan4,2000
75 static EvtId EM=EvtPDL::getId("e-");
76 static EvtId EP=EvtPDL::getId("e+");
77 static EvtId MUM=EvtPDL::getId("mu-");
78 static EvtId MUP=EvtPDL::getId("mu+");
79 static EvtId TAUM=EvtPDL::getId("tau-");
80 static EvtId TAUP=EvtPDL::getId("tau+");
81
82 static EvtId BP=EvtPDL::getId("B+");
83 static EvtId BM=EvtPDL::getId("B-");
84 static EvtId B0=EvtPDL::getId("B0");
85 static EvtId B0B=EvtPDL::getId("anti-B0");
86 static EvtId BS0=EvtPDL::getId("B_s0");
87 static EvtId BSB=EvtPDL::getId("anti-B_s0");
88 static EvtId BCP=EvtPDL::getId("B_c+");
89 static EvtId BCM=EvtPDL::getId("B_c-");
90
91 static EvtId DST0=EvtPDL::getId("D*0");
92 static EvtId DSTB=EvtPDL::getId("anti-D*0");
93 static EvtId DSTP=EvtPDL::getId("D*+");
94 static EvtId DSTM=EvtPDL::getId("D*-");
95 static EvtId D0=EvtPDL::getId("D0");
96 static EvtId D0B=EvtPDL::getId("anti-D0");
97 static EvtId DP=EvtPDL::getId("D+");
98 static EvtId DM=EvtPDL::getId("D-");
99
100 static EvtId D1P1P=EvtPDL::getId("D_1+");
101 static EvtId D1P1N=EvtPDL::getId("D_1-");
102 static EvtId D1P10=EvtPDL::getId("D_10");
103 static EvtId D1P1B=EvtPDL::getId("anti-D_10");
104
105 static EvtId D3P2P=EvtPDL::getId("D_2*+");
106 static EvtId D3P2N=EvtPDL::getId("D_2*-");
107 static EvtId D3P20=EvtPDL::getId("D_2*0");
108 static EvtId D3P2B=EvtPDL::getId("anti-D_2*0");
109
110 static EvtId D3P1P=EvtPDL::getId("D'_1+");
111 static EvtId D3P1N=EvtPDL::getId("D'_1-");
112 static EvtId D3P10=EvtPDL::getId("D'_10");
113 static EvtId D3P1B=EvtPDL::getId("anti-D'_10");
114
115 static EvtId D3P0P=EvtPDL::getId("D_0*+");
116 static EvtId D3P0N=EvtPDL::getId("D_0*-");
117 static EvtId D3P00=EvtPDL::getId("D_0*0");
118 static EvtId D3P0B=EvtPDL::getId("anti-D_0*0");
119
120 static EvtId D21S0P=EvtPDL::getId("D(2S)+");
121 static EvtId D21S0N=EvtPDL::getId("D(2S)-");
122 static EvtId D21S00=EvtPDL::getId("D(2S)0");
123 static EvtId D21S0B=EvtPDL::getId("anti-D(2S)0");
124
125 static EvtId D23S1P=EvtPDL::getId("D*(2S)+");
126 static EvtId D23S1N=EvtPDL::getId("D*(2S)-");
127 static EvtId D23S10=EvtPDL::getId("D*(2S)0");
128 static EvtId D23S1B=EvtPDL::getId("anti-D*(2S)0");
129
130 static EvtId RHO2S0=EvtPDL::getId("rho(2S)0");
131 static EvtId RHO2SP=EvtPDL::getId("rho(2S)+");
132 static EvtId RHO2SM=EvtPDL::getId("rho(2S)-");
133 static EvtId OMEG2S=EvtPDL::getId("omega(2S)");
134 static EvtId ETA2S=EvtPDL::getId("eta(2S)");
135
136 static EvtId PI2S0=EvtPDL::getId("pi(2S)0");
137 static EvtId PI2SP=EvtPDL::getId("pi(2S)+");
138 static EvtId PI2SM=EvtPDL::getId("pi(2S)-");
139
140 static EvtId PIP=EvtPDL::getId("pi+");
141 static EvtId PIM=EvtPDL::getId("pi-");
142 static EvtId PI0=EvtPDL::getId("pi0");
143
144 static EvtId RHOP=EvtPDL::getId("rho+");
145 static EvtId RHOM=EvtPDL::getId("rho-");
146 static EvtId RHO0=EvtPDL::getId("rho0");
147
148 static EvtId A2P=EvtPDL::getId("a_2+");
149 static EvtId A2M=EvtPDL::getId("a_2-");
150 static EvtId A20=EvtPDL::getId("a_20");
151
152 static EvtId A1P=EvtPDL::getId("a_1+");
153 static EvtId A1M=EvtPDL::getId("a_1-");
154 static EvtId A10=EvtPDL::getId("a_10");
155
156 static EvtId A0P=EvtPDL::getId("a_0+");
157 static EvtId A0M=EvtPDL::getId("a_0-");
158 static EvtId A00=EvtPDL::getId("a_00");
159
160 static EvtId B1P=EvtPDL::getId("b_1+");
161 static EvtId B1M=EvtPDL::getId("b_1-");
162 static EvtId B10=EvtPDL::getId("b_10");
163
164 static EvtId H1=EvtPDL::getId("h_1");
165 static EvtId H1PR=EvtPDL::getId("h'_1");
166
167 static EvtId F1=EvtPDL::getId("f_1");
168 static EvtId F1PR=EvtPDL::getId("f'_1");
169 static EvtId F0=EvtPDL::getId("f_0");
170 static EvtId F0PR=EvtPDL::getId("f'_0");
171 static EvtId F2=EvtPDL::getId("f_2");
172 static EvtId F2PR=EvtPDL::getId("f'_2");
173
174 static EvtId ETA=EvtPDL::getId("eta");
175 static EvtId ETAPR=EvtPDL::getId("eta'");
176 static EvtId OMEG=EvtPDL::getId("omega");
177
178 static EvtId KP=EvtPDL::getId("K+");
179 static EvtId KM=EvtPDL::getId("K-");
180 static EvtId K0=EvtPDL::getId("K0");
181 static EvtId KB=EvtPDL::getId("anti-K0");
182 static EvtId K0S=EvtPDL::getId("K_S0");
183 static EvtId K0L=EvtPDL::getId("K_L0");
184
185 static EvtId KSTP=EvtPDL::getId("K*+");
186 static EvtId KSTM=EvtPDL::getId("K*-");
187 static EvtId KST0=EvtPDL::getId("K*0");
188 static EvtId KSTB=EvtPDL::getId("anti-K*0");
189
190 static EvtId K1P=EvtPDL::getId("K_1+");
191 static EvtId K1M=EvtPDL::getId("K_1-");
192 static EvtId K10=EvtPDL::getId("K_10");
193 static EvtId K1B=EvtPDL::getId("anti-K_10");
194
195 static EvtId K1STP=EvtPDL::getId("K'_1+");
196 static EvtId K1STM=EvtPDL::getId("K'_1-");
197 static EvtId K1ST0=EvtPDL::getId("K'_10");
198 static EvtId K1STB=EvtPDL::getId("anti-K'_10");
199
200 static EvtId K2STP=EvtPDL::getId("K_2*+");
201 static EvtId K2STM=EvtPDL::getId("K_2*-");
202 static EvtId K2ST0=EvtPDL::getId("K_2*0");
203 static EvtId K2STB=EvtPDL::getId("anti-K_2*0");
204
205 static EvtId K0STP=EvtPDL::getId("K_0*+");
206 static EvtId K0STM=EvtPDL::getId("K_0*-");
207 static EvtId K0ST0=EvtPDL::getId("K_0*0");
208 static EvtId K0STB=EvtPDL::getId("anti-K_0*0");
209
210 static EvtId PHI=EvtPDL::getId("phi");
211 static EvtId DSP=EvtPDL::getId("D_s+");
212 static EvtId DSM=EvtPDL::getId("D_s-");
213
214 static EvtId DSSTP=EvtPDL::getId("D_s*+");
215 static EvtId DSSTM=EvtPDL::getId("D_s*-");
216 static EvtId DS1P=EvtPDL::getId("D_s1+");
217 static EvtId DS1M=EvtPDL::getId("D_s1-");
218 static EvtId DS0STP=EvtPDL::getId("D_s0*+");
219 static EvtId DS0STM=EvtPDL::getId("D_s0*-");
220 static EvtId DPS1P=EvtPDL::getId("D'_s1+");
221 static EvtId DPS1M=EvtPDL::getId("D'_s1-");
222 static EvtId DS2STP=EvtPDL::getId("D_s2*+");
223 static EvtId DS2STM=EvtPDL::getId("D_s2*-");
224
225EvtId parnum,mesnum,lnum;
226
227parnum = getParentId();
228mesnum = getDaug(0);
229lnum = getDaug(1);
230
231
232if ( parnum==BP||parnum==BM||parnum==B0||parnum==B0B||parnum==BS0||parnum==BSB ) {
233
234
235 if ( mesnum==DST0||mesnum==DSTP||mesnum==DSTB||mesnum==DSTM||mesnum==DSSTP||mesnum==DSSTM) {
236
237 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
238 setProbMax(10000.0);
239 return;
240 }
241 if ( lnum==TAUP||lnum==TAUM ) {
242 setProbMax(7000.0);
243 return;
244 }
245 }
246
247
248 if ( mesnum==D0||mesnum==DP||mesnum==D0B||mesnum==DM||mesnum==DSP||mesnum==DSM) {
249
250 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
251 setProbMax(4000.0);
252 return;
253 }
254 if ( lnum==TAUP||lnum==TAUM ) {
255 setProbMax(3500.0);
256 return;
257 }
258 }
259
260
261 if ( mesnum==D1P1P||mesnum==D1P1N||mesnum==D1P10||mesnum==D1P1B||mesnum==DS1P||mesnum==DS1M) {
262 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
263 setProbMax(1300.0);
264 return;
265 }
266 if ( lnum==TAUP||lnum==TAUM ) {
267 setProbMax(480.0);
268 return;
269 }
270 }
271
272 if ( mesnum==D3P1P||mesnum==D3P1N||mesnum==D3P10||mesnum==D3P1B||mesnum==DS0STP||mesnum==DS0STM) {
273
274 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
275 setProbMax(450.0);
276 return;
277 }
278 if ( lnum==TAUP||lnum==TAUM ) {
279 setProbMax(73.0);//???
280 return;
281 }
282 }
283
284 if ( mesnum==D3P0P||mesnum==D3P0N||mesnum==D3P00||mesnum==D3P0B||mesnum==DPS1P||mesnum==DPS1M) {
285
286 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
287 setProbMax(200.0);
288 return;
289 }
290 if ( lnum==TAUP||lnum==TAUM ) {
291 setProbMax(90.0);
292 return;
293 }
294 }
295 if ( mesnum==D3P2P||mesnum==D3P2N||mesnum==D3P20||mesnum==D3P2B||mesnum==DS2STP||mesnum==DS2STM) {
296
297 if ( mesnum==DS2STP|| mesnum==DS2STM) {
298 setProbMax(550.0);
299 return;
300 }
301 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
302 setProbMax(400.0);
303 return;
304 }
305 if ( lnum==TAUP||lnum==TAUM ) {
306 setProbMax(220.0);
307 return;
308 }
309 }
310
311 if ( mesnum==D21S0P||mesnum==D21S0N||mesnum==D21S00||mesnum==D21S0B) {
312
313 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
314 setProbMax(16.0);
315 return;
316 }
317 if ( lnum==TAUP||lnum==TAUM ) {
318 setProbMax(3.0);
319 return;
320 }
321 }
322
323 if ( mesnum==D23S1P||mesnum==D23S1N||mesnum==D23S10||mesnum==D23S1B) {
324
325 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
326 setProbMax(500.0);
327 return;
328 }
329 if ( lnum==TAUP||lnum==TAUM ) {
330 setProbMax(250.0);
331 return;
332 }
333 }
334
335 if ( mesnum==RHOP||mesnum==RHOM||mesnum==RHO0) {
336
337 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
338 setProbMax(6500.0);
339 return;
340 }
341 if ( lnum==TAUP||lnum==TAUM ) {
342 setProbMax(6000.0);
343 return;
344 }
345 }
346
347 if ( mesnum==OMEG) {
348
349 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
350 setProbMax(6800.0);
351 return;
352 }
353 if ( lnum==TAUP||lnum==TAUM ) {
354 setProbMax(6000.0);
355 return;
356 }
357 }
358
359 if ( mesnum==PIP||mesnum==PIM||mesnum==PI0) {
360
361 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
362 setProbMax(1200.0);
363 return;
364 }
365 if ( lnum==TAUP||lnum==TAUM ) {
366 setProbMax(1150.0);
367 return;
368 }
369 }
370
371 if ( mesnum==ETA) {
372
373 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
374 setProbMax(1800.0);
375 return;
376 }
377 if ( lnum==TAUP||lnum==TAUM ) {
378 setProbMax(1900.0);
379 return;
380 }
381 }
382
383 if ( mesnum==ETAPR) {
384
385 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
386 setProbMax(3000.0);
387 return;
388 }
389 if ( lnum==TAUP||lnum==TAUM ) {
390 setProbMax(3000.0);
391 return;
392 }
393 }
394
395
396 if ( mesnum==B1P||mesnum==B1M||mesnum==B10) {
397
398 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
399 setProbMax(2500.0);
400 return;
401 }
402 if ( lnum==TAUP||lnum==TAUM ) {
403 setProbMax(1700.0);
404 return;
405 }
406 }
407
408 if ( mesnum==A0P||mesnum==A0M||mesnum==A00) {
409
410 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
411 setProbMax(80.0);
412 return;
413 }
414 if ( lnum==TAUP||lnum==TAUM ) {
415 setProbMax(62.0);
416 return;
417 }
418 }
419
420 if ( mesnum==A1P||mesnum==A1M||mesnum==A10) {
421
422 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
423 setProbMax(4500.0);
424 return;
425 }
426 if ( lnum==TAUP||lnum==TAUM ) {
427 setProbMax(3500.0);
428 return;
429 }
430 }
431
432 if ( mesnum==A2P||mesnum==A2M||mesnum==A20) {
433
434 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
435 setProbMax(1200.0);
436 return;
437 }
438 if ( lnum==TAUP||lnum==TAUM ) {
439 setProbMax(1000.0);
440 return;
441 }
442 }
443
444 if ( mesnum==H1) {
445
446 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
447 setProbMax(2600.0);
448 return;
449 }
450 if ( lnum==TAUP||lnum==TAUM ) {
451 setProbMax(2900.0);
452 return;
453 }
454 }
455
456 if ( mesnum==H1PR) {
457
458 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
459 setProbMax(1400.0);
460 return;
461 }
462 if ( lnum==TAUP||lnum==TAUM ) {
463 setProbMax(1500.0);
464 return;
465 }
466 }
467
468 if ( mesnum==F2) {
469
470 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
471 setProbMax(1100.0);
472 return;
473 }
474 if ( lnum==TAUP||lnum==TAUM ) {
475 setProbMax(1100.0);
476 return;
477 }
478 }
479
480 if ( mesnum==F2PR) {
481
482 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
483 setProbMax(804.0);
484 return;
485 }
486 if ( lnum==TAUP||lnum==TAUM ) {
487 setProbMax(600.0);
488 return;
489 }
490 }
491
492 if ( mesnum==F1) {
493
494 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
495 setProbMax(2500.0);
496 return;
497 }
498 if ( lnum==TAUP||lnum==TAUM ) {
499 setProbMax(2000.0) ;
500 return;
501 }
502 }
503
504 if ( mesnum==F1PR) {
505
506 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
507 setProbMax(2400.0);
508 return;
509 }
510 if ( lnum==TAUP||lnum==TAUM ) {
511 setProbMax(1700.0);
512 return;
513 }
514 }
515
516 if ( mesnum==F0) {
517
518 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
519 setProbMax( 80.0);
520 return;
521 }
522 if ( lnum==TAUP||lnum==TAUM ) {
523 setProbMax(63.0);
524 return;
525 }
526 }
527
528 if ( mesnum==F0PR) {
529
530 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
531 setProbMax(120.0);
532 return;
533 }
534 if ( lnum==TAUP||lnum==TAUM ) {
535 setProbMax(120.0);
536 return;
537 }
538 }
539
540
541 if ( mesnum==RHO2SP||mesnum==RHO2SM||mesnum==RHO2S0) {
542
543 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
544 setProbMax( 2400.0);
545 return;
546 }
547 if ( lnum==TAUP||lnum==TAUM ) {
548 setProbMax(2000.0);
549 return;
550 }
551 }
552
553 if ( mesnum==OMEG2S) {
554
555 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
556 setProbMax(1600.0);
557 return;
558 }
559 if ( lnum==TAUP||lnum==TAUM ) {
560 setProbMax(1400.0) ;
561 return;
562 }
563 }
564
565 if ( mesnum==PI2SP||mesnum==PI2SM||mesnum==PI2S0) {
566
567 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
568 setProbMax( 500.0);
569 return;
570 }
571 if ( lnum==TAUP||lnum==TAUM ) {
572 setProbMax(300.0);
573 return;
574 }
575 }
576
577 if ( mesnum==ETA2S) {
578
579 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
580 setProbMax(344.0);
581 return;
582 }
583 if ( lnum==TAUP||lnum==TAUM ) {
584 setProbMax(300.0);
585 return;
586 }
587 }
588
589 if ( mesnum==KP||mesnum==KM||
590 mesnum==K1P||mesnum==K1M||mesnum==K1STP||mesnum==K1STM) {
591
592 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
593 setProbMax(2000.0);
594 return;
595 }
596 if ( lnum==TAUP||lnum==TAUM ) {
597 setProbMax(1000.0);
598 return;
599 }
600 }
601
602 if ( mesnum==KSTP||mesnum==KSTM ) {
603
604 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
605 setProbMax(10000.0);
606 return;
607 }
608 if ( lnum==TAUP||lnum==TAUM ) {
609 setProbMax(7000.0);
610 return;
611 }
612 }
613
614
615}
616
617if ( parnum==D0||parnum==DP||parnum==DM||parnum==D0B ) {
618
619
620 if ( mesnum==RHOP||mesnum==RHOM||mesnum==RHO0) {
621
622 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
623 setProbMax(110.0);
624 return;
625 }
626 }
627
628 if ( mesnum==OMEG) {
629
630 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
631 setProbMax(75.0);
632 return;
633 }
634 }
635
636 if ( mesnum==PIP||mesnum==PIM||mesnum==PI0) {
637
638 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
639 setProbMax(40.0);
640 return;
641 }
642 }
643
644 if ( mesnum==ETA) {
645
646 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
647 setProbMax( 65.0);
648 return;
649 }
650 }
651
652 if ( mesnum==ETAPR) {
653
654 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
655 setProbMax( 60.0);
656 return;
657 }
658 }
659
660 if ( mesnum==KP||mesnum==KM||mesnum==K0||
661 mesnum==K0S||mesnum==K0L||mesnum==KB) {
662
663 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
664 setProbMax( 70.0);
665 return;
666 }
667 }
668
669 if ( mesnum==K1STP||mesnum==K1STM||mesnum==K1ST0||mesnum==K1STB) {
670
671 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
672 setProbMax( 3.3);
673 return;
674 }
675 }
676
677 if ( mesnum==K1P||mesnum==K1M||mesnum==K10||mesnum==K1B) {
678
679 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
680 setProbMax( 100.0);
681 return;
682 }
683 }
684
685 if ( mesnum==KSTP||mesnum==KSTM||mesnum==KST0||mesnum==KSTB) {
686
687 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
688 setProbMax( 135.0);
689 return;
690 }
691 }
692
693 if ( mesnum==K2STP||mesnum==K2STM||mesnum==K2ST0||mesnum==K2STB) {
694
695 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
696 //Lange - Oct 26,2001 - increasing from 0.75 to
697 //accomodate
698 setProbMax( 9.0);
699 // setProbMax( 0.75);
700 return;
701 }
702 }
703
704 if ( mesnum==F0) {
705 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
706 setProbMax(1.0);
707 return;
708 }
709 }
710
711}
712
713if ( parnum==DSP||parnum==DSM ) {
714
715
716 if ( mesnum==PHI ) {
717
718 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
719 setProbMax( 90.0 );
720 return;
721 }
722 }
723
724 if ( mesnum==ETA ) {
725
726 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
727 setProbMax( 75.0 );
728 return;
729 }
730 }
731
732 if ( mesnum==ETAPR ) {
733
734 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
735 setProbMax( 80.0) ;
736 return;
737 }
738 }
739
740 if ( mesnum==KST0||mesnum==KSTB ) {
741
742 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
743 setProbMax( 100.0) ;
744 return;
745 }
746 }
747
748
749 if ( mesnum==K0 || mesnum==KB || mesnum==K0S || mesnum==K0L ) {
750
751 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
752 setProbMax( 45.0 );
753 return;
754 }
755 }
756
757 if ( mesnum==F0) {
758 if ( lnum==EP||lnum==EM||lnum==MUP||lnum==MUM ) {
759 setProbMax(1.0);
760 return;
761 }
762 }
763
764
765}
766
767 if ( parnum==BCP||parnum==BCM ) {
768 setProbMax(1000.0 );
769 return;
770 }
771
772
773
774//This is a real cludge.. (ryd)
775 setProbMax(0.0);
776
777}
778
780
781 checkNArg(0);
782 checkNDaug(3);
783
784 //We expect the parent to be a scalar
785 //and the daughters to be X lepton neutrino
786
790
792
793 isgw2ffmodel = new EvtISGW2FF;
794
795 if ( mesontype==EvtSpinType::SCALAR ) {
796 calcamp = new EvtSemiLeptonicScalarAmp;
797 }
798 if ( mesontype==EvtSpinType::VECTOR ) {
799 calcamp = new EvtSemiLeptonicVectorAmp;
800 }
801 if ( mesontype==EvtSpinType::TENSOR ) {
802 calcamp = new EvtSemiLeptonicTensorAmp;
803 }
804
805}
806
807
808
809
810
811
812
EvtAmp _amp2
Definition: EvtDecayAmp.hh:66
void checkSpinDaughter(int d1, EvtSpinType::spintype sp)
void checkSpinParent(EvtSpinType::spintype sp)
void setProbMax(double prbmx)
EvtId getParentId()
Definition: EvtDecayBase.hh:60
void checkNDaug(int d1, int d2=-1)
EvtId * getDaugs()
Definition: EvtDecayBase.hh:65
void checkNArg(int a1, int a2=-1, int a3=-1, int a4=-1)
EvtId getDaug(int i)
Definition: EvtDecayBase.hh:66
virtual ~EvtISGW2()
Definition: EvtISGW2.cc:43
void decay(EvtParticle *p)
Definition: EvtISGW2.cc:64
void initProbMax()
Definition: EvtISGW2.cc:72
EvtISGW2()
Definition: EvtISGW2.cc:37
EvtDecayBase * clone()
Definition: EvtISGW2.cc:58
void getName(std::string &name)
Definition: EvtISGW2.cc:50
void init()
Definition: EvtISGW2.cc:779
Definition: EvtId.hh:27
static EvtSpinType::spintype getSpinType(EvtId i)
Definition: EvtPDL.hh:61
static EvtId getId(const std::string &name)
Definition: EvtPDL.cc:287
double initializePhaseSpace(int numdaughter, EvtId *daughters, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)
virtual void CalcAmp(EvtParticle *parent, EvtAmp &amp, EvtSemiLeptonicFF *FormFactors)