19#include "G4ParticleDefinition.hh"
20#include "G4ProcessManager.hh"
21#include "G4LossTableManager.hh"
26#include "G4Electron.hh"
27#include "G4Positron.hh"
28#include "G4MuonPlus.hh"
29#include "G4MuonMinus.hh"
30#include "G4PionPlus.hh"
31#include "G4PionMinus.hh"
32#include "G4KaonPlus.hh"
33#include "G4KaonMinus.hh"
35#include "G4AntiProton.hh"
36#include "G4Deuteron.hh"
40#include "G4GenericIon.hh"
43#include "G4StepLimiter.hh"
47 : G4VPhysicsConstructor(name), verbose(ver)
49 G4LossTableManager::Instance();
63 G4Electron::Electron();
64 G4Positron::Positron();
65 G4MuonPlus::MuonPlus();
66 G4MuonMinus::MuonMinus();
69 G4PionPlus::PionPlusDefinition();
70 G4PionMinus::PionMinusDefinition();
71 G4KaonPlus::KaonPlusDefinition();
72 G4KaonMinus::KaonMinusDefinition();
76 G4AntiProton::AntiProton();
79 G4Deuteron::Deuteron();
83 G4GenericIon::GenericIonDefinition();
91 theParticleIterator->reset();
92 while( (*theParticleIterator)() ){
93 G4ParticleDefinition* particle = theParticleIterator->value();
94 G4ProcessManager* pmanager = particle->GetProcessManager();
95 G4String particleName = particle->GetParticleName();
97 if (particleName ==
"gamma") {
98 pmanager ->AddDiscreteProcess(
new G4StepLimiter());
99 }
else if (particleName ==
"e-") {
100 pmanager ->AddDiscreteProcess(
new G4StepLimiter());
101 }
else if (particleName ==
"e+") {
102 pmanager ->AddDiscreteProcess(
new G4StepLimiter());
103 }
else if (particleName ==
"mu+" ||
104 particleName ==
"mu-" ) {
105 pmanager ->AddDiscreteProcess(
new G4StepLimiter());
106 }
else if (particleName ==
"alpha" ||
107 particleName ==
"He3") {
108 pmanager ->AddDiscreteProcess(
new G4StepLimiter());
109 }
else if (particleName ==
"GenericIon") {
110 pmanager ->AddDiscreteProcess(
new G4StepLimiter());
111 }
else if (particleName ==
"pi+" ||
112 particleName ==
"pi-" ||
113 particleName ==
"kaon+" ||
114 particleName ==
"kaon-" ||
115 particleName ==
"proton" ||
116 particleName ==
"anti_proton" ) {
117 pmanager ->AddDiscreteProcess(
new G4StepLimiter());
StepLimiter(G4int ver=0, const G4String &name="StepLimiter")
virtual void ConstructParticle()
virtual void ConstructProcess()