BOSS 7.0.8
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 ()
 

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)
 

Detailed Description

Definition at line 85 of file ExteIonisation.h.

Constructor & Destructor Documentation

◆ ExteIonisation()

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()

ExteIonisation::~ExteIonisation ( )

Definition at line 96 of file ExteIonisation.cxx.

97{}

Member Function Documentation

◆ InitialiseEnergyLossProcess()

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}

◆ IsApplicable()

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

Definition at line 140 of file ExteIonisation.h.

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

◆ MinPrimaryEnergy()

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

Definition at line 129 of file ExteIonisation.h.

132{
133 G4double x = cut;
134 if(isElectron) x += cut;
135 return x;
136}
Double_t x[10]

◆ PrintInfo()

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}

◆ SecondariesPostStep()

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

Definition at line 147 of file ExteIonisation.h.

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

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