BOSS 7.1.2
BESIII Offline Software System
Loading...
Searching...
No Matches
BesIonPhysics Class Reference

#include <BesIonPhysics.hh>

+ Inheritance diagram for BesIonPhysics:

Public Member Functions

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

Detailed Description

Definition at line 26 of file BesIonPhysics.hh.

Constructor & Destructor Documentation

◆ BesIonPhysics()

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

Definition at line 9 of file BesIonPhysics.cc.

10 : G4VPhysicsConstructor(name)
11{
12}

◆ ~BesIonPhysics()

BesIonPhysics::~BesIonPhysics ( )
virtual

Definition at line 14 of file BesIonPhysics.cc.

15{
16}

Member Function Documentation

◆ ConstructParticle()

void BesIonPhysics::ConstructParticle ( )
virtual

Definition at line 24 of file BesIonPhysics.cc.

25{
26 // Construct light ions
27 G4IonConstructor pConstructor;
28 pConstructor.ConstructParticle();
29}

◆ ConstructProcess()

void BesIonPhysics::ConstructProcess ( )
virtual

Definition at line 35 of file BesIonPhysics.cc.

36{/*
37 G4ProcessManager * pManager = 0;
38
39 // Elastic Process
40 theElasticModel = new G4LElastic();
41 theElasticProcess.RegisterMe(theElasticModel);
42
43 // Generic Ion
44 pManager = G4GenericIon::GenericIon()->GetProcessManager();
45 // add process
46 pManager->AddDiscreteProcess(&theElasticProcess);
47
48 pManager->AddProcess(&fIonMultipleScattering, -1, 1, 1);
49 pManager->AddProcess(&fIonIonisation, -1, 2, 2);
50
51 // Deuteron
52 pManager = G4Deuteron::Deuteron()->GetProcessManager();
53 // add process
54 pManager->AddDiscreteProcess(&theElasticProcess);
55
56 fDeuteronModel = new G4LEDeuteronInelastic();
57 fDeuteronProcess.RegisterMe(fDeuteronModel);
58 pManager->AddDiscreteProcess(&fDeuteronProcess);
59
60 pManager->AddProcess(&fDeuteronMultipleScattering, -1, 1, 1);
61 pManager->AddProcess(&fDeuteronIonisation, -1, 2, 2);
62
63 // Triton
64 pManager = G4Triton::Triton()->GetProcessManager();
65 // add process
66 pManager->AddDiscreteProcess(&theElasticProcess);
67
68 fTritonModel = new G4LETritonInelastic();
69 fTritonProcess.RegisterMe(fTritonModel);
70 pManager->AddDiscreteProcess(&fTritonProcess);
71
72 pManager->AddProcess(&fTritonMultipleScattering, -1, 1, 1);
73 pManager->AddProcess(&fTritonIonisation, -1, 2, 2);
74
75 // Alpha
76 pManager = G4Alpha::Alpha()->GetProcessManager();
77 // add process
78 pManager->AddDiscreteProcess(&theElasticProcess);
79
80 fAlphaModel = new G4LEAlphaInelastic();
81 fAlphaProcess.RegisterMe(fAlphaModel);
82 pManager->AddDiscreteProcess(&fAlphaProcess);
83
84 pManager->AddProcess(&fAlphaMultipleScattering, -1, 1, 1);
85 pManager->AddProcess(&fAlphaIonisation, -1, 2, 2);
86
87 // He3
88 pManager = G4He3::He3()->GetProcessManager();
89 // add process
90 pManager->AddDiscreteProcess(&theElasticProcess);
91
92 pManager->AddProcess(&fHe3MultipleScattering, -1, 1, 1);
93 pManager->AddProcess(&fHe3Ionisation, -1, 2, 2);
94*/
95
96}

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