Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4ExcitedMesonConstructor.cc
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26//
27// $Id$
28//
29//
30// --------------------------------------------------------------
31// GEANT 4 class implementation file
32// History: first implementation, based on object model of
33// 10 oct 1998 H.Kurashige
34// ---------------------------------------------------------------
35// 01 Oct. 02 Fixed PDG codes for a0(1450), f0(1370), k0_star(1430)
36
38
39#include "G4SystemOfUnits.hh"
41#include "G4ParticleTable.hh"
42#include "G4ShortLivedTable.hh"
44#include "G4VDecayChannel.hh"
45#include "G4DecayTable.hh"
46
47
49 G4int )
50 : type("meson"), leptonNumber(0), baryonNumber(0)
51{
52}
53
55{
56}
57
59{
60 G4int iType;
61 if (idx < 0 ) {
62 for (G4int state=0; state< NMultiplets; state +=1) {
63 for (iType = 0; iType < NMesonTypes ; iType++)
64 ConstructMesons(state, iType);
65 }
66 } else if (idx < NMultiplets ) {
67 for (iType = 0; iType < NMesonTypes ; iType++)
68 ConstructMesons(idx, iType);
69 } else {
70#ifdef G4VERBOSE
71 if (G4ParticleTable::GetParticleTable()->GetVerboseLevel()>1) {
72 G4cerr << "G4ExcitedMesonConstructor::Construct()";
73 G4cerr << " illegal index os state = " << idx << G4endl;
74 }
75#endif
76 }
77}
78
80{
81 G4bool value = true;
82 if ( idxType == TEtaPrime ) {
83 if (idxState==N13P0) value = false;
84 if (idxState==N13D1) value = false;
85 } else if ( idxType == TPi ) {
86 if (idxState==N23P2) value = false;
87 }
88 return value;
89}
90
91#include "G4ExcitedMesons.hh"
92
94{
95 if (!Exist(iState, iType) ) return;
96
97 // Construct Resonace particles as dynamic object
98 // Arguments for constructor are as follows
99 // name mass width
100 // charge 2*spin
101 // parity C-conjugation
102 // 2*Isospin 2*Isospin3
103 // G-parity
104 // type lepton number Baryon number
105 // PDG encoding
106 // stable lifetime decay table
107
108
109 G4String aName;
110 G4ExcitedMesons* particle;
111
112 for ( G4int iIso3=(-1)*iIsoSpin[iType]; iIso3<=iIsoSpin[iType]; iIso3+=2) {
113 aName= GetName(iIso3, iState, iType);
114 G4double fmass = mass[iState][iType];
115 G4double fwidth = width[iState][iType];
116 if ( (iType== TK) || (iType==TAntiK ) ) {
117 if ( GetCharge(iIso3,iType) == 0.0) {
118 fmass += massKdiff[iState];
119 fwidth += widthKdiff[iState];
120 }
121 }
122 particle = new G4ExcitedMesons(
123 aName, fmass, fwidth,
124 GetCharge(iIso3,iType), iSpin[iState],
125 iParity[iState], iChargeConjugation[iState],
126 iIsoSpin[iType], iIso3,
127 iGParity[iState][iType],
129 GetEncoding(iIso3, iState, iType),
130 false, 0.0, NULL
131 );
132
133 if ( (iType==TEta) || (iType==TEtaPrime) || ((iType==TPi)&&(iIso3==0)) ) {
134 // set same encoding for AntiParticle
135 particle->SetAntiPDGEncoding(GetEncoding(iIso3, iState, iType));
136 }
137 particle->SetMultipletName(name[iState][iType]);
138 particle->SetDecayTable(CreateDecayTable( aName, iIso3, iState, iType));
139 }
140}
141
142
144 G4int iIso3,
145 G4int iType)
146{
147 // Quark contents
148
149 G4int quark=0;
150 if (iType == TPi) {
151 if ( iIso3 == 2 ){
152 if ( iQ == 0 ){ quark = 2; }
153 else { quark = 1; }
154 } else if ( iIso3 == 0 ){
155 quark = 1;
156 } else if ( iIso3 == -2 ){
157 if ( iQ == 0 ){ quark = 1; }
158 else { quark = 2; }
159 }
160 } else if (iType == TEta) {
161 quark = 2;
162
163 } else if (iType == TEtaPrime) {
164 quark = 3;
165
166 } else if (iType == TAntiK) {
167 if ( iIso3 == 1 ){
168 if ( iQ == 0 ){ quark = 3; }
169 else { quark = 1; }
170 } else if ( iIso3 == -1 ){
171 if ( iQ == 0 ){ quark = 3; }
172 else { quark = 2; }
173 }
174
175 } else if (iType == TK) {
176 if ( iIso3 == 1 ){
177 if ( iQ == 0 ){ quark = 2; }
178 else { quark = 3; }
179 } else if ( iIso3 == -1 ){
180 if ( iQ == 0 ){ quark = 1; }
181 else { quark = 3; }
182 }
183
184 }
185 return quark;
186}
187
189{
190 static G4double quark_charge[7] =
191 {
192 0., -1./3., +2./3., -1./3., +2./3., -1./3., +2./3.
193 };
194
195 G4double charge = quark_charge[GetQuarkContents(0, iIsoSpin3, idxType)]*eplus;
196 charge -= quark_charge[GetQuarkContents(1, iIsoSpin3, idxType)]*eplus;
197 return charge;
198}
199
201 G4int idxState,
202 G4int idxType )
203{
204 G4int encoding = encodingOffset[idxState];
205 encoding += iSpin[idxState] +1;
206 G4int iQ = 0;
207 G4int iQbar = 1;
208
209 if ( idxType == TPi ) {
210 if (iIsoSpin3<0) {
211 iQ = 1;
212 iQbar = 0;
213 }
214 } else if ( idxType == TK ) {
215 iQ = 1;
216 iQbar = 0;
217 }
218
219
220 encoding += 100*GetQuarkContents(iQ, iIsoSpin3, idxType);
221 encoding += 10*GetQuarkContents(iQbar, iIsoSpin3, idxType);
222 if ( idxType == TPi ) {
223 if (iIsoSpin3<0) {
224 encoding *= -1;
225 }
226 } else if ( idxType == TAntiK ) {
227 encoding *= -1;
228 }
229
230// PDG2005
231//
232 if (idxState == 9 ) {
233 if (idxType == TEta) {
234// f2(1810) 9030225
235 encoding = 9030225;
236 } else if (idxType == TEtaPrime) {
237// f2(2010) 9060225
238 encoding = 9060225;
239 }
240 }
241
242 return encoding;
243}
244
246 const G4String& parentName,
247 G4int iIso3,
248 G4int iState,
249 G4int iType)
250{
251 // create decay table
252 G4DecayTable* decayTable = new G4DecayTable();
253 G4double br;
254
255 if ((iType==TK)||(iType==TAntiK)) {
256
257 if ( (br=bRatio[iState][iType][MKPi]) >0.0) {
258 AddKPiMode( decayTable, parentName, br, iIso3, iType );
259 }
260 if ( (br=bRatio[iState][iType][MKStarPi]) >0.0) {
261 AddKStarPiMode( decayTable, parentName, br, iIso3, iType );
262 }
263 if ( (br=bRatio[iState][iType][MKRho]) >0.0) {
264 AddKRhoMode( decayTable, parentName, br, iIso3, iType );
265 }
266 if ( (br=bRatio[iState][iType][MKOmega]) >0.0) {
267 AddKOmegaMode( decayTable, parentName, br, iIso3, iType );
268 }
269 if ( (br=bRatio[iState][iType][MKStar2Pi]) >0.0) {
270 AddKStar2PiMode( decayTable, parentName, br, iIso3, iType );
271 }
272 if ( (br=bRatio[iState][iType][MKTwoPi]) >0.0) {
273 AddKTwoPiMode( decayTable, parentName, br, iIso3, iType );
274 }
275 if ( (br=bRatio[iState][iType][MKEta]) >0.0) {
276 AddKEtaMode( decayTable, parentName, br, iIso3, iType );
277 }
278
279 } else {
280 if ( (br=bRatio[iState][iType][MPiGamma]) >0.0) {
281 AddPiGammaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
282 }
283 if ( (br=bRatio[iState][iType][MRhoGamma]) >0.0) {
284 AddRhoGammaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
285 }
286 if ( (br=bRatio[iState][iType][M2Pi]) >0.0) {
287 Add2PiMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
288 }
289 if ( (br=bRatio[iState][iType][MPiRho]) >0.0) {
290 AddPiRhoMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
291 }
292 if ( (br=bRatio[iState][iType][M3Pi]) >0.0) {
293 Add3PiMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
294 }
295 if ( (br=bRatio[iState][iType][M4Pi]) >0.0) {
296 Add4PiMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
297 }
298 if ( (br=bRatio[iState][iType][MKKStar]) >0.0) {
299 AddKKStarMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
300 }
301 if ( (br=bRatio[iState][iType][M2PiEta]) >0.0) {
302 Add2PiEtaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
303 }
304 if ( (br=bRatio[iState][iType][MRhoEta]) >0.0) {
305 AddRhoEtaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
306 }
307 if ( (br=bRatio[iState][iType][M2PiRho]) >0.0) {
308 Add2PiRhoMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
309 }
310 if ( (br=bRatio[iState][iType][M2PiOmega]) >0.0) {
311 Add2PiOmegaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
312 }
313 if ( (br=bRatio[iState][iType][M2Eta]) >0.0) {
314 Add2EtaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
315 }
316 if ( (br=bRatio[iState][iType][M2K]) >0.0) {
317 Add2KMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
318 }
319 if ( (br=bRatio[iState][iType][M2KPi]) >0.0) {
320 Add2KPiMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
321 }
322 if ( (br=bRatio[iState][iType][MPiOmega]) >0.0) {
323 AddPiOmegaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
324 }
325 if ( (br=bRatio[iState][iType][MPiF2]) >0.0) {
326 AddPiF2Mode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
327 }
328 if ( (br=bRatio[iState][iType][MPiF0]) >0.0) {
329 AddPiF0Mode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
330 }
331 if ( (br=bRatio[iState][iType][MPiA2]) >0.0) {
332 AddPiA2Mode( decayTable, parentName, br, iIso3, iIsoSpin[iType] );
333 }
334 }
335
336 return decayTable;
337}
338
340 G4DecayTable* decayTable, const G4String& nameParent,
341 G4double br, G4int iIso3, G4int iType)
342{
343 G4VDecayChannel* mode;
344 //
345 if (iIso3 == +1) {
346 if (iType == TK) {
347 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
348 "kaon+","pi0");
349 decayTable->Insert(mode);
350 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
351 "kaon0","pi+");
352 decayTable->Insert(mode);
353 }else if (iType==TAntiK) {
354 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
355 "anti_kaon0","pi0");
356 decayTable->Insert(mode);
357 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
358 "kaon-","pi+");
359 decayTable->Insert(mode);
360 }
361 } else if (iIso3 == -1) {
362 if (iType == TK) {
363 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
364 "kaon0","pi0");
365 decayTable->Insert(mode);
366 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
367 "kaon+","pi-");
368 decayTable->Insert(mode);
369
370 }else if (iType==TAntiK) {
371 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
372 "kaon-","pi0");
373 decayTable->Insert(mode);
374 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
375 "anti_kaon0","pi-");
376 decayTable->Insert(mode);
377 }
378 }
379
380 return decayTable;
381}
383 G4DecayTable* decayTable, const G4String& nameParent,
384 G4double br, G4int iIso3, G4int iType)
385{
386 G4VDecayChannel* mode;
387 //
388 if (iIso3 == +1) {
389 if (iType == TK) {
390 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
391 "k2_star(1430)+","pi0");
392 decayTable->Insert(mode);
393 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
394 "k2_star(1430)0","pi+");
395 decayTable->Insert(mode);
396 }else if (iType==TAntiK) {
397 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
398 "anti_k2_star(1430)0","pi0");
399 decayTable->Insert(mode);
400 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
401 "k2_star(1430)-","pi+");
402 decayTable->Insert(mode);
403 }
404 } else if (iIso3 == -1) {
405 if (iType == TK) {
406 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
407 "k2_star(1430)0","pi0");
408 decayTable->Insert(mode);
409 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
410 "k2_star(1430)+","pi-");
411 decayTable->Insert(mode);
412
413 }else if (iType==TAntiK) {
414 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
415 "k2_star(1430)-","pi0");
416 decayTable->Insert(mode);
417 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
418 "anti_k2_star(1430)0","pi-");
419 decayTable->Insert(mode);
420 }
421 }
422
423 return decayTable;
424}
425
427 G4DecayTable* decayTable, const G4String& nameParent,
428 G4double br, G4int iIso3, G4int iType)
429{
430 G4VDecayChannel* mode;
431 //
432 if (iIso3 == +1) {
433 if (iType == TK) {
434 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
435 "kaon+","omega");
436 decayTable->Insert(mode);
437 }else if (iType==TAntiK) {
438 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
439 "anti_kaon0","omega");
440 decayTable->Insert(mode);
441 }
442 } else if (iIso3 == -1) {
443 if (iType == TK) {
444 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
445 "kaon0","omega");
446 decayTable->Insert(mode);
447 }else if (iType==TAntiK) {
448 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
449 "kaon-","omega");
450 decayTable->Insert(mode);
451 }
452 }
453
454 return decayTable;
455}
456
458 G4DecayTable* decayTable, const G4String& nameParent,
459 G4double br, G4int iIso3, G4int iType)
460{
461 G4VDecayChannel* mode;
462 //
463 if (iIso3 == +1) {
464 if (iType == TK) {
465 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
466 "kaon+","eta");
467 decayTable->Insert(mode);
468 }else if (iType==TAntiK) {
469 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
470 "anti_kaon0","eta");
471 decayTable->Insert(mode);
472 }
473 } else if (iIso3 == -1) {
474 if (iType == TK) {
475 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
476 "kaon0","eta");
477 decayTable->Insert(mode);
478 }else if (iType==TAntiK) {
479 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
480 "kaon-","eta");
481 decayTable->Insert(mode);
482 }
483 }
484
485 return decayTable;
486}
487
489 G4DecayTable* decayTable, const G4String& nameParent,
490 G4double br, G4int iIso3, G4int iType)
491{
492 G4VDecayChannel* mode;
493 //
494 if (iIso3 == +1) {
495 if (iType == TK) {
496 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
497 "kaon+","rho0");
498 decayTable->Insert(mode);
499 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
500 "kaon0","rho+");
501 decayTable->Insert(mode);
502 }else if (iType==TAntiK) {
503 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
504 "anti_kaon0","rho0");
505 decayTable->Insert(mode);
506 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
507 "kaon-","rho+");
508 decayTable->Insert(mode);
509 }
510 } else if (iIso3 == -1) {
511 if (iType == TK) {
512 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
513 "kaon0","rho0");
514 decayTable->Insert(mode);
515 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
516 "kaon+","rho-");
517 decayTable->Insert(mode);
518
519 }else if (iType==TAntiK) {
520 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
521 "kaon-","rho0");
522 decayTable->Insert(mode);
523 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
524 "anti_kaon0","rho-");
525 decayTable->Insert(mode);
526 }
527 }
528
529 return decayTable;
530}
531
533 G4DecayTable* decayTable, const G4String& nameParent,
534 G4double br, G4int iIso3, G4int iType)
535{
536 G4VDecayChannel* mode;
537 //
538 if (iIso3 == +1) {
539 if (iType == TK) {
540 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
541 "k_star+","pi0");
542 decayTable->Insert(mode);
543 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
544 "k_star0","pi+");
545 decayTable->Insert(mode);
546 }else if (iType==TAntiK) {
547 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
548 "anti_k_star0","pi0");
549 decayTable->Insert(mode);
550 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
551 "k_star-","pi+");
552 decayTable->Insert(mode);
553 }
554 } else if (iIso3 == -1) {
555 if (iType == TK) {
556 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
557 "k_star0","pi0");
558 decayTable->Insert(mode);
559 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
560 "k_star+","pi-");
561 decayTable->Insert(mode);
562
563 }else if (iType==TAntiK) {
564 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2,
565 "k_star-","pi0");
566 decayTable->Insert(mode);
567 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2,
568 "anti_k_star0","pi-");
569 decayTable->Insert(mode);
570 }
571 }
572
573 return decayTable;
574}
575
577 G4DecayTable* decayTable, const G4String& nameParent,
578 G4double br, G4int iIso3, G4int iType)
579{
580 // K* --> K pipi(I=1)
581 G4VDecayChannel* mode;
582 //
583 if (iIso3 == +1) {
584 if (iType == TK) {
585 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3,
586 "k_star+","pi+","pi-");
587 decayTable->Insert(mode);
588 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3,
589 "k_star0","pi+","pi0");
590 decayTable->Insert(mode);
591 }else if (iType==TAntiK) {
592 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3,
593 "anti_k_star0","pi+","pi-");
594 decayTable->Insert(mode);
595 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3,
596 "k_star-","pi+","pi0");
597 decayTable->Insert(mode);
598 }
599 } else if (iIso3 == -1) {
600 if (iType == TK) {
601 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3,
602 "k_star0","pi+","pi-");
603 decayTable->Insert(mode);
604 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3,
605 "k_star+","pi-","pi0");
606 decayTable->Insert(mode);
607
608 }else if (iType==TAntiK) {
609 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3,
610 "k_star-","pi+","pi-");
611 decayTable->Insert(mode);
612 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3,
613 "anti_k_star0","pi-","pi0");
614 decayTable->Insert(mode);
615 }
616 }
617
618 return decayTable;
619}
620
622 G4DecayTable* decayTable, const G4String& nameParent,
623 G4double br, G4int iIso3, G4int iIso)
624{
625 if ((iIso!=2)&&(iIso!=0)) return decayTable;
626
627 G4VDecayChannel* mode;
628 //
629 G4String daughter;
630 if (iIso3 == +2) {
631 daughter = "pi+";
632 } else if (iIso3 == 0) {
633 daughter = "pi0";
634 } else if (iIso3 ==-2) {
635 daughter = "pi-";
636 } else {
637 return decayTable;
638 }
639 // create decay channel [parent BR #daughters]
640 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
641 daughter,"gamma");
642 // add decay table
643 decayTable->Insert(mode);
644
645 return decayTable;
646}
647
649 G4DecayTable* decayTable, const G4String& nameParent,
650 G4double br, G4int iIso3, G4int iIso)
651{
652 if ((iIso!=2)&&(iIso!=0)) return decayTable;
653
654 G4VDecayChannel* mode;
655 //
656 G4String daughter;
657 if (iIso3 == +2) {
658 daughter = "pi+";
659 } else if (iIso3 == 0) {
660 daughter = "pi0";
661 } else if (iIso3 ==-2) {
662 daughter = "pi-";
663 } else {
664 return decayTable;
665 }
666 // create decay channel [parent BR #daughters]
667 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
668 daughter,"omega");
669 // add decay table
670 decayTable->Insert(mode);
671
672 return decayTable;
673}
674
676 G4DecayTable* decayTable, const G4String& nameParent,
677 G4double br, G4int iIso3, G4int iIso)
678{
679 if ((iIso!=2)&&(iIso!=0)) return decayTable;
680
681 G4VDecayChannel* mode;
682 //
683 G4String daughter;
684 if (iIso3 == +2) {
685 daughter = "rho+";
686 } else if (iIso3 == 0) {
687 daughter = "rho0";
688 } else if (iIso3 ==-2) {
689 daughter = "rho-";
690 } else {
691 return decayTable;
692 }
693 // create decay channel [parent BR #daughters]
694 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
695 daughter,"gamma");
696 // add decay table
697 decayTable->Insert(mode);
698
699 return decayTable;
700}
701
703 G4DecayTable* decayTable, const G4String& nameParent,
704 G4double br, G4int iIso3, G4int iIso)
705{
706 if ((iIso!=2)&&(iIso!=0)) return decayTable;
707
708 G4VDecayChannel* mode;
709 //
710 G4String daughter;
711 if (iIso3 == +2) {
712 daughter = "pi+";
713 } else if (iIso3 == 0) {
714 daughter = "pi0";
715 } else if (iIso3 ==-2) {
716 daughter = "pi-";
717 } else {
718 return decayTable;
719 }
720 // create decay channel [parent BR #daughters]
721 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
722 daughter,"eta");
723 // add decay table
724 decayTable->Insert(mode);
725
726 return decayTable;
727}
728
730 G4DecayTable* decayTable, const G4String& nameParent,
731 G4double br, G4int iIso3, G4int iIso)
732{
733 if ((iIso!=2)&&(iIso!=0)) return decayTable;
734
735 G4VDecayChannel* mode;
736 //
737 G4String daughter;
738 if (iIso3 == +2) {
739 daughter = "rho+";
740 } else if (iIso3 == 0) {
741 daughter = "rho0";
742 } else if (iIso3 ==-2) {
743 daughter = "rho-";
744 } else {
745 return decayTable;
746 }
747 // create decay channel [parent BR #daughters]
748 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
749 daughter,"eta");
750 // add decay table
751 decayTable->Insert(mode);
752
753 return decayTable;
754}
755
757 G4DecayTable* decayTable, const G4String& nameParent,
758 G4double br, G4int iIso3, G4int iIso)
759{
760 if ((iIso!=2)&&(iIso!=0)) return decayTable;
761
762 G4VDecayChannel* mode;
763 //
764 G4String daughter;
765 if (iIso3 == +2) {
766 daughter = "pi+";
767 } else if (iIso3 == 0) {
768 daughter = "pi0";
769 } else if (iIso3 ==-2) {
770 daughter = "pi-";
771 } else {
772 return decayTable;
773 }
774 // create decay channel [parent BR #daughters]
775 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
776 daughter,"f2(1270)");
777 // add decay table
778 decayTable->Insert(mode);
779
780 return decayTable;
781}
782
784 G4DecayTable* decayTable, const G4String& nameParent,
785 G4double br, G4int iIso3, G4int iIso)
786{
787 if ((iIso!=2)&&(iIso!=0)) return decayTable;
788
789 G4VDecayChannel* mode;
790 //
791 G4String daughter;
792 if (iIso3 == +2) {
793 daughter = "pi+";
794 } else if (iIso3 == 0) {
795 daughter = "pi0";
796 } else if (iIso3 ==-2) {
797 daughter = "pi-";
798 } else {
799 return decayTable;
800 }
801 // create decay channel [parent BR #daughters]
802 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
803 daughter,"f0(1370)");
804 // add decay table
805 decayTable->Insert(mode);
806 return decayTable;
807}
808
809
811 G4DecayTable* decayTable, const G4String& nameParent,
812 G4double br, G4int iIso3, G4int iIso)
813{
814 G4VDecayChannel* mode;
815
816 G4String daughterPi1;
817 G4String daughterPi2;
818 G4double r;
819
820 // I = 0 states
821 if (iIso==0) {
822 if (iIso3==0) {
823 // pi+ + pi-
824 daughterPi1 = "pi+";
825 daughterPi2 = "pi-";
826 r = br*2./3.;
827 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
828 daughterPi1,daughterPi2);
829 decayTable->Insert(mode);
830
831 // pi0 + pi0
832 daughterPi1 = "pi0";
833 daughterPi2 = "pi0";
834 r = br*1./3.;
835 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
836 daughterPi1,daughterPi2);
837 decayTable->Insert(mode);
838 }
839 } else if (iIso==2) {
840 if (iIso3==+2) {
841 // pi+ + pi0
842 daughterPi1 = "pi+";
843 daughterPi2 = "pi0";
844 r = br;
845 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
846 daughterPi1,daughterPi2);
847 // add decay table
848 decayTable->Insert(mode);
849 } else if (iIso3==0) {
850 // pi+ + pi-
851 daughterPi1 = "pi+";
852 daughterPi2 = "pi-";
853 r = br;
854 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
855 daughterPi1,daughterPi2);
856 decayTable->Insert(mode);
857 } else if (iIso3==-2) {
858 // pi- + pi0
859 daughterPi1 = "pi-";
860 daughterPi2 = "pi0";
861 r = br;
862 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
863 daughterPi1,daughterPi2);
864 decayTable->Insert(mode);
865 }
866 }
867 return decayTable;
868}
869
871 G4DecayTable* decayTable, const G4String& nameParent,
872 G4double br, G4int iIso3, G4int iIso)
873{
874 G4VDecayChannel* mode;
875
876 G4String daughterPi;
877 G4String daughterRho;
878 G4double r;
879
880 // I = 0 states
881 if (iIso==0) {
882 if (iIso3==0) {
883 // pi+ + rho-
884 daughterPi = "pi+";
885 daughterRho = "rho-";
886 r = br/3.;
887 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
888 daughterPi,daughterRho);
889 decayTable->Insert(mode);
890
891 // pi0 + rho0
892 daughterPi = "pi0";
893 daughterRho = "rho0";
894 r = br*1./3.;
895 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
896 daughterPi,daughterRho);
897 decayTable->Insert(mode);
898
899 // pi- + rho+
900 daughterPi = "pi-";
901 daughterRho = "rho+";
902 r = br*1./3.;
903 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
904 daughterPi,daughterRho);
905 decayTable->Insert(mode);
906 }
907 } else if (iIso==2) {
908 if (iIso3==+2) {
909 // pi+ + rho0
910 daughterPi = "pi+";
911 daughterRho = "rho0";
912 r = br/2.;
913 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
914 daughterPi,daughterRho);
915 decayTable->Insert(mode);
916
917 // pi0 + rho+
918 daughterPi = "pi0";
919 daughterRho = "rho+";
920 r = br/2.;
921 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
922 daughterPi,daughterRho);
923 decayTable->Insert(mode);
924 } else if (iIso3==0) {
925 // pi+ + rho-
926 daughterPi = "pi+";
927 daughterRho = "rho-";
928 r = br/2.;
929 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
930 daughterPi,daughterRho);
931 decayTable->Insert(mode);
932
933 // pi- + rho+
934 daughterPi = "pi-";
935 daughterRho = "rho+";
936 r = br/2.;
937 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
938 daughterPi,daughterRho);
939 decayTable->Insert(mode);
940 } else if (iIso3==-2) {
941 // pi- + rho0
942 daughterPi = "pi-";
943 daughterRho = "rho0";
944 r = br/2.;
945 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
946 daughterPi,daughterRho);
947 decayTable->Insert(mode);
948
949 // pi0 + rho-
950 daughterPi = "pi0";
951 daughterRho = "rho-";
952 r = br/2.;
953 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
954 daughterPi,daughterRho);
955 decayTable->Insert(mode);
956 }
957 }
958 return decayTable;
959}
960
962 G4DecayTable* decayTable, const G4String& nameParent,
963 G4double br, G4int iIso3, G4int iIso)
964{
965 G4VDecayChannel* mode;
966
967 G4String daughterPi;
968 G4String daughterA2;
969 G4double r;
970
971 // I = 0 states
972 if (iIso==0) {
973 if (iIso3==0) {
974 // pi+ + a2(1320)-
975 daughterPi = "pi+";
976 daughterA2 = "a2(1320)-";
977 r = br/3.;
978 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
979 daughterPi,daughterA2);
980 decayTable->Insert(mode);
981
982 // pi0 + a2(1320)0
983 daughterPi = "pi0";
984 daughterA2 = "a2(1320)0";
985 r = br*1./3.;
986 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
987 daughterPi,daughterA2);
988 decayTable->Insert(mode);
989
990 // pi- + a2(1320)+
991 daughterPi = "pi-";
992 daughterA2 = "a2(1320)+";
993 r = br*1./3.;
994 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
995 daughterPi,daughterA2);
996 decayTable->Insert(mode);
997 }
998 } else if (iIso==2) {
999 if (iIso3==+2) {
1000 // pi+ + a2(1320)0
1001 daughterPi = "pi+";
1002 daughterA2 = "a2(1320)0";
1003 r = br/2.;
1004 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
1005 daughterPi,daughterA2);
1006 decayTable->Insert(mode);
1007
1008 // pi0 + a2(1320)+
1009 daughterPi = "pi0";
1010 daughterA2 = "a2(1320)+";
1011 r = br/2.;
1012 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
1013 daughterPi,daughterA2);
1014 decayTable->Insert(mode);
1015 } else if (iIso3==0) {
1016 // pi+ + a2(1320)-
1017 daughterPi = "pi+";
1018 daughterA2 = "a2(1320)-";
1019 r = br/2.;
1020 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
1021 daughterPi,daughterA2);
1022 decayTable->Insert(mode);
1023
1024 // pi- + a2(1320)+
1025 daughterPi = "pi-";
1026 daughterA2 = "a2(1320)+";
1027 r = br/2.;
1028 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
1029 daughterPi,daughterA2);
1030 decayTable->Insert(mode);
1031 } else if (iIso3==-2) {
1032 // pi- + a2(1320)0
1033 daughterPi = "pi-";
1034 daughterA2 = "a2(1320)0";
1035 r = br/2.;
1036 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
1037 daughterPi,daughterA2);
1038 decayTable->Insert(mode);
1039
1040 // pi0 + a2(1320)-
1041 daughterPi = "pi0";
1042 daughterA2 = "a2(1320)-";
1043 r = br/2.;
1044 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2,
1045 daughterPi,daughterA2);
1046 decayTable->Insert(mode);
1047 }
1048 }
1049 return decayTable;
1050}
1051
1053 G4DecayTable* decayTable, const G4String& nameParent,
1054 G4double br, G4int iIso3, G4int iIso)
1055{
1056 G4VDecayChannel* mode;
1057
1058 // I =0 state
1059 // This mode is X(I=0,J=1) --> pi+,pi-,pi0 mode
1060 if (iIso==0) {
1061 // pi+ + pi-
1062 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 3,
1063 "pi+","pi-","pi0");
1064 decayTable->Insert(mode);
1065 } else if (iIso==2) {
1066 // This mode is X(I=1) --> pi + pipi(I=0) mode
1067 if (iIso3==+2) {
1068 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3,
1069 "pi+","pi0","pi0");
1070 decayTable->Insert(mode);
1071 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3,
1072 "pi+","pi+","pi-");
1073 decayTable->Insert(mode);
1074 } else if (iIso3==0) {
1075 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3,
1076 "pi0","pi0","pi0");
1077 decayTable->Insert(mode);
1078 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3,
1079 "pi0","pi+","pi-");
1080 decayTable->Insert(mode);
1081 } else if (iIso3==-2) {
1082 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3,
1083 "pi-","pi0","pi0");
1084 decayTable->Insert(mode);
1085 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3,
1086 "pi-","pi+","pi-");
1087 decayTable->Insert(mode);
1088 }
1089 }
1090 return decayTable;
1091}
1092
1094 G4DecayTable* decayTable, const G4String& nameParent,
1095 G4double br, G4int iIso3, G4int )
1096{
1097 G4VDecayChannel* mode;
1098
1099 if (iIso3==0) {
1100 // 2pi+ + 2pi-
1101 mode = new G4PhaseSpaceDecayChannel(nameParent, br/2., 4,
1102 "pi+","pi-","pi+","pi-");
1103 decayTable->Insert(mode);
1104 // pi+ + pi- + 2pi0
1105 mode = new G4PhaseSpaceDecayChannel(nameParent, br/2., 4,
1106 "pi+","pi-","pi0","pi0");
1107 decayTable->Insert(mode);
1108 } else if (iIso3==+2) {
1109 // pi+ + 3pi0
1110 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 4,
1111 "pi+","pi0","pi0","pi0");
1112 decayTable->Insert(mode);
1113 // 2pi+ + pi- + pi0
1114 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 4,
1115 "pi+","pi+","pi-","pi0");
1116 decayTable->Insert(mode);
1117 } else if (iIso3==-2) {
1118 // pi- + 3pi0
1119 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 4,
1120 "pi-","pi0","pi0","pi0");
1121 decayTable->Insert(mode);
1122 // 2pi- + pi+ + pi0
1123 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 4,
1124 "pi-","pi-","pi+","pi0");
1125 decayTable->Insert(mode);
1126 }
1127 return decayTable;
1128}
1129
1131 G4DecayTable* decayTable, const G4String& nameParent,
1132 G4double br, G4int , G4int iIso)
1133{
1134 // f1-->eta + pi + pi mode
1135
1136 if (iIso!=0) return decayTable;
1137
1138 G4VDecayChannel* mode;
1139
1140 // eta pi+ pi-
1141 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3,
1142 "eta","pi+","pi-");
1143 decayTable->Insert(mode);
1144
1145 // eta pi+ pi-
1146 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3,
1147 "eta","pi0","pi0");
1148 decayTable->Insert(mode);
1149 return decayTable;
1150}
1151
1153 G4DecayTable* decayTable, const G4String& nameParent,
1154 G4double br, G4int , G4int iIso)
1155{
1156 if (iIso!=0) return decayTable;
1157
1158 G4VDecayChannel* mode;
1159
1160 // eta eta
1161 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
1162 "eta","eta");
1163 decayTable->Insert(mode);
1164 return decayTable;
1165}
1166
1168 G4DecayTable* decayTable, const G4String& nameParent,
1169 G4double br, G4int iIso3, G4int iIso)
1170{
1171
1172 G4VDecayChannel* mode;
1173 if (iIso==0) {
1174 // omega pi+ pi-
1175 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3,
1176 "omega","pi+","pi-");
1177 decayTable->Insert(mode);
1178
1179 // omega pi+ pi-
1180 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3,
1181 "omega","pi0","pi0");
1182 decayTable->Insert(mode);
1183 } else if (iIso==2) {
1184 if (iIso3==+2) {
1185 // omega pi+ pi0
1186 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 3,
1187 "omega","pi+","pi0");
1188 decayTable->Insert(mode);
1189 } else if (iIso3==0) {
1190 // omega pi+ pi-
1191 mode = new G4PhaseSpaceDecayChannel(nameParent, br/2., 3,
1192 "omega","pi-","pi+");
1193 decayTable->Insert(mode);
1194 // omega pi0 pi0
1195 mode = new G4PhaseSpaceDecayChannel(nameParent, br/2., 3,
1196 "omega","pi0","pi0");
1197 decayTable->Insert(mode);
1198 } else if (iIso3==-2) {
1199 // omega pi- pi0
1200 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 3,
1201 "omega","pi-","pi0");
1202 decayTable->Insert(mode);
1203 }
1204 }
1205 return decayTable;
1206}
1207
1208
1209
1211 G4DecayTable* decayTable, const G4String& nameParent,
1212 G4double br, G4int iIso3, G4int iIso)
1213{
1214 G4VDecayChannel* mode;
1215
1216 if (iIso==0) {
1217 // f1 --> rho0 + pi+ pi-
1218 // rho0 pi+ pi-
1219 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1220 "rho0","pi+","pi-");
1221 decayTable->Insert(mode);
1222 } else if (iIso==2) {
1223 if (iIso3==+2) {
1224 // rho+ pi0 pi0
1225 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1226 "rho+","pi0","pi0");
1227 decayTable->Insert(mode);
1228 // rho+ pi+ pi-
1229 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1230 "rho+","pi+","pi-");
1231 decayTable->Insert(mode);
1232 // rho0 pi+ pi0
1233 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1234 "rho0","pi+","pi0");
1235 decayTable->Insert(mode);
1236 // rho- pi+ pi+
1237 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1238 "rho-","pi+","pi+");
1239 decayTable->Insert(mode);
1240 } else if (iIso3==-2) {
1241 // rho- pi0 pi0
1242 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1243 "rho-","pi0","pi0");
1244 decayTable->Insert(mode);
1245 // rho- pi+ pi-
1246 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1247 "rho-","pi+","pi-");
1248 decayTable->Insert(mode);
1249 // rho0 pi- pi0
1250 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1251 "rho0","pi-","pi0");
1252 decayTable->Insert(mode);
1253 // rho+ pi- pi-
1254 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1255 "rho+","pi-","pi-");
1256 decayTable->Insert(mode);
1257 } else if (iIso3==0) {
1258 // rho+ pi- pi0
1259 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1260 "rho+","pi-","pi0");
1261 decayTable->Insert(mode);
1262 // rho0 pi+ pi-
1263 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1264 "rho0","pi+","pi-");
1265 decayTable->Insert(mode);
1266 // rho0 pi0 pi0
1267 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1268 "rho0","pi0","pi0");
1269 decayTable->Insert(mode);
1270 // rho- pi+ pi0
1271 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3,
1272 "rho-","pi+","pi-");
1273 decayTable->Insert(mode);
1274 }
1275 }
1276 return decayTable;
1277}
1278
1279
1281 G4DecayTable* decayTable, const G4String& nameParent,
1282 G4double br, G4int , G4int iIso)
1283{
1284 // X(I=0,J=1)-->K + Anti-K*, Anti_K + K* mode
1285
1286 if (iIso!=0) return decayTable;
1287
1288 G4VDecayChannel* mode;
1289
1290 // K+ + K*-
1291 mode = new G4PhaseSpaceDecayChannel(nameParent, br/4., 2,
1292 "kaon+","k_star-");
1293 decayTable->Insert(mode);
1294
1295 // K- + K*+
1296 mode = new G4PhaseSpaceDecayChannel(nameParent, br/4., 2,
1297 "kaon-","k_star0");
1298 decayTable->Insert(mode);
1299
1300 // K0 + Anti_K*0
1301 mode = new G4PhaseSpaceDecayChannel(nameParent, br/4., 2,
1302 "kaon0","anti_k_star0");
1303 decayTable->Insert(mode);
1304
1305 // Anti_K0 + K*0
1306 mode = new G4PhaseSpaceDecayChannel(nameParent, br/4., 2,
1307 "anti_kaon0","k_star0");
1308 decayTable->Insert(mode);
1309
1310
1311 return decayTable;
1312}
1313
1315 G4DecayTable* decayTable, const G4String& nameParent,
1316 G4double br, G4int iIso3, G4int )
1317{
1318 G4VDecayChannel* mode;
1319
1320 if (iIso3==0) {
1321 // K+ + K-
1322 mode = new G4PhaseSpaceDecayChannel(nameParent, br/2., 2,
1323 "kaon+","kaon-");
1324 decayTable->Insert(mode);
1325
1326 // K0 + Anti_K0
1327 mode = new G4PhaseSpaceDecayChannel(nameParent, br/2., 2,
1328 "kaon0","anti_kaon0");
1329 decayTable->Insert(mode);
1330 } else if (iIso3==+2) {
1331 // K+ + anti_K0
1332 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
1333 "kaon+","anti_kaon0");
1334 decayTable->Insert(mode);
1335 } else if (iIso3==-2) {
1336 // K- + K0
1337 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2,
1338 "kaon-","kaon0");
1339 decayTable->Insert(mode);
1340 }
1341
1342 return decayTable;
1343}
1344
1346 G4DecayTable* decayTable, const G4String& nameParent,
1347 G4double br, G4int , G4int iIso)
1348{
1349
1350 // X(I=0)-->KKpi
1351 if (iIso!=0) return decayTable;
1352
1353 G4VDecayChannel* mode;
1354
1355 // K+ + K- + pi0
1356 mode = new G4PhaseSpaceDecayChannel(nameParent, br/6., 3,
1357 "kaon+","kaon-","pi0");
1358 decayTable->Insert(mode);
1359
1360 // K0 + Anti_K0 + pi0
1361 mode = new G4PhaseSpaceDecayChannel(nameParent, br/6., 3,
1362 "kaon0","anti_kaon0","pi0");
1363 decayTable->Insert(mode);
1364
1365 // K+ + anti_K0 + pi-
1366 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3,
1367 "kaon+","anti_kaon0","pi-");
1368 decayTable->Insert(mode);
1369
1370 // K- + K0 + pi+
1371 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3,
1372 "kaon-","kaon0","pi+");
1373 decayTable->Insert(mode);
1374
1375
1376 return decayTable;
1377}
1378
1379// PDG2005
1380// eta(1440) is renamed to eta(1475)
1381// omega(1600) is renamed to omega(1650)
1382//
1383//
1384
1385
1387{
1388 { "b1(1235)", "h1(1170)", "h1(1380)", "k1(1270)", "k1(1270)" },
1389 { "a0(1450)", "f0(1370)", "", "k0_star(1430)", "k0_star(1430)" },
1390 { "a1(1260)", "f1(1285)", "f1(1420)", "k1(1400)", "k1(1400)" },
1391 { "a2(1320)", "f2(1270)","f2_prime(1525)","k2_star(1430)","k2_star(1430)"},
1392 {"pi2(1670)", "eta2(1645)", "eta2(1870)", "k2(1770)", "k2(1770)" },
1393 {"rho(1700)", "omega(1650)", "", "k_star(1680)", "k_star(1680)" },
1394 {"rho3(1690)","omega3(1670)","phi3(1850)", "k3_star(1780)", "k3_star(1780)" },
1395 { "pi(1300)", "eta(1295)", "eta(1475)", "k(1460)", "k(1460)" },
1396 {"rho(1450)","omega(1420)", "phi(1680)", "k_star(1410)", "k_star(1410)" },
1397 { "", "f2(1810)", "f2(2010)", "k2_star(1980)", "k2_star(1980)" }
1398};
1399
1401{
1402 { 1.2295*GeV, 1.170*GeV, 1.386*GeV, 1.272*GeV, 1.272*GeV },
1403 { 1.474*GeV, 1.350*GeV, 0.0, 1.430*GeV, 1.430*GeV },
1404 { 1.230*GeV,1.2818*GeV,1.4264*GeV, 1.403*GeV, 1.403*GeV },
1405 { 1.3183*GeV,1.2751*GeV, 1.525*GeV,1.4256*GeV, 1.4256*GeV },
1406 { 1.6722*GeV, 1.617*GeV, 1.842*GeV, 1.773*GeV, 1.773*GeV },
1407 { 1.720*GeV, 1.670*GeV, 0.0, 1.717*GeV, 1.717*GeV },
1408 { 1.6888*GeV, 1.667*GeV, 1.854*GeV, 1.776*GeV, 1.776*GeV },
1409 { 1.300*GeV, 1.294*GeV, 1.476*GeV, 1.460*GeV, 1.460*GeV },
1410 { 1.465*GeV, 1.425*GeV, 1.680*GeV, 1.414*GeV, 1.414*GeV },
1411 { 0.0, 1.815*GeV, 2.010*GeV, 1.973*GeV, 1.973*GeV }
1412};
1413
1415 0.0*MeV, 0.0*MeV, 0.0*MeV, 6.8*MeV, 0.0*MeV,
1416 0.0*MeV, 0.0*MeV, 0.0*MeV, 0.0*MeV, 0.0*MeV
1417};
1418
1420 0.0*MeV, 0.0*MeV, 0.0*MeV, 10.5*MeV, 0.0*MeV,
1421 0.0*MeV, 0.0*MeV, 0.0*MeV, 0.0*MeV, 0.0*MeV
1422};
1423
1425{
1426 { 142.0*MeV, 360.0*MeV, 91.0*MeV, 90.0*MeV, 90.0*MeV },
1427 { 265.0*MeV, 350.0*MeV, 0.0, 270.0*MeV, 270.0*MeV },
1428 { 420.0*MeV, 24.3*MeV, 54.9*MeV, 174.0*MeV, 174.0*MeV },
1429 { 107.0*MeV, 185.1*MeV, 73.0*MeV, 98.5*MeV, 98.5*MeV },
1430 { 260.0*MeV, 181.0*MeV, 225.0*MeV, 186.0*MeV, 186.0*MeV },
1431 { 250.0*MeV, 315.0*MeV, 0.0, 320.0*MeV, 320.0*MeV },
1432 { 161.0*MeV, 168.0*MeV, 87.0*MeV, 159.0*MeV, 159.0*MeV },
1433 { 400.0*MeV, 55.0*MeV, 85.0*MeV, 260.0*MeV, 260.0*MeV },
1434 { 400.0*MeV, 215.0*MeV, 150.0*MeV, 232.0*MeV, 232.0*MeV },
1435 { 0.0, 197.0*MeV, 200.0*MeV, 373.0*MeV, 373.0*MeV }
1436};
1437
1438
1440{
1441// Tpi TEta TEtaPrime TK TAntiK
1442 2, 0, 0, 1, 1
1443};
1444
1446{
1447//N 1 1 1 1 1 1 1 2 2 2
1448// 1P1 3P0 3P1 3P2 1D2 3D1 3D3 1S0 3S1 3P2
1449 2, 0, 2, 4, 4, 2, 6, 0, 2, 4
1450};
1451
1453{
1454//N 1 1 1 1 1 1 1 2 2 2
1455// 1P1 3P0 3P1 3P2 1D2 3D1 3D3 1S0 3S1 3P2
1456 +1, +1, +1, +1, -1, -1, -1, -1, -1, +1
1457};
1458
1460{
1461//N 1 1 1 1 1 1 1 2 2 2
1462// 1P1 3P0 3P1 3P2 1D2 3D1 3D3 1S0 3S1 3P2
1463 -1, +1, +1, +1, +1, -1, -1, +1, -1, +1
1464};
1465
1467{
1468 { +1, -1, -1, 0, 0},
1469 { -1, +1, 0, 0, 0},
1470 { -1, +1, +1, 0, 0},
1471 { -1, +1, +1, 0, 0},
1472 { -1, +1, +1, 0, 0},
1473 { +1, -1, 0, 0, 0},
1474 { +1, -1, -1, 0, 0},
1475 { -1, +1, +1, 0, 0},
1476 { +1, -1, -1, 0, 0},
1477 { 0, +1, +1, 0, 0}
1478};
1479
1480
1482{ 10000, 10000, 20000, 0, 10000, 30000, 0, 100000,100000,100000};
1483
1484
1485
1486
1488{
1489 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1490 {
1491 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00 },
1492 { 0.00, 0.00, 0.00, 0.90, 0.10, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1493 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1494 { 0.00, 0.47, 0.42, 0.11, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1495 { 0.00, 0.47, 0.42, 0.11, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }
1496 },
1497 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1498 {
1499 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.90, 0.00, 0.00, 0.00, 0.10, 0.00, 0.00, 0.00, 0.10, 0.00, 0.00, 0.00, 0.00, 0.00 },
1500 { 0.00, 0.00, 0.10, 0.00, 0.00, 0.00, 0.70, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.20, 0.00, 0.00, 0.00, 0.00, 0.00 },
1501 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1502 { 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1503 { 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }
1504 },
1505 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1506 {
1507 { 0.10, 0.00, 0.00, 0.90, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1508 { 0.00, 0.07, 0.00, 0.00, 0.00, 0.00, 0.20, 0.00, 0.54, 0.00, 0.10, 0.00, 0.00, 0.00, 0.09, 0.00, 0.00, 0.00, 0.00 },
1509 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00 },
1510 { 0.00, 0.96, 0.03, 0.01, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1511 { 0.00, 0.96, 0.03, 0.01, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }
1512 },
1513 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1514 {
1515 { 0.00, 0.00, 0.00, 0.70, 0.00, 0.14, 0.00, 0.00, 0.00, 0.00, 0.00, 0.11, 0.00, 0.05, 0.00, 0.00, 0.00, 0.00, 0.00 },
1516 { 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.30, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.20, 0.00, 0.00, 0.00, 0.00, 0.00 },
1517 { 0.00, 0.00, 0.01, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.10, 0.89, 0.00, 0.00, 0.00, 0.00, 0.00 },
1518 { 0.50, 0.25, 0.09, 0.03, 0.13, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1519 { 0.50, 0.25, 0.09, 0.03, 0.13, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }
1520 },
1521 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1522 {
1523 { 0.00, 0.00, 0.00, 0.30, 0.00, 0.00, 0.00, 0.04, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.56, 0.10, 0.00 },
1524 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.10, 0.00, 0.00, 0.00, 0.90 },
1525 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50 },
1526 { 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1527 { 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }
1528 },
1529 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1530 {
1531 { 0.00, 0.00, 0.10, 0.00, 0.00, 0.20, 0.00, 0.00, 0.00, 0.00, 0.70, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1532 { 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1533 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1534 { 0.00, 0.40, 0.30, 0.30, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1535 { 0.00, 0.40, 0.30, 0.30, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }
1536 },
1537 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1538 {
1539 { 0.00, 0.00, 0.24, 0.00, 0.00, 0.00, 0.60, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.01, 0.04, 0.11, 0.00, 0.00, 0.00 },
1540 { 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1541 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.40, 0.00, 0.00, 0.00, 0.00, 0.00, 0.60, 0.00, 0.00, 0.00, 0.00, 0.00 },
1542 { 0.19, 0.20, 0.31, 0.00, 0.00, 0.00, 0.30, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1543 { 0.19, 0.20, 0.31, 0.00, 0.00, 0.00, 0.30, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }
1544 },
1545 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1546 {
1547 { 0.00, 0.00, 0.00, 0.50, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1548 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1549 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.20, 0.20, 0.00, 0.00, 0.00, 0.00, 0.00, 0.60, 0.00, 0.00, 0.00, 0.00 },
1550 { 0.00, 0.50, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1551 { 0.00, 0.50, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }
1552 },
1553 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1554 {
1555 { 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1556 { 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1557 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.80, 0.00, 0.00, 0.00, 0.00, 0.00, 0.10, 0.10, 0.00, 0.00, 0.00, 0.00 },
1558 { 0.30, 0.65, 0.05, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1559 { 0.30, 0.65, 0.05, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }
1560 },
1561 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1562 {
1563 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1564 { 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.30, 0.00, 0.00, 0.00, 0.00, 0.20, 0.00, 0.00, 0.00, 0.00, 0.00 },
1565 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1566 { 0.00, 0.00, 0.60, 0.40, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 },
1567 { 0.00, 0.00, 0.60, 0.40, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }
1568 }
1569};
1570
1571
1572
1573
1574
1575
double G4double
Definition: G4Types.hh:64
int G4int
Definition: G4Types.hh:66
bool G4bool
Definition: G4Types.hh:67
#define G4endl
Definition: G4ios.hh:52
G4DLLIMPORT std::ostream G4cerr
void Insert(G4VDecayChannel *aChannel)
Definition: G4DecayTable.cc:60
G4DecayTable * Add3PiMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * AddKRhoMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iType)
static const G4int iChargeConjugation[NMultiplets]
static const G4double mass[NMultiplets][NMesonTypes]
G4DecayTable * AddPiF0Mode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4ExcitedMesonConstructor(G4int nStates=0, G4int isoSpin=0)
G4DecayTable * AddPiA2Mode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * AddKStarPiMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iType)
static const G4double width[NMultiplets][NMesonTypes]
static const G4int iSpin[NMultiplets]
static const G4double massKdiff[NMultiplets]
G4DecayTable * AddKOmegaMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iType)
G4int GetEncoding(G4int iIsoSpin3, G4int idxState, G4int idxType)
G4String GetName(G4int iIso3, G4int iState, G4int idxType)
G4DecayTable * Add2KPiMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * Add2PiMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * AddKTwoPiMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iType)
G4DecayTable * CreateDecayTable(const G4String &, G4int, G4int, G4int)
G4int GetQuarkContents(G4int iQ, G4int iIso3, G4int iType)
static const G4int encodingOffset[NMultiplets]
G4DecayTable * AddPiOmegaMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * AddPiF2Mode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
static const G4double widthKdiff[NMultiplets]
void ConstructMesons(G4int indexOfState, G4int indexOfType)
G4DecayTable * AddKPiMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iType)
G4double GetCharge(G4int iIsoSpin3)
G4DecayTable * AddPiEtaMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * AddKStar2PiMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iType)
G4DecayTable * AddKEtaMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iType)
G4DecayTable * AddRhoEtaMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * Add2PiOmegaMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * Add2PiEtaMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * Add2PiRhoMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * AddRhoGammaMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * Add4PiMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
static const G4int iIsoSpin[NMesonTypes]
static const char * name[NMultiplets][NMesonTypes]
virtual void Construct(G4int indexOfState=-1)
static const G4int iParity[NMultiplets]
G4DecayTable * Add2EtaMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
static const G4int iGParity[NMultiplets][NMesonTypes]
static const G4double bRatio[NMultiplets][NMesonTypes][NumberOfDecayModes]
G4DecayTable * AddPiGammaMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * Add2KMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4bool Exist(G4int idxState, G4int idxType)
G4DecayTable * AddKKStarMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
G4DecayTable * AddPiRhoMode(G4DecayTable *table, const G4String &name, G4double br, G4int iIso3, G4int iIso)
void SetMultipletName(const G4String &)
void SetAntiPDGEncoding(G4int aEncoding)
void SetDecayTable(G4DecayTable *aDecayTable)
static G4ParticleTable * GetParticleTable()
#define encoding
Definition: xmlparse.cc:588