![]() |
ATLAS Offline Software
|
Tool for ACTS Fatras G4. More...
#include <ActsFatrasG4Tool.h>
Classes | |
| struct | HitSurfaceSelector |
| Simple struct to select surfaces where hits should be generated. More... | |
| struct | SingleParticleSimulation |
| Single particle simulation with fixed propagator, interactions, and decay. More... | |
| struct | EventCache |
Public Member Functions | |
| virtual | ~ActsFatrasG4Tool ()=default |
| virtual StatusCode | initialize () override |
| AlgTool initialize method. | |
| virtual StatusCode | finalize () override |
| AlgTool finalize method. | |
| StatusCode | initializePhysics () override |
| AlgTool initializePhysics method. | |
| virtual void | simulateFatrasTrack (const G4FastTrack &fastTrack, G4FastStep &fastStep) override |
| create ActsFatras track, exposed via interface | |
| virtual const std::vector< SiHit > & | getPixelHitsCache (const EventContext &ctx) const override |
| for saving si hits caches, expose to the interface | |
| virtual const std::vector< SiHit > & | getSCTHitsCache (const EventContext &ctx) const override |
| virtual void | clearCaches (const EventContext &ctx) const override |
Protected Attributes | |
| const PixelID * | m_pixIdHelper {nullptr} |
| the Pixel ID helper | |
| const SCT_ID * | m_sctIdHelper {nullptr} |
| the SCT ID helper | |
Private Types | |
| using | Generator = std::ranlux48 |
| using | Navigator = Acts::Navigator |
| using | ChargedStepper = Acts::EigenStepper<Acts::EigenStepperDefaultExtension> |
| using | ChargedPropagator = Acts::Propagator<ChargedStepper, Navigator> |
| using | NeutralStepper = Acts::StraightLineStepper |
| using | NeutralPropagator = Acts::Propagator<NeutralStepper, Navigator> |
| using | ChargedSelector = ActsFatras::ChargedSelector |
| using | ChargedInteractions = ActsFatras::StandardChargedElectroMagneticInteractions |
| using | ChargedSimulation |
| using | NeutralSelector = ActsFatras::NeutralSelector |
| using | NeutralInteractions = ActsFatras::InteractionList<ActsFatras::PhotonConversion> |
| using | NeutralSimulation |
| using | Simulation |
Private Member Functions | |
| StatusCode | configureSimulator () |
| void | debugTrackRegion (const G4FastTrack &fastTrack) const |
| std::vector< ActsFatras::Particle > | buildActsInputFromG4 (const G4Track &track) |
| void | handleSimulationFailures (const Acts::Result< ActsFatras::SingleParticleSimulationResult > &result) |
| StatusCode | applyPrimaryUpdate (const G4Track &, const std::vector< ActsFatras::Particle > &simulatedFinalParticles, G4FastStep &fastStep) |
| StatusCode | spawnSecondaries (const std::vector< ActsFatras::Particle > &simulatedFinal, const G4Track &, G4FastStep &fastStep) |
| StatusCode | createHitsFromG4 (const EventContext &ctx, const G4Track &track, const Acts::TrackingGeometry &trackingGeometry, const std::vector< ActsFatras::Hit > &hits) const |
| StatusCode | runDebugInjection (const EventContext &ctx, const G4Track &track, const Acts::GeometryContext &anygctx, const Acts::MagneticFieldContext &mctx, Generator &generator, G4FastStep &fastStep) |
| int | getATLASProcessCode (ActsFatras::GenerationProcess actspt) |
| EventCache & | getCache (const EventContext &ctx) const |
Private Attributes | |
| ActsTrk::ContextUtility | m_ctxProvider {this} |
| Context provider for geometry, magnetic field and calibration contexts. | |
| std::unique_ptr< Navigator > | m_navigator |
| std::shared_ptr< ATLASMagneticFieldWrapper > | m_bField |
| std::unique_ptr< Simulation > | m_simulator |
| ServiceHandle< IAthRNGSvc > | m_rngSvc {this, "RNGService", "AthRNGSvc"} |
| ATHRNG::RNGWrapper *m_randomEngine | ATLAS_THREAD_SAFE {} |
| Gaudi::Property< std::string > | m_randomEngineName {this, "RandomEngineName", "RandomEngineName", "Name of random number stream"} |
| ServiceHandle< ActsTrk::ITrackingGeometrySvc > | m_trackingGeometrySvc {this, "TrackingGeometrySvc", "ActsTrackingGeometrySvc"} |
| std::shared_ptr< const Acts::TrackingGeometry > | m_trackingGeometry |
| std::shared_ptr< const Acts::Logger > | m_logger {nullptr} |
| Gaudi::Property< double > | m_interact_minPt {this, "Interact_MinPt", 50.0, "Min pT of the interactions (MeV)"} |
| Gaudi::Property< bool > | m_meanEnergyLoss {this, "MeanEnergyLoss", true, "Toggle between mean and mode evaluation of energy loss"} |
| Gaudi::Property< bool > | m_includeGradient {this, "IncludeGradient", true, "Boolean flag for inclusion of d(dEds)d(q/p) into energy loss"} |
| Gaudi::Property< double > | m_momentumCutOff {this, "MomentumCutOff", 0., "Cut-off value for the momentum in SI units"} |
| Gaudi::Property< double > | m_maxStep {this, "MaxSteps", 2000, "Max number of steps"} |
| Gaudi::Property< double > | m_maxRungeKuttaStepTrials {this, "MaxRungeKuttaStepTrials", 10000, "Max number of Runge-Kutta steps for the stepper step call"} |
| Gaudi::Property< double > | m_maxStepSize {this, "MaxStepSize", 3.0, "Max step size (converted to Acts::UnitConstants::m)"} |
| Gaudi::Property< double > | m_pathLimit {this, "PathLimit", 3000.0, "Track path limit (converted to Acts::UnitConstants::cm)"} |
| Gaudi::Property< bool > | m_loopProtection {this, "LoopProtection", true, "Loop protection, it adapts the pathLimit"} |
| Gaudi::Property< double > | m_loopFraction {this, "LoopFraction", 0.5, "Allowed loop fraction, 1 is a full loop"} |
| Gaudi::Property< double > | m_tolerance {this, "Tolerance", 0.0001, "Tolerance for the error of the integration"} |
| Gaudi::Property< double > | m_stepSizeCutOff {this, "StepSizeCutOff", 0., "Cut-off value for the step size"} |
| Gaudi::Property< std::map< int, int > > | m_processTypeMap |
| SG::SlotSpecificObj< EventCache > m_eventCache | ATLAS_THREAD_SAFE |
| Gaudi::Property< bool > | m_debugInject {this, "DebugInjectParticle", false} |
Tool for ACTS Fatras G4.
Definition at line 89 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 229 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 223 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 228 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 230 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 222 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 215 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 220 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 235 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 226 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 234 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 236 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 225 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 240 of file ActsFatrasG4Tool.h.
|
virtualdefault |
|
private |
Definition at line 192 of file ActsFatrasG4Tool.cxx.
|
private |
Definition at line 140 of file ActsFatrasG4Tool.cxx.
|
overridevirtual |
Definition at line 556 of file ActsFatrasG4Tool.cxx.
|
private |
Definition at line 81 of file ActsFatrasG4Tool.cxx.
|
private |
Definition at line 569 of file ActsFatrasG4Tool.cxx.
|
private |
Definition at line 253 of file ActsFatrasG4Tool.cxx.
|
overridevirtual |
AlgTool finalize method.
Definition at line 717 of file ActsFatrasG4Tool.cxx.
|
inlineprivate |
Definition at line 317 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 564 of file ActsFatrasG4Tool.cxx.
|
overridevirtual |
for saving si hits caches, expose to the interface
Definition at line 540 of file ActsFatrasG4Tool.cxx.
|
overridevirtual |
Definition at line 548 of file ActsFatrasG4Tool.cxx.
|
private |
Definition at line 185 of file ActsFatrasG4Tool.cxx.
|
overridevirtual |
AlgTool initialize method.
Definition at line 42 of file ActsFatrasG4Tool.cxx.
|
override |
AlgTool initializePhysics method.
Definition at line 132 of file ActsFatrasG4Tool.cxx.
|
private |
Definition at line 287 of file ActsFatrasG4Tool.cxx.
|
overridevirtual |
create ActsFatras track, exposed via interface
Definition at line 356 of file ActsFatrasG4Tool.cxx.
|
private |
Definition at line 224 of file ActsFatrasG4Tool.cxx.
|
mutableprivate |
Definition at line 326 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 286 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 247 of file ActsFatrasG4Tool.h.
|
private |
Context provider for geometry, magnetic field and calibration contexts.
Definition at line 113 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 330 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 301 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 298 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 295 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 309 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 308 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 305 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 304 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 306 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 300 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 302 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 246 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 307 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 312 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 287 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 285 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 252 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 311 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 310 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 291 of file ActsFatrasG4Tool.h.
|
private |
Definition at line 290 of file ActsFatrasG4Tool.h.