BOSS 7.0.9
BESIII Offline Software System
Loading...
Searching...
No Matches
ExtPhysicsList Class Reference

#include <ExtPhysicsList.h>

+ Inheritance diagram for ExtPhysicsList:

Public Member Functions

 ExtPhysicsList ()
 
 ~ExtPhysicsList ()
 

Protected Member Functions

void ConstructParticle ()
 
void ConstructProcess ()
 
void SetCuts ()
 

Detailed Description

Definition at line 13 of file ExtPhysicsList.h.

Constructor & Destructor Documentation

◆ ExtPhysicsList()

ExtPhysicsList::ExtPhysicsList ( )

Definition at line 25 of file ExtPhysicsList.cxx.

26{
27 defaultCutValue = 0.5*mm;
28}

◆ ~ExtPhysicsList()

ExtPhysicsList::~ExtPhysicsList ( )

Definition at line 30 of file ExtPhysicsList.cxx.

30{;}

Member Function Documentation

◆ ConstructParticle()

void ExtPhysicsList::ConstructParticle ( )
protected

Definition at line 32 of file ExtPhysicsList.cxx.

33{
34 // In this method, static member functions should be called
35 // for all particles which you want to use.
36 // This ensures that objects of these particle types will be
37 // created in the program.
38 G4Gamma:: GammaDefinition();
39 G4Electron:: ElectronDefinition();
40 G4Positron:: PositronDefinition();
41 G4MuonPlus:: MuonPlusDefinition();
42 G4MuonMinus:: MuonMinusDefinition();
43 G4PionPlus:: PionPlusDefinition();
44 G4PionMinus:: PionMinusDefinition();
45 G4KaonPlus:: KaonPlusDefinition();
46 G4KaonMinus:: KaonMinusDefinition();
47 G4Proton:: ProtonDefinition();
48 G4AntiProton:: AntiProtonDefinition();
49}

◆ ConstructProcess()

void ExtPhysicsList::ConstructProcess ( )
protected

Definition at line 52 of file ExtPhysicsList.cxx.

53{
54 // Define transportation process (must be invoked)
55 AddTransportation();
56
57 //Add Energy Loss Process
58 theParticleIterator->reset();
59 while( (*theParticleIterator)() )
60 {
61 G4ParticleDefinition* particle = theParticleIterator->value();
62 G4ProcessManager* pmanager = particle->GetProcessManager();
63 G4String particleName = particle->GetParticleName();
64 if(particleName == "e-" || particleName == "e+")
65 {
66// pmanager->AddProcess( new G4MultipleScattering,-1,1,1);
67// pmanager->AddProcess( new G4eIonisation,-1,2,2);
68 pmanager->AddProcess( new ExteIonisation,-1,1,1);
69// pmanager->AddProcess( new G4eBremsstrahlung,-1,2,2);
70 }
71 else if(particleName == "mu-" || particleName == "mu+")
72 {
73// pmanager->AddProcess( new G4MultipleScattering,-1,1,1);
74// pmanager->AddProcess( new G4MuIonisation,-1,2,2);
75 pmanager->AddProcess( new ExtMuIonisation,-1,1,1);
76// pmanager->AddProcess( new G4MuBremsstrahlung,-1,2,2);
77 }
78 else if((!particle->IsShortLived()) && (particle->GetPDGCharge() != 0.0) && (particleName != "chargedgeantino"))
79 {
80// pmanager->AddProcess( new G4MultipleScattering,-1,1,1);
81// pmanager->AddProcess( new G4hIonisation,-1,2,2);
82// pmanager->AddProcess( new ExtMultipleScattering,-1,1,1);
83 pmanager->AddProcess( new ExthIonisation,-1,1,1);
84 }
85 }
86}

◆ SetCuts()

void ExtPhysicsList::SetCuts ( )
protected

Definition at line 89 of file ExtPhysicsList.cxx.

90{
91 // " G4VUserPhysicsList::SetCutsWithDefault" method sets
92 // the default cut value for all particle types
93 SetCutsWithDefault();
94
95}

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