Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4AtomicShells Class Reference

#include <G4AtomicShells.hh>

Static Public Member Functions

static G4int GetNumberOfShells (G4int Z)
 
static G4int GetNumberOfElectrons (G4int Z, G4int SubshellNb)
 
static G4int GetNumberOfFreeElectrons (G4int Z, G4double th)
 
static G4double GetBindingEnergy (G4int Z, G4int SubshellNb)
 
static G4double GetTotalBindingEnergy (G4int Z)
 

Detailed Description

Definition at line 56 of file G4AtomicShells.hh.

Member Function Documentation

◆ GetBindingEnergy()

G4double G4AtomicShells::GetBindingEnergy ( G4int  Z,
G4int  SubshellNb 
)
static

Definition at line 779 of file G4AtomicShells.cc.

780{
781#ifdef G4VERBOSE
782 if(Z<0 || Z>104) { Z = PrintErrorZ(Z, "GetBindingEnergy"); }
783 if(ShellNb < 0 || ShellNb>=fNumberOfShells[Z]) {
784 ShellNb = PrintErrorShell(Z, ShellNb, "GetBindingEnergy");
785 }
786#endif
787 return fBindingEnergies[fIndexOfShells[Z] + ShellNb]*CLHEP::eV;
788}
const G4int Z[17]

Referenced by G4Element::AddIsotope(), G4DensityEffectCalculator::G4DensityEffectCalculator(), G4Element::G4Element(), G4DeltaAngle::SampleDirection(), and G4GammaTransition::SampleTransition().

◆ GetNumberOfElectrons()

G4int G4AtomicShells::GetNumberOfElectrons ( G4int  Z,
G4int  SubshellNb 
)
static

Definition at line 793 of file G4AtomicShells.cc.

794{
795#ifdef G4VERBOSE
796 if(Z<0 || Z>104) { Z = PrintErrorZ(Z, "GetNumberOfElectrons"); }
797 if(ShellNb < 0 || ShellNb>=fNumberOfShells[Z]) {
798 ShellNb = PrintErrorShell(Z, ShellNb, "GetNumberOfElectrons");
799 }
800#endif
801 return fNumberOfElectrons[fIndexOfShells[Z] + ShellNb];
802}

Referenced by G4Element::AddIsotope(), G4DensityEffectCalculator::G4DensityEffectCalculator(), G4Element::G4Element(), G4EmCorrections::LShellCorrection(), G4DeltaAngle::SampleDirection(), and G4EmCorrections::ShellCorrection().

◆ GetNumberOfFreeElectrons()

G4int G4AtomicShells::GetNumberOfFreeElectrons ( G4int  Z,
G4double  th 
)
static

Definition at line 807 of file G4AtomicShells.cc.

808{
809#ifdef G4VERBOSE
810 if(Z<0 || Z>104) { Z = PrintErrorZ(Z, "GetNumberOfFreeElectrons"); }
811#endif
812 G4int idx = fIndexOfShells[Z];
813 G4int idxmax = idx + fNumberOfShells[Z];
814 G4int n = 0;
815 for (G4int i=idx; i<idxmax; ++i) {
816 if(fBindingEnergies[i]*CLHEP::eV <= th) { n += fNumberOfElectrons[i]; }
817 }
818 return n;
819}
int G4int
Definition: G4Types.hh:85

◆ GetNumberOfShells()

◆ GetTotalBindingEnergy()

G4double G4AtomicShells::GetTotalBindingEnergy ( G4int  Z)
static

Definition at line 823 of file G4AtomicShells.cc.

824{
825#ifdef G4VERBOSE
826 if(Z<0 || Z>104) { Z = PrintErrorZ(Z, "GetTotalBindingEnergy"); }
827#endif
828 G4int idx = fIndexOfShells[Z];
829 G4int idxmax = idx + fNumberOfShells[Z];
830 G4double energy = 0.0;
831 for (G4int i=idx; i<idxmax; ++i) {energy += fBindingEnergies[i];}
832 return energy*CLHEP::eV;
833}
double G4double
Definition: G4Types.hh:83
G4double energy(const ThreeVector &p, const G4double m)

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