47 G4ParticleTable* pTable = G4ParticleTable::GetParticleTable();
50 G4ParticleDefinition* piplus = pTable->FindParticle(
"pi+");
53 G4DecayTable* ppdt = piplus->GetDecayTable();
55 auto* ppmode2 =
new G4PhaseSpaceDecayChannel(
"pi+", 2.00e-4, 3,
"gamma",
"mu+",
"nu_mu");
57 auto* ppmode3 =
new G4PhaseSpaceDecayChannel(
"pi+", 1.23e-4, 2,
"e+",
"nu_e");
58 G4double ppnewBR = ppdt->GetDecayChannel(0)->GetBR() - 2.00e-4 - 1.23e-4;
59 ppdt->GetDecayChannel(0)->SetBR(ppnewBR);
60 ppdt->Insert(ppmode2);
61 ppdt->Insert(ppmode3);
65 G4ParticleDefinition* piminus = pTable->FindParticle(
"pi-");
68 G4DecayTable* pmdt = piminus->GetDecayTable();
70 auto* pnmode2 =
new G4PhaseSpaceDecayChannel(
"pi-", 2.00e-4, 3,
"gamma",
"mu-",
"anti_nu_mu");
72 auto* pnmode3 =
new G4PhaseSpaceDecayChannel(
"pi-", 1.23e-4, 2,
"e-",
"anti_nu_e");
73 G4double pnnewBR = pmdt->GetDecayChannel(0)->GetBR() - 2.00e-4 - 1.23e-4;
74 pmdt->GetDecayChannel(0)->SetBR(pnnewBR);
75 pmdt->Insert(pnmode2);
76 pmdt->Insert(pnmode3);