Geant4
10.01.p03
|
#include <G4HadronicProcessStore.hh>
Static Public Member Functions | |
static G4HadronicProcessStore * | Instance () |
Private Types | |
typedef const G4ParticleDefinition * | PD |
typedef G4HadronicProcess * | HP |
typedef G4HadronicInteraction * | HI |
Private Member Functions | |
G4HadronicProcessStore () | |
void | Print (G4int idxProcess, G4int idxParticle) |
Private Attributes | |
std::vector< G4HadronicProcess * > | process |
std::vector < G4HadronicInteraction * > | model |
std::vector< G4String > | modelName |
std::vector< PD > | particle |
std::vector< G4int > | wasPrinted |
std::multimap< PD, HP > | p_map |
std::multimap< HP, HI > | m_map |
std::vector< G4VProcess * > | extraProcess |
std::multimap< PD, G4VProcess * > | ep_map |
G4int | n_proc |
G4int | n_model |
G4int | n_part |
G4int | n_extra |
G4int | verbose |
G4bool | buildTableStart |
HP | currentProcess |
PD | currentParticle |
PD | theGenericIon |
G4DynamicParticle | localDP |
G4HadronicEPTestMessenger * | theEPTestMessenger |
Friends | |
class | G4ThreadLocalSingleton< G4HadronicProcessStore > |
Definition at line 69 of file G4HadronicProcessStore.hh.
|
private |
Definition at line 219 of file G4HadronicProcessStore.hh.
|
private |
Definition at line 218 of file G4HadronicProcessStore.hh.
|
private |
Definition at line 217 of file G4HadronicProcessStore.hh.
G4HadronicProcessStore::~G4HadronicProcessStore | ( | ) |
Definition at line 73 of file G4HadronicProcessStore.cc.
References G4HadronicInteractionRegistry::Clean(), G4CrossSectionDataSetRegistry::Clean(), Clean(), G4HadronicInteractionRegistry::Instance(), G4CrossSectionDataSetRegistry::Instance(), and theEPTestMessenger.
|
private |
Definition at line 112 of file G4HadronicProcessStore.cc.
References buildTableStart, currentParticle, currentProcess, G4ParticleTable::FindParticle(), G4ParticleTable::GetParticleTable(), n_extra, n_model, n_part, n_proc, theEPTestMessenger, theGenericIon, and verbose.
void G4HadronicProcessStore::Clean | ( | ) |
Definition at line 83 of file G4HadronicProcessStore.cc.
References DeRegister(), extraProcess, n_extra, n_proc, and process.
Referenced by ~G4HadronicProcessStore().
void G4HadronicProcessStore::DeRegister | ( | G4HadronicProcess * | proc | ) |
Definition at line 476 of file G4HadronicProcessStore.cc.
References DeRegisterExtraProcess(), n_proc, and process.
Referenced by Clean(), and G4HadronicProcess::~G4HadronicProcess().
void G4HadronicProcessStore::DeRegisterExtraProcess | ( | G4VProcess * | proc | ) |
Definition at line 543 of file G4HadronicProcessStore.cc.
References extraProcess, G4cout, G4endl, G4VProcess::GetProcessName(), n_extra, and verbose.
Referenced by DeRegister(), G4AntiNeutronAnnihilationAtRest::~G4AntiNeutronAnnihilationAtRest(), and G4HadronStoppingProcess::~G4HadronStoppingProcess().
void G4HadronicProcessStore::Dump | ( | G4int | level | ) |
Definition at line 707 of file G4HadronicProcessStore.cc.
References ep_map, G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), n_part, n_proc, p_map, particle, Print(), process, and wasPrinted.
Referenced by PrintInfo().
void G4HadronicProcessStore::DumpHtml | ( | ) |
Definition at line 572 of file G4HadronicProcessStore.cc.
References G4Alpha::Alpha(), G4Electron::Electron(), G4Gamma::Gamma(), G4KaonMinus::KaonMinus(), G4KaonPlus::KaonPlus(), G4Lambda::Lambda(), G4Neutron::Neutron(), G4PionMinus::PionMinus(), G4PionPlus::PionPlus(), G4Positron::Positron(), PrintHtml(), and G4Proton::Proton().
Referenced by PrintInfo().
G4HadronicProcess * G4HadronicProcessStore::FindProcess | ( | const G4ParticleDefinition * | part, |
G4HadronicProcessType | subType | ||
) |
Definition at line 838 of file G4HadronicProcessStore.cc.
References currentParticle, currentProcess, G4ParticleDefinition::GetBaryonNumber(), G4ParticleDefinition::GetParticleType(), G4VProcess::GetProcessSubType(), localDP, p_map, G4DynamicParticle::SetDefinition(), and theGenericIon.
Referenced by GetCaptureCrossSectionPerAtom(), GetChargeExchangeCrossSectionPerAtom(), GetElasticCrossSectionPerAtom(), GetFissionCrossSectionPerAtom(), and GetInelasticCrossSectionPerAtom().
G4double G4HadronicProcessStore::GetCaptureCrossSectionPerAtom | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Element * | anElement, | ||
const G4Material * | mat = 0 |
||
) |
Definition at line 287 of file G4HadronicProcessStore.cc.
References fCapture, FindProcess(), G4HadronicProcess::GetElementCrossSection(), localDP, and G4DynamicParticle::SetKineticEnergy().
Referenced by HistoManager::EndOfRun(), GetCaptureCrossSectionPerVolume(), and GetCrossSectionPerAtom().
G4double G4HadronicProcessStore::GetCaptureCrossSectionPerIsotope | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
G4int | Z, | ||
G4int | A | ||
) |
Definition at line 303 of file G4HadronicProcessStore.cc.
G4double G4HadronicProcessStore::GetCaptureCrossSectionPerVolume | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Material * | material | ||
) |
Definition at line 267 of file G4HadronicProcessStore.cc.
References GetCaptureCrossSectionPerAtom(), G4Material::GetElementVector(), G4Material::GetNumberOfElements(), and G4Material::GetVecNbOfAtomsPerVolume().
Referenced by GetCrossSectionPerVolume().
G4double G4HadronicProcessStore::GetChargeExchangeCrossSectionPerAtom | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Element * | anElement, | ||
const G4Material * | mat = 0 |
||
) |
Definition at line 379 of file G4HadronicProcessStore.cc.
References fChargeExchange, FindProcess(), G4HadronicProcess::GetElementCrossSection(), localDP, and G4DynamicParticle::SetKineticEnergy().
Referenced by HistoManager::EndOfRun(), GetChargeExchangeCrossSectionPerVolume(), and GetCrossSectionPerAtom().
G4double G4HadronicProcessStore::GetChargeExchangeCrossSectionPerIsotope | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
G4int | Z, | ||
G4int | A | ||
) |
Definition at line 395 of file G4HadronicProcessStore.cc.
G4double G4HadronicProcessStore::GetChargeExchangeCrossSectionPerVolume | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Material * | material | ||
) |
Definition at line 359 of file G4HadronicProcessStore.cc.
References GetChargeExchangeCrossSectionPerAtom(), G4Material::GetElementVector(), G4Material::GetNumberOfElements(), and G4Material::GetVecNbOfAtomsPerVolume().
Referenced by GetCrossSectionPerVolume().
G4double G4HadronicProcessStore::GetCrossSectionPerAtom | ( | const G4ParticleDefinition * | particle, |
G4double | kineticEnergy, | ||
const G4VProcess * | process, | ||
const G4Element * | element, | ||
const G4Material * | material = 0 |
||
) |
Definition at line 128 of file G4HadronicProcessStore.cc.
References fCapture, fChargeExchange, fFission, fHadronElastic, fHadronInelastic, GetCaptureCrossSectionPerAtom(), GetChargeExchangeCrossSectionPerAtom(), GetElasticCrossSectionPerAtom(), GetFissionCrossSectionPerAtom(), GetInelasticCrossSectionPerAtom(), and G4VProcess::GetProcessSubType().
Referenced by Run::EndOfRun().
G4double G4HadronicProcessStore::GetCrossSectionPerVolume | ( | const G4ParticleDefinition * | particle, |
G4double | kineticEnergy, | ||
const G4VProcess * | process, | ||
const G4Material * | material | ||
) |
Definition at line 152 of file G4HadronicProcessStore.cc.
References fCapture, fChargeExchange, fFission, fHadronElastic, fHadronInelastic, GetCaptureCrossSectionPerVolume(), GetChargeExchangeCrossSectionPerVolume(), GetElasticCrossSectionPerVolume(), GetFissionCrossSectionPerVolume(), GetInelasticCrossSectionPerVolume(), and G4VProcess::GetProcessSubType().
Referenced by Run::EndOfRun().
G4double G4HadronicProcessStore::GetElasticCrossSectionPerAtom | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Element * | anElement, | ||
const G4Material * | mat = 0 |
||
) |
Definition at line 195 of file G4HadronicProcessStore.cc.
References fHadronElastic, FindProcess(), G4HadronicProcess::GetElementCrossSection(), localDP, and G4DynamicParticle::SetKineticEnergy().
Referenced by HistoManager::EndOfRun(), GetCrossSectionPerAtom(), and GetElasticCrossSectionPerVolume().
G4double G4HadronicProcessStore::GetElasticCrossSectionPerIsotope | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
G4int | Z, | ||
G4int | A | ||
) |
Definition at line 211 of file G4HadronicProcessStore.cc.
G4double G4HadronicProcessStore::GetElasticCrossSectionPerVolume | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Material * | material | ||
) |
Definition at line 175 of file G4HadronicProcessStore.cc.
References GetElasticCrossSectionPerAtom(), G4Material::GetElementVector(), G4Material::GetNumberOfElements(), and G4Material::GetVecNbOfAtomsPerVolume().
Referenced by HistoManager::EndOfRun(), and GetCrossSectionPerVolume().
G4double G4HadronicProcessStore::GetFissionCrossSectionPerAtom | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Element * | anElement, | ||
const G4Material * | mat = 0 |
||
) |
Definition at line 333 of file G4HadronicProcessStore.cc.
References fFission, FindProcess(), G4HadronicProcess::GetElementCrossSection(), localDP, and G4DynamicParticle::SetKineticEnergy().
Referenced by HistoManager::EndOfRun(), GetCrossSectionPerAtom(), and GetFissionCrossSectionPerVolume().
G4double G4HadronicProcessStore::GetFissionCrossSectionPerIsotope | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
G4int | Z, | ||
G4int | A | ||
) |
Definition at line 349 of file G4HadronicProcessStore.cc.
G4double G4HadronicProcessStore::GetFissionCrossSectionPerVolume | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Material * | material | ||
) |
Definition at line 313 of file G4HadronicProcessStore.cc.
References G4Material::GetElementVector(), GetFissionCrossSectionPerAtom(), G4Material::GetNumberOfElements(), and G4Material::GetVecNbOfAtomsPerVolume().
Referenced by GetCrossSectionPerVolume().
G4double G4HadronicProcessStore::GetInelasticCrossSectionPerAtom | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Element * | anElement, | ||
const G4Material * | mat = 0 |
||
) |
Definition at line 241 of file G4HadronicProcessStore.cc.
References fHadronInelastic, FindProcess(), G4HadronicProcess::GetElementCrossSection(), localDP, and G4DynamicParticle::SetKineticEnergy().
Referenced by HistoManager::EndOfRun(), GetCrossSectionPerAtom(), and GetInelasticCrossSectionPerVolume().
G4double G4HadronicProcessStore::GetInelasticCrossSectionPerIsotope | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
G4int | Z, | ||
G4int | A | ||
) |
Definition at line 257 of file G4HadronicProcessStore.cc.
G4double G4HadronicProcessStore::GetInelasticCrossSectionPerVolume | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Material * | material | ||
) |
Definition at line 221 of file G4HadronicProcessStore.cc.
References G4Material::GetElementVector(), GetInelasticCrossSectionPerAtom(), G4Material::GetNumberOfElements(), and G4Material::GetVecNbOfAtomsPerVolume().
Referenced by HistoManager::EndOfRun(), and GetCrossSectionPerVolume().
G4int G4HadronicProcessStore::GetVerbose | ( | ) |
Definition at line 831 of file G4HadronicProcessStore.cc.
References verbose.
|
static |
Definition at line 65 of file G4HadronicProcessStore.cc.
References instance, and G4ThreadLocalSingleton< T >::Instance().
Referenced by G4AntiNeutronAnnihilationAtRest::BuildPhysicsTable(), G4HadronStoppingProcess::BuildPhysicsTable(), G4HadronicProcess::BuildPhysicsTable(), G4NeutronTrackingCut::ConstructProcess(), Run::EndOfRun(), HistoManager::EndOfRun(), G4AntiNeutronAnnihilationAtRest::G4AntiNeutronAnnihilationAtRest(), G4HadronicProcess::G4HadronicProcess(), G4HadronStoppingProcess::G4HadronStoppingProcess(), G4AntiNeutronAnnihilationAtRest::PreparePhysicsTable(), G4HadronStoppingProcess::PreparePhysicsTable(), G4HadronicProcess::PreparePhysicsTable(), G4HadronicProcess::RegisterMe(), G4AntiNeutronAnnihilationAtRest::~G4AntiNeutronAnnihilationAtRest(), G4HadronicProcess::~G4HadronicProcess(), and G4HadronStoppingProcess::~G4HadronStoppingProcess().
Definition at line 782 of file G4HadronicProcessStore.cc.
References G4CrossSectionDataStore::DumpPhysicsTable(), G4BestUnit, G4cout, G4endl, G4HadronicProcess::GetCrossSectionDataStore(), G4HadronicInteraction::GetMaxEnergy(), G4HadronicInteraction::GetMinEnergy(), G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), m_map, model, modelName, n_model, particle, process, and wasPrinted.
Referenced by Dump().
void G4HadronicProcessStore::PrintHtml | ( | const G4ParticleDefinition * | theParticle, |
std::ofstream & | outFile | ||
) |
Definition at line 619 of file G4HadronicProcessStore.cc.
References G4CrossSectionDataStore::DumpHtml(), G4HadronicProcess::GetCrossSectionDataStore(), G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), GeV, m_map, p_map, PrintModelHtml(), and G4HadronicProcess::ProcessDescription().
Referenced by DumpHtml().
void G4HadronicProcessStore::PrintInfo | ( | const G4ParticleDefinition * | part | ) |
Definition at line 559 of file G4HadronicProcessStore.cc.
References buildTableStart, Dump(), DumpHtml(), n_part, particle, and verbose.
Referenced by G4AntiNeutronAnnihilationAtRest::BuildPhysicsTable(), G4HadronStoppingProcess::BuildPhysicsTable(), and G4HadronicProcess::BuildPhysicsTable().
void G4HadronicProcessStore::PrintModelHtml | ( | const G4HadronicInteraction * | model | ) | const |
Definition at line 685 of file G4HadronicProcessStore.cc.
References G4HadronicInteraction::GetModelName(), and G4HadronicInteraction::ModelDescription().
Referenced by PrintHtml().
void G4HadronicProcessStore::Register | ( | G4HadronicProcess * | proc | ) |
Definition at line 405 of file G4HadronicProcessStore.cc.
References G4cout, G4endl, G4VProcess::GetProcessName(), n_proc, process, and verbose.
Referenced by G4HadronicProcess::G4HadronicProcess().
void G4HadronicProcessStore::RegisterExtraProcess | ( | G4VProcess * | proc | ) |
Definition at line 489 of file G4HadronicProcessStore.cc.
References extraProcess, G4cout, G4endl, G4VProcess::GetProcessName(), n_extra, n_proc, process, and verbose.
Referenced by G4NeutronTrackingCut::ConstructProcess(), G4AntiNeutronAnnihilationAtRest::G4AntiNeutronAnnihilationAtRest(), and G4HadronStoppingProcess::G4HadronStoppingProcess().
void G4HadronicProcessStore::RegisterInteraction | ( | G4HadronicProcess * | proc, |
G4HadronicInteraction * | mod | ||
) |
Definition at line 457 of file G4HadronicProcessStore.cc.
References G4HadronicInteraction::GetModelName(), m_map, model, modelName, n_model, n_proc, and process.
Referenced by G4HadronicProcess::RegisterMe().
void G4HadronicProcessStore::RegisterParticle | ( | G4HadronicProcess * | proc, |
const G4ParticleDefinition * | part | ||
) |
Definition at line 422 of file G4HadronicProcessStore.cc.
References G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), n_part, n_proc, p_map, particle, process, verbose, and wasPrinted.
Referenced by G4HadronicProcess::PreparePhysicsTable().
void G4HadronicProcessStore::RegisterParticleForExtraProcess | ( | G4VProcess * | proc, |
const G4ParticleDefinition * | part | ||
) |
Definition at line 512 of file G4HadronicProcessStore.cc.
References ep_map, extraProcess, n_extra, n_part, particle, and wasPrinted.
Referenced by G4NeutronTrackingCut::ConstructProcess(), G4AntiNeutronAnnihilationAtRest::PreparePhysicsTable(), and G4HadronStoppingProcess::PreparePhysicsTable().
void G4HadronicProcessStore::SetEpReportLevel | ( | G4int | level | ) |
Definition at line 881 of file G4HadronicProcessStore.cc.
References G4cout, G4endl, and process.
Referenced by G4HadronicEPTestMessenger::SetNewValue().
void G4HadronicProcessStore::SetProcessAbsLevel | ( | G4double | absoluteLevel | ) |
Definition at line 892 of file G4HadronicProcessStore.cc.
References G4cout, G4endl, G4HadronicProcess::GetEnergyMomentumCheckLevels(), process, and G4HadronicProcess::SetEnergyMomentumCheckLevels().
Referenced by G4HadronicEPTestMessenger::SetNewValue().
void G4HadronicProcessStore::SetProcessRelLevel | ( | G4double | relativeLevel | ) |
Definition at line 907 of file G4HadronicProcessStore.cc.
References G4cout, G4endl, G4HadronicProcess::GetEnergyMomentumCheckLevels(), process, and G4HadronicProcess::SetEnergyMomentumCheckLevels().
Referenced by G4HadronicEPTestMessenger::SetNewValue().
void G4HadronicProcessStore::SetVerbose | ( | G4int | val | ) |
|
friend |
Definition at line 72 of file G4HadronicProcessStore.hh.
|
private |
Definition at line 242 of file G4HadronicProcessStore.hh.
Referenced by G4HadronicProcessStore(), and PrintInfo().
|
private |
Definition at line 246 of file G4HadronicProcessStore.hh.
Referenced by FindProcess(), and G4HadronicProcessStore().
|
private |
Definition at line 245 of file G4HadronicProcessStore.hh.
Referenced by FindProcess(), and G4HadronicProcessStore().
|
private |
Definition at line 233 of file G4HadronicProcessStore.hh.
Referenced by Dump(), and RegisterParticleForExtraProcess().
|
private |
Definition at line 232 of file G4HadronicProcessStore.hh.
Referenced by Clean(), DeRegisterExtraProcess(), RegisterExtraProcess(), and RegisterParticleForExtraProcess().
|
private |
Definition at line 249 of file G4HadronicProcessStore.hh.
Referenced by FindProcess(), GetCaptureCrossSectionPerAtom(), GetChargeExchangeCrossSectionPerAtom(), GetElasticCrossSectionPerAtom(), GetFissionCrossSectionPerAtom(), and GetInelasticCrossSectionPerAtom().
Definition at line 229 of file G4HadronicProcessStore.hh.
Referenced by Print(), PrintHtml(), and RegisterInteraction().
|
private |
Definition at line 223 of file G4HadronicProcessStore.hh.
Referenced by Print(), RegisterInteraction(), and SetVerbose().
|
private |
Definition at line 224 of file G4HadronicProcessStore.hh.
Referenced by Print(), and RegisterInteraction().
|
private |
Definition at line 239 of file G4HadronicProcessStore.hh.
Referenced by Clean(), DeRegisterExtraProcess(), G4HadronicProcessStore(), RegisterExtraProcess(), and RegisterParticleForExtraProcess().
|
private |
Definition at line 237 of file G4HadronicProcessStore.hh.
Referenced by G4HadronicProcessStore(), Print(), RegisterInteraction(), and SetVerbose().
|
private |
Definition at line 238 of file G4HadronicProcessStore.hh.
Referenced by Dump(), G4HadronicProcessStore(), PrintInfo(), RegisterParticle(), and RegisterParticleForExtraProcess().
|
private |
Definition at line 236 of file G4HadronicProcessStore.hh.
Referenced by Clean(), DeRegister(), Dump(), G4HadronicProcessStore(), Register(), RegisterExtraProcess(), RegisterInteraction(), RegisterParticle(), and SetVerbose().
Definition at line 228 of file G4HadronicProcessStore.hh.
Referenced by Dump(), FindProcess(), PrintHtml(), and RegisterParticle().
|
private |
Definition at line 225 of file G4HadronicProcessStore.hh.
Referenced by Dump(), Print(), PrintInfo(), RegisterParticle(), and RegisterParticleForExtraProcess().
|
private |
Definition at line 222 of file G4HadronicProcessStore.hh.
Referenced by Clean(), DeRegister(), Dump(), Print(), Register(), RegisterExtraProcess(), RegisterInteraction(), RegisterParticle(), SetEpReportLevel(), SetProcessAbsLevel(), SetProcessRelLevel(), and SetVerbose().
|
private |
Definition at line 251 of file G4HadronicProcessStore.hh.
Referenced by G4HadronicProcessStore(), and ~G4HadronicProcessStore().
|
private |
Definition at line 247 of file G4HadronicProcessStore.hh.
Referenced by FindProcess(), and G4HadronicProcessStore().
|
private |
Definition at line 241 of file G4HadronicProcessStore.hh.
Referenced by DeRegisterExtraProcess(), G4HadronicProcessStore(), GetVerbose(), PrintInfo(), Register(), RegisterExtraProcess(), RegisterParticle(), and SetVerbose().
|
private |
Definition at line 226 of file G4HadronicProcessStore.hh.
Referenced by Dump(), Print(), RegisterParticle(), and RegisterParticleForExtraProcess().