LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
lar_content::LArShowerPCA Class Reference

LArShowerPCA class. More...

#include "LArPfoObjects.h"

Public Member Functions

 LArShowerPCA (const pandora::CartesianVector &centroid, const pandora::CartesianVector &primaryAxis, const pandora::CartesianVector &secondaryAxis, const pandora::CartesianVector &tertiaryAxis, const pandora::CartesianVector &eigenvalues)
 Constructor. More...
 
const pandora::CartesianVector & GetCentroid () const
 Return centroid. More...
 
const pandora::CartesianVector & GetPrimaryAxis () const
 Return primary axis. More...
 
const pandora::CartesianVector & GetSecondaryAxis () const
 Return secondary axis. More...
 
const pandora::CartesianVector & GetTertiaryAxis () const
 Return tertiary axis. More...
 
const pandora::CartesianVector & GetEigenValues () const
 Return vector of eigenvalues. More...
 
const pandora::CartesianVector & GetAxisLengths () const
 Return vector of lengths. More...
 
float GetPrimaryLength () const
 Return primary length. More...
 
float GetSecondaryLength () const
 Return secondary length. More...
 
float GetTertiaryLength () const
 Return tertiary length. More...
 

Private Attributes

const pandora::CartesianVector m_centroid
 The centroid. More...
 
const pandora::CartesianVector m_primaryAxis
 The primary axis. More...
 
const pandora::CartesianVector m_secondaryAxis
 The secondary axis. More...
 
const pandora::CartesianVector m_tertiaryAxis
 The tertiary axis. More...
 
const pandora::CartesianVector m_eigenValues
 The vector of eigenvalues. More...
 
const pandora::CartesianVector m_axisLengths
 The vector of lengths. More...
 

Detailed Description

LArShowerPCA class.

Definition at line 112 of file LArPfoObjects.h.

Constructor & Destructor Documentation

lar_content::LArShowerPCA::LArShowerPCA ( const pandora::CartesianVector &  centroid,
const pandora::CartesianVector &  primaryAxis,
const pandora::CartesianVector &  secondaryAxis,
const pandora::CartesianVector &  tertiaryAxis,
const pandora::CartesianVector &  eigenvalues 
)

Constructor.

Parameters
centroidcentroid of shower
primaryAxisprimary axis of shower
secondaryAxissecondary axis of shower
tertiaryAxistertiary axis of shower
axisLengthsordered vector of shower lengths

Definition at line 52 of file LArPfoObjects.cc.

53  :
54  m_centroid(centroid),
55  m_primaryAxis(primaryAxis),
56  m_secondaryAxis(secondaryAxis),
57  m_tertiaryAxis(tertiaryAxis),
58  m_eigenValues(eigenValues),
59  m_axisLengths(((eigenValues.GetX() > std::numeric_limits<float>::epsilon()) ? 6.f * std::sqrt(eigenValues.GetX()) : 0.f),
60  ((eigenValues.GetY() > std::numeric_limits<float>::epsilon()) ? 6.f * std::sqrt(eigenValues.GetY()) : 0.f),
61  ((eigenValues.GetZ() > std::numeric_limits<float>::epsilon()) ? 6.f * std::sqrt(eigenValues.GetZ()) : 0.f))
62 {
63 }
const pandora::CartesianVector m_eigenValues
The vector of eigenvalues.
TFile f
Definition: plotHisto.C:6
const pandora::CartesianVector m_tertiaryAxis
The tertiary axis.
const pandora::CartesianVector m_primaryAxis
The primary axis.
const pandora::CartesianVector m_centroid
The centroid.
const pandora::CartesianVector m_axisLengths
The vector of lengths.
const pandora::CartesianVector m_secondaryAxis
The secondary axis.

Member Function Documentation

const CartesianVector & lar_content::LArShowerPCA::GetAxisLengths ( ) const

Return vector of lengths.

Returns
the vector of lengths

Definition at line 102 of file LArPfoObjects.cc.

References m_axisLengths.

Referenced by lar_pandora::LArPandoraShowerCreation::BuildShower(), and lar_content::PcaShowerParticleBuildingAlgorithm::CreatePfo().

103 {
104  return m_axisLengths;
105 }
const pandora::CartesianVector m_axisLengths
The vector of lengths.
const CartesianVector & lar_content::LArShowerPCA::GetCentroid ( ) const

Return centroid.

Returns
the centroid

Definition at line 67 of file LArPfoObjects.cc.

References m_centroid.

Referenced by lar_pandora::LArPandoraShowerCreation::BuildPCAxis(), lar_content::PcaShowerParticleBuildingAlgorithm::CreatePfo(), and lar_pandora::LArPandoraShowerCreation::produce().

68 {
69  return m_centroid;
70 }
const pandora::CartesianVector m_centroid
The centroid.
const CartesianVector & lar_content::LArShowerPCA::GetEigenValues ( ) const

Return vector of eigenvalues.

Returns
the vector of eigenvalues

Definition at line 95 of file LArPfoObjects.cc.

References m_eigenValues.

Referenced by lar_pandora::LArPandoraShowerCreation::BuildPCAxis(), lar_content::PcaShowerParticleBuildingAlgorithm::CreatePfo(), and lar_pandora::LArPandoraShowerCreation::produce().

96 {
97  return m_eigenValues;
98 }
const pandora::CartesianVector m_eigenValues
The vector of eigenvalues.
const CartesianVector & lar_content::LArShowerPCA::GetPrimaryAxis ( ) const

Return primary axis.

Returns
the primary axis

Definition at line 74 of file LArPfoObjects.cc.

References m_primaryAxis.

Referenced by lar_pandora::LArPandoraShowerCreation::BuildPCAxis(), lar_pandora::LArPandoraShowerCreation::BuildShower(), lar_content::PcaShowerParticleBuildingAlgorithm::CreatePfo(), and lar_pandora::LArPandoraShowerCreation::produce().

75 {
76  return m_primaryAxis;
77 }
const pandora::CartesianVector m_primaryAxis
The primary axis.
float lar_content::LArShowerPCA::GetPrimaryLength ( ) const

Return primary length.

Returns
the primary length

Definition at line 109 of file LArPfoObjects.cc.

References m_axisLengths.

Referenced by lar_pandora::LArPandoraShowerCreation::BuildShower(), and lar_content::PcaShowerParticleBuildingAlgorithm::CreatePfo().

110 {
111  return m_axisLengths.GetX();
112 }
const pandora::CartesianVector m_axisLengths
The vector of lengths.
const CartesianVector & lar_content::LArShowerPCA::GetSecondaryAxis ( ) const

Return secondary axis.

Returns
the secondary axis

Definition at line 81 of file LArPfoObjects.cc.

References m_secondaryAxis.

Referenced by lar_pandora::LArPandoraShowerCreation::BuildPCAxis(), lar_content::PcaShowerParticleBuildingAlgorithm::CreatePfo(), and lar_pandora::LArPandoraShowerCreation::produce().

82 {
83  return m_secondaryAxis;
84 }
const pandora::CartesianVector m_secondaryAxis
The secondary axis.
float lar_content::LArShowerPCA::GetSecondaryLength ( ) const

Return secondary length.

Returns
the secondary length

Definition at line 116 of file LArPfoObjects.cc.

References m_axisLengths.

Referenced by lar_pandora::LArPandoraShowerCreation::BuildShower(), and lar_content::PcaShowerParticleBuildingAlgorithm::CreatePfo().

117 {
118  return m_axisLengths.GetY();
119 }
const pandora::CartesianVector m_axisLengths
The vector of lengths.
const CartesianVector & lar_content::LArShowerPCA::GetTertiaryAxis ( ) const

Return tertiary axis.

Returns
the tertiary axis

Definition at line 88 of file LArPfoObjects.cc.

References m_tertiaryAxis.

Referenced by lar_pandora::LArPandoraShowerCreation::BuildPCAxis(), lar_content::PcaShowerParticleBuildingAlgorithm::CreatePfo(), and lar_pandora::LArPandoraShowerCreation::produce().

89 {
90  return m_tertiaryAxis;
91 }
const pandora::CartesianVector m_tertiaryAxis
The tertiary axis.
float lar_content::LArShowerPCA::GetTertiaryLength ( ) const

Return tertiary length.

Returns
the tertiary length

Definition at line 123 of file LArPfoObjects.cc.

References m_axisLengths.

124 {
125  return m_axisLengths.GetZ();
126 }
const pandora::CartesianVector m_axisLengths
The vector of lengths.

Member Data Documentation

const pandora::CartesianVector lar_content::LArShowerPCA::m_axisLengths
private

The vector of lengths.

Definition at line 196 of file LArPfoObjects.h.

Referenced by GetAxisLengths(), GetPrimaryLength(), GetSecondaryLength(), and GetTertiaryLength().

const pandora::CartesianVector lar_content::LArShowerPCA::m_centroid
private

The centroid.

Definition at line 191 of file LArPfoObjects.h.

Referenced by GetCentroid().

const pandora::CartesianVector lar_content::LArShowerPCA::m_eigenValues
private

The vector of eigenvalues.

Definition at line 195 of file LArPfoObjects.h.

Referenced by GetEigenValues().

const pandora::CartesianVector lar_content::LArShowerPCA::m_primaryAxis
private

The primary axis.

Definition at line 192 of file LArPfoObjects.h.

Referenced by GetPrimaryAxis().

const pandora::CartesianVector lar_content::LArShowerPCA::m_secondaryAxis
private

The secondary axis.

Definition at line 193 of file LArPfoObjects.h.

Referenced by GetSecondaryAxis().

const pandora::CartesianVector lar_content::LArShowerPCA::m_tertiaryAxis
private

The tertiary axis.

Definition at line 194 of file LArPfoObjects.h.

Referenced by GetTertiaryAxis().


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