Geant4-11
Public Member Functions | Private Attributes
G4VhShellCrossSection Class Referenceabstract

#include <G4VhShellCrossSection.hh>

Inheritance diagram for G4VhShellCrossSection:
G4LivermoreIonisationCrossSection G4PenelopeIonisationCrossSection G4empCrossSection G4teoCrossSection

Public Member Functions

virtual G4double CrossSection (G4int Z, G4AtomicShellEnumerator shell, G4double incidentEnergy, G4double mass, const G4Material *mat)=0
 
 G4VhShellCrossSection (const G4String &xname="")
 
 G4VhShellCrossSection (const G4VhShellCrossSection &)=delete
 
virtual std::vector< G4doubleGetCrossSection (G4int Z, G4double incidentEnergy, G4double mass, G4double deltaEnergy, const G4Material *mat)=0
 
const G4StringGetName () const
 
G4VhShellCrossSectionoperator= (const G4VhShellCrossSection &right)=delete
 
virtual std::vector< G4doubleProbabilities (G4int Z, G4double incidentEnergy, G4double mass, G4double deltaEnergy, const G4Material *mat)=0
 
G4int SelectRandomShell (G4int Z, G4double incidentEnergy, G4double mass, G4double deltaEnergy, const G4Material *mat)
 
virtual void SetTotalCS (G4double)
 
virtual ~G4VhShellCrossSection ()
 

Private Attributes

G4String name
 

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}

References name.

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 size_t nShells = p.size();
76 for (size_t 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
const G4int Z[17]
#define G4UniformRand()
Definition: Randomize.hh:52
virtual std::vector< G4double > Probabilities(G4int Z, G4double incidentEnergy, G4double mass, G4double deltaEnergy, const G4Material *mat)=0

References G4UniformRand, Probabilities(), and Z.

◆ SetTotalCS()

void G4VhShellCrossSection::SetTotalCS ( G4double  )
virtual

Reimplemented in G4empCrossSection, and G4teoCrossSection.

Definition at line 58 of file G4VhShellCrossSection.cc.

59{}

Field Documentation

◆ name

G4String G4VhShellCrossSection::name
private

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