Geant4
10.01.p02
|
#include <G4OpticalPhysics.hh>
Public Member Functions | |
G4OpticalPhysics (G4int verbose=0, const G4String &name="Optical") | |
virtual | ~G4OpticalPhysics () |
void | Configure (G4OpticalProcessIndex, G4bool) |
void | SetMaxNumPhotonsPerStep (G4int) |
void | SetMaxBetaChangePerStep (G4double) |
void | SetScintillationYieldFactor (G4double) |
void | SetScintillationExcitationRatio (G4double) |
void | SetWLSTimeProfile (G4String) |
void | SetScintillationByParticleType (G4bool) |
void | SetTrackSecondariesFirst (G4OpticalProcessIndex, G4bool) |
void | SetFiniteRiseTime (G4bool) |
Public Member Functions inherited from G4VPhysicsConstructor | |
G4VPhysicsConstructor (const G4String &="") | |
G4VPhysicsConstructor (const G4String &name, G4int physics_type) | |
virtual | ~G4VPhysicsConstructor () |
void | SetPhysicsName (const G4String &="") |
const G4String & | GetPhysicsName () const |
void | SetPhysicsType (G4int) |
G4int | GetPhysicsType () const |
void | SetVerboseLevel (G4int value) |
G4int | GetVerboseLevel () const |
G4int | GetInstanceID () const |
Protected Member Functions | |
virtual void | ConstructParticle () |
virtual void | ConstructProcess () |
Protected Member Functions inherited from G4VPhysicsConstructor | |
G4bool | RegisterProcess (G4VProcess *process, G4ParticleDefinition *particle) |
Private Member Functions | |
G4OpticalPhysics (const G4OpticalPhysics &right) | |
Not implemented. More... | |
G4OpticalPhysics & | operator= (const G4OpticalPhysics &right) |
Not implemented. More... | |
void | PrintStatistics () const |
Private Attributes | |
G4OpticalPhysicsMessenger * | fMessenger |
std::vector< G4bool > | fProcessUse |
std::vector< G4bool > | fProcessTrackSecondariesFirst |
G4int | fMaxNumPhotons |
max number of Cerenkov photons per step More... | |
G4double | fMaxBetaChange |
max change of beta per step More... | |
G4double | fYieldFactor |
scintillation yield factor More... | |
G4double | fExcitationRatio |
scintillation excitation ratio More... | |
G4String | fProfile |
the WLS process time profile More... | |
G4bool | fFiniteRiseTime |
option to set a finite rise-time; Note: the G4Scintillation process expects the user to have set the constant material property FAST/SLOWSCINTILLATIONRISETIME More... | |
G4bool | fScintillationByParticleType |
option to allow for the light yield to be a function of particle type and deposited energy in case of non-linear light emission in scintillators More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from G4VPhysicsConstructor | |
static const G4VPCManager & | GetSubInstanceManager () |
Protected Attributes inherited from G4VPhysicsConstructor | |
G4int | verboseLevel |
G4String | namePhysics |
G4int | typePhysics |
G4ParticleTable * | theParticleTable |
G4int | g4vpcInstanceID |
Static Protected Attributes inherited from G4VPhysicsConstructor | |
static G4RUN_DLL G4VPCManager | subInstanceManager |
Definition at line 61 of file G4OpticalPhysics.hh.
Definition at line 64 of file G4OpticalPhysics.cc.
References fMessenger, fProcessTrackSecondariesFirst, fProcessUse, kNoProcess, and G4VPhysicsConstructor::verboseLevel.
|
virtual |
Definition at line 86 of file G4OpticalPhysics.cc.
References fMessenger.
|
private |
Not implemented.
void G4OpticalPhysics::Configure | ( | G4OpticalProcessIndex | index, |
G4bool | isUse | ||
) |
Definition at line 437 of file G4OpticalPhysics.cc.
References fProcessUse, and kNoProcess.
Referenced by G4OpticalPhysicsMessenger::SetNewValue().
|
protectedvirtual |
Instantiate particles.
Implements G4VPhysicsConstructor.
Definition at line 137 of file G4OpticalPhysics.cc.
References G4OpticalPhoton::OpticalPhotonDefinition().
|
protectedvirtual |
Implements G4VPhysicsConstructor.
Definition at line 257 of file G4OpticalPhysics.cc.
References G4ProcessManager::AddDiscreteProcess(), G4ProcessManager::AddProcess(), G4Scintillation::AddSaturation(), aParticleIterator, UIhelpers::buildCommands(), DIR_CMDS, G4LossTableManager::EmSaturation(), FatalException, fExcitationRatio, fFiniteRiseTime, fMaxBetaChange, fMaxNumPhotons, fProcessTrackSecondariesFirst, fProcessUse, fProfile, fScintillationByParticleType, fYieldFactor, G4cout, G4endl, G4Exception(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetProcessManager(), GUIDANCE, idxAtRest, idxPostStep, G4LossTableManager::Instance(), G4Cerenkov::IsApplicable(), G4Scintillation::IsApplicable(), kAbsorption, kBoundary, kCerenkov, kMieHG, kNoProcess, kRayleigh, kScintillation, kWLS, G4VPhysicsConstructor::namePhysics, G4OpticalPhoton::OpticalPhoton(), PrintStatistics(), G4Scintillation::SetFiniteRiseTime(), G4Cerenkov::SetMaxBetaChangePerStep(), G4Cerenkov::SetMaxNumPhotonsPerStep(), G4ProcessManager::SetProcessOrdering(), G4ProcessManager::SetProcessOrderingToLast(), G4Scintillation::SetScintillationByParticleType(), G4Scintillation::SetScintillationExcitationRatio(), G4Scintillation::SetScintillationYieldFactor(), G4Scintillation::SetTrackSecondariesFirst(), G4Cerenkov::SetTrackSecondariesFirst(), G4OpWLS::UseTimeProfile(), and G4VPhysicsConstructor::verboseLevel.
|
private |
Not implemented.
|
private |
Definition at line 93 of file G4OpticalPhysics.cc.
References fExcitationRatio, fMaxBetaChange, fMaxNumPhotons, fProcessTrackSecondariesFirst, fProcessUse, fProfile, fScintillationByParticleType, fYieldFactor, G4cout, G4endl, G4OpticalProcessName(), kCerenkov, kNoProcess, kScintillation, and kWLS.
Referenced by ConstructProcess().
void G4OpticalPhysics::SetFiniteRiseTime | ( | G4bool | finiteRiseTime | ) |
Definition at line 431 of file G4OpticalPhysics.cc.
References fFiniteRiseTime.
Referenced by G4OpticalPhysicsMessenger::SetNewValue().
void G4OpticalPhysics::SetMaxBetaChangePerStep | ( | G4double | maxBetaChange | ) |
Limit step to the specified maximum change of beta of the parent particle
Definition at line 391 of file G4OpticalPhysics.cc.
References fMaxBetaChange.
Referenced by LXePhysicsList::LXePhysicsList(), and G4OpticalPhysicsMessenger::SetNewValue().
void G4OpticalPhysics::SetMaxNumPhotonsPerStep | ( | G4int | maxNumPhotons | ) |
Limit step to the specified maximum number of Cherenkov photons
Definition at line 383 of file G4OpticalPhysics.cc.
References fMaxNumPhotons.
Referenced by LXePhysicsList::LXePhysicsList(), and G4OpticalPhysicsMessenger::SetNewValue().
void G4OpticalPhysics::SetScintillationByParticleType | ( | G4bool | scintillationByParticleType | ) |
Definition at line 412 of file G4OpticalPhysics.cc.
References fScintillationByParticleType.
Referenced by G4OpticalPhysicsMessenger::SetNewValue().
void G4OpticalPhysics::SetScintillationExcitationRatio | ( | G4double | excitationRatio | ) |
Set the scintillation excitation ratio
Definition at line 375 of file G4OpticalPhysics.cc.
References fExcitationRatio.
Referenced by LXePhysicsList::LXePhysicsList().
void G4OpticalPhysics::SetScintillationYieldFactor | ( | G4double | yieldFactor | ) |
Set the scintillation yield factor
Definition at line 367 of file G4OpticalPhysics.cc.
References fYieldFactor.
Referenced by LXePhysicsList::LXePhysicsList(), and G4OpticalPhysicsMessenger::SetNewValue().
void G4OpticalPhysics::SetTrackSecondariesFirst | ( | G4OpticalProcessIndex | index, |
G4bool | trackSecondariesFirst | ||
) |
Definition at line 418 of file G4OpticalPhysics.cc.
References fProcessTrackSecondariesFirst, and kNoProcess.
Referenced by LXePhysicsList::LXePhysicsList(), and G4OpticalPhysicsMessenger::SetNewValue().
void G4OpticalPhysics::SetWLSTimeProfile | ( | G4String | profile | ) |
Set the WLS time profile (delta or exponential)
Definition at line 399 of file G4OpticalPhysics.cc.
References fProfile.
Referenced by LXePhysicsList::LXePhysicsList(), and G4OpticalPhysicsMessenger::SetNewValue().
|
private |
scintillation excitation ratio
Definition at line 123 of file G4OpticalPhysics.hh.
Referenced by ConstructProcess(), PrintStatistics(), and SetScintillationExcitationRatio().
|
private |
option to set a finite rise-time; Note: the G4Scintillation process expects the user to have set the constant material property FAST/SLOWSCINTILLATIONRISETIME
Definition at line 131 of file G4OpticalPhysics.hh.
Referenced by ConstructProcess(), and SetFiniteRiseTime().
|
private |
max change of beta per step
Definition at line 117 of file G4OpticalPhysics.hh.
Referenced by ConstructProcess(), PrintStatistics(), and SetMaxBetaChangePerStep().
|
private |
max number of Cerenkov photons per step
Definition at line 114 of file G4OpticalPhysics.hh.
Referenced by ConstructProcess(), PrintStatistics(), and SetMaxNumPhotonsPerStep().
|
private |
Definition at line 104 of file G4OpticalPhysics.hh.
Referenced by G4OpticalPhysics(), and ~G4OpticalPhysics().
|
private |
Definition at line 111 of file G4OpticalPhysics.hh.
Referenced by ConstructProcess(), G4OpticalPhysics(), PrintStatistics(), and SetTrackSecondariesFirst().
|
private |
Definition at line 107 of file G4OpticalPhysics.hh.
Referenced by Configure(), ConstructProcess(), G4OpticalPhysics(), and PrintStatistics().
|
private |
the WLS process time profile
Definition at line 126 of file G4OpticalPhysics.hh.
Referenced by ConstructProcess(), PrintStatistics(), and SetWLSTimeProfile().
|
private |
option to allow for the light yield to be a function of particle type and deposited energy in case of non-linear light emission in scintillators
Definition at line 136 of file G4OpticalPhysics.hh.
Referenced by ConstructProcess(), PrintStatistics(), and SetScintillationByParticleType().
|
private |
scintillation yield factor
Definition at line 120 of file G4OpticalPhysics.hh.
Referenced by ConstructProcess(), PrintStatistics(), and SetScintillationYieldFactor().