55 #ifndef G4Scintillation_h
56 #define G4Scintillation_h 1
144 const G4Step& aStep)
override;
146 const G4Step& aStep)
override;
246 G4bool fTrackSecondariesFirst;
253 G4bool fScintillationByParticleType;
255 G4bool fScintillationTrackInfo;
261 #ifdef G4DEBUG_SCINTILLATION
262 G4double ScintTrackEDep, ScintTrackYield;
291 fTrackSecondariesFirst = state;
297 return fTrackSecondariesFirst;
303 fFiniteRiseTime = state;
309 return fFiniteRiseTime;
315 fYieldFactor = yieldfactor;
327 fExcitationRatio = ratio;
333 return fExcitationRatio;
357 fEmSaturation =
nullptr;
363 return fEmSaturation;
369 return fScintillationByParticleType;
375 fScintillationTrackInfo = trackType;
381 return fScintillationTrackInfo;
387 fStackingFlag = stackingFlag;
393 return fStackingFlag;
409 for (
G4int i = 0 ; i < PhysicsTableSize ; i++ )
420 for (
G4int i = 0 ; i < PhysicsTableSize ; i++ )
431 return std::exp(-1.0*t/tau2)/tau2;
437 return std::exp(-1.0*t/tau2)*(1-std::exp(-1.0*t/tau1))/tau2/tau2*(tau1+tau2);
void SetScintillationByParticleType(const G4bool)
G4Scintillation(const G4String &processName="Scintillation", G4ProcessType type=fElectromagnetic)
G4bool GetScintillationTrackInfo() const
void SetScintillationTrackInfo(const G4bool trackType)
void SetFiniteRiseTime(const G4bool state)
void DumpValues(G4double unitE=1.0, G4double unitV=1.0) const
G4bool GetFiniteRiseTime() const
void BuildThePhysicsTable()
G4PhysicsTable * fFastIntegralTable
G4double GetScintillationYieldFactor() const
G4bool GetTrackSecondariesFirst() const
G4PhysicsTable * fSlowIntegralTable
G4PhysicsTable * GetSlowIntegralTable() const
G4VParticleChange * PostStepDoIt(const G4Track &aTrack, const G4Step &aStep) override
void BuildPhysicsTable(const G4ParticleDefinition &aParticleType) override
G4bool GetStackPhotons() const
const G4String & GetParticleName() const
void SetScintillationYieldFactor(const G4double yieldfactor)
G4double GetMeanLifeTime(const G4Track &aTrack, G4ForceCondition *) override
void SetStackPhotons(const G4bool)
void SetScintillationExcitationRatio(const G4double ratio)
G4bool IsShortLived() const
void DumpPhysicsTable() const
void SetTrackSecondariesFirst(const G4bool state)
G4PhysicsTable * GetFastIntegralTable() const
G4double GetScintillationExcitationRatio() const
G4double GetMeanFreePath(const G4Track &aTrack, G4double, G4ForceCondition *) override
G4EmSaturation * GetSaturation() const
G4bool IsApplicable(const G4ParticleDefinition &aParticleType) override
G4bool GetScintillationByParticleType() const
G4double GetScintillationYieldByParticleType(const G4Track &aTrack, const G4Step &aStep)
void AddSaturation(G4EmSaturation *sat)
G4int GetNumPhotons() const
G4VParticleChange * AtRestDoIt(const G4Track &aTrack, const G4Step &aStep) override