Geant4
10.03
|
#include <G4PenelopeCrossSection.hh>
Public Member Functions | |
G4PenelopeCrossSection (size_t nOfEnergyPoints, size_t nOfShells=0) | |
~G4PenelopeCrossSection () | |
G4double | GetTotalCrossSection (G4double energy) const |
Returns total cross section at the given energy. More... | |
G4double | GetHardCrossSection (G4double energy) const |
Returns hard cross section at the given energy. More... | |
G4double | GetSoftStoppingPower (G4double energy) const |
Returns the total stopping power due to soft collisions. More... | |
G4double | GetShellCrossSection (size_t shellID, G4double energy) const |
Returns the hard cross section for the given shell (per molecule) More... | |
G4double | GetNormalizedShellCrossSection (size_t shellID, G4double energy) const |
Returns the hard cross section for the given shell (normalized to 1) More... | |
size_t | GetNumberOfShells () const |
void | AddCrossSectionPoint (size_t binNumber, G4double energy, G4double XH0, G4double XH1, G4double XH2, G4double XS0, G4double XS1, G4double XS2) |
Public interface for the master thread. More... | |
void | AddShellCrossSectionPoint (size_t binNumber, size_t shellID, G4double energy, G4double xs) |
void | NormalizeShellCrossSections () |
Private Member Functions | |
G4PenelopeCrossSection & | operator= (const G4PenelopeCrossSection &right) |
G4PenelopeCrossSection (const G4PenelopeCrossSection &) | |
Private Attributes | |
G4bool | isNormalized |
size_t | numberOfEnergyPoints |
size_t | numberOfShells |
G4PhysicsTable * | softCrossSections |
G4PhysicsTable * | hardCrossSections |
G4PhysicsTable * | shellCrossSections |
G4PhysicsTable * | shellNormalizedCrossSections |
Definition at line 72 of file G4PenelopeCrossSection.hh.
G4PenelopeCrossSection::G4PenelopeCrossSection | ( | size_t | nOfEnergyPoints, |
size_t | nOfShells = 0 |
||
) |
Definition at line 45 of file G4PenelopeCrossSection.cc.
References FatalException, G4endl, G4Exception(), hardCrossSections, isNormalized, numberOfEnergyPoints, numberOfShells, G4PhysicsTable::push_back(), shellCrossSections, shellNormalizedCrossSections, and softCrossSections.
G4PenelopeCrossSection::~G4PenelopeCrossSection | ( | ) |
Definition at line 98 of file G4PenelopeCrossSection.cc.
References hardCrossSections, shellCrossSections, shellNormalizedCrossSections, and softCrossSections.
|
private |
void G4PenelopeCrossSection::AddCrossSectionPoint | ( | size_t | binNumber, |
G4double | energy, | ||
G4double | XH0, | ||
G4double | XH1, | ||
G4double | XH2, | ||
G4double | XS0, | ||
G4double | XS1, | ||
G4double | XS2 | ||
) |
Public interface for the master thread.
Definition at line 124 of file G4PenelopeCrossSection.cc.
References cm2, eV, G4cout, G4endl, hardCrossSections, G4INCL::Math::max(), numberOfEnergyPoints, G4PhysicsFreeVector::PutValue(), and softCrossSections.
Referenced by G4PenelopeIonisationXSHandler::BuildXSTable(), and G4PenelopeBremsstrahlungModel::BuildXSTable().
void G4PenelopeCrossSection::AddShellCrossSectionPoint | ( | size_t | binNumber, |
size_t | shellID, | ||
G4double | energy, | ||
G4double | xs | ||
) |
Definition at line 184 of file G4PenelopeCrossSection.cc.
References cm2, G4cout, G4endl, G4INCL::Math::max(), numberOfEnergyPoints, numberOfShells, G4PhysicsFreeVector::PutValue(), and shellCrossSections.
Referenced by G4PenelopeIonisationXSHandler::BuildXSTable().
Returns hard cross section at the given energy.
Definition at line 269 of file G4PenelopeCrossSection.cc.
References G4cout, G4endl, G4Exp(), G4PhysicsVector::GetVectorLength(), hardCrossSections, numberOfEnergyPoints, and G4PhysicsVector::Value().
Referenced by G4PenelopeBremsstrahlungModel::CrossSectionPerVolume(), and G4PenelopeIonisationModel::CrossSectionPerVolume().
G4double G4PenelopeCrossSection::GetNormalizedShellCrossSection | ( | size_t | shellID, |
G4double | energy | ||
) | const |
Returns the hard cross section for the given shell (normalized to 1)
Definition at line 364 of file G4PenelopeCrossSection.cc.
References G4cout, G4endl, G4Exp(), G4PhysicsVector::GetVectorLength(), isNormalized, numberOfEnergyPoints, numberOfShells, shellNormalizedCrossSections, and G4PhysicsVector::Value().
Referenced by G4PenelopeIonisationModel::SampleFinalStateElectron(), and G4PenelopeIonisationModel::SampleFinalStatePositron().
|
inline |
Definition at line 94 of file G4PenelopeCrossSection.hh.
References numberOfShells.
Returns the hard cross section for the given shell (per molecule)
Definition at line 328 of file G4PenelopeCrossSection.cc.
References G4cout, G4endl, G4Exp(), G4PhysicsVector::GetVectorLength(), numberOfEnergyPoints, numberOfShells, shellCrossSections, and G4PhysicsVector::Value().
Referenced by G4PenelopeIonisationCrossSection::CrossSection().
Returns the total stopping power due to soft collisions.
Definition at line 299 of file G4PenelopeCrossSection.cc.
References G4cout, G4endl, G4Exp(), G4PhysicsVector::GetVectorLength(), numberOfEnergyPoints, softCrossSections, and G4PhysicsVector::Value().
Referenced by G4PenelopeBremsstrahlungModel::ComputeDEDXPerVolume(), and G4PenelopeIonisationModel::ComputeDEDXPerVolume().
Returns total cross section at the given energy.
Definition at line 225 of file G4PenelopeCrossSection.cc.
References G4cout, G4endl, G4Exp(), G4PhysicsVector::GetVectorLength(), hardCrossSections, numberOfEnergyPoints, softCrossSections, and G4PhysicsVector::Value().
Referenced by G4PenelopeIonisationModel::CrossSectionPerVolume().
void G4PenelopeCrossSection::NormalizeShellCrossSections | ( | ) |
Definition at line 412 of file G4PenelopeCrossSection.cc.
References G4cout, G4endl, G4Exp(), G4PhysicsVector::GetLowEdgeEnergy(), isNormalized, numberOfEnergyPoints, numberOfShells, G4PhysicsFreeVector::PutValue(), shellCrossSections, and shellNormalizedCrossSections.
Referenced by G4PenelopeIonisationXSHandler::BuildXSTable().
|
private |
|
private |
Definition at line 122 of file G4PenelopeCrossSection.hh.
Referenced by AddCrossSectionPoint(), G4PenelopeCrossSection(), GetHardCrossSection(), GetTotalCrossSection(), and ~G4PenelopeCrossSection().
|
private |
Definition at line 111 of file G4PenelopeCrossSection.hh.
Referenced by G4PenelopeCrossSection(), GetNormalizedShellCrossSection(), and NormalizeShellCrossSections().
|
private |
Definition at line 113 of file G4PenelopeCrossSection.hh.
Referenced by AddCrossSectionPoint(), AddShellCrossSectionPoint(), G4PenelopeCrossSection(), GetHardCrossSection(), GetNormalizedShellCrossSection(), GetShellCrossSection(), GetSoftStoppingPower(), GetTotalCrossSection(), and NormalizeShellCrossSections().
|
private |
Definition at line 114 of file G4PenelopeCrossSection.hh.
Referenced by AddShellCrossSectionPoint(), G4PenelopeCrossSection(), GetNormalizedShellCrossSection(), GetNumberOfShells(), GetShellCrossSection(), and NormalizeShellCrossSections().
|
private |
Definition at line 125 of file G4PenelopeCrossSection.hh.
Referenced by AddShellCrossSectionPoint(), G4PenelopeCrossSection(), GetShellCrossSection(), NormalizeShellCrossSections(), and ~G4PenelopeCrossSection().
|
private |
Definition at line 126 of file G4PenelopeCrossSection.hh.
Referenced by G4PenelopeCrossSection(), GetNormalizedShellCrossSection(), NormalizeShellCrossSections(), and ~G4PenelopeCrossSection().
|
private |
Definition at line 119 of file G4PenelopeCrossSection.hh.
Referenced by AddCrossSectionPoint(), G4PenelopeCrossSection(), GetSoftStoppingPower(), GetTotalCrossSection(), and ~G4PenelopeCrossSection().