BOSS 7.0.4
BESIII Offline Software System
Loading...
Searching...
No Matches
ExteIonisation Class Reference

#include <ExteIonisation.h>

+ Inheritance diagram for ExteIonisation:

Public Member Functions

 ExteIonisation (const G4String &name="ExteIoni")
 
 ~ExteIonisation ()
 
G4bool IsApplicable (const G4ParticleDefinition &p)
 
virtual void PrintInfo ()
 
 ExteIonisation (const G4String &name="ExteIoni")
 
 ~ExteIonisation ()
 
G4bool IsApplicable (const G4ParticleDefinition &p)
 
virtual void PrintInfo ()
 

Protected Member Functions

std::vector< G4DynamicParticle * > * SecondariesPostStep (G4VEmModel *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double &)
 
virtual void InitialiseEnergyLossProcess (const G4ParticleDefinition *, const G4ParticleDefinition *)
 
virtual G4double MinPrimaryEnergy (const G4ParticleDefinition *, const G4Material *, G4double cut)
 
std::vector< G4DynamicParticle * > * SecondariesPostStep (G4VEmModel *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double &)
 
virtual void InitialiseEnergyLossProcess (const G4ParticleDefinition *, const G4ParticleDefinition *)
 
virtual G4double MinPrimaryEnergy (const G4ParticleDefinition *, const G4Material *, G4double cut)
 

Detailed Description

Constructor & Destructor Documentation

◆ ExteIonisation() [1/2]

ExteIonisation::ExteIonisation ( const G4String &  name = "ExteIoni")

Definition at line 81 of file ExteIonisation.cxx.

82 : G4VEnergyLossProcess(name),
83 theElectron(G4Electron::Electron()),
84 isElectron(true),
85 isInitialised(false)
86{
87 SetDEDXBinning(120);
88 SetLambdaBinning(120);
89 SetMinKinEnergy(0.1*keV);
90 SetMaxKinEnergy(100.0*TeV);
91 SetLossFluctuations(false);
92}

◆ ~ExteIonisation() [1/2]

ExteIonisation::~ExteIonisation ( )

Definition at line 96 of file ExteIonisation.cxx.

97{}

◆ ExteIonisation() [2/2]

ExteIonisation::ExteIonisation ( const G4String &  name = "ExteIoni")

◆ ~ExteIonisation() [2/2]

ExteIonisation::~ExteIonisation ( )

Member Function Documentation

◆ InitialiseEnergyLossProcess() [1/2]

void ExteIonisation::InitialiseEnergyLossProcess ( const G4ParticleDefinition *  part,
const G4ParticleDefinition *   
)
protectedvirtual

Definition at line 101 of file ExteIonisation.cxx.

102{
103 if(!isInitialised) {
104 if(part == G4Positron::Positron()) isElectron = false;
105 SetSecondaryParticle(theElectron);
106
107 flucModel = new G4UniversalFluctuation();
108
109 G4VEmModel* em = new G4MollerBhabhaModel();
110 em->SetLowEnergyLimit(0.1*keV);
111 em->SetHighEnergyLimit(100.0*TeV);
112 AddEmModel(1, em, flucModel);
113 isInitialised = true;
114 }
115
116}

◆ InitialiseEnergyLossProcess() [2/2]

virtual void ExteIonisation::InitialiseEnergyLossProcess ( const G4ParticleDefinition *  ,
const G4ParticleDefinition *   
)
protectedvirtual

◆ IsApplicable() [1/2]

G4bool ExteIonisation::IsApplicable ( const G4ParticleDefinition &  p)
inline

Definition at line 140 of file InstallArea/include/TrkExtAlg/TrkExtAlg/ExteIonisation.h.

141{
142 return (&p == G4Electron::Electron() || &p == G4Positron::Positron());
143}

◆ IsApplicable() [2/2]

G4bool ExteIonisation::IsApplicable ( const G4ParticleDefinition &  p)

◆ MinPrimaryEnergy() [1/2]

G4double ExteIonisation::MinPrimaryEnergy ( const G4ParticleDefinition *  ,
const G4Material *  ,
G4double  cut 
)
inlineprotectedvirtual

Definition at line 129 of file InstallArea/include/TrkExtAlg/TrkExtAlg/ExteIonisation.h.

132{
133 G4double x = cut;
134 if(isElectron) x += cut;
135 return x;
136}
Double_t x[10]
Char_t cut[200]
Definition: eff.cxx:63

◆ MinPrimaryEnergy() [2/2]

virtual G4double ExteIonisation::MinPrimaryEnergy ( const G4ParticleDefinition *  ,
const G4Material *  ,
G4double  cut 
)
protectedvirtual

◆ PrintInfo() [1/2]

void ExteIonisation::PrintInfo ( )
virtual

Definition at line 120 of file ExteIonisation.cxx.

121{
122 G4cout << " Delta cross sections from Moller+Bhabha, "
123 << "good description from 1 KeV to 100 GeV."
124 << G4endl;
125}

◆ PrintInfo() [2/2]

virtual void ExteIonisation::PrintInfo ( )
virtual

◆ SecondariesPostStep() [1/2]

std::vector< G4DynamicParticle * > * ExteIonisation::SecondariesPostStep ( G4VEmModel *  model,
const G4MaterialCutsCouple *  couple,
const G4DynamicParticle *  dp,
G4double &  tcut 
)
inlineprotected

Definition at line 147 of file InstallArea/include/TrkExtAlg/TrkExtAlg/ExteIonisation.h.

152{
153 //return model->SampleSecondaries(couple,dp,tcut);
154 return NULL;
155}

◆ SecondariesPostStep() [2/2]

std::vector< G4DynamicParticle * > * ExteIonisation::SecondariesPostStep ( G4VEmModel *  ,
const G4MaterialCutsCouple *  ,
const G4DynamicParticle *  ,
G4double &   
)
protected

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