#include <G4HyperonLHEPBuilder.hh>
Public Member Functions | |
G4HyperonLHEPBuilder () | |
virtual | ~G4HyperonLHEPBuilder () |
void | Build () |
Definition at line 84 of file G4HyperonLHEPBuilder.hh.
G4HyperonLHEPBuilder::G4HyperonLHEPBuilder | ( | ) |
Definition at line 46 of file G4HyperonLHEPBuilder.cc.
00046 : 00047 theLambdaInelastic(0), theLELambdaModel(0), theHELambdaModel(0), 00048 theAntiLambdaInelastic(0), theLEAntiLambdaModel(0), theHEAntiLambdaModel(0), 00049 theSigmaMinusInelastic(0), theLESigmaMinusModel(0), theHESigmaMinusModel(0), 00050 theAntiSigmaMinusInelastic(0), theLEAntiSigmaMinusModel(0), theHEAntiSigmaMinusModel(0), 00051 theSigmaPlusInelastic(0), theLESigmaPlusModel(0), theHESigmaPlusModel(0), 00052 theAntiSigmaPlusInelastic(0), theLEAntiSigmaPlusModel(0), theHEAntiSigmaPlusModel(0), 00053 theXiZeroInelastic(0), theLEXiZeroModel(0), theHEXiZeroModel(0), 00054 theAntiXiZeroInelastic(0), theLEAntiXiZeroModel(0), theHEAntiXiZeroModel(0), 00055 theXiMinusInelastic(0), theLEXiMinusModel(0), theHEXiMinusModel(0), 00056 theAntiXiMinusInelastic(0), theLEAntiXiMinusModel(0), theHEAntiXiMinusModel(0), 00057 theOmegaMinusInelastic(0), theLEOmegaMinusModel(0), theHEOmegaMinusModel(0), 00058 theAntiOmegaMinusInelastic(0), theLEAntiOmegaMinusModel(0), theHEAntiOmegaMinusModel(0), 00059 wasActivated(false) 00060 {}
G4HyperonLHEPBuilder::~G4HyperonLHEPBuilder | ( | ) | [virtual] |
void G4HyperonLHEPBuilder::Build | ( | ) |
Definition at line 66 of file G4HyperonLHEPBuilder.cc.
References G4ProcessManager::AddDiscreteProcess(), G4AntiLambda::AntiLambda(), G4AntiOmegaMinus::AntiOmegaMinus(), G4AntiSigmaMinus::AntiSigmaMinus(), G4AntiSigmaPlus::AntiSigmaPlus(), G4AntiXiMinus::AntiXiMinus(), G4AntiXiZero::AntiXiZero(), G4ParticleDefinition::GetProcessManager(), G4Lambda::Lambda(), G4OmegaMinus::OmegaMinus(), G4HadronicProcess::RegisterMe(), G4HadronicInteraction::SetMaxEnergy(), G4SigmaMinus::SigmaMinus(), G4SigmaPlus::SigmaPlus(), G4XiMinus::XiMinus(), and G4XiZero::XiZero().
00067 { 00068 G4ProcessManager * aProcMan = 0; 00069 wasActivated = true; 00070 00071 // Lambda 00072 theLambdaInelastic = new G4LambdaInelasticProcess(); 00073 aProcMan = G4Lambda::Lambda()->GetProcessManager(); 00074 theLELambdaModel = new G4LELambdaInelastic(); 00075 theHELambdaModel = new G4HELambdaInelastic(); 00076 theHELambdaModel->SetMaxEnergy(100*TeV); 00077 theLambdaInelastic->RegisterMe(theLELambdaModel); 00078 theLambdaInelastic->RegisterMe(theHELambdaModel); 00079 aProcMan->AddDiscreteProcess(theLambdaInelastic); 00080 00081 // AntiLambda 00082 theAntiLambdaInelastic = new G4AntiLambdaInelasticProcess(); 00083 aProcMan = G4AntiLambda::AntiLambda()->GetProcessManager(); 00084 theLEAntiLambdaModel = new G4LEAntiLambdaInelastic(); 00085 theHEAntiLambdaModel = new G4HEAntiLambdaInelastic(); 00086 theHEAntiLambdaModel->SetMaxEnergy(100*TeV); 00087 theAntiLambdaInelastic->RegisterMe(theLEAntiLambdaModel); 00088 theAntiLambdaInelastic->RegisterMe(theHEAntiLambdaModel); 00089 aProcMan->AddDiscreteProcess(theAntiLambdaInelastic); 00090 00091 // SigmaMinus 00092 theSigmaMinusInelastic = new G4SigmaMinusInelasticProcess(); 00093 aProcMan = G4SigmaMinus::SigmaMinus()->GetProcessManager(); 00094 theLESigmaMinusModel = new G4LESigmaMinusInelastic(); 00095 theHESigmaMinusModel = new G4HESigmaMinusInelastic(); 00096 theHESigmaMinusModel->SetMaxEnergy(100*TeV); 00097 theSigmaMinusInelastic->RegisterMe(theLESigmaMinusModel); 00098 theSigmaMinusInelastic->RegisterMe(theHESigmaMinusModel); 00099 aProcMan->AddDiscreteProcess(theSigmaMinusInelastic); 00100 00101 // anti-SigmaMinus 00102 theAntiSigmaMinusInelastic = new G4AntiSigmaMinusInelasticProcess(); 00103 aProcMan = G4AntiSigmaMinus::AntiSigmaMinus()->GetProcessManager(); 00104 theLEAntiSigmaMinusModel = new G4LEAntiSigmaMinusInelastic(); 00105 theHEAntiSigmaMinusModel = new G4HEAntiSigmaMinusInelastic(); 00106 theHEAntiSigmaMinusModel->SetMaxEnergy(100*TeV); 00107 theAntiSigmaMinusInelastic->RegisterMe(theLEAntiSigmaMinusModel); 00108 theAntiSigmaMinusInelastic->RegisterMe(theHEAntiSigmaMinusModel); 00109 aProcMan->AddDiscreteProcess(theAntiSigmaMinusInelastic); 00110 00111 // SigmaPlus 00112 theSigmaPlusInelastic = new G4SigmaPlusInelasticProcess(); 00113 aProcMan = G4SigmaPlus::SigmaPlus()->GetProcessManager(); 00114 theLESigmaPlusModel = new G4LESigmaPlusInelastic(); 00115 theHESigmaPlusModel = new G4HESigmaPlusInelastic(); 00116 theHESigmaPlusModel->SetMaxEnergy(100*TeV); 00117 theSigmaPlusInelastic->RegisterMe(theLESigmaPlusModel); 00118 theSigmaPlusInelastic->RegisterMe(theHESigmaPlusModel); 00119 aProcMan->AddDiscreteProcess(theSigmaPlusInelastic); 00120 00121 // anti-SigmaPlus 00122 theAntiSigmaPlusInelastic = new G4AntiSigmaPlusInelasticProcess(); 00123 aProcMan = G4AntiSigmaPlus::AntiSigmaPlus()->GetProcessManager(); 00124 theLEAntiSigmaPlusModel = new G4LEAntiSigmaPlusInelastic(); 00125 theHEAntiSigmaPlusModel = new G4HEAntiSigmaPlusInelastic(); 00126 theHEAntiSigmaPlusModel->SetMaxEnergy(100*TeV); 00127 theAntiSigmaPlusInelastic->RegisterMe(theLEAntiSigmaPlusModel); 00128 theAntiSigmaPlusInelastic->RegisterMe(theHEAntiSigmaPlusModel); 00129 aProcMan->AddDiscreteProcess(theAntiSigmaPlusInelastic); 00130 00131 // XiMinus 00132 theXiMinusInelastic = new G4XiMinusInelasticProcess(); 00133 aProcMan = G4XiMinus::XiMinus()->GetProcessManager(); 00134 theLEXiMinusModel = new G4LEXiMinusInelastic(); 00135 theHEXiMinusModel = new G4HEXiMinusInelastic(); 00136 theHEXiMinusModel->SetMaxEnergy(100*TeV); 00137 theXiMinusInelastic->RegisterMe(theLEXiMinusModel); 00138 theXiMinusInelastic->RegisterMe(theHEXiMinusModel); 00139 aProcMan->AddDiscreteProcess(theXiMinusInelastic); 00140 00141 // anti-XiMinus 00142 theAntiXiMinusInelastic = new G4AntiXiMinusInelasticProcess(); 00143 aProcMan = G4AntiXiMinus::AntiXiMinus()->GetProcessManager(); 00144 theLEAntiXiMinusModel = new G4LEAntiXiMinusInelastic(); 00145 theHEAntiXiMinusModel = new G4HEAntiXiMinusInelastic(); 00146 theHEAntiXiMinusModel->SetMaxEnergy(100*TeV); 00147 theAntiXiMinusInelastic->RegisterMe(theLEAntiXiMinusModel); 00148 theAntiXiMinusInelastic->RegisterMe(theHEAntiXiMinusModel); 00149 aProcMan->AddDiscreteProcess(theAntiXiMinusInelastic); 00150 00151 // XiZero 00152 theXiZeroInelastic = new G4XiZeroInelasticProcess(); 00153 aProcMan = G4XiZero::XiZero()->GetProcessManager(); 00154 theLEXiZeroModel = new G4LEXiZeroInelastic(); 00155 theHEXiZeroModel = new G4HEXiZeroInelastic(); 00156 theHEXiZeroModel->SetMaxEnergy(100*TeV); 00157 theXiZeroInelastic->RegisterMe(theLEXiZeroModel); 00158 theXiZeroInelastic->RegisterMe(theHEXiZeroModel); 00159 aProcMan->AddDiscreteProcess(theXiZeroInelastic); 00160 00161 // anti-XiZero 00162 theAntiXiZeroInelastic = new G4AntiXiZeroInelasticProcess(); 00163 aProcMan = G4AntiXiZero::AntiXiZero()->GetProcessManager(); 00164 theLEAntiXiZeroModel = new G4LEAntiXiZeroInelastic(); 00165 theHEAntiXiZeroModel = new G4HEAntiXiZeroInelastic(); 00166 theHEAntiXiZeroModel->SetMaxEnergy(100*TeV); 00167 theAntiXiZeroInelastic->RegisterMe(theLEAntiXiZeroModel); 00168 theAntiXiZeroInelastic->RegisterMe(theHEAntiXiZeroModel); 00169 aProcMan->AddDiscreteProcess(theAntiXiZeroInelastic); 00170 00171 // OmegaMinus 00172 theOmegaMinusInelastic = new G4OmegaMinusInelasticProcess(); 00173 aProcMan = G4OmegaMinus::OmegaMinus()->GetProcessManager(); 00174 theLEOmegaMinusModel = new G4LEOmegaMinusInelastic(); 00175 theHEOmegaMinusModel = new G4HEOmegaMinusInelastic(); 00176 theHEOmegaMinusModel->SetMaxEnergy(100*TeV); 00177 theOmegaMinusInelastic->RegisterMe(theLEOmegaMinusModel); 00178 theOmegaMinusInelastic->RegisterMe(theHEOmegaMinusModel); 00179 aProcMan->AddDiscreteProcess(theOmegaMinusInelastic); 00180 00181 // anti-OmegaMinus 00182 theAntiOmegaMinusInelastic = new G4AntiOmegaMinusInelasticProcess(); 00183 aProcMan = G4AntiOmegaMinus::AntiOmegaMinus()->GetProcessManager(); 00184 theLEAntiOmegaMinusModel = new G4LEAntiOmegaMinusInelastic(); 00185 theHEAntiOmegaMinusModel = new G4HEAntiOmegaMinusInelastic(); 00186 theHEAntiOmegaMinusModel->SetMaxEnergy(100*TeV); 00187 theAntiOmegaMinusInelastic->RegisterMe(theLEAntiOmegaMinusModel); 00188 theAntiOmegaMinusInelastic->RegisterMe(theHEAntiOmegaMinusModel); 00189 aProcMan->AddDiscreteProcess(theAntiOmegaMinusInelastic); 00190 }