#include <BesIonPhysics.hh>
Public Member Functions | |
BesIonPhysics (const G4String &name="ion") | |
virtual | ~BesIonPhysics () |
virtual void | ConstructParticle () |
virtual void | ConstructProcess () |
Protected Attributes | |
G4HadronElasticProcess | theElasticProcess |
G4LElastic * | theElasticModel |
G4MultipleScattering | fIonMultipleScattering |
G4ionIonisation | fIonIonisation |
G4MultipleScattering | fDeuteronMultipleScattering |
G4hIonisation | fDeuteronIonisation |
G4DeuteronInelasticProcess | fDeuteronProcess |
G4LEDeuteronInelastic * | fDeuteronModel |
G4MultipleScattering | fTritonMultipleScattering |
G4hIonisation | fTritonIonisation |
G4TritonInelasticProcess | fTritonProcess |
G4LETritonInelastic * | fTritonModel |
G4MultipleScattering | fAlphaMultipleScattering |
G4hIonisation | fAlphaIonisation |
G4AlphaInelasticProcess | fAlphaProcess |
G4LEAlphaInelastic * | fAlphaModel |
G4MultipleScattering | fHe3MultipleScattering |
G4hIonisation | fHe3Ionisation |
Definition at line 26 of file BesIonPhysics.hh.
BesIonPhysics::BesIonPhysics | ( | const G4String & | name = "ion" |
) |
BesIonPhysics::~BesIonPhysics | ( | ) | [virtual] |
void BesIonPhysics::ConstructParticle | ( | ) | [virtual] |
Definition at line 24 of file BesIonPhysics.cc.
00025 { 00026 // Construct light ions 00027 G4IonConstructor pConstructor; 00028 pConstructor.ConstructParticle(); 00029 }
void BesIonPhysics::ConstructProcess | ( | ) | [virtual] |
Definition at line 35 of file BesIonPhysics.cc.
References fAlphaIonisation, fAlphaModel, fAlphaMultipleScattering, fAlphaProcess, fDeuteronIonisation, fDeuteronModel, fDeuteronMultipleScattering, fDeuteronProcess, fHe3Ionisation, fHe3MultipleScattering, fIonIonisation, fIonMultipleScattering, fTritonIonisation, fTritonModel, fTritonMultipleScattering, fTritonProcess, theElasticModel, and theElasticProcess.
00036 { 00037 G4ProcessManager * pManager = 0; 00038 00039 // Elastic Process 00040 theElasticModel = new G4LElastic(); 00041 theElasticProcess.RegisterMe(theElasticModel); 00042 00043 // Generic Ion 00044 pManager = G4GenericIon::GenericIon()->GetProcessManager(); 00045 // add process 00046 pManager->AddDiscreteProcess(&theElasticProcess); 00047 00048 pManager->AddProcess(&fIonMultipleScattering, -1, 1, 1); 00049 pManager->AddProcess(&fIonIonisation, -1, 2, 2); 00050 00051 // Deuteron 00052 pManager = G4Deuteron::Deuteron()->GetProcessManager(); 00053 // add process 00054 pManager->AddDiscreteProcess(&theElasticProcess); 00055 00056 fDeuteronModel = new G4LEDeuteronInelastic(); 00057 fDeuteronProcess.RegisterMe(fDeuteronModel); 00058 pManager->AddDiscreteProcess(&fDeuteronProcess); 00059 00060 pManager->AddProcess(&fDeuteronMultipleScattering, -1, 1, 1); 00061 pManager->AddProcess(&fDeuteronIonisation, -1, 2, 2); 00062 00063 // Triton 00064 pManager = G4Triton::Triton()->GetProcessManager(); 00065 // add process 00066 pManager->AddDiscreteProcess(&theElasticProcess); 00067 00068 fTritonModel = new G4LETritonInelastic(); 00069 fTritonProcess.RegisterMe(fTritonModel); 00070 pManager->AddDiscreteProcess(&fTritonProcess); 00071 00072 pManager->AddProcess(&fTritonMultipleScattering, -1, 1, 1); 00073 pManager->AddProcess(&fTritonIonisation, -1, 2, 2); 00074 00075 // Alpha 00076 pManager = G4Alpha::Alpha()->GetProcessManager(); 00077 // add process 00078 pManager->AddDiscreteProcess(&theElasticProcess); 00079 00080 fAlphaModel = new G4LEAlphaInelastic(); 00081 fAlphaProcess.RegisterMe(fAlphaModel); 00082 pManager->AddDiscreteProcess(&fAlphaProcess); 00083 00084 pManager->AddProcess(&fAlphaMultipleScattering, -1, 1, 1); 00085 pManager->AddProcess(&fAlphaIonisation, -1, 2, 2); 00086 00087 // He3 00088 pManager = G4He3::He3()->GetProcessManager(); 00089 // add process 00090 pManager->AddDiscreteProcess(&theElasticProcess); 00091 00092 pManager->AddProcess(&fHe3MultipleScattering, -1, 1, 1); 00093 pManager->AddProcess(&fHe3Ionisation, -1, 2, 2); 00094 00095 00096 }
G4hIonisation BesIonPhysics::fAlphaIonisation [protected] |
G4LEAlphaInelastic* BesIonPhysics::fAlphaModel [protected] |
G4MultipleScattering BesIonPhysics::fAlphaMultipleScattering [protected] |
G4AlphaInelasticProcess BesIonPhysics::fAlphaProcess [protected] |
G4hIonisation BesIonPhysics::fDeuteronIonisation [protected] |
G4LEDeuteronInelastic* BesIonPhysics::fDeuteronModel [protected] |
G4MultipleScattering BesIonPhysics::fDeuteronMultipleScattering [protected] |
G4DeuteronInelasticProcess BesIonPhysics::fDeuteronProcess [protected] |
G4hIonisation BesIonPhysics::fHe3Ionisation [protected] |
G4MultipleScattering BesIonPhysics::fHe3MultipleScattering [protected] |
G4ionIonisation BesIonPhysics::fIonIonisation [protected] |
G4MultipleScattering BesIonPhysics::fIonMultipleScattering [protected] |
G4hIonisation BesIonPhysics::fTritonIonisation [protected] |
G4LETritonInelastic* BesIonPhysics::fTritonModel [protected] |
G4MultipleScattering BesIonPhysics::fTritonMultipleScattering [protected] |
G4TritonInelasticProcess BesIonPhysics::fTritonProcess [protected] |
G4LElastic* BesIonPhysics::theElasticModel [protected] |
G4HadronElasticProcess BesIonPhysics::theElasticProcess [protected] |