BOSS 7.1.1
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 82 of file ExteIonisation.cxx.

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

◆ ~ExteIonisation()

ExteIonisation::~ExteIonisation ( )

Definition at line 97 of file ExteIonisation.cxx.

98{}

Member Function Documentation

◆ InitialiseEnergyLossProcess()

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

Definition at line 102 of file ExteIonisation.cxx.

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

◆ 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 121 of file ExteIonisation.cxx.

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

◆ 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: