Geant4
10.03
|
#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) |
G4String | HtmlFileName (const G4String &) const |
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 |
Static Private Attributes | |
static G4ThreadLocal G4HadronicProcessStore * | instance = 0 |
Friends | |
class | G4ThreadLocalSingleton< G4HadronicProcessStore > |
Definition at line 68 of file G4HadronicProcessStore.hh.
|
private |
Definition at line 222 of file G4HadronicProcessStore.hh.
|
private |
Definition at line 221 of file G4HadronicProcessStore.hh.
|
private |
Definition at line 220 of file G4HadronicProcessStore.hh.
G4HadronicProcessStore::~G4HadronicProcessStore | ( | ) |
Definition at line 80 of file G4HadronicProcessStore.cc.
References Clean(), and theEPTestMessenger.
|
private |
Definition at line 115 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 88 of file G4HadronicProcessStore.cc.
References extraProcess, n_extra, n_proc, and process.
Referenced by ~G4HadronicProcessStore().
void G4HadronicProcessStore::DeRegister | ( | G4HadronicProcess * | proc | ) |
Definition at line 477 of file G4HadronicProcessStore.cc.
References DeRegisterExtraProcess(), n_proc, and process.
Referenced by G4HadronicProcess::~G4HadronicProcess().
void G4HadronicProcessStore::DeRegisterExtraProcess | ( | G4VProcess * | proc | ) |
Definition at line 542 of file G4HadronicProcessStore.cc.
References extraProcess, G4cout, G4endl, G4VProcess::GetProcessName(), n_extra, and verbose.
Referenced by DeRegister(), and G4AntiNeutronAnnihilationAtRest::~G4AntiNeutronAnnihilationAtRest().
void G4HadronicProcessStore::Dump | ( | G4int | level | ) |
Definition at line 730 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 870 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 290 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 306 of file G4HadronicProcessStore.cc.
G4double G4HadronicProcessStore::GetCaptureCrossSectionPerVolume | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Material * | material | ||
) |
Definition at line 270 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 382 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 398 of file G4HadronicProcessStore.cc.
G4double G4HadronicProcessStore::GetChargeExchangeCrossSectionPerVolume | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Material * | material | ||
) |
Definition at line 362 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 131 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 155 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 198 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 214 of file G4HadronicProcessStore.cc.
G4double G4HadronicProcessStore::GetElasticCrossSectionPerVolume | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Material * | material | ||
) |
Definition at line 178 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 336 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 352 of file G4HadronicProcessStore.cc.
G4double G4HadronicProcessStore::GetFissionCrossSectionPerVolume | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Material * | material | ||
) |
Definition at line 316 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 244 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 260 of file G4HadronicProcessStore.cc.
G4double G4HadronicProcessStore::GetInelasticCrossSectionPerVolume | ( | const G4ParticleDefinition * | aParticle, |
G4double | kineticEnergy, | ||
const G4Material * | material | ||
) |
Definition at line 224 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 863 of file G4HadronicProcessStore.cc.
References verbose.
Definition at line 710 of file G4HadronicProcessStore.cc.
Referenced by PrintHtml(), and PrintModelHtml().
|
static |
Definition at line 69 of file G4HadronicProcessStore.cc.
References G4ThreadLocalSingleton< T >::Instance(), and instance.
Referenced by G4AntiNeutronAnnihilationAtRest::BuildPhysicsTable(), G4MuonMinusAtomicCapture::BuildPhysicsTable(), G4HadronStoppingProcess::BuildPhysicsTable(), G4HadronicProcess::BuildPhysicsTable(), G4NeutronTrackingCut::ConstructProcess(), Run::EndOfRun(), HistoManager::EndOfRun(), G4AntiNeutronAnnihilationAtRest::G4AntiNeutronAnnihilationAtRest(), G4HadronicProcess::G4HadronicProcess(), G4HadronStoppingProcess::G4HadronStoppingProcess(), G4MuonMinusAtomicCapture::G4MuonMinusAtomicCapture(), G4AntiNeutronAnnihilationAtRest::PreparePhysicsTable(), G4MuonMinusAtomicCapture::PreparePhysicsTable(), G4HadronStoppingProcess::PreparePhysicsTable(), G4HadronicProcess::RegisterMe(), and G4AntiNeutronAnnihilationAtRest::~G4AntiNeutronAnnihilationAtRest().
Definition at line 805 of file G4HadronicProcessStore.cc.
References G4GenericIon::Definition(), G4CrossSectionDataStore::DumpPhysicsTable(), G4BestUnit, G4cout, G4endl, G4ParticleDefinition::GetBaryonNumber(), 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, HtmlFileName(), m_map, p_map, PrintModelHtml(), and G4HadronicProcess::ProcessDescription().
Referenced by DumpHtml().
void G4HadronicProcessStore::PrintInfo | ( | const G4ParticleDefinition * | part | ) |
Definition at line 558 of file G4HadronicProcessStore.cc.
References buildTableStart, Dump(), DumpHtml(), G4HadronicInteractionRegistry::InitialiseModels(), G4HadronicInteractionRegistry::Instance(), n_part, particle, and verbose.
Referenced by G4AntiNeutronAnnihilationAtRest::BuildPhysicsTable(), G4MuonMinusAtomicCapture::BuildPhysicsTable(), G4HadronStoppingProcess::BuildPhysicsTable(), and G4HadronicProcess::BuildPhysicsTable().
void G4HadronicProcessStore::PrintModelHtml | ( | const G4HadronicInteraction * | model | ) | const |
Definition at line 687 of file G4HadronicProcessStore.cc.
References G4HadronicInteraction::GetModelName(), HtmlFileName(), and G4HadronicInteraction::ModelDescription().
Referenced by PrintHtml().
void G4HadronicProcessStore::Register | ( | G4HadronicProcess * | proc | ) |
Definition at line 408 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 490 of file G4HadronicProcessStore.cc.
References extraProcess, G4cout, G4endl, G4VProcess::GetProcessName(), n_extra, n_proc, process, and verbose.
Referenced by G4NeutronTrackingCut::ConstructProcess(), G4AntiNeutronAnnihilationAtRest::G4AntiNeutronAnnihilationAtRest(), G4HadronStoppingProcess::G4HadronStoppingProcess(), and G4MuonMinusAtomicCapture::G4MuonMinusAtomicCapture().
void G4HadronicProcessStore::RegisterInteraction | ( | G4HadronicProcess * | proc, |
G4HadronicInteraction * | mod | ||
) |
Definition at line 458 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 423 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 511 of file G4HadronicProcessStore.cc.
References ep_map, extraProcess, n_extra, n_part, particle, and wasPrinted.
Referenced by G4NeutronTrackingCut::ConstructProcess(), G4AntiNeutronAnnihilationAtRest::PreparePhysicsTable(), G4MuonMinusAtomicCapture::PreparePhysicsTable(), and G4HadronStoppingProcess::PreparePhysicsTable().
void G4HadronicProcessStore::SetEpReportLevel | ( | G4int | level | ) |
Definition at line 913 of file G4HadronicProcessStore.cc.
References G4cout, G4endl, and process.
Referenced by G4HadronicEPTestMessenger::SetNewValue().
void G4HadronicProcessStore::SetProcessAbsLevel | ( | G4double | absoluteLevel | ) |
Definition at line 924 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 939 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 71 of file G4HadronicProcessStore.hh.
|
private |
Definition at line 245 of file G4HadronicProcessStore.hh.
Referenced by G4HadronicProcessStore(), and PrintInfo().
|
private |
Definition at line 249 of file G4HadronicProcessStore.hh.
Referenced by FindProcess(), and G4HadronicProcessStore().
|
private |
Definition at line 248 of file G4HadronicProcessStore.hh.
Referenced by FindProcess(), and G4HadronicProcessStore().
|
private |
Definition at line 236 of file G4HadronicProcessStore.hh.
Referenced by Dump(), and RegisterParticleForExtraProcess().
|
private |
Definition at line 235 of file G4HadronicProcessStore.hh.
Referenced by Clean(), DeRegisterExtraProcess(), RegisterExtraProcess(), and RegisterParticleForExtraProcess().
|
staticprivate |
Definition at line 218 of file G4HadronicProcessStore.hh.
Referenced by Instance().
|
private |
Definition at line 252 of file G4HadronicProcessStore.hh.
Referenced by FindProcess(), GetCaptureCrossSectionPerAtom(), GetChargeExchangeCrossSectionPerAtom(), GetElasticCrossSectionPerAtom(), GetFissionCrossSectionPerAtom(), and GetInelasticCrossSectionPerAtom().
Definition at line 232 of file G4HadronicProcessStore.hh.
Referenced by Print(), PrintHtml(), and RegisterInteraction().
|
private |
Definition at line 226 of file G4HadronicProcessStore.hh.
Referenced by Print(), RegisterInteraction(), and SetVerbose().
|
private |
Definition at line 227 of file G4HadronicProcessStore.hh.
Referenced by Print(), and RegisterInteraction().
|
private |
Definition at line 242 of file G4HadronicProcessStore.hh.
Referenced by Clean(), DeRegisterExtraProcess(), G4HadronicProcessStore(), RegisterExtraProcess(), and RegisterParticleForExtraProcess().
|
private |
Definition at line 240 of file G4HadronicProcessStore.hh.
Referenced by G4HadronicProcessStore(), Print(), RegisterInteraction(), and SetVerbose().
|
private |
Definition at line 241 of file G4HadronicProcessStore.hh.
Referenced by Dump(), G4HadronicProcessStore(), PrintInfo(), RegisterParticle(), and RegisterParticleForExtraProcess().
|
private |
Definition at line 239 of file G4HadronicProcessStore.hh.
Referenced by Clean(), DeRegister(), Dump(), G4HadronicProcessStore(), Register(), RegisterExtraProcess(), RegisterInteraction(), RegisterParticle(), and SetVerbose().
Definition at line 231 of file G4HadronicProcessStore.hh.
Referenced by Dump(), FindProcess(), PrintHtml(), and RegisterParticle().
|
private |
Definition at line 228 of file G4HadronicProcessStore.hh.
Referenced by Dump(), Print(), PrintInfo(), RegisterParticle(), and RegisterParticleForExtraProcess().
|
private |
Definition at line 225 of file G4HadronicProcessStore.hh.
Referenced by Clean(), DeRegister(), Dump(), Print(), Register(), RegisterExtraProcess(), RegisterInteraction(), RegisterParticle(), SetEpReportLevel(), SetProcessAbsLevel(), SetProcessRelLevel(), and SetVerbose().
|
private |
Definition at line 254 of file G4HadronicProcessStore.hh.
Referenced by G4HadronicProcessStore(), and ~G4HadronicProcessStore().
|
private |
Definition at line 250 of file G4HadronicProcessStore.hh.
Referenced by FindProcess(), and G4HadronicProcessStore().
|
private |
Definition at line 244 of file G4HadronicProcessStore.hh.
Referenced by DeRegisterExtraProcess(), G4HadronicProcessStore(), GetVerbose(), PrintInfo(), Register(), RegisterExtraProcess(), RegisterParticle(), and SetVerbose().
|
private |
Definition at line 229 of file G4HadronicProcessStore.hh.
Referenced by Dump(), Print(), RegisterParticle(), and RegisterParticleForExtraProcess().