ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
Public Member Functions | |
G4PenelopeIonisationXSHandler (size_t nBins=200) | |
virtual | ~G4PenelopeIonisationXSHandler () |
Destructor. Clean all tables. | |
G4double | GetDensityCorrection (const G4Material *, const G4double energy) const |
Returns the density coeection for the material at the given energy. | |
const G4PenelopeCrossSection * | GetCrossSectionTableForCouple (const G4ParticleDefinition *, const G4Material *, const G4double cut) const |
void | SetVerboseLevel (G4int vl) |
Setter for the verbosity level. | |
void | BuildXSTable (const G4Material *, G4double cut, const G4ParticleDefinition *, G4bool isMaster=true) |
This can be inkoved only by the master. | |
Private Member Functions | |
G4PenelopeIonisationXSHandler & | operator= (const G4PenelopeIonisationXSHandler &right) |
G4PenelopeIonisationXSHandler (const G4PenelopeIonisationXSHandler &) | |
void | BuildDeltaTable (const G4Material *) |
G4DataVector * | ComputeShellCrossSectionsElectron (G4PenelopeOscillator *, G4double energy, G4double cut, G4double delta) |
G4DataVector * | ComputeShellCrossSectionsPositron (G4PenelopeOscillator *, G4double energy, G4double cut, G4double delta) |
Private Attributes | |
G4PenelopeOscillatorManager * | oscManager |
std::map< std::pair< const G4Material *, G4double > , G4PenelopeCrossSection * > * | XSTableElectron |
std::map< std::pair< const G4Material *, G4double > , G4PenelopeCrossSection * > * | XSTablePositron |
std::map< const G4Material *, G4PhysicsFreeVector * > * | theDeltaTable |
G4PhysicsLogVector * | energyGrid |
size_t | nBins |
G4int | verboseLevel |
Definition at line 59 of file G4PenelopeIonisationXSHandler.hh.
View newest version in sPHENIX GitHub at line 59 of file G4PenelopeIonisationXSHandler.hh
G4PenelopeIonisationXSHandler::G4PenelopeIonisationXSHandler | ( | size_t | nBins = 200 | ) |
Constructor. nBins is the number of intervals in the energy grid. By default the energy grid goes from 100 eV to 100 GeV.
Definition at line 46 of file G4PenelopeIonisationXSHandler.cc.
View newest version in sPHENIX GitHub at line 46 of file G4PenelopeIonisationXSHandler.cc
References energyGrid, eV, G4PenelopeOscillatorManager::GetOscillatorManager(), GeV, nBins, oscManager, theDeltaTable, verboseLevel, XSTableElectron, and XSTablePositron.
|
virtual |
Destructor. Clean all tables.
Definition at line 69 of file G4PenelopeIonisationXSHandler.cc.
View newest version in sPHENIX GitHub at line 69 of file G4PenelopeIonisationXSHandler.cc
References energyGrid, G4cout, G4endl, theDeltaTable, verboseLevel, XSTableElectron, and XSTablePositron.
|
private |
|
private |
Definition at line 322 of file G4PenelopeIonisationXSHandler.cc.
View newest version in sPHENIX GitHub at line 322 of file G4PenelopeIonisationXSHandler.cc
References bin, Acts::Test::delta, e, source.hepunit::electron_mass_c2, energy, energyGrid, eV, FatalException, G4endl, G4Exception(), G4InuclParticleNames::gam, G4PhysicsVector::GetLowEdgeEnergy(), G4PenelopeOscillator::GetOscillatorStrength(), G4PenelopeOscillatorManager::GetOscillatorTableIonisation(), G4PenelopeOscillatorManager::GetPlasmaEnergySquared(), G4PenelopeOscillator::GetResonanceEnergy(), G4PenelopeOscillatorManager::GetTotalZ(), G4PhysicsVector::GetVectorLength(), max, nBins, oscManager, G4PhysicsFreeVector::PutValue(), and theDeltaTable.
Referenced by BuildXSTable().
void G4PenelopeIonisationXSHandler::BuildXSTable | ( | const G4Material * | mat, |
G4double | cut, | ||
const G4ParticleDefinition * | part, | ||
G4bool | isMaster = true |
||
) |
This can be inkoved only by the master.
Definition at line 159 of file G4PenelopeIonisationXSHandler.cc.
View newest version in sPHENIX GitHub at line 159 of file G4PenelopeIonisationXSHandler.cc
References G4PenelopeCrossSection::AddCrossSectionPoint(), G4PenelopeCrossSection::AddShellCrossSectionPoint(), bin, BuildDeltaTable(), ComputeShellCrossSectionsElectron(), ComputeShellCrossSectionsPositron(), Acts::Test::delta, G4Electron::Electron(), energy, energyGrid, FatalException, G4cout, G4endl, G4Exception(), GetDensityCorrection(), G4PhysicsVector::GetLowEdgeEnergy(), G4Material::GetName(), G4PenelopeOscillator::GetOscillatorStrength(), G4PenelopeOscillatorManager::GetOscillatorTableIonisation(), G4ParticleDefinition::GetParticleName(), G4PhysicsVector::GetVectorLength(), keV, nBins, G4PenelopeCrossSection::NormalizeShellCrossSections(), oscManager, G4Positron::Positron(), theDeltaTable, verboseLevel, XSTableElectron, and XSTablePositron.
Referenced by G4PenelopeIonisationModel::ComputeDEDXPerVolume(), G4PenelopeIonisationCrossSection::CrossSection(), G4PenelopeIonisationModel::CrossSectionPerVolume(), and G4PenelopeIonisationModel::Initialise().
|
private |
Definition at line 425 of file G4PenelopeIonisationXSHandler.cc.
View newest version in sPHENIX GitHub at line 425 of file G4PenelopeIonisationXSHandler.cc
References source.hepunit::classic_electr_radius, cp, e, source.hepunit::electron_mass_c2, eV, G4PenelopeOscillator::GetCutoffRecoilResonantEnergy(), G4PenelopeOscillator::GetIonisationEnergy(), G4PenelopeOscillator::GetResonanceEnergy(), max, and pi.
Referenced by BuildXSTable().
|
private |
Definition at line 557 of file G4PenelopeIonisationXSHandler.cc.
View newest version in sPHENIX GitHub at line 557 of file G4PenelopeIonisationXSHandler.cc
References source.hepunit::classic_electr_radius, cp, e, source.hepunit::electron_mass_c2, energy, eV, G4PenelopeOscillator::GetCutoffRecoilResonantEnergy(), G4PenelopeOscillator::GetIonisationEnergy(), G4PenelopeOscillator::GetResonanceEnergy(), max, and pi.
Referenced by BuildXSTable().
const G4PenelopeCrossSection * G4PenelopeIonisationXSHandler::GetCrossSectionTableForCouple | ( | const G4ParticleDefinition * | part, |
const G4Material * | mat, | ||
const G4double | cut | ||
) | const |
Returns the table of cross sections for the given particle, given material and given cut as a G4PenelopeCrossSection* pointer.
Definition at line 110 of file G4PenelopeIonisationXSHandler.cc.
View newest version in sPHENIX GitHub at line 110 of file G4PenelopeIonisationXSHandler.cc
References G4Electron::Electron(), FatalException, G4endl, G4Exception(), G4ParticleDefinition::GetParticleName(), G4Positron::Positron(), XSTableElectron, and XSTablePositron.
Referenced by G4PenelopeIonisationModel::ComputeDEDXPerVolume(), G4PenelopeIonisationCrossSection::CrossSection(), G4PenelopeIonisationModel::CrossSectionPerVolume(), G4PenelopeIonisationModel::SampleFinalStateElectron(), and G4PenelopeIonisationModel::SampleFinalStatePositron().
G4double G4PenelopeIonisationXSHandler::GetDensityCorrection | ( | const G4Material * | mat, |
const G4double | energy | ||
) | const |
Returns the density coeection for the material at the given energy.
Definition at line 285 of file G4PenelopeIonisationXSHandler.cc.
View newest version in sPHENIX GitHub at line 285 of file G4PenelopeIonisationXSHandler.cc
References eV, FatalException, G4cout, G4endl, G4Exception(), G4Material::GetName(), theDeltaTable, and G4PhysicsVector::Value().
Referenced by BuildXSTable(), G4PenelopeIonisationModel::SampleFinalStateElectron(), and G4PenelopeIonisationModel::SampleFinalStatePositron().
|
private |
Setter for the verbosity level.
Definition at line 78 of file G4PenelopeIonisationXSHandler.hh.
View newest version in sPHENIX GitHub at line 78 of file G4PenelopeIonisationXSHandler.hh
References verboseLevel.
Referenced by G4PenelopeIonisationModel::Initialise().
|
private |
Definition at line 109 of file G4PenelopeIonisationXSHandler.hh.
View newest version in sPHENIX GitHub at line 109 of file G4PenelopeIonisationXSHandler.hh
Referenced by BuildDeltaTable(), BuildXSTable(), G4PenelopeIonisationXSHandler(), and ~G4PenelopeIonisationXSHandler().
|
private |
Definition at line 110 of file G4PenelopeIonisationXSHandler.hh.
View newest version in sPHENIX GitHub at line 110 of file G4PenelopeIonisationXSHandler.hh
Referenced by BuildDeltaTable(), BuildXSTable(), and G4PenelopeIonisationXSHandler().
|
private |
Definition at line 99 of file G4PenelopeIonisationXSHandler.hh.
View newest version in sPHENIX GitHub at line 99 of file G4PenelopeIonisationXSHandler.hh
Referenced by BuildDeltaTable(), BuildXSTable(), and G4PenelopeIonisationXSHandler().
|
private |
Definition at line 106 of file G4PenelopeIonisationXSHandler.hh.
View newest version in sPHENIX GitHub at line 106 of file G4PenelopeIonisationXSHandler.hh
Referenced by BuildDeltaTable(), BuildXSTable(), G4PenelopeIonisationXSHandler(), GetDensityCorrection(), and ~G4PenelopeIonisationXSHandler().
|
private |
Definition at line 112 of file G4PenelopeIonisationXSHandler.hh.
View newest version in sPHENIX GitHub at line 112 of file G4PenelopeIonisationXSHandler.hh
Referenced by BuildXSTable(), G4PenelopeIonisationXSHandler(), SetVerboseLevel(), and ~G4PenelopeIonisationXSHandler().
|
private |
Definition at line 102 of file G4PenelopeIonisationXSHandler.hh.
View newest version in sPHENIX GitHub at line 102 of file G4PenelopeIonisationXSHandler.hh
Referenced by BuildXSTable(), G4PenelopeIonisationXSHandler(), GetCrossSectionTableForCouple(), and ~G4PenelopeIonisationXSHandler().
|
private |
Definition at line 103 of file G4PenelopeIonisationXSHandler.hh.
View newest version in sPHENIX GitHub at line 103 of file G4PenelopeIonisationXSHandler.hh
Referenced by BuildXSTable(), G4PenelopeIonisationXSHandler(), GetCrossSectionTableForCouple(), and ~G4PenelopeIonisationXSHandler().