Geant4
10.00.p01
|
#include <G4VMultipleScattering.hh>
Protected Member Functions | |
virtual void | InitialiseProcess (const G4ParticleDefinition *)=0 |
G4double | GetMeanFreePath (const G4Track &track, G4double, G4ForceCondition *condition) |
G4double | GetContinuousStepLimit (const G4Track &track, G4double previousStepSize, G4double currentMinimalStep, G4double ¤tSafety) |
Protected Member Functions inherited from G4VContinuousDiscreteProcess | |
void | SetGPILSelection (G4GPILSelection selection) |
G4GPILSelection | GetGPILSelection () const |
Protected Member Functions inherited from G4VProcess | |
void | SubtractNumberOfInteractionLengthLeft (G4double previousStepSize) |
void | ClearNumberOfInteractionLengthLeft () |
Private Member Functions | |
G4VMultipleScattering (G4VMultipleScattering &) | |
G4VMultipleScattering & | operator= (const G4VMultipleScattering &right) |
Additional Inherited Members | |
Static Public Member Functions inherited from G4VProcess | |
static const G4String & | GetProcessTypeName (G4ProcessType) |
Definition at line 91 of file G4VMultipleScattering.hh.
G4VMultipleScattering::G4VMultipleScattering | ( | const G4String & | name = "msc" , |
G4ProcessType | type = fElectromagnetic |
||
) |
Definition at line 90 of file G4VMultipleScattering.cc.
References emManager, eV, fIonisation, firstParticle, fMultipleScattering, fParticleChange, fPositionChanged, G4GenericIon::GenericIon(), geomMin, gPathLength, G4LossTableManager::Instance(), isActive, lowestKinEnergy, modelManager, physStepLimit, polarAngleLimit, G4VProcess::pParticleChange, G4LossTableManager::Register(), safetyHelper, G4VProcess::SetProcessSubType(), G4VProcess::SetVerboseLevel(), tPathLength, and warn.
|
virtual |
Definition at line 130 of file G4VMultipleScattering.cc.
References G4LossTableManager::DeRegister(), emManager, and modelManager.
|
private |
void G4VMultipleScattering::AddEmModel | ( | G4int | order, |
G4VEmModel * | p, | ||
const G4Region * | region = 0 |
||
) |
Definition at line 144 of file G4VMultipleScattering.cc.
References G4EmModelManager::AddEmModel(), fm, modelManager, G4VProcess::pParticleChange, and G4VEmModel::SetParticleChange().
Referenced by G4EmLivermorePolarizedPhysics::ConstructProcess(), G4EmLowEPPhysics::ConstructProcess(), G4EmPenelopePhysics::ConstructProcess(), G4EmLivermorePhysics::ConstructProcess(), PhysListEmStandardGS::ConstructProcess(), PhysListEmStandardWVI::ConstructProcess(), PhysListEmStandard_WVI::ConstructProcess(), PhysListEmStandard_GS::ConstructProcess(), G4EmStandardPhysics::ConstructProcess(), G4EmStandardPhysics_option3::ConstructProcess(), G4EmStandardPhysics_option4::ConstructProcess(), G4EmStandardPhysics_option1::ConstructProcess(), G4EmStandardPhysics_option2::ConstructProcess(), G4eMultipleScattering::InitialiseProcess(), G4MuMultipleScattering::InitialiseProcess(), G4hMultipleScattering::InitialiseProcess(), G4AdjointhMultipleScattering::InitialiseProcess(), G4EmConfigurator::PrepareModels(), and G4EmConfigurator::SetModelForRegion().
|
virtual |
Reimplemented from G4VContinuousDiscreteProcess.
Definition at line 457 of file G4VMultipleScattering.cc.
References G4SafetyHelper::ComputeSafety(), G4VMscModel::ComputeTrueStepLength(), currentModel, currParticle, fac, fNewPosition, fParticleChange, fPositionChanged, geomMin, G4Track::GetKineticEnergy(), G4Track::GetMaterialCutsCouple(), G4StepPoint::GetMomentumDirection(), G4StepPoint::GetPosition(), G4Step::GetPostStepPoint(), G4Step::GetPreStepPoint(), G4VMscModel::GetRange(), G4StepPoint::GetSafety(), G4Step::GetStepLength(), isActive, physStepLimit, G4ParticleChangeForMSC::ProposeMomentumDirection(), G4ParticleChangeForMSC::ProposePosition(), G4VParticleChange::ProposeTrueStepLength(), safetyHelper, G4VMscModel::SampleScattering(), and tPathLength.
|
virtual |
Reimplemented from G4VContinuousDiscreteProcess.
Definition at line 391 of file G4VMultipleScattering.cc.
References CandidateForSelection, G4VMscModel::ComputeTruePathLengthLimit(), currentModel, geomMin, G4MaterialCutsCouple::GetIndex(), G4Track::GetKineticEnergy(), G4Track::GetMaterialCutsCouple(), G4Track::GetParticleDefinition(), G4ParticleDefinition::GetPDGMass(), gPathLength, isActive, G4VEmModel::IsActive(), isIon, lowestKinEnergy, NotCandidateForSelection, numberOfModels, physStepLimit, SelectModel(), and tPathLength.
Referenced by GetContinuousStepLimit().
|
virtual |
Reimplemented from G4VProcess.
Definition at line 268 of file G4VMultipleScattering.cc.
References G4LossTableManager::BuildPhysicsTable(), G4EmModelManager::DumpModelList(), emManager, firstParticle, G4cout, G4endl, G4VEmModel::GetCrossSectionTable(), G4VProcess::GetMasterProcess(), GetModelByIndex(), G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), G4VProcess::GetProcessSubType(), G4LossTableManager::Instance(), G4LossTableManager::IsMaster(), modelManager, G4EmModelManager::NumberOfModels(), numberOfModels, PrintInfo(), G4VEmModel::SetCrossSectionTable(), and G4VProcess::verboseLevel.
G4double G4VMultipleScattering::ContinuousStepLimit | ( | const G4Track & | track, |
G4double | previousStepSize, | ||
G4double | currentMinimalStep, | ||
G4double & | currentSafety | ||
) |
Definition at line 573 of file G4VMultipleScattering.cc.
References GetContinuousStepLimit().
G4VMscModel * G4VMultipleScattering::EmModel | ( | G4int | index = 1 | ) | const |
Definition at line 163 of file G4VMultipleScattering.cc.
References mscModels.
Referenced by G4MuMultipleScattering::InitialiseProcess(), G4eMultipleScattering::InitialiseProcess(), and G4hMultipleScattering::InitialiseProcess().
|
inline |
Definition at line 413 of file G4VMultipleScattering.hh.
References firstParticle.
|
inline |
Definition at line 354 of file G4VMultipleScattering.hh.
References facgeom.
Referenced by G4AdjointhMultipleScattering::InitialiseProcess(), PreparePhysicsTable(), G4eMultipleScattering::PrintInfo(), and G4hMultipleScattering::PrintInfo().
|
protectedvirtual |
Implements G4VContinuousDiscreteProcess.
Definition at line 557 of file G4VMultipleScattering.cc.
References AlongStepGetPhysicalInteractionLength(), and NotCandidateForSelection.
Referenced by ContinuousStepLimit().
|
protectedvirtual |
Implements G4VContinuousDiscreteProcess.
Definition at line 585 of file G4VMultipleScattering.cc.
G4VEmModel * G4VMultipleScattering::GetModelByIndex | ( | G4int | idx = 0 , |
G4bool | ver = false |
||
) | const |
Definition at line 173 of file G4VMultipleScattering.cc.
References G4EmModelManager::GetModel(), and modelManager.
Referenced by BuildPhysicsTable(), SetIonisation(), and StartTracking().
|
protectedpure virtual |
Implemented in G4AdjointhMultipleScattering, G4hMultipleScattering, G4MuMultipleScattering, and G4eMultipleScattering.
Referenced by PreparePhysicsTable().
|
pure virtual |
Reimplemented from G4VProcess.
Implemented in G4AdjointhMultipleScattering, G4hMultipleScattering, G4MuMultipleScattering, and G4eMultipleScattering.
|
inline |
Definition at line 311 of file G4VMultipleScattering.hh.
References latDisplasment.
Referenced by G4AdjointhMultipleScattering::InitialiseProcess(), PreparePhysicsTable(), G4eMultipleScattering::PrintInfo(), G4MuMultipleScattering::PrintInfo(), G4hMultipleScattering::PrintInfo(), and G4AdjointhMultipleScattering::PrintInfo().
|
inline |
Definition at line 399 of file G4VMultipleScattering.hh.
References lowestKinEnergy.
|
private |
|
inline |
Definition at line 368 of file G4VMultipleScattering.hh.
References polarAngleLimit.
Referenced by G4MuMultipleScattering::PrintInfo().
|
virtual |
Reimplemented from G4VContinuousDiscreteProcess.
Definition at line 543 of file G4VMultipleScattering.cc.
References fNewPosition, fParticleChange, fPositionChanged, G4ParticleChangeForMSC::Initialize(), G4ParticleChangeForMSC::ProposePosition(), G4SafetyHelper::ReLocateWithinVolume(), and safetyHelper.
|
virtual |
Reimplemented from G4VContinuousDiscreteProcess.
Definition at line 446 of file G4VMultipleScattering.cc.
|
virtual |
Reimplemented from G4VProcess.
Definition at line 181 of file G4VMultipleScattering.cc.
References currentModel, currParticle, G4Electron::Electron(), emManager, G4ParticleTable::FindParticle(), firstParticle, fMinimal, G4cout, G4endl, GeomFactor(), G4ProcessManager::GetAlongStepProcessVector(), G4VProcess::GetMasterProcess(), G4EmModelManager::GetModel(), G4ParticleDefinition::GetParticleName(), G4ParticleTable::GetParticleTable(), G4ParticleDefinition::GetParticleType(), G4ParticleDefinition::GetProcessManager(), G4VProcess::GetProcessName(), G4TransportationManager::GetSafetyHelper(), G4TransportationManager::GetTransportationManager(), G4VEmModel::HighEnergyLimit(), G4EmModelManager::Initialise(), G4SafetyHelper::InitialiseHelper(), InitialiseProcess(), isIon, LateralDisplasmentFlag(), G4LossTableManager::MaxKinEnergy(), G4INCL::Math::min(), modelManager, n, G4EmModelManager::NumberOfModels(), numberOfModels, polarAngleLimit, G4LossTableManager::PreparePhysicsTable(), RangeFactor(), safetyHelper, G4VMscModel::SetGeomFactor(), G4VEmModel::SetHighEnergyLimit(), G4VMscModel::SetIonisation(), G4VMscModel::SetLateralDisplasmentFlag(), SetLateralDisplasmentFlag(), G4VEmModel::SetMasterThread(), G4VEmModel::SetPolarAngleLimit(), G4VMscModel::SetRangeFactor(), SetRangeFactor(), G4VMscModel::SetSkin(), G4VMscModel::SetStepLimitType(), SetStepLimitType(), G4ProcessVector::size(), Skin(), StepLimitType(), and G4VProcess::verboseLevel.
|
pure virtual |
Implemented in G4AdjointhMultipleScattering, G4hMultipleScattering, G4MuMultipleScattering, and G4eMultipleScattering.
Referenced by BuildPhysicsTable(), and PrintInfoDefinition().
void G4VMultipleScattering::PrintInfoDefinition | ( | ) |
Definition at line 344 of file G4VMultipleScattering.cc.
References G4EmModelManager::DumpModelList(), firstParticle, G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), G4VProcess::GetProcessSubType(), modelManager, PrintInfo(), and G4VProcess::verboseLevel.
|
inline |
Definition at line 340 of file G4VMultipleScattering.hh.
References facrange.
Referenced by G4AdjointhMultipleScattering::InitialiseProcess(), PreparePhysicsTable(), G4eMultipleScattering::PrintInfo(), G4MuMultipleScattering::PrintInfo(), G4hMultipleScattering::PrintInfo(), and G4AdjointhMultipleScattering::PrintInfo().
|
virtual |
Reimplemented from G4VProcess.
Definition at line 635 of file G4VMultipleScattering.cc.
|
inline |
Definition at line 304 of file G4VMultipleScattering.hh.
References modelManager, and G4EmModelManager::SelectModel().
Referenced by AlongStepGetPhysicalInteractionLength(), G4EmCalculator::FindEmModel(), and G4EmCalculator::FindLambdaTable().
void G4VMultipleScattering::SetEmModel | ( | G4VMscModel * | p, |
G4int | index = 1 |
||
) |
Definition at line 154 of file G4VMultipleScattering.cc.
Referenced by PhysListEmStandardNR::ConstructProcess(), G4MuMultipleScattering::InitialiseProcess(), G4eMultipleScattering::InitialiseProcess(), and G4hMultipleScattering::InitialiseProcess().
|
inline |
Definition at line 361 of file G4VMultipleScattering.hh.
References facgeom.
void G4VMultipleScattering::SetIonisation | ( | G4VEnergyLossProcess * | p | ) |
Definition at line 644 of file G4VMultipleScattering.cc.
References firstParticle, GetModelByIndex(), numberOfModels, and G4VMscModel::SetIonisation().
|
inline |
Definition at line 318 of file G4VMultipleScattering.hh.
References latDisplasment.
Referenced by RE06PhysicsList::ConstructEM(), G4AdjointhMultipleScattering::InitialiseProcess(), and PreparePhysicsTable().
|
inline |
Definition at line 406 of file G4VMultipleScattering.hh.
References lowestKinEnergy.
|
inline |
Definition at line 375 of file G4VMultipleScattering.hh.
References G4INCL::Math::pi, and polarAngleLimit.
|
inline |
Definition at line 347 of file G4VMultipleScattering.hh.
References facrange.
Referenced by G4EmLivermorePhysics::ConstructProcess(), G4EmPenelopePhysics::ConstructProcess(), G4EmStandardPhysics_option4::ConstructProcess(), and PreparePhysicsTable().
|
inline |
Definition at line 332 of file G4VMultipleScattering.hh.
References skin.
|
inline |
Definition at line 391 of file G4VMultipleScattering.hh.
References facrange, fMinimal, and stepLimit.
Referenced by DicomPhysicsList::ConstructEM(), DMXPhysicsList::ConstructEM(), G4EmLivermorePolarizedPhysics::ConstructProcess(), G4EmLowEPPhysics::ConstructProcess(), G4EmLivermorePhysics::ConstructProcess(), G4EmPenelopePhysics::ConstructProcess(), G4EmDNAPhysics::ConstructProcess(), G4EmStandardPhysics_option3::ConstructProcess(), G4EmStandardPhysics_option4::ConstructProcess(), G4EmStandardPhysics_option1::ConstructProcess(), G4EmStandardPhysics_option2::ConstructProcess(), G4AdjointhMultipleScattering::G4AdjointhMultipleScattering(), G4hMultipleScattering::G4hMultipleScattering(), G4MuMultipleScattering::G4MuMultipleScattering(), G4AdjointhMultipleScattering::InitialiseProcess(), and PreparePhysicsTable().
|
inline |
Definition at line 325 of file G4VMultipleScattering.hh.
References skin.
Referenced by G4AdjointhMultipleScattering::InitialiseProcess(), PreparePhysicsTable(), G4eMultipleScattering::PrintInfo(), G4hMultipleScattering::PrintInfo(), and G4AdjointhMultipleScattering::PrintInfo().
|
virtual |
Reimplemented from G4VProcess.
Definition at line 358 of file G4VMultipleScattering.cc.
References currentModel, currParticle, emManager, fIonisation, G4LossTableManager::GetEnergyLossProcess(), GetModelByIndex(), G4Track::GetParticleDefinition(), numberOfModels, G4VMscModel::SetIonisation(), and G4VEmModel::StartTracking().
|
inline |
Definition at line 384 of file G4VMultipleScattering.hh.
References stepLimit.
Referenced by G4AdjointhMultipleScattering::InitialiseProcess(), PreparePhysicsTable(), G4eMultipleScattering::PrintInfo(), G4MuMultipleScattering::PrintInfo(), G4hMultipleScattering::PrintInfo(), and G4AdjointhMultipleScattering::PrintInfo().
|
virtual |
Reimplemented from G4VProcess.
Definition at line 595 of file G4VMultipleScattering.cc.
References firstParticle, G4cout, G4endl, G4VEmModel::GetCrossSectionTable(), G4EmModelManager::GetModel(), G4ParticleDefinition::GetParticleName(), G4VProcess::GetPhysicsTableFileName(), G4VProcess::GetProcessName(), G4INCL::Math::min(), modelManager, name, G4EmModelManager::NumberOfModels(), G4PhysicsTable::StorePhysicsTable(), and G4VProcess::verboseLevel.
|
private |
Definition at line 285 of file G4VMultipleScattering.hh.
Referenced by AlongStepDoIt(), AlongStepGetPhysicalInteractionLength(), PreparePhysicsTable(), and StartTracking().
|
private |
Definition at line 262 of file G4VMultipleScattering.hh.
Referenced by AlongStepDoIt(), PreparePhysicsTable(), and StartTracking().
|
private |
Definition at line 251 of file G4VMultipleScattering.hh.
Referenced by BuildPhysicsTable(), G4VMultipleScattering(), PreparePhysicsTable(), StartTracking(), and ~G4VMultipleScattering().
|
private |
Definition at line 268 of file G4VMultipleScattering.hh.
Referenced by GeomFactor(), and SetGeomFactor().
|
private |
Definition at line 267 of file G4VMultipleScattering.hh.
Referenced by RangeFactor(), SetRangeFactor(), and SetStepLimitType().
|
private |
Definition at line 286 of file G4VMultipleScattering.hh.
Referenced by G4VMultipleScattering(), and StartTracking().
|
private |
Definition at line 261 of file G4VMultipleScattering.hh.
Referenced by BuildPhysicsTable(), FirstParticle(), G4VMultipleScattering(), PreparePhysicsTable(), PrintInfoDefinition(), SetIonisation(), and StorePhysicsTable().
|
private |
Definition at line 292 of file G4VMultipleScattering.hh.
Referenced by AlongStepDoIt(), and PostStepDoIt().
|
protected |
Definition at line 280 of file G4VMultipleScattering.hh.
Referenced by AlongStepDoIt(), G4VMultipleScattering(), and PostStepDoIt().
|
private |
Definition at line 293 of file G4VMultipleScattering.hh.
Referenced by AlongStepDoIt(), G4VMultipleScattering(), and PostStepDoIt().
|
private |
Definition at line 252 of file G4VMultipleScattering.hh.
Referenced by AlongStepDoIt(), AlongStepGetPhysicalInteractionLength(), and G4VMultipleScattering().
|
private |
Definition at line 290 of file G4VMultipleScattering.hh.
Referenced by AlongStepGetPhysicalInteractionLength(), and G4VMultipleScattering().
|
private |
Definition at line 294 of file G4VMultipleScattering.hh.
Referenced by AlongStepDoIt(), AlongStepGetPhysicalInteractionLength(), and G4VMultipleScattering().
|
private |
Definition at line 273 of file G4VMultipleScattering.hh.
Referenced by AlongStepGetPhysicalInteractionLength(), and PreparePhysicsTable().
|
private |
Definition at line 272 of file G4VMultipleScattering.hh.
Referenced by LateralDisplasmentFlag(), and SetLateralDisplasmentFlag().
|
private |
Definition at line 270 of file G4VMultipleScattering.hh.
Referenced by AlongStepGetPhysicalInteractionLength(), G4VMultipleScattering(), LowestKinEnergy(), and SetLowestKinEnergy().
|
private |
Definition at line 250 of file G4VMultipleScattering.hh.
Referenced by AddEmModel(), BuildPhysicsTable(), G4VMultipleScattering(), GetModelByIndex(), PreparePhysicsTable(), PrintInfoDefinition(), SelectModel(), StorePhysicsTable(), and ~G4VMultipleScattering().
|
private |
Definition at line 258 of file G4VMultipleScattering.hh.
Referenced by EmModel(), and SetEmModel().
|
private |
Definition at line 259 of file G4VMultipleScattering.hh.
Referenced by AlongStepGetPhysicalInteractionLength(), BuildPhysicsTable(), PreparePhysicsTable(), SetIonisation(), and StartTracking().
|
private |
Definition at line 288 of file G4VMultipleScattering.hh.
Referenced by AlongStepDoIt(), AlongStepGetPhysicalInteractionLength(), and G4VMultipleScattering().
|
private |
Definition at line 269 of file G4VMultipleScattering.hh.
Referenced by G4VMultipleScattering(), PolarAngleLimit(), PreparePhysicsTable(), and SetPolarAngleLimit().
|
private |
Definition at line 256 of file G4VMultipleScattering.hh.
Referenced by AlongStepDoIt(), G4VMultipleScattering(), PostStepDoIt(), and PreparePhysicsTable().
|
private |
Definition at line 266 of file G4VMultipleScattering.hh.
|
private |
Definition at line 264 of file G4VMultipleScattering.hh.
Referenced by SetStepLimitType(), and StepLimitType().
|
private |
Definition at line 289 of file G4VMultipleScattering.hh.
Referenced by AlongStepDoIt(), AlongStepGetPhysicalInteractionLength(), and G4VMultipleScattering().
|
protected |
Definition at line 279 of file G4VMultipleScattering.hh.
|
private |
Definition at line 296 of file G4VMultipleScattering.hh.
Referenced by G4VMultipleScattering().