Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ActsExamples::MaterialMapping Class Reference

Initiates and executes material mapping. More...

#include <acts/blob/sPHENIX/Examples/Algorithms/MaterialMapping/include/ActsExamples/MaterialMapping/MaterialMapping.hpp>

+ Inheritance diagram for ActsExamples::MaterialMapping:
+ Collaboration diagram for ActsExamples::MaterialMapping:

Classes

struct  Config
 

Public Member Functions

 MaterialMapping (const Config &cfg, Acts::Logging::Level level=Acts::Logging::INFO)
 
 ~MaterialMapping () override
 
ActsExamples::ProcessCode execute (const AlgorithmContext &context) const override
 
std::vector< std::pair< double,
int > > 
scoringParameters (uint64_t surfaceID)
 
const Configconfig () const
 Readonly access to the config.
 
- Public Member Functions inherited from ActsExamples::IAlgorithm
 IAlgorithm (std::string name, Acts::Logging::Level level=Acts::Logging::INFO)
 
std::string name () const override
 The algorithm name.
 
ProcessCode internalExecute (const AlgorithmContext &context) final
 
ProcessCode initialize () override
 Initialize the algorithm.
 
ProcessCode finalize () override
 Finalize the algorithm.
 

Private Attributes

Config m_cfg
 internal config object
 
Acts::SurfaceMaterialMapper::State m_mappingState
 Material mapping state.
 
Acts::VolumeMaterialMapper::State m_mappingStateVol
 Material mapping state.
 
ReadDataHandle
< std::unordered_map< size_t,
Acts::RecordedMaterialTrack > > 
m_inputMaterialTracks {this, "InputMaterialTracks"}
 
WriteDataHandle
< std::unordered_map< size_t,
Acts::RecordedMaterialTrack > > 
m_outputMaterialTracks {this, "OutputMaterialTracks"}
 

Additional Inherited Members

- Protected Member Functions inherited from ActsExamples::IAlgorithm
const Acts::Loggerlogger () const
 

Detailed Description

Initiates and executes material mapping.

The MaterialMapping reads in the MaterialTrack with a dedicated reader and uses the material mapper to project the material onto the tracking geometry

By construction, the material mapping needs inter-event information to build the material maps of accumulated single particle views. However, running it in one single event, puts enormous pressure onto the I/O structure.

It therefore saves the mapping state/cache as a private member variable and is designed to be executed in a single threaded mode.

Definition at line 72 of file MaterialMapping.hpp.

View newest version in sPHENIX GitHub at line 72 of file MaterialMapping.hpp

Constructor & Destructor Documentation

ActsExamples::MaterialMapping::MaterialMapping ( const Config cfg,
Acts::Logging::Level  level = Acts::Logging::INFO 
)
ActsExamples::MaterialMapping::~MaterialMapping ( )
override

Destructor

  • it also writes out the file

Definition at line 54 of file MaterialMapping.cpp.

View newest version in sPHENIX GitHub at line 54 of file MaterialMapping.cpp

References m_cfg(), testing::internal::move(), and value.

+ Here is the call graph for this function:

Member Function Documentation

const Config& ActsExamples::MaterialMapping::config ( ) const
inline

Readonly access to the config.

Definition at line 127 of file MaterialMapping.hpp.

View newest version in sPHENIX GitHub at line 127 of file MaterialMapping.hpp

References m_cfg.

ActsExamples::ProcessCode ActsExamples::MaterialMapping::execute ( const AlgorithmContext context) const
overridevirtual

Framework execute method

Parameters
contextThe algorithm context for event consistency

Implements ActsExamples::IAlgorithm.

Definition at line 101 of file MaterialMapping.cpp.

View newest version in sPHENIX GitHub at line 101 of file MaterialMapping.cpp

References m_cfg(), testing::internal::move(), and SUCCESS.

+ Here is the call graph for this function:

std::vector< std::pair< double, int > > ActsExamples::MaterialMapping::scoringParameters ( uint64_t  surfaceID)

Return the parameters to optimised the material map for a given surface Those parameters are the variance and the number of track for each bin

Parameters
surfaceIDthe ID of the surface of interest

Definition at line 132 of file MaterialMapping.cpp.

View newest version in sPHENIX GitHub at line 132 of file MaterialMapping.cpp

References m_cfg().

+ Here is the call graph for this function:

Member Data Documentation

Config ActsExamples::MaterialMapping::m_cfg
private

internal config object

Definition at line 130 of file MaterialMapping.hpp.

View newest version in sPHENIX GitHub at line 130 of file MaterialMapping.hpp

Referenced by config(), and MaterialMapping().

ReadDataHandle<std::unordered_map<size_t, Acts::RecordedMaterialTrack> > ActsExamples::MaterialMapping::m_inputMaterialTracks {this, "InputMaterialTracks"}
private

Definition at line 138 of file MaterialMapping.hpp.

View newest version in sPHENIX GitHub at line 138 of file MaterialMapping.hpp

Referenced by MaterialMapping().

Acts::SurfaceMaterialMapper::State ActsExamples::MaterialMapping::m_mappingState
private

Material mapping state.

Definition at line 132 of file MaterialMapping.hpp.

View newest version in sPHENIX GitHub at line 132 of file MaterialMapping.hpp

Referenced by MaterialMapping().

Acts::VolumeMaterialMapper::State ActsExamples::MaterialMapping::m_mappingStateVol
private

Material mapping state.

Definition at line 134 of file MaterialMapping.hpp.

View newest version in sPHENIX GitHub at line 134 of file MaterialMapping.hpp

Referenced by MaterialMapping().

WriteDataHandle<std::unordered_map<size_t, Acts::RecordedMaterialTrack> > ActsExamples::MaterialMapping::m_outputMaterialTracks {this, "OutputMaterialTracks"}
private

Definition at line 140 of file MaterialMapping.hpp.

View newest version in sPHENIX GitHub at line 140 of file MaterialMapping.hpp

Referenced by MaterialMapping().


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