#include <G4LivermoreIonisationCrossSection.hh>
|
| G4LivermoreIonisationCrossSection (const G4String &nam="LivermorePIXE") |
|
virtual | ~G4LivermoreIonisationCrossSection () |
|
void | Initialise () |
|
G4double | CrossSection (G4int Z, G4AtomicShellEnumerator shell, G4double incidentEnergy, G4double mass=0.0, const G4Material *mat=0) |
|
std::vector< G4double > | GetCrossSection (G4int Z, G4double incidentEnergy, G4double mass=0.0, G4double deltaEnergy=0.0, const G4Material *mat=0) |
|
std::vector< G4double > | Probabilities (G4int Z, G4double incidentEnergy, G4double mass=0.0, G4double deltaEnergy=0, const G4Material *mat=0) |
|
| G4VhShellCrossSection (const G4String &xname="") |
|
virtual | ~G4VhShellCrossSection () |
|
G4int | SelectRandomShell (G4int Z, G4double incidentEnergy, G4double mass, G4double deltaEnergy, const G4Material *mat) |
|
virtual std::vector< G4double > | GetCrossSection (G4int Z, G4double incidentEnergy, G4double mass, G4double deltaEnergy, const G4Material *mat)=0 |
|
virtual G4double | CrossSection (G4int Z, G4AtomicShellEnumerator shell, G4double incidentEnergy, G4double mass, const G4Material *mat)=0 |
|
virtual std::vector< G4double > | Probabilities (G4int Z, G4double incidentEnergy, G4double mass, G4double deltaEnergy, const G4Material *mat)=0 |
|
virtual void | SetTotalCS (G4double) |
|
const G4String & | GetName () const |
|
◆ G4LivermoreIonisationCrossSection()
G4LivermoreIonisationCrossSection::G4LivermoreIonisationCrossSection |
( |
const G4String & |
nam = "LivermorePIXE" | ) |
|
Definition at line 47 of file G4LivermoreIonisationCrossSection.cc.
49{
50 fLowEnergyLimit = 10.0*eV;
51 fHighEnergyLimit = 100.0*GeV;
52
54
55 verboseLevel = 0;
56
58}
static G4AtomicTransitionManager * Instance()
◆ ~G4LivermoreIonisationCrossSection()
G4LivermoreIonisationCrossSection::~G4LivermoreIonisationCrossSection |
( |
| ) |
|
|
virtual |
◆ CrossSection()
◆ GetCrossSection()
◆ Initialise()
void G4LivermoreIonisationCrossSection::Initialise |
( |
| ) |
|
Definition at line 69 of file G4LivermoreIonisationCrossSection.cc.
70{
71 const G4int binForFluo = 20;
72 G4int nbin =
G4int(std::log10(fHighEnergyLimit/fLowEnergyLimit) + 0.5);
73 if(nbin <= 0) { nbin = 1; }
74 nbin *= binForFluo;
75
76
77 if (crossSectionHandler) {
78 crossSectionHandler->
Clear();
79 delete crossSectionHandler;
80 }
81
83 crossSectionHandler =
86
87}
void LoadShellData(const G4String &dataFile)
Referenced by G4LivermoreIonisationCrossSection().
◆ Probabilities()
Implements G4VhShellCrossSection.
Definition at line 124 of file G4LivermoreIonisationCrossSection.cc.
129{
131 size_t n = vec.size();
132 size_t i;
134 for(i=0; i<
n; ++i) { sum += vec[i]; }
135 if(sum > 0.0) {
136 sum = 1.0/sum;
137 for(i=0; i<
n; ++i) { vec[i] = vec[i]*sum; }
138 }
139 return vec;
140}
std::vector< G4double > GetCrossSection(G4int Z, G4double incidentEnergy, G4double mass=0.0, G4double deltaEnergy=0.0, const G4Material *mat=0)
The documentation for this class was generated from the following files: