Geant4  10.01.p03
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
 
const std::vector
< G4VEnergyLossProcess * > & 
GetEnergyLossProcessVector ()
 
const std::vector
< G4VEmProcess * > & 
GetEmProcessVector ()
 
const std::vector
< G4VMultipleScattering * > & 
GetMultipleScatteringVector ()
 
G4VEnergyLossProcessGetEnergyLossProcess (const G4ParticleDefinition *)
 
G4EmCorrectionsEmCorrections ()
 
G4EmSaturationEmSaturation ()
 
G4EmConfiguratorEmConfigurator ()
 
G4ElectronIonPairElectronIonPair ()
 
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 310 of file G4LossTableManager.hh.

Constructor & Destructor Documentation

G4LossTableManager::~G4LossTableManager ( )

Definition at line 125 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

Definition at line 968 of file G4LossTableManager.cc.

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 511 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 764 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 206 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 279 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 305 of file G4LossTableManager.cc.

References msc_vector.

void G4LossTableManager::DeRegister ( G4VEmProcess p)

Definition at line 332 of file G4LossTableManager.cc.

References emp_vector.

void G4LossTableManager::DeRegister ( G4VEmModel p)

Definition at line 354 of file G4LossTableManager.cc.

References mod_vector, and n.

void G4LossTableManager::DeRegister ( G4VEmFluctuationModel p)

Definition at line 375 of file G4LossTableManager.cc.

References fmod_vector, and n.

G4ElectronIonPair * G4LossTableManager::ElectronIonPair ( )

Definition at line 1188 of file G4LossTableManager.cc.

References emElectronIonPair, and verbose.

G4EmConfigurator * G4LossTableManager::EmConfigurator ( )

Definition at line 1180 of file G4LossTableManager.cc.

References emConfigurator, and verbose.

Referenced by PhysicsList::AddIonGasModels(), and PhysicsList::NewPAIModel().

+ Here is the caller graph for this function:

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

Definition at line 1172 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 
)

Definition at line 1287 of file G4LossTableManager.cc.

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

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 
)

Definition at line 1263 of file G4LossTableManager.cc.

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

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 
)

Definition at line 1338 of file G4LossTableManager.cc.

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

+ Here is the call graph for this function:

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

Definition at line 1129 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 
)

Definition at line 1326 of file G4LossTableManager.cc.

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

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)

Definition at line 1240 of file G4LossTableManager.cc.

References currentLoss, currentParticle, G4ParticleDefinition::GetParticleType(), loss_map, pos, and theGenericIon.

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

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

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

Definition at line 1122 of file G4LossTableManager.cc.

References loss_vector.

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

+ Here is the caller graph for this function:

G4EnergyLossMessenger * G4LossTableManager::GetMessenger ( )

Definition at line 949 of file G4LossTableManager.cc.

References theMessenger.

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

Definition at line 1137 of file G4LossTableManager.cc.

References msc_vector.

Referenced by G4EmCalculator::FindMscProcess().

+ Here is the caller graph for this function:

G4int G4LossTableManager::GetNumberOfBinsPerDecade ( ) const

Definition at line 1066 of file G4LossTableManager.cc.

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 
)

Definition at line 1312 of file G4LossTableManager.cc.

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

Referenced by G4ITStepProcessor::ApplyProductionCut(), G4SteppingManager::ApplyProductionCut(), PhysicsList::GetRange(), G4EmCalculator::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 
)

Definition at line 1299 of file G4LossTableManager.cc.

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

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 
)

Definition at line 1275 of file G4LossTableManager.cc.

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

+ Here is the call graph for this function:

G4LossTableManager * G4LossTableManager::Instance ( void  )
static

Definition at line 114 of file G4LossTableManager.cc.

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

Referenced by PhysicsList::AddIonGasModels(), G4ITStepProcessor::ApplyProductionCut(), G4SteppingManager::ApplyProductionCut(), G4EmBiasingManager::ApplyRangeCut(), G4VMultipleScattering::BuildPhysicsTable(), G4RadioactiveDecay::BuildPhysicsTable(), G4LossTableBuilder::BuildTableForModel(), G4EmCalculator::ComputeElectronicDEDX(), OpNovicePhysicsList::ConstructOp(), G4EmLivermorePolarizedPhysics::ConstructProcess(), G4EmLowEPPhysics::ConstructProcess(), ExExChPhysListEmStandardSS::ConstructProcess(), G4EmLivermorePhysics::ConstructProcess(), G4EmPenelopePhysics::ConstructProcess(), G4EmDNAPhysics::ConstructProcess(), G4EmDNAPhysics_option1::ConstructProcess(), PhysListEmStandardNR::ConstructProcess(), PhysListEmStandardSS::ConstructProcess(), G4EmStandardPhysicsSS::ConstructProcess(), G4EmStandardPhysicsWVI::ConstructProcess(), WLSOpticalPhysics::ConstructProcess(), G4EmStandardPhysics_option3::ConstructProcess(), G4EmStandardPhysics::ConstructProcess(), G4EmStandardPhysics_option4::ConstructProcess(), G4EmStandardPhysics_option1::ConstructProcess(), G4EmStandardPhysics_option2::ConstructProcess(), G4OpticalPhysics::ConstructProcess(), G4NuclearDecayChannel::DecayIt(), export_G4LossTableManager(), exrdmPhysicsList::exrdmPhysicsList(), F04PhysicsList::F04PhysicsList(), G4EmCalculator::FindDiscreteProcess(), G4EmCalculator::FindEnergyLossProcess(), G4EmCalculator::FindEnLossProcess(), G4EmCalculator::FindMscProcess(), 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(), G4EmCalculator::GetCSDARange(), G4EnergyLossTables::GetDEDX(), G4EnergyLossTables::GetPreciseDEDX(), G4EnergyLossTables::GetPreciseEnergyFromRange(), G4EnergyLossTables::GetPreciseRangeFromEnergy(), PhysicsList::GetRange(), G4EnergyLossTables::GetRange(), HadrontherapyPhysicsList::HadrontherapyPhysicsList(), G4LivermorePolarizedPhotoElectricModel::Initialise(), G4DNARuddIonisationExtendedModel::Initialise(), G4DNARuddIonisationModel::Initialise(), G4LivermoreComptonModel::Initialise(), G4DNABornIonisationModel::Initialise(), G4LivermoreComptonModifiedModel::Initialise(), G4LivermorePhotoElectricModel::Initialise(), G4KleinNishinaModel::Initialise(), G4PEEffectFluoModel::Initialise(), G4PenelopePhotoElectricModel::Initialise(), G4PenelopeComptonModel::Initialise(), G4MicroElecInelasticModel::Initialise(), G4MuElecInelasticModel::Initialise(), G4PenelopeIonisationModel::Initialise(), G4BraggIonModel::Initialise(), G4LowEPComptonModel::Initialise(), G4EmSaturation::InitialiseBirksCoefficient(), IORTPhysicsList::IORTPhysicsList(), ML2PhysicsList::ML2PhysicsList(), PhysicsList::NewPAIModel(), 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

Definition at line 1144 of file G4LossTableManager.cc.

References isMaster.

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

+ Here is the caller graph for this function:

G4double G4LossTableManager::MaxKinEnergy ( ) const

Definition at line 1158 of file G4LossTableManager.cc.

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

Definition at line 1151 of file G4LossTableManager.cc.

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 956 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 412 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 453 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 481 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 1352 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 228 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 289 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 316 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 343 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 364 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 385 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::SetBuildCSDARange ( G4bool  val)

Definition at line 1103 of file G4LossTableManager.cc.

Referenced by export_G4LossTableManager().

+ Here is the caller graph for this function:

void G4LossTableManager::SetDEDXBinning ( G4int  val)

Definition at line 1046 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 1053 of file G4LossTableManager.cc.

void G4LossTableManager::SetIntegral ( G4bool  val)

Definition at line 991 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 1059 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 1097 of file G4LossTableManager.cc.

Referenced by export_G4LossTableManager().

+ Here is the caller graph for this function:

void G4LossTableManager::SetLossFluctuations ( G4bool  val)

Definition at line 975 of file G4LossTableManager.cc.

Referenced by export_G4LossTableManager().

+ Here is the caller graph for this function:

void G4LossTableManager::SetMaxEnergy ( G4double  val)

Definition at line 1025 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 1032 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 1039 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 1018 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 1006 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 1110 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 1012 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 1079 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 981 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 1222 of file G4LossTableManager.cc.

References subcutProducer.

void G4LossTableManager::SetVerbose ( G4int  val)

Definition at line 1073 of file G4LossTableManager.cc.

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

+ Here is the caller graph for this function:

G4VSubCutProducer * G4LossTableManager::SubCutProducer ( )

Definition at line 1232 of file G4LossTableManager.cc.

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
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 325 of file G4LossTableManager.hh.

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

G4ThreadLocal G4LossTableManager * G4LossTableManager::instance = 0
staticprivate

Definition at line 308 of file G4LossTableManager.hh.

Referenced by Instance().

G4bool G4LossTableManager::integral
private

Definition at line 341 of file G4LossTableManager.hh.

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

G4bool G4LossTableManager::integralActive
private

Definition at line 342 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 324 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 340 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 330 of file G4LossTableManager.hh.

Referenced by CopyTables(), and G4LossTableManager().

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

Definition at line 350 of file G4LossTableManager.hh.

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


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