BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
ExN04IonPhysics Class Reference

#include <ExN04IonPhysics.hh>

Inheritance diagram for ExN04IonPhysics:

Public Member Functions

 ExN04IonPhysics (const G4String &name="ion")
virtual ~ExN04IonPhysics ()
virtual void ConstructParticle ()
virtual void ConstructProcess ()

Protected Attributes

G4HadronElasticProcess theElasticProcess
G4LElastic * theElasticModel
G4MultipleScattering fIonMultipleScattering
G4hIonisation 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

Detailed Description

Definition at line 60 of file ExN04IonPhysics.hh.

Constructor & Destructor Documentation

◆ ExN04IonPhysics()

ExN04IonPhysics::ExN04IonPhysics ( const G4String & name = "ion")

Definition at line 36 of file ExN04IonPhysics.cxx.

36: G4VPhysicsConstructor( name ) {}

◆ ~ExN04IonPhysics()

ExN04IonPhysics::~ExN04IonPhysics ( )
virtual

Definition at line 38 of file ExN04IonPhysics.cxx.

38{}

Member Function Documentation

◆ ConstructParticle()

void ExN04IonPhysics::ConstructParticle ( )
virtual

Definition at line 46 of file ExN04IonPhysics.cxx.

46 {
47 // Construct light ions
48 G4IonConstructor pConstructor;
49 pConstructor.ConstructParticle();
50}

◆ ConstructProcess()

void ExN04IonPhysics::ConstructProcess ( )
virtual

Definition at line 54 of file ExN04IonPhysics.cxx.

54 {
55 G4ProcessManager* pManager = 0;
56
57 // Elastic Process
58 theElasticModel = new G4LElastic();
60
61 // Generic Ion
62 pManager = G4GenericIon::GenericIon()->GetProcessManager();
63 // add process
64 pManager->AddDiscreteProcess( &theElasticProcess );
65
66 pManager->AddProcess( &fIonIonisation, ordInActive, 2, 2 );
67
68 pManager->AddProcess( &fIonMultipleScattering );
69 pManager->SetProcessOrdering( &fIonMultipleScattering, idxAlongStep, 1 );
70 pManager->SetProcessOrdering( &fIonMultipleScattering, idxPostStep, 1 );
71
72 // Deuteron
73 pManager = G4Deuteron::Deuteron()->GetProcessManager();
74 // add process
75 pManager->AddDiscreteProcess( &theElasticProcess );
76
77 fDeuteronModel = new G4LEDeuteronInelastic();
78 fDeuteronProcess.RegisterMe( fDeuteronModel );
79 pManager->AddDiscreteProcess( &fDeuteronProcess );
80
81 pManager->AddProcess( &fDeuteronIonisation, ordInActive, 2, 2 );
82
83 pManager->AddProcess( &fDeuteronMultipleScattering );
84 pManager->SetProcessOrdering( &fDeuteronMultipleScattering, idxAlongStep, 1 );
85 pManager->SetProcessOrdering( &fDeuteronMultipleScattering, idxPostStep, 1 );
86
87 // Triton
88 pManager = G4Triton::Triton()->GetProcessManager();
89 // add process
90 pManager->AddDiscreteProcess( &theElasticProcess );
91
92 fTritonModel = new G4LETritonInelastic();
93 fTritonProcess.RegisterMe( fTritonModel );
94 pManager->AddDiscreteProcess( &fTritonProcess );
95
96 pManager->AddProcess( &fTritonIonisation, ordInActive, 2, 2 );
97
98 pManager->AddProcess( &fTritonMultipleScattering );
99 pManager->SetProcessOrdering( &fTritonMultipleScattering, idxAlongStep, 1 );
100 pManager->SetProcessOrdering( &fTritonMultipleScattering, idxPostStep, 1 );
101
102 // Alpha
103 pManager = G4Alpha::Alpha()->GetProcessManager();
104 // add process
105 pManager->AddDiscreteProcess( &theElasticProcess );
106
107 fAlphaModel = new G4LEAlphaInelastic();
108 fAlphaProcess.RegisterMe( fAlphaModel );
109 pManager->AddDiscreteProcess( &fAlphaProcess );
110
111 pManager->AddProcess( &fAlphaIonisation, ordInActive, 2, 2 );
112
113 pManager->AddProcess( &fAlphaMultipleScattering );
114 pManager->SetProcessOrdering( &fAlphaMultipleScattering, idxAlongStep, 1 );
115 pManager->SetProcessOrdering( &fAlphaMultipleScattering, idxPostStep, 1 );
116
117 // He3
118 pManager = G4He3::He3()->GetProcessManager();
119 // add process
120 pManager->AddDiscreteProcess( &theElasticProcess );
121
122 pManager->AddProcess( &fHe3Ionisation, ordInActive, 2, 2 );
123
124 pManager->AddProcess( &fHe3MultipleScattering );
125 pManager->SetProcessOrdering( &fHe3MultipleScattering, idxAlongStep, 1 );
126 pManager->SetProcessOrdering( &fHe3MultipleScattering, idxPostStep, 1 );
127}
G4LEAlphaInelastic * fAlphaModel
G4MultipleScattering fHe3MultipleScattering
G4hIonisation fDeuteronIonisation
G4hIonisation fHe3Ionisation
G4LEDeuteronInelastic * fDeuteronModel
G4AlphaInelasticProcess fAlphaProcess
G4MultipleScattering fAlphaMultipleScattering
G4MultipleScattering fDeuteronMultipleScattering
G4DeuteronInelasticProcess fDeuteronProcess
G4hIonisation fIonIonisation
G4hIonisation fAlphaIonisation
G4TritonInelasticProcess fTritonProcess
G4LETritonInelastic * fTritonModel
G4MultipleScattering fTritonMultipleScattering
G4hIonisation fTritonIonisation
G4LElastic * theElasticModel
G4HadronElasticProcess theElasticProcess
G4MultipleScattering fIonMultipleScattering

Member Data Documentation

◆ fAlphaIonisation

G4hIonisation ExN04IonPhysics::fAlphaIonisation
protected

Definition at line 98 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fAlphaModel

G4LEAlphaInelastic* ExN04IonPhysics::fAlphaModel
protected

Definition at line 100 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fAlphaMultipleScattering

G4MultipleScattering ExN04IonPhysics::fAlphaMultipleScattering
protected

Definition at line 97 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fAlphaProcess

G4AlphaInelasticProcess ExN04IonPhysics::fAlphaProcess
protected

Definition at line 99 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fDeuteronIonisation

G4hIonisation ExN04IonPhysics::fDeuteronIonisation
protected

Definition at line 86 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fDeuteronModel

G4LEDeuteronInelastic* ExN04IonPhysics::fDeuteronModel
protected

Definition at line 88 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fDeuteronMultipleScattering

G4MultipleScattering ExN04IonPhysics::fDeuteronMultipleScattering
protected

Definition at line 85 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fDeuteronProcess

G4DeuteronInelasticProcess ExN04IonPhysics::fDeuteronProcess
protected

Definition at line 87 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fHe3Ionisation

G4hIonisation ExN04IonPhysics::fHe3Ionisation
protected

Definition at line 104 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fHe3MultipleScattering

G4MultipleScattering ExN04IonPhysics::fHe3MultipleScattering
protected

Definition at line 103 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fIonIonisation

G4hIonisation ExN04IonPhysics::fIonIonisation
protected

Definition at line 82 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fIonMultipleScattering

G4MultipleScattering ExN04IonPhysics::fIonMultipleScattering
protected

Definition at line 81 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fTritonIonisation

G4hIonisation ExN04IonPhysics::fTritonIonisation
protected

Definition at line 92 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fTritonModel

G4LETritonInelastic* ExN04IonPhysics::fTritonModel
protected

Definition at line 94 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fTritonMultipleScattering

G4MultipleScattering ExN04IonPhysics::fTritonMultipleScattering
protected

Definition at line 91 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ fTritonProcess

G4TritonInelasticProcess ExN04IonPhysics::fTritonProcess
protected

Definition at line 93 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ theElasticModel

G4LElastic* ExN04IonPhysics::theElasticModel
protected

Definition at line 78 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().

◆ theElasticProcess

G4HadronElasticProcess ExN04IonPhysics::theElasticProcess
protected

Definition at line 77 of file ExN04IonPhysics.hh.

Referenced by ConstructProcess().


The documentation for this class was generated from the following files: