ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4Cerenkov Class Reference

#include <geant4/tree/geant4-10.6-release/source/processes/electromagnetic/xrays/include/G4Cerenkov.hh>

+ Inheritance diagram for G4Cerenkov:
+ Collaboration diagram for G4Cerenkov:

Public Member Functions

 G4Cerenkov (const G4String &processName="Cerenkov", G4ProcessType type=fElectromagnetic)
 
 ~G4Cerenkov ()
 
 G4Cerenkov (const G4Cerenkov &right)
 
G4bool IsApplicable (const G4ParticleDefinition &aParticleType) override
 
void BuildPhysicsTable (const G4ParticleDefinition &aParticleType) override
 
G4double GetMeanFreePath (const G4Track &aTrack, G4double, G4ForceCondition *)
 
G4double PostStepGetPhysicalInteractionLength (const G4Track &aTrack, G4double, G4ForceCondition *) override
 
G4VParticleChangePostStepDoIt (const G4Track &aTrack, const G4Step &aStep) override
 
virtual G4double AlongStepGetPhysicalInteractionLength (const G4Track &, G4double, G4double, G4double &, G4GPILSelection *) override
 
virtual G4double AtRestGetPhysicalInteractionLength (const G4Track &, G4ForceCondition *) override
 
virtual G4VParticleChangeAtRestDoIt (const G4Track &, const G4Step &) override
 
virtual G4VParticleChangeAlongStepDoIt (const G4Track &, const G4Step &) override
 
void SetTrackSecondariesFirst (const G4bool state)
 
G4bool GetTrackSecondariesFirst () const
 
void SetMaxBetaChangePerStep (const G4double d)
 
G4double GetMaxBetaChangePerStep () const
 
void SetMaxNumPhotonsPerStep (const G4int NumPhotons)
 
G4int GetMaxNumPhotonsPerStep () const
 
void SetStackPhotons (const G4bool)
 
G4bool GetStackPhotons () const
 
G4int GetNumPhotons () const
 
G4PhysicsTableGetPhysicsTable () const
 
void DumpPhysicsTable () const
 
- Public Member Functions inherited from G4VProcess
 G4VProcess (const G4String &aName="NoName", G4ProcessType aType=fNotDefined)
 
 G4VProcess (const G4VProcess &right)
 
virtual ~G4VProcess ()
 
G4bool operator== (const G4VProcess &right) const
 
G4bool operator!= (const G4VProcess &right) const
 
G4double GetCurrentInteractionLength () const
 
void SetPILfactor (G4double value)
 
G4double GetPILfactor () const
 
G4double AlongStepGPIL (const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double &proposedSafety, G4GPILSelection *selection)
 
G4double AtRestGPIL (const G4Track &track, G4ForceCondition *condition)
 
G4double PostStepGPIL (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)
 
virtual void PreparePhysicsTable (const G4ParticleDefinition &)
 
virtual G4bool StorePhysicsTable (const G4ParticleDefinition *, const G4String &, G4bool)
 
virtual G4bool RetrievePhysicsTable (const G4ParticleDefinition *, const G4String &, G4bool)
 
const G4StringGetPhysicsTableFileName (const G4ParticleDefinition *, const G4String &directory, const G4String &tableName, G4bool ascii=false)
 
const G4StringGetProcessName () const
 
G4ProcessType GetProcessType () const
 
void SetProcessType (G4ProcessType)
 
G4int GetProcessSubType () const
 
void SetProcessSubType (G4int)
 
virtual void StartTracking (G4Track *)
 
virtual void EndTracking ()
 
virtual void SetProcessManager (const G4ProcessManager *)
 
virtual const G4ProcessManagerGetProcessManager ()
 
virtual void ResetNumberOfInteractionLengthLeft ()
 
G4double GetNumberOfInteractionLengthLeft () const
 
G4double GetTotalNumberOfInteractionLengthTraversed () const
 
G4bool isAtRestDoItIsEnabled () const
 
G4bool isAlongStepDoItIsEnabled () const
 
G4bool isPostStepDoItIsEnabled () const
 
virtual void DumpInfo () const
 
virtual void ProcessDescription (std::ostream &outfile) const
 
void SetVerboseLevel (G4int value)
 
G4int GetVerboseLevel () const
 
virtual void SetMasterProcess (G4VProcess *masterP)
 
const G4VProcessGetMasterProcess () const
 
virtual void BuildWorkerPhysicsTable (const G4ParticleDefinition &part)
 
virtual void PrepareWorkerPhysicsTable (const G4ParticleDefinition &)
 

Protected Attributes

G4PhysicsTablethePhysicsTable
 
- Protected Attributes inherited from G4VProcess
const G4ProcessManageraProcessManager
 
G4VParticleChangepParticleChange
 
G4ParticleChange aParticleChange
 
G4double theNumberOfInteractionLengthLeft
 
G4double currentInteractionLength
 
G4double theInitialNumberOfInteractionLength
 
G4String theProcessName
 
G4String thePhysicsTableFileName
 
G4ProcessType theProcessType
 
G4int theProcessSubType
 
G4double thePILfactor
 
G4bool enableAtRestDoIt
 
G4bool enableAlongStepDoIt
 
G4bool enablePostStepDoIt
 
G4int verboseLevel
 

Private Member Functions

G4Cerenkovoperator= (const G4Cerenkov &right)=delete
 
void BuildThePhysicsTable ()
 
G4double GetAverageNumberOfPhotons (const G4double charge, const G4double beta, const G4Material *aMaterial, G4MaterialPropertyVector *Rindex) const
 

Private Attributes

G4bool fTrackSecondariesFirst
 
G4double fMaxBetaChange
 
G4int fMaxPhotons
 
G4bool fStackingFlag
 
G4int fNumPhotons
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VProcess
static const G4StringGetProcessTypeName (G4ProcessType)
 
- Protected Member Functions inherited from G4VProcess
void SubtractNumberOfInteractionLengthLeft (G4double previousStepSize)
 
void ClearNumberOfInteractionLengthLeft ()
 

Detailed Description

Definition at line 80 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 80 of file G4Cerenkov.hh

Constructor & Destructor Documentation

G4Cerenkov::G4Cerenkov ( const G4String processName = "Cerenkov",
G4ProcessType  type = fElectromagnetic 
)
explicit

Definition at line 75 of file G4Cerenkov.cc.

View newest version in sPHENIX GitHub at line 75 of file G4Cerenkov.cc

References fCerenkov, G4cout, G4endl, G4VProcess::GetProcessName(), G4VProcess::SetProcessSubType(), thePhysicsTable, and G4VProcess::verboseLevel.

+ Here is the call graph for this function:

G4Cerenkov::~G4Cerenkov ( )

Definition at line 92 of file G4Cerenkov.cc.

View newest version in sPHENIX GitHub at line 92 of file G4Cerenkov.cc

References G4PhysicsTable::clearAndDestroy(), and thePhysicsTable.

+ Here is the call graph for this function:

G4Cerenkov::G4Cerenkov ( const G4Cerenkov right)
explicit

Member Function Documentation

virtual G4VParticleChange* G4Cerenkov::AlongStepDoIt ( const G4Track ,
const G4Step  
)
inlineoverridevirtual

Implements G4VProcess.

Definition at line 147 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 147 of file G4Cerenkov.hh

virtual G4double G4Cerenkov::AlongStepGetPhysicalInteractionLength ( const G4Track ,
G4double  ,
G4double  ,
G4double ,
G4GPILSelection  
)
inlineoverridevirtual

Implements G4VProcess.

Definition at line 132 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 132 of file G4Cerenkov.hh

virtual G4VParticleChange* G4Cerenkov::AtRestDoIt ( const G4Track ,
const G4Step  
)
inlineoverridevirtual

Implements G4VProcess.

Definition at line 144 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 144 of file G4Cerenkov.hh

virtual G4double G4Cerenkov::AtRestGetPhysicalInteractionLength ( const G4Track ,
G4ForceCondition  
)
inlineoverridevirtual

Implements G4VProcess.

Definition at line 139 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 139 of file G4Cerenkov.hh

void G4Cerenkov::BuildPhysicsTable ( const G4ParticleDefinition aParticleType)
overridevirtual

Reimplemented from G4VProcess.

Definition at line 123 of file G4Cerenkov.cc.

View newest version in sPHENIX GitHub at line 123 of file G4Cerenkov.cc

References BuildThePhysicsTable(), and thePhysicsTable.

+ Here is the call graph for this function:

void G4Cerenkov::BuildThePhysicsTable ( )
private

Definition at line 354 of file G4Cerenkov.cc.

View newest version in sPHENIX GitHub at line 354 of file G4Cerenkov.cc

References G4PhysicsVector::Energy(), G4Material::GetMaterialPropertiesTable(), G4Material::GetMaterialTable(), G4Material::GetNumberOfMaterials(), G4MaterialPropertiesTable::GetProperty(), G4PhysicsVector::GetVectorLength(), G4PhysicsTable::insertAt(), G4PhysicsOrderedFreeVector::InsertValues(), kRINDEX, and thePhysicsTable.

Referenced by BuildPhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4Cerenkov::DumpPhysicsTable ( ) const

Definition at line 650 of file G4Cerenkov.cc.

View newest version in sPHENIX GitHub at line 650 of file G4Cerenkov.cc

References G4PhysicsVector::DumpValues(), G4PhysicsTable::entries(), thePhysicsTable, and v.

+ Here is the call graph for this function:

G4double G4Cerenkov::GetAverageNumberOfPhotons ( const G4double  charge,
const G4double  beta,
const G4Material aMaterial,
G4MaterialPropertyVector Rindex 
) const
private

Definition at line 570 of file G4Cerenkov.cc.

View newest version in sPHENIX GitHub at line 570 of file G4Cerenkov.cc

References cm, eplus, eV, G4cout, G4endl, G4PhysicsOrderedFreeVector::GetEnergy(), G4Material::GetIndex(), G4PhysicsOrderedFreeVector::GetMaxLowEdgeEnergy(), G4PhysicsOrderedFreeVector::GetMaxValue(), G4PhysicsOrderedFreeVector::GetMinLowEdgeEnergy(), G4PhysicsOrderedFreeVector::GetMinValue(), G4PhysicsVector::GetValue(), G4PhysicsVector::IsFilledVectorExist(), thePhysicsTable, and G4VProcess::verboseLevel.

Referenced by PostStepDoIt(), and PostStepGetPhysicalInteractionLength().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4Cerenkov::GetMaxBetaChangePerStep ( ) const
inline

Definition at line 238 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 238 of file G4Cerenkov.hh

References fMaxBetaChange.

G4int G4Cerenkov::GetMaxNumPhotonsPerStep ( ) const
inline

Definition at line 244 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 244 of file G4Cerenkov.hh

References fMaxPhotons.

G4double G4Cerenkov::GetMeanFreePath ( const G4Track aTrack,
G4double  ,
G4ForceCondition  
)

Definition at line 448 of file G4Cerenkov.cc.

View newest version in sPHENIX GitHub at line 448 of file G4Cerenkov.cc

G4int G4Cerenkov::GetNumPhotons ( ) const
inline

Definition at line 262 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 262 of file G4Cerenkov.hh

References fNumPhotons.

G4PhysicsTable * G4Cerenkov::GetPhysicsTable ( ) const
inline

Definition at line 268 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 268 of file G4Cerenkov.hh

References thePhysicsTable.

G4bool G4Cerenkov::GetStackPhotons ( ) const
inline

Definition at line 256 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 256 of file G4Cerenkov.hh

References fStackingFlag.

G4bool G4Cerenkov::GetTrackSecondariesFirst ( ) const
inline

Definition at line 232 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 232 of file G4Cerenkov.hh

References fTrackSecondariesFirst.

G4bool G4Cerenkov::IsApplicable ( const G4ParticleDefinition aParticleType)
overridevirtual

Reimplemented from G4VProcess.

Definition at line 100 of file G4Cerenkov.cc.

View newest version in sPHENIX GitHub at line 100 of file G4Cerenkov.cc

References G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), and G4ParticleDefinition::IsShortLived().

Referenced by G4OpticalPhysics::ConstructProcess(), and PHG4Reco::InitRun().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Cerenkov& G4Cerenkov::operator= ( const G4Cerenkov right)
privatedelete
G4VParticleChange * G4Cerenkov::PostStepDoIt ( const G4Track aTrack,
const G4Step aStep 
)
overridevirtual

Implements G4VProcess.

Definition at line 132 of file G4Cerenkov.cc.

View newest version in sPHENIX GitHub at line 132 of file G4Cerenkov.cc

References G4ParticleChange::AddSecondary(), G4VProcess::aParticleChange, charge, Acts::Test::delta, fAlive, fNumPhotons, fStackingFlag, fSuspend, fTrackSecondariesFirst, G4cout, G4endl, G4Poisson(), G4UniformRand, GetAverageNumberOfPhotons(), G4StepPoint::GetBeta(), G4DynamicParticle::GetDefinition(), G4Step::GetDeltaPosition(), G4Track::GetDynamicParticle(), G4StepPoint::GetGlobalTime(), G4Track::GetMaterial(), G4Material::GetMaterialPropertiesTable(), G4PhysicsOrderedFreeVector::GetMaxLowEdgeEnergy(), G4PhysicsOrderedFreeVector::GetMaxValue(), G4PhysicsOrderedFreeVector::GetMinLowEdgeEnergy(), G4VParticleChange::GetNumberOfSecondaries(), G4ParticleDefinition::GetPDGCharge(), G4StepPoint::GetPosition(), G4Step::GetPostStepPoint(), G4Step::GetPreStepPoint(), G4MaterialPropertiesTable::GetProperty(), G4Step::GetStepLength(), G4StepPoint::GetTouchableHandle(), G4Track::GetTrackID(), G4Track::GetTrackStatus(), G4StepPoint::GetVelocity(), G4ParticleChange::Initialize(), kRINDEX, max, N, G4OpticalPhoton::OpticalPhoton(), phi, G4VProcess::pParticleChange, G4VParticleChange::ProposeTrackStatus(), CLHEP::Hep3Vector::rotateUz(), G4DynamicParticle::SetKineticEnergy(), G4VParticleChange::SetNumberOfSecondaries(), G4Track::SetParentID(), G4DynamicParticle::SetPolarization(), G4Track::SetTouchableHandle(), twopi, CLHEP::Hep3Vector::unit(), G4PhysicsVector::Value(), G4VProcess::verboseLevel, CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().

+ Here is the call graph for this function:

void G4Cerenkov::SetMaxBetaChangePerStep ( const G4double  d)

Definition at line 113 of file G4Cerenkov.cc.

View newest version in sPHENIX GitHub at line 113 of file G4Cerenkov.cc

References fMaxBetaChange, and CLHEP::perCent.

Referenced by G4OpticalPhysics::ConstructProcess(), PHG4Reco::InitRun(), and G4OpticalPhysics::SetMaxBetaChangePerStep().

+ Here is the caller graph for this function:

void G4Cerenkov::SetMaxNumPhotonsPerStep ( const G4int  NumPhotons)

Definition at line 118 of file G4Cerenkov.cc.

View newest version in sPHENIX GitHub at line 118 of file G4Cerenkov.cc

References fMaxPhotons.

Referenced by G4OpticalPhysics::ConstructProcess(), PHG4Reco::InitRun(), and G4OpticalPhysics::SetMaxNumPhotonsPerStep().

+ Here is the caller graph for this function:

void G4Cerenkov::SetStackPhotons ( const G4bool  stackingFlag)
inline

Definition at line 250 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 250 of file G4Cerenkov.hh

References fStackingFlag.

Referenced by G4OpticalPhysics::ConstructProcess(), and G4OpticalPhysics::SetCerenkovStackPhotons().

+ Here is the caller graph for this function:

void G4Cerenkov::SetTrackSecondariesFirst ( const G4bool  state)

Definition at line 108 of file G4Cerenkov.cc.

View newest version in sPHENIX GitHub at line 108 of file G4Cerenkov.cc

References fTrackSecondariesFirst.

Referenced by G4OpticalPhysics::ConstructProcess(), and PHG4Reco::InitRun().

+ Here is the caller graph for this function:

Member Data Documentation

G4double G4Cerenkov::fMaxBetaChange
private

Definition at line 219 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 219 of file G4Cerenkov.hh

Referenced by GetMaxBetaChangePerStep(), PostStepGetPhysicalInteractionLength(), and SetMaxBetaChangePerStep().

G4int G4Cerenkov::fMaxPhotons
private

Definition at line 220 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 220 of file G4Cerenkov.hh

Referenced by GetMaxNumPhotonsPerStep(), PostStepGetPhysicalInteractionLength(), and SetMaxNumPhotonsPerStep().

G4int G4Cerenkov::fNumPhotons
private

Definition at line 224 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 224 of file G4Cerenkov.hh

Referenced by GetNumPhotons(), PostStepDoIt(), and PostStepGetPhysicalInteractionLength().

G4bool G4Cerenkov::fStackingFlag
private

Definition at line 222 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 222 of file G4Cerenkov.hh

Referenced by GetStackPhotons(), PostStepDoIt(), and SetStackPhotons().

G4bool G4Cerenkov::fTrackSecondariesFirst
private

Definition at line 218 of file G4Cerenkov.hh.

View newest version in sPHENIX GitHub at line 218 of file G4Cerenkov.hh

Referenced by GetTrackSecondariesFirst(), PostStepDoIt(), and SetTrackSecondariesFirst().

G4PhysicsTable* G4Cerenkov::thePhysicsTable
protected

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