Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4VhShellCrossSection Class Referenceabstract

#include <G4VhShellCrossSection.hh>

+ Inheritance diagram for G4VhShellCrossSection:

Public Member Functions

 G4VhShellCrossSection (const G4String &xname="")
 
virtual ~G4VhShellCrossSection ()
 
G4int SelectRandomShell (G4int Z, G4double incidentEnergy, G4double mass, G4double deltaEnergy, const G4Material *mat)
 
virtual std::vector< G4doubleGetCrossSection (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< G4doubleProbabilities (G4int Z, G4double incidentEnergy, G4double mass, G4double deltaEnergy, const G4Material *mat)=0
 
virtual void SetTotalCS (G4double)
 
const G4StringGetName () const
 
 G4VhShellCrossSection (const G4VhShellCrossSection &)=delete
 
G4VhShellCrossSectionoperator= (const G4VhShellCrossSection &right)=delete
 

Detailed Description

Definition at line 60 of file G4VhShellCrossSection.hh.

Constructor & Destructor Documentation

◆ G4VhShellCrossSection() [1/2]

G4VhShellCrossSection::G4VhShellCrossSection ( const G4String & xname = "")
explicit

Definition at line 48 of file G4VhShellCrossSection.cc.

49 :name(xname)
50{}

◆ ~G4VhShellCrossSection()

G4VhShellCrossSection::~G4VhShellCrossSection ( )
virtual

Definition at line 53 of file G4VhShellCrossSection.cc.

54{}

◆ G4VhShellCrossSection() [2/2]

G4VhShellCrossSection::G4VhShellCrossSection ( const G4VhShellCrossSection & )
delete

Member Function Documentation

◆ CrossSection()

virtual G4double G4VhShellCrossSection::CrossSection ( G4int Z,
G4AtomicShellEnumerator shell,
G4double incidentEnergy,
G4double mass,
const G4Material * mat )
pure virtual

◆ GetCrossSection()

virtual std::vector< G4double > G4VhShellCrossSection::GetCrossSection ( G4int Z,
G4double incidentEnergy,
G4double mass,
G4double deltaEnergy,
const G4Material * mat )
pure virtual

◆ GetName()

const G4String & G4VhShellCrossSection::GetName ( ) const
inline

Definition at line 102 of file G4VhShellCrossSection.hh.

103{
104 return name;
105}

Referenced by G4UAtomicDeexcitation::InitialiseForNewRun().

◆ operator=()

G4VhShellCrossSection & G4VhShellCrossSection::operator= ( const G4VhShellCrossSection & right)
delete

◆ Probabilities()

virtual std::vector< G4double > G4VhShellCrossSection::Probabilities ( G4int Z,
G4double incidentEnergy,
G4double mass,
G4double deltaEnergy,
const G4Material * mat )
pure virtual

◆ SelectRandomShell()

G4int G4VhShellCrossSection::SelectRandomShell ( G4int Z,
G4double incidentEnergy,
G4double mass,
G4double deltaEnergy,
const G4Material * mat )

Definition at line 63 of file G4VhShellCrossSection.cc.

70{
71 std::vector<G4double> p =
72 Probabilities(Z,incidentEnergy,mass,deltaEnergy,mat);
73 G4int shell = -1;
74 G4int nShells = (G4int)p.size();
76 for (G4int i=0; i<nShells; ++i) {
77
78 if (p[i] >= q) {
79 shell = i;
80 break;
81 }
82 q -= p[i];
83 }
84 return shell;
85}
double G4double
Definition G4Types.hh:83
int G4int
Definition G4Types.hh:85
#define G4UniformRand()
Definition Randomize.hh:52
virtual std::vector< G4double > Probabilities(G4int Z, G4double incidentEnergy, G4double mass, G4double deltaEnergy, const G4Material *mat)=0

◆ SetTotalCS()

void G4VhShellCrossSection::SetTotalCS ( G4double )
virtual

Reimplemented in G4empCrossSection, and G4teoCrossSection.

Definition at line 58 of file G4VhShellCrossSection.cc.

59{}

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