Geant4 10.7.0
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 755 of file G4AtomicShells.cc.

756{
757#ifdef G4VERBOSE
758 if(Z<0 || Z>100) { Z = PrintErrorZ(Z, "GetBindingEnergy"); }
759 if(ShellNb < 0 || ShellNb>=fNumberOfShells[Z]) {
760 ShellNb = PrintErrorShell(Z, ShellNb, "GetBindingEnergy");
761 }
762#endif
763 return fBindingEnergies[fIndexOfShells[Z] + ShellNb]*CLHEP::eV;
764}

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 769 of file G4AtomicShells.cc.

770{
771#ifdef G4VERBOSE
772 if(Z<0 || Z>100) { Z = PrintErrorZ(Z, "GetNumberOfElectrons"); }
773 if(ShellNb < 0 || ShellNb>=fNumberOfShells[Z]) {
774 ShellNb = PrintErrorShell(Z, ShellNb, "GetNumberOfElectrons");
775 }
776#endif
777 return fNumberOfElectrons[fIndexOfShells[Z] + ShellNb];
778}

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 783 of file G4AtomicShells.cc.

784{
785#ifdef G4VERBOSE
786 if(Z<0 || Z>100) { Z = PrintErrorZ(Z, "GetNumberOfFreeElectrons"); }
787#endif
788 G4int idx = fIndexOfShells[Z];
789 G4int idxmax = idx + fNumberOfShells[Z];
790 G4int n = 0;
791 for (G4int i=idx; i<idxmax; ++i) {
792 if(fBindingEnergies[i] <= th) { n += fNumberOfElectrons[i]; }
793 }
794 return n;
795}
int G4int
Definition: G4Types.hh:85

◆ GetNumberOfShells()

◆ GetTotalBindingEnergy()

G4double G4AtomicShells::GetTotalBindingEnergy ( G4int  Z)
static

Definition at line 799 of file G4AtomicShells.cc.

800{
801#ifdef G4VERBOSE
802 if(Z<0 || Z>100) { Z = PrintErrorZ(Z, "GetTotalBindingEnergy"); }
803#endif
804 G4int idx = fIndexOfShells[Z];
805 G4int idxmax = idx + fNumberOfShells[Z];
806 G4double energy = 0.0;
807 for (G4int i=idx; i<idxmax; ++i) {energy += fBindingEnergies[i];}
808 return energy*CLHEP::eV;
809}
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: