40#include "G4MiscLHEPBuilder_CHIPS.hh"
42#include "G4ParticleDefinition.hh"
43#include "G4ParticleTable.hh"
44#include "G4ProcessManager.hh"
49 if(wasActivated)
delete inelastic;
54 G4ProcessManager * aProcMan = 0;
59 aProcMan = G4AntiProton::AntiProton()->GetProcessManager();
67 inelastic =
new G4QInelastic();
68 aProcMan->AddDiscreteProcess(inelastic);
71 theAntiNeutronInelastic =
new G4AntiNeutronInelasticProcess();
72 aProcMan = G4AntiNeutron::AntiNeutron()->GetProcessManager();
73 theLEAntiNeutronModel =
new G4LEAntiNeutronInelastic();
74 theHEAntiNeutronModel =
new G4HEAntiNeutronInelastic();
75 theHEAntiNeutronModel->SetMaxEnergy(100*TeV);
76 theAntiNeutronInelastic->RegisterMe(theLEAntiNeutronModel);
77 theAntiNeutronInelastic->RegisterMe(theHEAntiNeutronModel);
78 aProcMan->AddDiscreteProcess(theAntiNeutronInelastic);
81 theLambdaInelastic =
new G4LambdaInelasticProcess();
82 aProcMan = G4Lambda::Lambda()->GetProcessManager();
83 theLELambdaModel =
new G4LELambdaInelastic();
84 theHELambdaModel =
new G4HELambdaInelastic();
85 theHELambdaModel->SetMaxEnergy(100*TeV);
86 theLambdaInelastic->RegisterMe(theLELambdaModel);
87 theLambdaInelastic->RegisterMe(theHELambdaModel);
88 aProcMan->AddDiscreteProcess(theLambdaInelastic);
91 theAntiLambdaInelastic =
new G4AntiLambdaInelasticProcess();
92 aProcMan = G4AntiLambda::AntiLambda()->GetProcessManager();
93 theLEAntiLambdaModel =
new G4LEAntiLambdaInelastic();
94 theHEAntiLambdaModel =
new G4HEAntiLambdaInelastic();
95 theHEAntiLambdaModel->SetMaxEnergy(100*TeV);
96 theAntiLambdaInelastic->RegisterMe(theLEAntiLambdaModel);
97 theAntiLambdaInelastic->RegisterMe(theHEAntiLambdaModel);
98 aProcMan->AddDiscreteProcess(theAntiLambdaInelastic);
101 theSigmaMinusInelastic =
new G4SigmaMinusInelasticProcess();
102 aProcMan = G4SigmaMinus::SigmaMinus()->GetProcessManager();
103 theLESigmaMinusModel =
new G4LESigmaMinusInelastic();
104 theHESigmaMinusModel =
new G4HESigmaMinusInelastic();
105 theHESigmaMinusModel->SetMaxEnergy(100*TeV);
106 theSigmaMinusInelastic->RegisterMe(theLESigmaMinusModel);
107 theSigmaMinusInelastic->RegisterMe(theHESigmaMinusModel);
108 aProcMan->AddDiscreteProcess(theSigmaMinusInelastic);
111 theAntiSigmaMinusInelastic =
new G4AntiSigmaMinusInelasticProcess();
112 aProcMan = G4AntiSigmaMinus::AntiSigmaMinus()->GetProcessManager();
113 theLEAntiSigmaMinusModel =
new G4LEAntiSigmaMinusInelastic();
114 theHEAntiSigmaMinusModel =
new G4HEAntiSigmaMinusInelastic();
115 theHEAntiSigmaMinusModel->SetMaxEnergy(100*TeV);
116 theAntiSigmaMinusInelastic->RegisterMe(theLEAntiSigmaMinusModel);
117 theAntiSigmaMinusInelastic->RegisterMe(theHEAntiSigmaMinusModel);
118 aProcMan->AddDiscreteProcess(theAntiSigmaMinusInelastic);
121 theSigmaPlusInelastic =
new G4SigmaPlusInelasticProcess();
122 aProcMan = G4SigmaPlus::SigmaPlus()->GetProcessManager();
123 theLESigmaPlusModel =
new G4LESigmaPlusInelastic();
124 theHESigmaPlusModel =
new G4HESigmaPlusInelastic();
125 theHESigmaPlusModel->SetMaxEnergy(100*TeV);
126 theSigmaPlusInelastic->RegisterMe(theLESigmaPlusModel);
127 theSigmaPlusInelastic->RegisterMe(theHESigmaPlusModel);
128 aProcMan->AddDiscreteProcess(theSigmaPlusInelastic);
131 theAntiSigmaPlusInelastic =
new G4AntiSigmaPlusInelasticProcess();
132 aProcMan = G4AntiSigmaPlus::AntiSigmaPlus()->GetProcessManager();
133 theLEAntiSigmaPlusModel =
new G4LEAntiSigmaPlusInelastic();
134 theHEAntiSigmaPlusModel =
new G4HEAntiSigmaPlusInelastic();
135 theHEAntiSigmaPlusModel->SetMaxEnergy(100*TeV);
136 theAntiSigmaPlusInelastic->RegisterMe(theLEAntiSigmaPlusModel);
137 theAntiSigmaPlusInelastic->RegisterMe(theHEAntiSigmaPlusModel);
138 aProcMan->AddDiscreteProcess(theAntiSigmaPlusInelastic);
141 theXiMinusInelastic =
new G4XiMinusInelasticProcess();
142 aProcMan = G4XiMinus::XiMinus()->GetProcessManager();
143 theLEXiMinusModel =
new G4LEXiMinusInelastic();
144 theHEXiMinusModel =
new G4HEXiMinusInelastic();
145 theHEXiMinusModel->SetMaxEnergy(100*TeV);
146 theXiMinusInelastic->RegisterMe(theLEXiMinusModel);
147 theXiMinusInelastic->RegisterMe(theHEXiMinusModel);
148 aProcMan->AddDiscreteProcess(theXiMinusInelastic);
151 theAntiXiMinusInelastic =
new G4AntiXiMinusInelasticProcess();
152 aProcMan = G4AntiXiMinus::AntiXiMinus()->GetProcessManager();
153 theLEAntiXiMinusModel =
new G4LEAntiXiMinusInelastic();
154 theHEAntiXiMinusModel =
new G4HEAntiXiMinusInelastic();
155 theHEAntiXiMinusModel->SetMaxEnergy(100*TeV);
156 theAntiXiMinusInelastic->RegisterMe(theLEAntiXiMinusModel);
157 theAntiXiMinusInelastic->RegisterMe(theHEAntiXiMinusModel);
158 aProcMan->AddDiscreteProcess(theAntiXiMinusInelastic);
161 theXiZeroInelastic =
new G4XiZeroInelasticProcess();
162 aProcMan = G4XiZero::XiZero()->GetProcessManager();
163 theLEXiZeroModel =
new G4LEXiZeroInelastic();
164 theHEXiZeroModel =
new G4HEXiZeroInelastic();
165 theHEXiZeroModel->SetMaxEnergy(100*TeV);
166 theXiZeroInelastic->RegisterMe(theLEXiZeroModel);
167 theXiZeroInelastic->RegisterMe(theHEXiZeroModel);
168 aProcMan->AddDiscreteProcess(theXiZeroInelastic);
171 theAntiXiZeroInelastic =
new G4AntiXiZeroInelasticProcess();
172 aProcMan = G4AntiXiZero::AntiXiZero()->GetProcessManager();
173 theLEAntiXiZeroModel =
new G4LEAntiXiZeroInelastic();
174 theHEAntiXiZeroModel =
new G4HEAntiXiZeroInelastic();
175 theHEAntiXiZeroModel->SetMaxEnergy(100*TeV);
176 theAntiXiZeroInelastic->RegisterMe(theLEAntiXiZeroModel);
177 theAntiXiZeroInelastic->RegisterMe(theHEAntiXiZeroModel);
178 aProcMan->AddDiscreteProcess(theAntiXiZeroInelastic);
181 theOmegaMinusInelastic =
new G4OmegaMinusInelasticProcess();
182 aProcMan = G4OmegaMinus::OmegaMinus()->GetProcessManager();
183 theLEOmegaMinusModel =
new G4LEOmegaMinusInelastic();
184 theHEOmegaMinusModel =
new G4HEOmegaMinusInelastic();
185 theHEOmegaMinusModel->SetMaxEnergy(100*TeV);
186 theOmegaMinusInelastic->RegisterMe(theLEOmegaMinusModel);
187 theOmegaMinusInelastic->RegisterMe(theHEOmegaMinusModel);
188 aProcMan->AddDiscreteProcess(theOmegaMinusInelastic);
191 theAntiOmegaMinusInelastic =
new G4AntiOmegaMinusInelasticProcess();
192 aProcMan = G4AntiOmegaMinus::AntiOmegaMinus()->GetProcessManager();
193 theLEAntiOmegaMinusModel =
new G4LEAntiOmegaMinusInelastic();
194 theHEAntiOmegaMinusModel =
new G4HEAntiOmegaMinusInelastic();
195 theHEAntiOmegaMinusModel->SetMaxEnergy(100*TeV);
196 theAntiOmegaMinusInelastic->RegisterMe(theLEAntiOmegaMinusModel);
197 theAntiOmegaMinusInelastic->RegisterMe(theHEAntiOmegaMinusModel);
198 aProcMan->AddDiscreteProcess(theAntiOmegaMinusInelastic);
G4MiscLHEPBuilder_CHIPS()
virtual ~G4MiscLHEPBuilder_CHIPS()