BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
|
Generates BDSHitsEnergyDepositionGlobal from step information. More...
#include <BDSSDEnergyDepositionGlobal.hh>
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. | |
![]() | |
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 | |
BDSSDEnergyDepositionGlobal & | operator= (const BDSSDEnergyDepositionGlobal &) |
assignment and copy constructor not implemented nor used | |
BDSSDEnergyDepositionGlobal (BDSSDEnergyDepositionGlobal &) | |
Private Attributes | |
G4bool | killedParticleMassAddedToEloss |
G4String | colName |
Collection name. | |
BDSHitsCollectionEnergyDepositionGlobal * | hits |
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. | |
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.
Definition at line 42 of file BDSSDEnergyDepositionGlobal.hh.
|
explicit |
Definition at line 35 of file BDSSDEnergyDepositionGlobal.cc.
|
virtual |
Definition at line 59 of file BDSSDEnergyDepositionGlobal.cc.
|
virtual |
Definition at line 62 of file BDSSDEnergyDepositionGlobal.cc.
|
virtual |
Provide access to last hit.
Implements BDSSensitiveDetector.
Definition at line 180 of file BDSSDEnergyDepositionGlobal.cc.
|
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.
|
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.
|
private |
Collection name.
Definition at line 74 of file BDSSDEnergyDepositionGlobal.hh.
|
private |
Per hit variable.
Definition at line 79 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().
|
private |
Per hit variable.
Definition at line 85 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().
|
private |
Definition at line 76 of file BDSSDEnergyDepositionGlobal.hh.
|
private |
Definition at line 75 of file BDSSDEnergyDepositionGlobal.hh.
|
private |
Definition at line 73 of file BDSSDEnergyDepositionGlobal.hh.
|
private |
Per hit variable.
Definition at line 88 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().
|
private |
Per hit variable.
Definition at line 86 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().
|
private |
Per hit variable.
Definition at line 81 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().
|
private |
Per hit variable.
Definition at line 80 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().
|
private |
Per hit variable.
Definition at line 82 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().
|
private |
Per hit variable.
Definition at line 87 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().
|
private |
Per hit variable.
Definition at line 89 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().
|
private |
Per hit variable.
Definition at line 83 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().
|
private |
Per hit variable.
Definition at line 84 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().
|
private |
Per hit variable.
Definition at line 84 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().
|
private |
Per hit variable.
Definition at line 84 of file BDSSDEnergyDepositionGlobal.hh.
Referenced by ProcessHits(), and ProcessHitsTrack().