![]() |
ATLAS Offline Software
|
#include <NnClusterizationFactory.h>
Public Member Functions | |
| NnClusterizationFactory (const std::string &name, const std::string &n, const IInterface *p) | |
| ~NnClusterizationFactory ()=default | |
| virtual StatusCode | initialize () override |
| virtual StatusCode | finalize () override |
| std::vector< double > | estimateNumberOfParticles (const InDet::PixelCluster &pCluster, Amg::Vector3D &beamSpotPosition) const |
| std::vector< double > | estimateNumberOfParticles (const InDet::PixelCluster &pCluster, const Trk::Surface &pixelSurface, const Trk::TrackParameters &trackParsAtSurface) const |
| std::vector< Amg::Vector2D > | estimatePositions (const InDet::PixelCluster &pCluster, Amg::Vector3D &beamSpotPosition, std::vector< Amg::MatrixX > &errors, int numberSubClusters) const |
| std::vector< Amg::Vector2D > | estimatePositions (const InDet::PixelCluster &pCluster, const Trk::Surface &pixelSurface, const Trk::TrackParameters &trackParsAtSurface, std::vector< Amg::MatrixX > &errors, int numberSubClusters) const |
| ServiceHandle< StoreGateSvc > & | evtStore () |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. | |
| const ServiceHandle< StoreGateSvc > & | detStore () const |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. | |
| virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. | |
| virtual StatusCode | sysStart () override |
| Handle START transition. | |
| virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. | |
| virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. | |
| Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T, V, H > &t) |
| void | updateVHKA (Gaudi::Details::PropertyBase &) |
| MsgStream & | msg () const |
| bool | msgLvl (const MSG::Level lvl) const |
Static Public Member Functions | |
| static const InterfaceID & | interfaceID () |
| AlgTool interface methods. | |
Protected Member Functions | |
| void | renounceArray (SG::VarHandleKeyArray &handlesArray) |
| remove all handles from I/O resolution | |
| std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > | renounce (T &h) |
| void | extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps) |
| Add StoreName to extra input/output deps as needed. | |
Private Types | |
| enum | ENetworkType { kNumberParticlesNN , kPositionNN , kErrorXNN , kErrorYNN , kNNetworkTypes } |
| typedef std::vector< Eigen::VectorXd > | InputVector |
| using | ReturnType = std::vector<Double_t> |
| using | InputType = std::vector<Double_t> |
| typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
Private Member Functions | |
| std::vector< double > | estimateNumberOfParticlesTTN (const TTrainedNetworkCollection &nn_collection, const std::vector< double > &inputData) const |
| std::vector< double > | estimateNumberOfParticlesLWTNN (NnClusterizationFactory::InputVector &input) const |
| std::vector< Amg::Vector2D > | estimatePositionsTTN (const TTrainedNetworkCollection &nn_collection, const std::vector< double > &inputData, const NNinput &input, const InDet::PixelCluster &pCluster, int numberSubClusters, std::vector< Amg::MatrixX > &errors) const |
| std::vector< Amg::Vector2D > | estimatePositionsLWTNN (NnClusterizationFactory::InputVector &input, NNinput &rawInput, const InDet::PixelCluster &pCluster, int numberSubClusters, std::vector< Amg::MatrixX > &errors) const |
| std::vector< double > | estimateNumberOfParticlesONNX (const Eigen::VectorXd &input) const |
| std::vector< Amg::Vector2D > | estimatePositionsONNX (const Eigen::VectorXd &input, NNinput &rawInput, const InDet::PixelCluster &pCluster, int numberSubClusters, std::vector< Amg::MatrixX > &errors) const |
| double | correctedRMSY (double posPixels, std::vector< float > &pitches) const |
| NNinput | createInput (const InDet::PixelCluster &pCluster, Amg::Vector3D &beamSpotPosition, double &tanl) const |
| void | addTrackInfoToInput (NNinput &input, const Trk::Surface &pixelSurface, const Trk::TrackParameters &trackParsAtSurface, const double tanl) const |
| std::vector< double > | assembleInputRunI (NNinput &input) const |
| std::vector< double > | assembleInputRunII (NNinput &input) const |
| InputVector | eigenInput (NNinput &input) const |
| std::vector< Amg::Vector2D > | getPositionsFromOutput (std::vector< double > &output, const NNinput &input, const InDet::PixelCluster &pCluster) const |
| void | getErrorMatrixFromOutput (std::vector< double > &outputX, std::vector< double > &outputY, std::vector< Amg::MatrixX > &errorMatrix, int nParticles) const |
| size_t | calculateVectorDimension (const bool useTrackInfo) const |
| Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> | |
Static Private Member Functions | |
| static double | correctedRMSX (double posPixels) |
Private Attributes | |
| Gaudi::Property< std::vector< std::string > > | m_nnOrder |
| unsigned int | m_nParticleNNId {} |
| std::vector< std::vector< unsigned int > > | m_NNId {} |
| std::vector< double >(InDet::NnClusterizationFactory::* | m_assembleInput )(NNinput &input) const |
| ReturnType(::TTrainedNetwork::* | m_calculateOutput )(const InputType &input) const |
| ToolHandle< ISiLorentzAngleTool > | m_pixelLorentzAngleTool {this, "PixelLorentzAngleTool", "SiLorentzAngleTool/PixelLorentzAngleTool", "Tool to retreive Lorentz angle of Pixel"} |
| SG::ReadCondHandleKey< PixelChargeCalibCondData > | m_chargeDataKey {this, "PixelChargeCalibCondData", "PixelChargeCalibCondData", "Output key"} |
| SG::ReadCondHandleKey< TTrainedNetworkCollection > | m_readKeyWithoutTrack {this, "NnCollectionReadKey", "PixelClusterNN", "The conditions store key for the pixel cluster NNs"} |
| SG::ReadCondHandleKey< TTrainedNetworkCollection > | m_readKeyWithTrack |
| SG::ReadCondHandleKey< LWTNNCollection > | m_readKeyJSON |
| Gaudi::Property< std::size_t > | m_outputNodesPos1 |
| Gaudi::Property< std::vector< std::size_t > > | m_outputNodesPos2 |
| Gaudi::Property< std::vector< std::size_t > > | m_outputNodesPos3 |
| Gaudi::Property< unsigned int > | m_maxSubClusters {this, "MaxSubClusters", 3, "Maximum number of sub cluster supported by the networks." } |
| Gaudi::Property< double > | m_correctLorShiftBarrelWithoutTracks {this, "correctLorShiftBarrelWithoutTracks",0.,"Lorentz shift correction factor when evaluating NN without track input."} |
| Gaudi::Property< double > | m_correctLorShiftBarrelWithTracks {this, "correctLorShiftBarrelWithTracks",0.,"Lorentz shift correction factor when evaluating NN with track input."} |
| Gaudi::Property< bool > | m_useToT {this, "useToT",true,"Use Tot rather than charge." } |
| Gaudi::Property< bool > | m_addIBL {this, "addIBL", false, "Also apply to clusters in IBL." } |
| Gaudi::Property< bool > | m_doRunI {this, "doRunI", false, "Use runI style network (outputs are not normalised; add pitches; use charge if not m_useToT)"} |
| SG::ReadCondHandleKey< OnnxNNCollection > | m_readKeyONNX |
| Gaudi::Property< bool > | m_useONNX {this, "useONNX", false, "Use ONNX models instead of LWTNN for NN inference."} |
| Gaudi::Property< bool > | m_useTTrainedNetworks {this, "useTTrainedNetworks", false, "Use earlier (release-21-like) neural networks stored in ROOT files and accessed via TTrainedNetowrk."} |
| Gaudi::Property< bool > | m_useRecenteringNNWithouTracks {this, "useRecenteringNNWithoutTracks",false,"Recenter x position when evaluating NN without track input."} |
| Gaudi::Property< bool > | m_useRecenteringNNWithTracks {this, "useRecenteringNNWithTracks",false,"Recenter x position when evaluating NN with track input."} |
| Gaudi::Property< unsigned int > | m_sizeX {this, "sizeX",7,"Size of pixel matrix along X"} |
| Gaudi::Property< unsigned int > | m_sizeY {this, "sizeY",7,"Size of pixel matrix along Y"} |
| StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default). | |
| StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default). | |
| std::vector< SG::VarHandleKeyArray * > | m_vhka |
| bool | m_varHandleArraysDeclared |
Static Private Attributes | |
| static constexpr std::array< std::string_view, kNNetworkTypes > | s_nnTypeNames |
| static constexpr std::array< unsigned int, kNNetworkTypes > | m_nParticleGroup {0U,1U,1U,1U} |
| static const std::array< std::regex, kNNetworkTypes > | m_nnNames |
Definition at line 89 of file NnClusterizationFactory.h.
|
private |
Definition at line 243 of file NnClusterizationFactory.h.
|
private |
Definition at line 126 of file NnClusterizationFactory.h.
|
private |
Definition at line 242 of file NnClusterizationFactory.h.
|
privateinherited |
Definition at line 388 of file AthCommonDataStore.h.
|
private |
| Enumerator | |
|---|---|
| kNumberParticlesNN | |
| kPositionNN | |
| kErrorXNN | |
| kErrorYNN | |
| kNNetworkTypes | |
Definition at line 218 of file NnClusterizationFactory.h.
| InDet::NnClusterizationFactory::NnClusterizationFactory | ( | const std::string & | name, |
| const std::string & | n, | ||
| const IInterface * | p ) |
Definition at line 62 of file NnClusterizationFactory.cxx.
|
default |
|
private |
Definition at line 754 of file NnClusterizationFactory.cxx.
|
private |
Definition at line 178 of file NnClusterizationFactory.cxx.
|
private |
Definition at line 156 of file NnClusterizationFactory.cxx.
|
private |
Definition at line 983 of file NnClusterizationFactory.cxx.
|
staticprivate |
Definition at line 569 of file NnClusterizationFactory.cxx.
|
private |
Definition at line 577 of file NnClusterizationFactory.cxx.
|
private |
Definition at line 773 of file NnClusterizationFactory.cxx.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
|
inlineinherited |
Definition at line 145 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 95 of file AthCommonDataStore.h.
|
private |
Definition at line 214 of file NnClusterizationFactory.cxx.
| std::vector< double > InDet::NnClusterizationFactory::estimateNumberOfParticles | ( | const InDet::PixelCluster & | pCluster, |
| Amg::Vector3D & | beamSpotPosition ) const |
Definition at line 256 of file NnClusterizationFactory.cxx.
| std::vector< double > InDet::NnClusterizationFactory::estimateNumberOfParticles | ( | const InDet::PixelCluster & | pCluster, |
| const Trk::Surface & | pixelSurface, | ||
| const Trk::TrackParameters & | trackParsAtSurface ) const |
Definition at line 281 of file NnClusterizationFactory.cxx.
|
private |
Definition at line 333 of file NnClusterizationFactory.cxx.
|
private |
Definition at line 992 of file NnClusterizationFactory.cxx.
|
private |
Definition at line 310 of file NnClusterizationFactory.cxx.
| std::vector< Amg::Vector2D > InDet::NnClusterizationFactory::estimatePositions | ( | const InDet::PixelCluster & | pCluster, |
| Amg::Vector3D & | beamSpotPosition, | ||
| std::vector< Amg::MatrixX > & | errors, | ||
| int | numberSubClusters ) const |
Definition at line 364 of file NnClusterizationFactory.cxx.
| std::vector< Amg::Vector2D > InDet::NnClusterizationFactory::estimatePositions | ( | const InDet::PixelCluster & | pCluster, |
| const Trk::Surface & | pixelSurface, | ||
| const Trk::TrackParameters & | trackParsAtSurface, | ||
| std::vector< Amg::MatrixX > & | errors, | ||
| int | numberSubClusters ) const |
Definition at line 396 of file NnClusterizationFactory.cxx.
|
private |
Definition at line 488 of file NnClusterizationFactory.cxx.
|
private |
Definition at line 1061 of file NnClusterizationFactory.cxx.
|
private |
Definition at line 427 of file NnClusterizationFactory.cxx.
|
inlineinherited |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 85 of file AthCommonDataStore.h.
|
protectedinherited |
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
|
inlineoverridevirtual |
Definition at line 101 of file NnClusterizationFactory.h.
|
private |
Definition at line 592 of file NnClusterizationFactory.cxx.
|
private |
Definition at line 663 of file NnClusterizationFactory.cxx.
|
overridevirtual |
Definition at line 68 of file NnClusterizationFactory.cxx.
|
overridevirtualinherited |
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
inlinestatic |
AlgTool interface methods.
Definition at line 94 of file NnClusterizationFactory.h.
|
inlineinherited |
Definition at line 24 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 30 of file AthCommonMsg.h.
|
overridevirtualinherited |
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
inlineprotectedinherited |
Definition at line 380 of file AthCommonDataStore.h.
|
inlineprotectedinherited |
remove all handles from I/O resolution
Definition at line 364 of file AthCommonDataStore.h.
|
overridevirtualinherited |
Perform system initialization for an algorithm.
We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.
Reimplemented in asg::AsgMetadataTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and DerivationFramework::CfAthAlgTool.
|
overridevirtualinherited |
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
|
inlineinherited |
Definition at line 308 of file AthCommonDataStore.h.
|
private |
Definition at line 294 of file NnClusterizationFactory.h.
|
inlineprivate |
Definition at line 232 of file NnClusterizationFactory.h.
|
inlineprivate |
Definition at line 247 of file NnClusterizationFactory.h.
|
private |
Definition at line 252 of file NnClusterizationFactory.h.
|
private |
Definition at line 285 of file NnClusterizationFactory.h.
|
private |
Definition at line 288 of file NnClusterizationFactory.h.
|
privateinherited |
Pointer to StoreGate (detector store by default).
Definition at line 393 of file AthCommonDataStore.h.
|
private |
Definition at line 297 of file NnClusterizationFactory.h.
|
privateinherited |
Pointer to StoreGate (event store by default).
Definition at line 390 of file AthCommonDataStore.h.
|
private |
Definition at line 282 of file NnClusterizationFactory.h.
|
private |
Definition at line 232 of file NnClusterizationFactory.h.
|
staticprivate |
Definition at line 229 of file NnClusterizationFactory.h.
|
private |
Definition at line 204 of file NnClusterizationFactory.h.
|
staticconstexprprivate |
Definition at line 228 of file NnClusterizationFactory.h.
|
private |
Definition at line 231 of file NnClusterizationFactory.h.
|
private |
Definition at line 270 of file NnClusterizationFactory.h.
|
private |
Definition at line 274 of file NnClusterizationFactory.h.
|
private |
Definition at line 278 of file NnClusterizationFactory.h.
|
private |
Definition at line 249 of file NnClusterizationFactory.h.
|
private |
Definition at line 262 of file NnClusterizationFactory.h.
|
private |
Definition at line 300 of file NnClusterizationFactory.h.
|
private |
Definition at line 255 of file NnClusterizationFactory.h.
|
private |
Definition at line 258 of file NnClusterizationFactory.h.
|
private |
Definition at line 316 of file NnClusterizationFactory.h.
|
private |
Definition at line 319 of file NnClusterizationFactory.h.
|
private |
Definition at line 304 of file NnClusterizationFactory.h.
|
private |
Definition at line 310 of file NnClusterizationFactory.h.
|
private |
Definition at line 313 of file NnClusterizationFactory.h.
|
private |
Definition at line 291 of file NnClusterizationFactory.h.
|
private |
Definition at line 307 of file NnClusterizationFactory.h.
|
privateinherited |
Definition at line 399 of file AthCommonDataStore.h.
|
privateinherited |
Definition at line 398 of file AthCommonDataStore.h.
|
staticconstexprprivate |
Definition at line 223 of file NnClusterizationFactory.h.