Geant4  10.02.p02
G4LossTableManager Class Reference

#include <G4LossTableManager.hh>

+ Collaboration diagram for G4LossTableManager:

Public Member Functions

 ~G4LossTableManager ()
 
void Clear ()
 
void PreparePhysicsTable (const G4ParticleDefinition *aParticle, G4VEnergyLossProcess *p, G4bool theMaster)
 
void PreparePhysicsTable (const G4ParticleDefinition *aParticle, G4VEmProcess *p, G4bool theMaster)
 
void PreparePhysicsTable (const G4ParticleDefinition *aParticle, G4VMultipleScattering *p, G4bool theMaster)
 
void BuildPhysicsTable (const G4ParticleDefinition *aParticle)
 
void BuildPhysicsTable (const G4ParticleDefinition *aParticle, G4VEnergyLossProcess *p)
 
void LocalPhysicsTables (const G4ParticleDefinition *aParticle, G4VEnergyLossProcess *p)
 
G4double GetDEDX (const G4ParticleDefinition *aParticle, G4double kineticEnergy, const G4MaterialCutsCouple *couple)
 
G4double GetSubDEDX (const G4ParticleDefinition *aParticle, G4double kineticEnergy, const G4MaterialCutsCouple *couple)
 
G4double GetRange (const G4ParticleDefinition *aParticle, G4double kineticEnergy, const G4MaterialCutsCouple *couple)
 
G4double GetCSDARange (const G4ParticleDefinition *aParticle, G4double kineticEnergy, const G4MaterialCutsCouple *couple)
 
G4double GetRangeFromRestricteDEDX (const G4ParticleDefinition *aParticle, G4double kineticEnergy, const G4MaterialCutsCouple *couple)
 
G4double GetEnergy (const G4ParticleDefinition *aParticle, G4double range, const G4MaterialCutsCouple *couple)
 
G4double GetDEDXDispersion (const G4MaterialCutsCouple *couple, const G4DynamicParticle *dp, G4double &length)
 
void Register (G4VEnergyLossProcess *p)
 
void DeRegister (G4VEnergyLossProcess *p)
 
void Register (G4VMultipleScattering *p)
 
void DeRegister (G4VMultipleScattering *p)
 
void Register (G4VEmProcess *p)
 
void DeRegister (G4VEmProcess *p)
 
void Register (G4VEmModel *p)
 
void DeRegister (G4VEmModel *p)
 
void Register (G4VEmFluctuationModel *p)
 
void DeRegister (G4VEmFluctuationModel *p)
 
void RegisterExtraParticle (const G4ParticleDefinition *aParticle, G4VEnergyLossProcess *p)
 
void SetLossFluctuations (G4bool val)
 
void SetSubCutoff (G4bool val, const G4Region *r=0)
 
void SetIntegral (G4bool val)
 
void SetRandomStep (G4bool val)
 
void SetMinSubRange (G4double val)
 
void SetMinEnergy (G4double val)
 
void SetMaxEnergy (G4double val)
 
void SetMaxEnergyForCSDARange (G4double val)
 
void SetMaxEnergyForMuons (G4double val)
 
void SetDEDXBinning (G4int val)
 
void SetDEDXBinningForCSDARange (G4int val)
 
void SetLambdaBinning (G4int val)
 
void SetStepFunction (G4double v1, G4double v2)
 
void SetBuildCSDARange (G4bool val)
 
void SetLinearLossLimit (G4double val)
 
void SetVerbose (G4int val)
 
void SetAtomDeexcitation (G4VAtomDeexcitation *)
 
void SetSubCutProducer (G4VSubCutProducer *)
 
G4EnergyLossMessengerGetMessenger ()
 
G4bool BuildCSDARange () const
 
G4bool IsMaster () const
 
G4double MinKinEnergy () const
 
G4double MaxKinEnergy () const
 
G4int GetNumberOfBinsPerDecade () const
 
G4VEnergyLossProcessGetEnergyLossProcess (const G4ParticleDefinition *)
 
const std::vector
< G4VEnergyLossProcess * > & 
GetEnergyLossProcessVector ()
 
const std::vector
< G4VEmProcess * > & 
GetEmProcessVector ()
 
const std::vector
< G4VMultipleScattering * > & 
GetMultipleScatteringVector ()
 
G4EmSaturationEmSaturation ()
 
G4EmConfiguratorEmConfigurator ()
 
G4ElectronIonPairElectronIonPair ()
 
G4EmCorrectionsEmCorrections ()
 
G4VAtomDeexcitationAtomDeexcitation ()
 
G4VSubCutProducerSubCutProducer ()
 
G4LossTableBuilderGetTableBuilder ()
 

Static Public Member Functions

static G4LossTableManagerInstance ()
 

Private Types

typedef const
G4ParticleDefinition
PD
 

Private Member Functions

 G4LossTableManager ()
 
void ResetParameters ()
 
G4VEnergyLossProcessBuildTables (const G4ParticleDefinition *aParticle)
 
void CopyTables (const G4ParticleDefinition *aParticle, G4VEnergyLossProcess *)
 
void ParticleHaveNoLoss (const G4ParticleDefinition *aParticle)
 
void SetParameters (const G4ParticleDefinition *aParticle, G4VEnergyLossProcess *)
 
void CopyDEDXTables ()
 
void PrintEWarning (G4String, G4double)
 
 G4LossTableManager (G4LossTableManager &)
 
G4LossTableManageroperator= (const G4LossTableManager &right)
 

Private Attributes

std::map< PD,
G4VEnergyLossProcess
*, std::less< PD > > 
loss_map
 
std::vector
< G4VEnergyLossProcess * > 
loss_vector
 
std::vector< PDpart_vector
 
std::vector< PDbase_part_vector
 
std::vector< G4booltables_are_built
 
std::vector< G4boolisActive
 
std::vector< G4PhysicsTable * > dedx_vector
 
std::vector< G4PhysicsTable * > range_vector
 
std::vector< G4PhysicsTable * > inv_range_vector
 
std::vector
< G4VMultipleScattering * > 
msc_vector
 
std::vector< G4VEmProcess * > emp_vector
 
std::vector< G4VEmModel * > mod_vector
 
std::vector
< G4VEmFluctuationModel * > 
fmod_vector
 
G4VEnergyLossProcesscurrentLoss
 
PD currentParticle
 
PD theElectron
 
PD theGenericIon
 
PD firstParticle
 
G4int n_loss
 
G4int run
 
G4bool all_tables_are_built
 
G4bool startInitialisation
 
G4bool subCutoffFlag
 
G4bool integral
 
G4bool integralActive
 
G4bool stepFunctionActive
 
G4bool isMaster
 
G4double maxRangeVariation
 
G4double maxFinalStep
 
G4LossTableBuildertableBuilder
 
G4EnergyLossMessengertheMessenger
 
G4EmCorrectionsemCorrections
 
G4EmSaturationemSaturation
 
G4EmConfiguratoremConfigurator
 
G4ElectronIonPairemElectronIonPair
 
G4VAtomDeexcitationatomDeexcitation
 
G4VSubCutProducersubcutProducer
 
G4EmParameterstheParameters
 
G4int verbose
 

Static Private Attributes

static G4ThreadLocal
G4LossTableManager
instance = 0
 

Friends

class G4ThreadLocalSingleton< G4LossTableManager >
 

Detailed Description

Definition at line 102 of file G4LossTableManager.hh.

Member Typedef Documentation

Definition at line 311 of file G4LossTableManager.hh.

Constructor & Destructor Documentation

G4LossTableManager::~G4LossTableManager ( )

Definition at line 123 of file G4LossTableManager.cc.

References a, atomDeexcitation, Clear(), emConfigurator, emCorrections, emElectronIonPair, emp_vector, emSaturation, fmod_vector, loss_vector, mod_vector, msc_vector, n_loss, subcutProducer, tableBuilder, and theMessenger.

+ Here is the call graph for this function:

G4LossTableManager::G4LossTableManager ( G4LossTableManager )
private

Member Function Documentation

G4bool G4LossTableManager::BuildCSDARange ( ) const
inline

Definition at line 486 of file G4LossTableManager.hh.

References G4EmParameters::BuildCSDARange(), and theParameters.

Referenced by export_G4LossTableManager(), and G4VEnergyLossProcess::PreparePhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::BuildPhysicsTable ( const G4ParticleDefinition aParticle)

Definition at line 506 of file G4LossTableManager.cc.

References G4EmConfigurator::Clear(), emConfigurator, run, and startInitialisation.

Referenced by G4VMultipleScattering::BuildPhysicsTable(), and G4VEnergyLossProcess::BuildPhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VEnergyLossProcess * G4LossTableManager::BuildTables ( const G4ParticleDefinition aParticle)
private

Definition at line 753 of file G4LossTableManager.cc.

References G4VEnergyLossProcess::AddCollaborativeProcess(), G4EmParameters::BuildCSDARange(), G4LossTableBuilder::BuildDEDXTable(), G4VEnergyLossProcess::BuildDEDXTable(), G4LossTableBuilder::BuildInverseRangeTable(), G4VEnergyLossProcess::BuildLambdaTable(), G4LossTableBuilder::BuildRangeTable(), G4VEnergyLossProcess::CSDARangeTable(), dedx_vector, G4VEnergyLossProcess::DEDXTable(), G4VEnergyLossProcess::DEDXunRestrictedTable(), fIsIonisation, fIsSubIonisation, fRestricted, fSubRestricted, fTotal, G4cout, G4endl, G4VSubCutProducer::GetName(), G4ParticleDefinition::GetParticleName(), G4ProcessManager::GetProcessList(), G4ParticleDefinition::GetProcessManager(), G4VProcess::GetProcessName(), inv_range_vector, G4VEnergyLossProcess::InverseRangeTable(), G4VEnergyLossProcess::IonisationTableForSubsec(), isActive, G4VEnergyLossProcess::IsIonisationProcess(), loss_vector, n_loss, G4VEnergyLossProcess::NumberOfSubCutoffRegions(), part_vector, G4PhysicsTableHelper::PreparePhysicsTable(), G4PhysicsTable::push_back(), range_vector, G4VEnergyLossProcess::RangeTableForLoss(), G4VEnergyLossProcess::SetCSDARangeTable(), G4VEnergyLossProcess::SetDEDXTable(), G4VEnergyLossProcess::SetInverseRangeTable(), G4VEnergyLossProcess::SetIonisation(), G4VEnergyLossProcess::SetLambdaTable(), G4VEnergyLossProcess::SetRangeTableForLoss(), G4VEnergyLossProcess::SetSubLambdaTable(), G4ProcessVector::size(), subcutProducer, tableBuilder, tables_are_built, theParameters, and verbose.

Referenced by BuildPhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::Clear ( )

Definition at line 204 of file G4LossTableManager.cc.

References all_tables_are_built, base_part_vector, currentLoss, currentParticle, dedx_vector, inv_range_vector, isActive, loss_map, loss_vector, n_loss, part_vector, range_vector, and tables_are_built.

Referenced by ~G4LossTableManager().

+ Here is the caller graph for this function:

void G4LossTableManager::CopyDEDXTables ( )
private
void G4LossTableManager::CopyTables ( const G4ParticleDefinition aParticle,
G4VEnergyLossProcess base_proc 
)
private
void G4LossTableManager::DeRegister ( G4VEnergyLossProcess p)

Definition at line 274 of file G4LossTableManager.cc.

References loss_vector, and n_loss.

Referenced by G4VEmFluctuationModel::~G4VEmFluctuationModel(), G4VEmModel::~G4VEmModel(), G4VEmProcess::~G4VEmProcess(), G4VEnergyLossProcess::~G4VEnergyLossProcess(), and G4VMultipleScattering::~G4VMultipleScattering().

+ Here is the caller graph for this function:

void G4LossTableManager::DeRegister ( G4VMultipleScattering p)

Definition at line 300 of file G4LossTableManager.cc.

References msc_vector.

void G4LossTableManager::DeRegister ( G4VEmProcess p)

Definition at line 327 of file G4LossTableManager.cc.

References emp_vector.

void G4LossTableManager::DeRegister ( G4VEmModel p)

Definition at line 349 of file G4LossTableManager.cc.

References mod_vector, and n.

void G4LossTableManager::DeRegister ( G4VEmFluctuationModel p)

Definition at line 370 of file G4LossTableManager.cc.

References fmod_vector, and n.

G4ElectronIonPair * G4LossTableManager::ElectronIonPair ( )

Definition at line 1136 of file G4LossTableManager.cc.

References emElectronIonPair, and verbose.

G4EmConfigurator * G4LossTableManager::EmConfigurator ( )

Definition at line 1128 of file G4LossTableManager.cc.

References emConfigurator, and verbose.

Referenced by G4EmModelActivator::ActivateDNA(), G4EmModelActivator::ActivateMicroElec(), and PhysicsList::AddIonGasModels().

+ Here is the caller graph for this function:

G4EmCorrections * G4LossTableManager::EmCorrections ( )
inline
G4EmSaturation * G4LossTableManager::EmSaturation ( )

Definition at line 1120 of file G4LossTableManager.cc.

References emSaturation, and verbose.

Referenced by OpNovicePhysicsList::ConstructOp(), WLSOpticalPhysics::ConstructProcess(), and G4OpticalPhysics::ConstructProcess().

+ Here is the caller graph for this function:

G4double G4LossTableManager::GetCSDARange ( const G4ParticleDefinition aParticle,
G4double  kineticEnergy,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 417 of file G4LossTableManager.hh.

References currentLoss, currentParticle, DBL_MAX, G4VEnergyLossProcess::GetCSDARange(), GetEnergyLossProcess(), and x.

Referenced by G4EmCalculator::GetCSDARange().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4LossTableManager::GetDEDX ( const G4ParticleDefinition aParticle,
G4double  kineticEnergy,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 391 of file G4LossTableManager.hh.

References currentLoss, currentParticle, G4VEnergyLossProcess::GetDEDX(), GetEnergyLossProcess(), and x.

Referenced by G4EmCalculator::GetDEDX(), G4EnergyLossTables::GetDEDX(), G4EnergyLossTables::GetPreciseDEDX(), and G4EnergyLossTables::GetPreciseRangeFromEnergy().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4LossTableManager::GetDEDXDispersion ( const G4MaterialCutsCouple couple,
const G4DynamicParticle dp,
G4double length 
)
inline

Definition at line 472 of file G4LossTableManager.hh.

References currentLoss, currentParticle, G4VEnergyLossProcess::GetDEDXDispersion(), GetEnergyLossProcess(), G4DynamicParticle::GetParticleDefinition(), and x.

+ Here is the call graph for this function:

const std::vector< G4VEmProcess * > & G4LossTableManager::GetEmProcessVector ( )

Definition at line 1105 of file G4LossTableManager.cc.

References emp_vector.

Referenced by G4EmProcessOptions::ActivateForcedInteraction(), G4EmProcessOptions::ActivateSecondaryBiasingForGamma(), G4EmCalculator::FindDiscreteProcess(), and G4EmProcessOptions::SetProcessBiasingFactor().

+ Here is the caller graph for this function:

G4double G4LossTableManager::GetEnergy ( const G4ParticleDefinition aParticle,
G4double  range,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 459 of file G4LossTableManager.hh.

References currentLoss, currentParticle, GetEnergyLossProcess(), G4VEnergyLossProcess::GetKineticEnergy(), and x.

Referenced by G4EmCalculator::GetKinEnergy(), and G4EnergyLossTables::GetPreciseEnergyFromRange().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VEnergyLossProcess * G4LossTableManager::GetEnergyLossProcess ( const G4ParticleDefinition aParticle)
inline

Definition at line 369 of file G4LossTableManager.hh.

References currentLoss, currentParticle, loss_map, pos, and theGenericIon.

Referenced by G4EmBiasingManager::ApplyRangeCut(), G4EmCalculator::FindEnergyLossProcess(), GetCSDARange(), GetDEDX(), GetDEDXDispersion(), GetEnergy(), GetRange(), GetRangeFromRestricteDEDX(), GetSubDEDX(), and G4VMultipleScattering::StartTracking().

+ Here is the caller graph for this function:

const std::vector< G4VEnergyLossProcess * > & G4LossTableManager::GetEnergyLossProcessVector ( )

Definition at line 1098 of file G4LossTableManager.cc.

References loss_vector.

Referenced by G4EmProcessOptions::ActivateForcedInteraction(), G4EmModelActivator::ActivatePAI(), G4EmProcessOptions::ActivateSecondaryBiasing(), G4EmCalculator::ComputeDEDXForCutInRange(), G4EmCalculator::ComputeElectronicDEDX(), G4EmCalculator::FindEnLossProcess(), and G4EmProcessOptions::SetProcessBiasingFactor().

+ Here is the caller graph for this function:

G4EnergyLossMessenger * G4LossTableManager::GetMessenger ( )

Definition at line 938 of file G4LossTableManager.cc.

References theMessenger.

const std::vector< G4VMultipleScattering * > & G4LossTableManager::GetMultipleScatteringVector ( )

Definition at line 1113 of file G4LossTableManager.cc.

References msc_vector.

Referenced by G4EmCalculator::FindMscProcess().

+ Here is the caller graph for this function:

G4int G4LossTableManager::GetNumberOfBinsPerDecade ( ) const
inline

Definition at line 514 of file G4LossTableManager.hh.

References G4EmParameters::NumberOfBinsPerDecade(), and theParameters.

Referenced by G4LossTableBuilder::BuildTableForModel(), and G4VEmModel::InitialiseElementSelectors().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4LossTableManager::GetRange ( const G4ParticleDefinition aParticle,
G4double  kineticEnergy,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 444 of file G4LossTableManager.hh.

References currentLoss, currentParticle, DBL_MAX, GetEnergyLossProcess(), G4VEnergyLossProcess::GetRange(), and x.

Referenced by G4SteppingManager::ApplyProductionCut(), G4ITStepProcessor::ApplyProductionCut(), PhysicsList::GetRange(), G4EnergyLossTables::GetRange(), DMXMinEkineCuts::PostStepGetPhysicalInteractionLength(), G4UserSpecialCuts::PostStepGetPhysicalInteractionLength(), and G4EmSaturation::VisibleEnergyDeposition().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4LossTableManager::GetRangeFromRestricteDEDX ( const G4ParticleDefinition aParticle,
G4double  kineticEnergy,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 430 of file G4LossTableManager.hh.

References currentLoss, currentParticle, DBL_MAX, GetEnergyLossProcess(), G4VEnergyLossProcess::GetRangeForLoss(), and x.

Referenced by G4EmCalculator::GetRangeFromRestricteDEDX().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4LossTableManager::GetSubDEDX ( const G4ParticleDefinition aParticle,
G4double  kineticEnergy,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 404 of file G4LossTableManager.hh.

References currentLoss, currentParticle, G4VEnergyLossProcess::GetDEDXForSubsec(), GetEnergyLossProcess(), and x.

+ Here is the call graph for this function:

G4LossTableManager * G4LossTableManager::Instance ( void  )
static

Definition at line 112 of file G4LossTableManager.cc.

References G4ThreadLocalSingleton< T >::Instance(), and instance.

Referenced by G4EmModelActivator::ActivateDNA(), G4EmModelActivator::ActivateMicroElec(), G4EmModelActivator::ActivatePAI(), PhysicsList::AddIonGasModels(), G4SteppingManager::ApplyProductionCut(), G4ITStepProcessor::ApplyProductionCut(), G4EmBiasingManager::ApplyRangeCut(), G4VMultipleScattering::BuildPhysicsTable(), G4RadioactiveDecay::BuildPhysicsTable(), G4LossTableBuilder::BuildTableForModel(), G4EmCalculator::ComputeDEDXForCutInRange(), G4EmCalculator::ComputeElectronicDEDX(), OpNovicePhysicsList::ConstructOp(), G4EmDNAPhysics_option3::ConstructProcess(), G4EmLivermorePolarizedPhysics::ConstructProcess(), G4EmLowEPPhysics::ConstructProcess(), ExExChPhysListEmStandardSS::ConstructProcess(), G4EmPenelopePhysics::ConstructProcess(), G4EmDNAPhysics_option4::ConstructProcess(), G4EmDNAPhysics_option5::ConstructProcess(), G4EmLivermorePhysics::ConstructProcess(), G4EmDNAPhysics_option7::ConstructProcess(), G4EmDNAPhysics::ConstructProcess(), G4EmDNAPhysics_option1::ConstructProcess(), G4EmDNAPhysics_option2::ConstructProcess(), PhysListEmStandardNR::ConstructProcess(), PhysListEmStandardSS::ConstructProcess(), PhysListEmStandardMP::ConstructProcess(), G4EmStandardPhysicsSS::ConstructProcess(), WLSOpticalPhysics::ConstructProcess(), G4EmStandardPhysicsWVI::ConstructProcess(), G4EmStandardPhysics::ConstructProcess(), G4EmStandardPhysics_option3::ConstructProcess(), G4EmStandardPhysicsGS::ConstructProcess(), G4EmStandardPhysics_option4::ConstructProcess(), G4EmStandardPhysics_option1::ConstructProcess(), G4EmStandardPhysics_option2::ConstructProcess(), G4OpticalPhysics::ConstructProcess(), G4ECDecay::DecayIt(), G4ITDecay::DecayIt(), G4NuclearDecayChannel::DecayIt(), export_G4LossTableManager(), F04PhysicsList::F04PhysicsList(), G4BetheBlochModel::G4BetheBlochModel(), G4BraggModel::G4BraggModel(), G4EmCalculator::G4EmCalculator(), G4EmProcessOptions::G4EmProcessOptions(), G4EmUserPhysics::G4EmUserPhysics(), G4GoudsmitSaundersonMscModel::G4GoudsmitSaundersonMscModel(), G4ionIonisation::G4ionIonisation(), G4IonParametrisedLossModel::G4IonParametrisedLossModel(), G4MuBetheBlochModel::G4MuBetheBlochModel(), G4UAtomicDeexcitation::G4UAtomicDeexcitation(), G4UrbanMscModel::G4UrbanMscModel(), G4UserSpecialCuts::G4UserSpecialCuts(), G4VEmFluctuationModel::G4VEmFluctuationModel(), G4VEmModel::G4VEmModel(), G4VEmProcess::G4VEmProcess(), G4VEnergyLossProcess::G4VEnergyLossProcess(), G4VMscModel::G4VMscModel(), G4VMultipleScattering::G4VMultipleScattering(), G4WentzelVIRelModel::G4WentzelVIRelModel(), GammaKnifePhysicsList::GammaKnifePhysicsList(), G4EnergyLossTables::GetDEDX(), G4EnergyLossTables::GetPreciseDEDX(), G4EnergyLossTables::GetPreciseEnergyFromRange(), G4EnergyLossTables::GetPreciseRangeFromEnergy(), PhysicsList::GetRange(), G4EnergyLossTables::GetRange(), HadrontherapyPhysicsList::HadrontherapyPhysicsList(), G4LivermorePolarizedPhotoElectricGDModel::Initialise(), G4DNARuddIonisationModel::Initialise(), G4DNARuddIonisationExtendedModel::Initialise(), G4LivermoreComptonModel::Initialise(), G4DNABornIonisationModel1::Initialise(), G4DNABornIonisationModel2::Initialise(), G4LivermoreComptonModifiedModel::Initialise(), G4LivermorePhotoElectricModel::Initialise(), G4LivermorePolarizedPhotoElectricModel::Initialise(), G4LivermorePolarizedComptonModel::Initialise(), G4DNAEmfietzoglouIonisationModel::Initialise(), G4KleinNishinaModel::Initialise(), G4PEEffectFluoModel::Initialise(), G4PenelopePhotoElectricModel::Initialise(), G4PenelopeComptonModel::Initialise(), G4MicroElecInelasticModel::Initialise(), G4MuElecInelasticModel::Initialise(), G4PenelopeIonisationModel::Initialise(), G4BraggIonModel::Initialise(), G4LowEPComptonModel::Initialise(), G4LowEPPolarizedComptonModel::Initialise(), G4EmSaturation::InitialiseBirksCoefficient(), IORTPhysicsList::IORTPhysicsList(), ML2PhysicsList::ML2PhysicsList(), PhysicsList::PhysicsList(), PhysListEmStandardNR::PhysListEmStandardNR(), PhysListEmStandardSS::PhysListEmStandardSS(), DMXMinEkineCuts::PostStepGetPhysicalInteractionLength(), G4Cerenkov::PostStepGetPhysicalInteractionLength(), G4ContinuousGainOfEnergy::SetDynamicMassCharge(), WLSPhysicsList::WLSPhysicsList(), and XrayFluoPhysicsList::XrayFluoPhysicsList().

+ Here is the call graph for this function:

G4bool G4LossTableManager::IsMaster ( ) const
inline

Definition at line 493 of file G4LossTableManager.hh.

References isMaster.

Referenced by G4VMultipleScattering::BuildPhysicsTable(), and G4VEmProcess::~G4VEmProcess().

+ Here is the caller graph for this function:

void G4LossTableManager::LocalPhysicsTables ( const G4ParticleDefinition aParticle,
G4VEnergyLossProcess p 
)
G4double G4LossTableManager::MaxKinEnergy ( ) const
inline

Definition at line 507 of file G4LossTableManager.hh.

References G4EmParameters::MaxKinEnergy(), and theParameters.

Referenced by G4VMscModel::GetParticleChangeForMSC().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4LossTableManager::MinKinEnergy ( ) const
inline

Definition at line 500 of file G4LossTableManager.hh.

References G4EmParameters::MinKinEnergy(), and theParameters.

Referenced by G4VMscModel::GetParticleChangeForMSC().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4LossTableManager& G4LossTableManager::operator= ( const G4LossTableManager right)
private
void G4LossTableManager::ParticleHaveNoLoss ( const G4ParticleDefinition aParticle)
private

Definition at line 945 of file G4LossTableManager.cc.

References FatalException, G4Exception(), and G4ParticleDefinition::GetParticleName().

+ Here is the call graph for this function:

void G4LossTableManager::PreparePhysicsTable ( const G4ParticleDefinition aParticle,
G4VEnergyLossProcess p,
G4bool  theMaster 
)

Definition at line 407 of file G4LossTableManager.cc.

References emConfigurator, G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), isMaster, loss_vector, n_loss, part_vector, G4EmConfigurator::PrepareModels(), ResetParameters(), run, startInitialisation, theGenericIon, and verbose.

Referenced by G4VMultipleScattering::PreparePhysicsTable(), G4VEmProcess::PreparePhysicsTable(), and G4VEnergyLossProcess::PreparePhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::PreparePhysicsTable ( const G4ParticleDefinition aParticle,
G4VEmProcess p,
G4bool  theMaster 
)

Definition at line 448 of file G4LossTableManager.cc.

References emConfigurator, G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), isMaster, G4EmConfigurator::PrepareModels(), ResetParameters(), run, startInitialisation, and verbose.

+ Here is the call graph for this function:

void G4LossTableManager::PreparePhysicsTable ( const G4ParticleDefinition aParticle,
G4VMultipleScattering p,
G4bool  theMaster 
)

Definition at line 476 of file G4LossTableManager.cc.

References emConfigurator, G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), isMaster, G4EmConfigurator::PrepareModels(), ResetParameters(), run, startInitialisation, and verbose.

+ Here is the call graph for this function:

void G4LossTableManager::PrintEWarning ( G4String  tit,
G4double   
)
private

Definition at line 1166 of file G4LossTableManager.cc.

References G4Exception(), and JustWarning.

Referenced by SetStepFunction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::Register ( G4VEnergyLossProcess p)

Definition at line 226 of file G4LossTableManager.cc.

References G4VEnergyLossProcess::ActivateSubCutoff(), all_tables_are_built, base_part_vector, dedx_vector, G4cout, G4endl, G4VProcess::GetProcessName(), integral, integralActive, inv_range_vector, isActive, loss_vector, maxFinalStep, maxRangeVariation, n_loss, part_vector, range_vector, G4VEnergyLossProcess::SetIntegral(), G4VEnergyLossProcess::SetStepFunction(), stepFunctionActive, subCutoffFlag, tables_are_built, and verbose.

Referenced by G4VEmFluctuationModel::G4VEmFluctuationModel(), G4VEmModel::G4VEmModel(), G4VEmProcess::G4VEmProcess(), G4VEnergyLossProcess::G4VEnergyLossProcess(), and G4VMultipleScattering::G4VMultipleScattering().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::Register ( G4VMultipleScattering p)

Definition at line 284 of file G4LossTableManager.cc.

References G4cout, G4endl, G4VProcess::GetProcessName(), msc_vector, n, and verbose.

+ Here is the call graph for this function:

void G4LossTableManager::Register ( G4VEmProcess p)

Definition at line 311 of file G4LossTableManager.cc.

References emp_vector, G4cout, G4endl, G4VProcess::GetProcessName(), n, and verbose.

+ Here is the call graph for this function:

void G4LossTableManager::Register ( G4VEmModel p)

Definition at line 338 of file G4LossTableManager.cc.

References G4cout, G4endl, G4VEmModel::GetName(), mod_vector, and verbose.

+ Here is the call graph for this function:

void G4LossTableManager::Register ( G4VEmFluctuationModel p)

Definition at line 359 of file G4LossTableManager.cc.

References fmod_vector, G4cout, G4endl, G4VEmFluctuationModel::GetName(), and verbose.

+ Here is the call graph for this function:

void G4LossTableManager::RegisterExtraParticle ( const G4ParticleDefinition aParticle,
G4VEnergyLossProcess p 
)

Definition at line 380 of file G4LossTableManager.cc.

References all_tables_are_built, base_part_vector, G4VEnergyLossProcess::BaseParticle(), dedx_vector, G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), inv_range_vector, loss_vector, n_loss, part_vector, range_vector, tables_are_built, and verbose.

Referenced by G4VEnergyLossProcess::PreparePhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::ResetParameters ( )
private

Definition at line 254 of file G4LossTableManager.cc.

References atomDeexcitation, emConfigurator, emCorrections, emElectronIonPair, emSaturation, G4VAtomDeexcitation::InitialiseAtomicDeexcitation(), isMaster, G4LossTableBuilder::SetInitialisationFlag(), G4LossTableBuilder::SetSplineFlag(), G4EmSaturation::SetVerbose(), G4EmConfigurator::SetVerbose(), G4ElectronIonPair::SetVerbose(), G4EmCorrections::SetVerbose(), G4VAtomDeexcitation::SetVerboseLevel(), G4EmParameters::Spline(), tableBuilder, theParameters, G4EmParameters::Verbose(), verbose, and G4EmParameters::WorkerVerbose().

Referenced by PreparePhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::SetBuildCSDARange ( G4bool  val)

Definition at line 1078 of file G4LossTableManager.cc.

Referenced by export_G4LossTableManager().

+ Here is the caller graph for this function:

void G4LossTableManager::SetDEDXBinning ( G4int  val)

Definition at line 1028 of file G4LossTableManager.cc.

References G4EmParameters::SetNumberOfBins(), and theParameters.

+ Here is the call graph for this function:

void G4LossTableManager::SetDEDXBinningForCSDARange ( G4int  val)

Definition at line 1035 of file G4LossTableManager.cc.

void G4LossTableManager::SetIntegral ( G4bool  val)

Definition at line 973 of file G4LossTableManager.cc.

References emp_vector, integral, integralActive, loss_vector, and n_loss.

Referenced by export_G4LossTableManager(), and G4EmProcessOptions::SetIntegral().

+ Here is the caller graph for this function:

void G4LossTableManager::SetLambdaBinning ( G4int  val)

Definition at line 1041 of file G4LossTableManager.cc.

References G4EmParameters::SetNumberOfBins(), and theParameters.

+ Here is the call graph for this function:

void G4LossTableManager::SetLinearLossLimit ( G4double  val)

Definition at line 1072 of file G4LossTableManager.cc.

Referenced by export_G4LossTableManager().

+ Here is the caller graph for this function:

void G4LossTableManager::SetLossFluctuations ( G4bool  val)

Definition at line 957 of file G4LossTableManager.cc.

Referenced by export_G4LossTableManager().

+ Here is the caller graph for this function:

void G4LossTableManager::SetMaxEnergy ( G4double  val)

Definition at line 1007 of file G4LossTableManager.cc.

References G4EmParameters::SetMaxEnergy(), and theParameters.

Referenced by export_G4LossTableManager().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::SetMaxEnergyForCSDARange ( G4double  val)

Definition at line 1014 of file G4LossTableManager.cc.

References G4EmParameters::SetMaxEnergyForCSDARange(), and theParameters.

Referenced by export_G4LossTableManager().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::SetMaxEnergyForMuons ( G4double  val)

Definition at line 1021 of file G4LossTableManager.cc.

References G4EmParameters::SetMaxEnergy(), and theParameters.

Referenced by export_G4LossTableManager().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::SetMinEnergy ( G4double  val)

Definition at line 1000 of file G4LossTableManager.cc.

References G4EmParameters::SetMinEnergy(), and theParameters.

Referenced by export_G4LossTableManager().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::SetMinSubRange ( G4double  val)

Definition at line 988 of file G4LossTableManager.cc.

Referenced by export_G4LossTableManager().

+ Here is the caller graph for this function:

void G4LossTableManager::SetParameters ( const G4ParticleDefinition aParticle,
G4VEnergyLossProcess p 
)
private

Definition at line 1085 of file G4LossTableManager.cc.

References integral, integralActive, maxFinalStep, maxRangeVariation, G4VEnergyLossProcess::SetIntegral(), G4VEnergyLossProcess::SetStepFunction(), and stepFunctionActive.

Referenced by BuildPhysicsTable(), and LocalPhysicsTables().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::SetRandomStep ( G4bool  val)

Definition at line 994 of file G4LossTableManager.cc.

Referenced by export_G4LossTableManager().

+ Here is the caller graph for this function:

void G4LossTableManager::SetStepFunction ( G4double  v1,
G4double  v2 
)

Definition at line 1054 of file G4LossTableManager.cc.

References loss_vector, maxFinalStep, maxRangeVariation, n_loss, PrintEWarning(), and stepFunctionActive.

Referenced by export_G4LossTableManager(), and G4EmProcessOptions::SetStepFunction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LossTableManager::SetSubCutoff ( G4bool  val,
const G4Region r = 0 
)

Definition at line 963 of file G4LossTableManager.cc.

References loss_vector, n_loss, and subCutoffFlag.

Referenced by export_G4LossTableManager(), and G4EmProcessOptions::SetSubCutoff().

+ Here is the caller graph for this function:

void G4LossTableManager::SetSubCutProducer ( G4VSubCutProducer p)

Definition at line 1156 of file G4LossTableManager.cc.

References subcutProducer.

void G4LossTableManager::SetVerbose ( G4int  val)

Definition at line 1048 of file G4LossTableManager.cc.

Referenced by export_G4LossTableManager(), LocalPhysicsTables(), and XrayFluoPhysicsList::XrayFluoPhysicsList().

+ Here is the caller graph for this function:

G4VSubCutProducer * G4LossTableManager::SubCutProducer ( )
inline

Definition at line 535 of file G4LossTableManager.hh.

References subcutProducer.

Referenced by G4VEnergyLossProcess::BuildPhysicsTable(), and G4VEnergyLossProcess::PreparePhysicsTable().

+ Here is the caller graph for this function:

Friends And Related Function Documentation

Definition at line 105 of file G4LossTableManager.hh.

Member Data Documentation

G4bool G4LossTableManager::all_tables_are_built
private
G4VAtomDeexcitation* G4LossTableManager::atomDeexcitation
private
std::vector<PD> G4LossTableManager::base_part_vector
private
std::vector<G4PhysicsTable*> G4LossTableManager::dedx_vector
private
G4EmCorrections* G4LossTableManager::emCorrections
private
G4ElectronIonPair* G4LossTableManager::emElectronIonPair
private
std::vector<G4VEmProcess*> G4LossTableManager::emp_vector
private
G4EmSaturation* G4LossTableManager::emSaturation
private
PD G4LossTableManager::firstParticle
private
std::vector<G4VEmFluctuationModel*> G4LossTableManager::fmod_vector
private

Definition at line 326 of file G4LossTableManager.hh.

Referenced by DeRegister(), Register(), and ~G4LossTableManager().

G4ThreadLocal G4LossTableManager * G4LossTableManager::instance = 0
staticprivate

Definition at line 309 of file G4LossTableManager.hh.

Referenced by Instance().

G4bool G4LossTableManager::integral
private

Definition at line 342 of file G4LossTableManager.hh.

Referenced by G4LossTableManager(), Register(), SetIntegral(), and SetParameters().

G4bool G4LossTableManager::integralActive
private

Definition at line 343 of file G4LossTableManager.hh.

Referenced by G4LossTableManager(), Register(), SetIntegral(), and SetParameters().

std::vector<G4PhysicsTable*> G4LossTableManager::inv_range_vector
private
std::vector<G4bool> G4LossTableManager::isActive
private
G4bool G4LossTableManager::isMaster
private
std::map<PD,G4VEnergyLossProcess*,std::less<PD> > G4LossTableManager::loss_map
private
G4double G4LossTableManager::maxFinalStep
private
G4double G4LossTableManager::maxRangeVariation
private
std::vector<G4VEmModel*> G4LossTableManager::mod_vector
private

Definition at line 325 of file G4LossTableManager.hh.

Referenced by DeRegister(), Register(), and ~G4LossTableManager().

std::vector<G4VMultipleScattering*> G4LossTableManager::msc_vector
private
std::vector<PD> G4LossTableManager::part_vector
private
std::vector<G4PhysicsTable*> G4LossTableManager::range_vector
private
G4int G4LossTableManager::run
private
G4bool G4LossTableManager::startInitialisation
private
G4bool G4LossTableManager::stepFunctionActive
private
G4bool G4LossTableManager::subCutoffFlag
private

Definition at line 341 of file G4LossTableManager.hh.

Referenced by G4LossTableManager(), Register(), and SetSubCutoff().

G4VSubCutProducer* G4LossTableManager::subcutProducer
private
G4LossTableBuilder* G4LossTableManager::tableBuilder
private
std::vector<G4bool> G4LossTableManager::tables_are_built
private
PD G4LossTableManager::theElectron
private

Definition at line 331 of file G4LossTableManager.hh.

Referenced by CopyTables(), and G4LossTableManager().

PD G4LossTableManager::theGenericIon
private
G4EnergyLossMessenger* G4LossTableManager::theMessenger
private

Definition at line 351 of file G4LossTableManager.hh.

Referenced by G4LossTableManager(), GetMessenger(), and ~G4LossTableManager().


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