BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes
BDSSDEnergyDepositionGlobal Class Reference

Generates BDSHitsEnergyDepositionGlobal from step information. More...

#include <BDSSDEnergyDepositionGlobal.hh>

Inheritance diagram for BDSSDEnergyDepositionGlobal:
Inheritance graph
Collaboration diagram for BDSSDEnergyDepositionGlobal:
Collaboration graph

Public Member Functions

 BDSSDEnergyDepositionGlobal (const G4String &name, G4bool killedParticleMassAddedToElossIn=false)
 
virtual void Initialize (G4HCofThisEvent *HCE)
 
virtual G4bool ProcessHits (G4Step *aStep, G4TouchableHistory *th)
 
virtual G4bool ProcessHitsTrack (const G4Track *track, G4TouchableHistory *th)
 
virtual G4VHit * last () const
 Provide access to last hit.
 
- Public Member Functions inherited from BDSSensitiveDetector
 BDSSensitiveDetector (const G4String &name)
 
virtual G4VHit * last () const =0
 
virtual G4bool ProcessHitsOrdered (G4Step *step, G4TouchableHistory *rOHist, const std::vector< G4VHit * > &hits)
 
G4bool HitOrdered (G4Step *step, const std::vector< G4VHit * > &hits)
 

Private Member Functions

BDSSDEnergyDepositionGlobaloperator= (const BDSSDEnergyDepositionGlobal &)
 assignment and copy constructor not implemented nor used
 
 BDSSDEnergyDepositionGlobal (BDSSDEnergyDepositionGlobal &)
 

Private Attributes

G4bool killedParticleMassAddedToEloss
 
G4String colName
 Collection name.
 
BDSHitsCollectionEnergyDepositionGlobalhits
 
G4int HCIDe
 
G4double energy
 Per hit variable.
 
G4double preStepKineticEnergy
 Per hit variable.
 
G4double postStepKineticEnergy
 Per hit variable.
 
G4double stepLength
 Per hit variable.
 
G4double weight
 Per hit variable.
 
G4double X
 Per hit variable.
 
G4double Y
 Per hit variable.
 
G4double Z
 Per hit variable.
 
G4double globalTime
 Per hit variable.
 
G4int pdgID
 Per hit variable.
 
G4int trackID
 Per hit variable.
 
G4int parentID
 Per hit variable.
 
G4int turnsTaken
 Per hit variable.
 

Detailed Description

Generates BDSHitsEnergyDepositionGlobal from step information.

This class interrogates a G4Step and generates an energy deposition hit if there was a change in energy. This assigns the energy deposition to a point randomly (uniformly) along the step.

It does not use curvilinear coordinates and only uses global coordinates.

Author
Laurie Nevay

Definition at line 42 of file BDSSDEnergyDepositionGlobal.hh.

Constructor & Destructor Documentation

◆ BDSSDEnergyDepositionGlobal()

BDSSDEnergyDepositionGlobal::BDSSDEnergyDepositionGlobal ( const G4String &  name,
G4bool  killedParticleMassAddedToElossIn = false 
)
explicit

Definition at line 35 of file BDSSDEnergyDepositionGlobal.cc.

◆ ~BDSSDEnergyDepositionGlobal()

BDSSDEnergyDepositionGlobal::~BDSSDEnergyDepositionGlobal ( )
virtual

Definition at line 59 of file BDSSDEnergyDepositionGlobal.cc.

Member Function Documentation

◆ Initialize()

void BDSSDEnergyDepositionGlobal::Initialize ( G4HCofThisEvent *  HCE)
virtual

Definition at line 62 of file BDSSDEnergyDepositionGlobal.cc.

◆ last()

G4VHit * BDSSDEnergyDepositionGlobal::last ( ) const
virtual

Provide access to last hit.

Implements BDSSensitiveDetector.

Definition at line 180 of file BDSSDEnergyDepositionGlobal.cc.

◆ ProcessHits()

G4bool BDSSDEnergyDepositionGlobal::ProcessHits ( G4Step *  aStep,
G4TouchableHistory *  th 
)
virtual

The standard interface here to process a step from Geant4. Record all the relevant coordinates here. Records the energy deposited along the step.

Definition at line 74 of file BDSSDEnergyDepositionGlobal.cc.

References energy, globalTime, BDSGlobalConstants::Instance(), BDS::IsFinite(), parentID, pdgID, postStepKineticEnergy, preStepKineticEnergy, stepLength, trackID, turnsTaken, weight, X, Y, and Z.

Here is the call graph for this function:

◆ ProcessHitsTrack()

G4bool BDSSDEnergyDepositionGlobal::ProcessHitsTrack ( const G4Track *  track,
G4TouchableHistory *  th 
)
virtual

An extra interface that can be used when artificially killing a track to add that kill action as energy deposition of the particle there. Note, this method always uses the total energy of the particle. There is no step here, so it's just the total energy of the particle.

Definition at line 140 of file BDSSDEnergyDepositionGlobal.cc.

References energy, globalTime, BDSGlobalConstants::Instance(), BDS::IsFinite(), parentID, pdgID, postStepKineticEnergy, preStepKineticEnergy, stepLength, trackID, turnsTaken, weight, X, Y, and Z.

Here is the call graph for this function:

Field Documentation

◆ colName

G4String BDSSDEnergyDepositionGlobal::colName
private

Collection name.

Definition at line 74 of file BDSSDEnergyDepositionGlobal.hh.

◆ energy

G4double BDSSDEnergyDepositionGlobal::energy
private

Per hit variable.

Definition at line 79 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().

◆ globalTime

G4double BDSSDEnergyDepositionGlobal::globalTime
private

Per hit variable.

Definition at line 85 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().

◆ HCIDe

G4int BDSSDEnergyDepositionGlobal::HCIDe
private

Definition at line 76 of file BDSSDEnergyDepositionGlobal.hh.

◆ hits

BDSHitsCollectionEnergyDepositionGlobal* BDSSDEnergyDepositionGlobal::hits
private

Definition at line 75 of file BDSSDEnergyDepositionGlobal.hh.

◆ killedParticleMassAddedToEloss

G4bool BDSSDEnergyDepositionGlobal::killedParticleMassAddedToEloss
private

Definition at line 73 of file BDSSDEnergyDepositionGlobal.hh.

◆ parentID

G4int BDSSDEnergyDepositionGlobal::parentID
private

Per hit variable.

Definition at line 88 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().

◆ pdgID

G4int BDSSDEnergyDepositionGlobal::pdgID
private

Per hit variable.

Definition at line 86 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().

◆ postStepKineticEnergy

G4double BDSSDEnergyDepositionGlobal::postStepKineticEnergy
private

Per hit variable.

Definition at line 81 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().

◆ preStepKineticEnergy

G4double BDSSDEnergyDepositionGlobal::preStepKineticEnergy
private

Per hit variable.

Definition at line 80 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().

◆ stepLength

G4double BDSSDEnergyDepositionGlobal::stepLength
private

Per hit variable.

Definition at line 82 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().

◆ trackID

G4int BDSSDEnergyDepositionGlobal::trackID
private

Per hit variable.

Definition at line 87 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().

◆ turnsTaken

G4int BDSSDEnergyDepositionGlobal::turnsTaken
private

Per hit variable.

Definition at line 89 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().

◆ weight

G4double BDSSDEnergyDepositionGlobal::weight
private

Per hit variable.

Definition at line 83 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().

◆ X

G4double BDSSDEnergyDepositionGlobal::X
private

Per hit variable.

Definition at line 84 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().

◆ Y

G4double BDSSDEnergyDepositionGlobal::Y
private

Per hit variable.

Definition at line 84 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().

◆ Z

G4double BDSSDEnergyDepositionGlobal::Z
private

Per hit variable.

Definition at line 84 of file BDSSDEnergyDepositionGlobal.hh.

Referenced by ProcessHits(), and ProcessHitsTrack().


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