Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
lar_content::ThreeDSlidingFitResult Class Reference

ThreeDSlidingFitResult class. More...

#include "LArThreeDSlidingFitResult.h"

Collaboration diagram for lar_content::ThreeDSlidingFitResult:

Public Member Functions

template<typename T >
 ThreeDSlidingFitResult (const T *const pT, const unsigned int slidingFitWindow, const float slidingFitLayerPitch)
 Constructor.
 
const pandora::ClusterGetCluster () const
 Get the address of the cluster.
 
const pandora::CartesianVectorGetAxisIntercept () const
 Get the axis intercept position.
 
const pandora::CartesianVectorGetAxisDirection () const
 Get the axis direction vector.
 
const TwoDSlidingFitResultGetFirstFitResult () const
 Get the first sliding fit result for this cluster.
 
const TwoDSlidingFitResultGetSecondFitResult () const
 Get the second sliding fit result for this cluster.
 
const pandora::CartesianVectorGetGlobalMinLayerPosition () const
 Get global position corresponding to the fit result in minimum fit layer.
 
const pandora::CartesianVectorGetGlobalMaxLayerPosition () const
 Get global position corresponding to the fit result in maximum fit layer.
 
const pandora::CartesianVectorGetGlobalMinLayerDirection () const
 Get global direction corresponding to the fit result in minimum fit layer.
 
const pandora::CartesianVectorGetGlobalMaxLayerDirection () const
 Get global direction corresponding to the fit result in maximum fit layer.
 
int GetMinLayer () const
 Get the minimum occupied layer in the sliding fit.
 
int GetMaxLayer () const
 Get the maximum occupied layer in the sliding fit.
 
float GetMinLayerRms () const
 Get rms at minimum layer.
 
float GetMaxLayerRms () const
 Get rms at maximum layer.
 
float GetFitRms (const float rL) const
 Get fit rms for a given longitudinal coordinate.
 
float GetLongitudinalDisplacement (const pandora::CartesianVector &position) const
 Get longitudinal projection onto primary axis.
 
pandora::StatusCode GetGlobalFitPosition (const float rL, pandora::CartesianVector &position) const
 Get global fit position for a given longitudinal coordinate.
 
pandora::StatusCode GetGlobalFitDirection (const float rL, pandora::CartesianVector &direction) const
 Get global fit direction for a given longitudinal coordinate.
 

Private Member Functions

void GetGlobalPosition (const float rL, const float rT1, const float rT2, pandora::CartesianVector &position) const
 Get global coordinates for a given pair of sliding linear fit coordinates.
 
void GetGlobalDirection (const float dTdL1, const float dTdL2, pandora::CartesianVector &direction) const
 Get global direction coordinates for a given pair of sliding linear fit gradients.
 

Static Private Member Functions

static pandora::TrackState GetPrimaryAxis (const pandora::Cluster *const pCluster, const float slidingFitLayerPitch)
 Calculate the position and direction of the primary axis.
 
static pandora::TrackState GetPrimaryAxis (const pandora::CartesianPointVector *const pPointVector, const float slidingFitLayerPitch)
 Calculate the position and direction of the primary axis.
 
static pandora::CartesianVector GetSeedDirection (const pandora::CartesianVector &axisDirection)
 Generate a seed vector to be used in calculating the orthogonal axes.
 

Private Attributes

const pandora::TrackState m_primaryAxis
 The primary axis position and direction.
 
const pandora::CartesianVector m_axisIntercept
 The axis intercept position.
 
const pandora::CartesianVector m_axisDirection
 The axis direction vector.
 
const pandora::CartesianVector m_firstOrthoDirection
 The orthogonal direction vector.
 
const pandora::CartesianVector m_secondOrthoDirection
 The orthogonal direction vector.
 
const TwoDSlidingFitResult m_firstFitResult
 The first sliding fit result.
 
const TwoDSlidingFitResult m_secondFitResult
 The second sliding fit result.
 
const int m_minLayer
 The minimum combined layer.
 
const int m_maxLayer
 The maximum combined layer.
 
pandora::CartesianVector m_minLayerPosition
 The global position at the minimum combined layer.
 
pandora::CartesianVector m_maxLayerPosition
 The global position at the maximum combined layer.
 
pandora::CartesianVector m_minLayerDirection
 The global direction at the minimum combined layer.
 
pandora::CartesianVector m_maxLayerDirection
 The global direction at the maximum combined layer.
 

Detailed Description

ThreeDSlidingFitResult class.

Definition at line 23 of file LArThreeDSlidingFitResult.h.

Constructor & Destructor Documentation

◆ ThreeDSlidingFitResult()

template<typename T >
template lar_content::ThreeDSlidingFitResult::ThreeDSlidingFitResult ( const T *const  pT,
const unsigned int  slidingFitWindow,
const float  slidingFitLayerPitch 
)

Constructor.

Parameters
pTdescribing the positions to be fitted
slidingFitWindowthe sliding fit window
slidingFitLayerPitchthe sliding fit z pitch, units cm

Definition at line 28 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:

Member Function Documentation

◆ GetAxisDirection()

const pandora::CartesianVector & lar_content::ThreeDSlidingFitResult::GetAxisDirection ( ) const
inline

Get the axis direction vector.

Returns
the axis direction vector

Definition at line 243 of file LArThreeDSlidingFitResult.h.

◆ GetAxisIntercept()

const pandora::CartesianVector & lar_content::ThreeDSlidingFitResult::GetAxisIntercept ( ) const
inline

Get the axis intercept position.

Returns
the axis intercept position

Definition at line 236 of file LArThreeDSlidingFitResult.h.

◆ GetCluster()

const pandora::Cluster * lar_content::ThreeDSlidingFitResult::GetCluster ( ) const

Get the address of the cluster.

Returns
the address of the cluster

Definition at line 57 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetFirstFitResult()

const TwoDSlidingFitResult & lar_content::ThreeDSlidingFitResult::GetFirstFitResult ( ) const
inline

Get the first sliding fit result for this cluster.

Returns
the first sliding fit result for this cluster

Definition at line 250 of file LArThreeDSlidingFitResult.h.

Here is the caller graph for this function:

◆ GetFitRms()

float lar_content::ThreeDSlidingFitResult::GetFitRms ( const float  rL) const

Get fit rms for a given longitudinal coordinate.

Parameters
rLthe longitudinal coordinate
Returns
the fit rms

Definition at line 104 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:

◆ GetGlobalDirection()

void lar_content::ThreeDSlidingFitResult::GetGlobalDirection ( const float  dTdL1,
const float  dTdL2,
pandora::CartesianVector direction 
) const
private

Get global direction coordinates for a given pair of sliding linear fit gradients.

Parameters
dTdL1the first transverse coordinate
dTdL2the second transverse coordinate
directionto receive the direction cartesian vector

Definition at line 194 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetGlobalFitDirection()

StatusCode lar_content::ThreeDSlidingFitResult::GetGlobalFitDirection ( const float  rL,
pandora::CartesianVector direction 
) const

Get global fit direction for a given longitudinal coordinate.

Parameters
rLthe longitudinal coordinate
directionthe fitted direction at these coordinates
Returns
status code, faster than throwing in regular use-cases

Definition at line 154 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetGlobalFitPosition()

StatusCode lar_content::ThreeDSlidingFitResult::GetGlobalFitPosition ( const float  rL,
pandora::CartesianVector position 
) const

Get global fit position for a given longitudinal coordinate.

Parameters
rLthe longitudinal coordinate
positionthe fitted position at these coordinates
Returns
status code, faster than throwing in regular use-cases

Definition at line 121 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetGlobalMaxLayerDirection()

const pandora::CartesianVector & lar_content::ThreeDSlidingFitResult::GetGlobalMaxLayerDirection ( ) const
inline

Get global direction corresponding to the fit result in maximum fit layer.

Returns
the position

Definition at line 285 of file LArThreeDSlidingFitResult.h.

Here is the caller graph for this function:

◆ GetGlobalMaxLayerPosition()

const pandora::CartesianVector & lar_content::ThreeDSlidingFitResult::GetGlobalMaxLayerPosition ( ) const
inline

Get global position corresponding to the fit result in maximum fit layer.

Returns
the position

Definition at line 271 of file LArThreeDSlidingFitResult.h.

Here is the caller graph for this function:

◆ GetGlobalMinLayerDirection()

const pandora::CartesianVector & lar_content::ThreeDSlidingFitResult::GetGlobalMinLayerDirection ( ) const
inline

Get global direction corresponding to the fit result in minimum fit layer.

Returns
the position

Definition at line 278 of file LArThreeDSlidingFitResult.h.

Here is the caller graph for this function:

◆ GetGlobalMinLayerPosition()

const pandora::CartesianVector & lar_content::ThreeDSlidingFitResult::GetGlobalMinLayerPosition ( ) const
inline

Get global position corresponding to the fit result in minimum fit layer.

Returns
the position

Definition at line 264 of file LArThreeDSlidingFitResult.h.

Here is the caller graph for this function:

◆ GetGlobalPosition()

void lar_content::ThreeDSlidingFitResult::GetGlobalPosition ( const float  rL,
const float  rT1,
const float  rT2,
pandora::CartesianVector position 
) const
private

Get global coordinates for a given pair of sliding linear fit coordinates.

Parameters
rLthe longitudinal coordinate
rT1the first transverse coordinate
rT2the second transverse coordinate
positionto receive the position cartesian vector

Definition at line 187 of file LArThreeDSlidingFitResult.cc.

Here is the caller graph for this function:

◆ GetLongitudinalDisplacement()

float lar_content::ThreeDSlidingFitResult::GetLongitudinalDisplacement ( const pandora::CartesianVector position) const

Get longitudinal projection onto primary axis.

Parameters
positionthe input coordinates
Returns
the longitudinal distance along the axis direction from the axis intercept

Definition at line 114 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetMaxLayer()

int lar_content::ThreeDSlidingFitResult::GetMaxLayer ( ) const

Get the maximum occupied layer in the sliding fit.

Parameters
themaximum occupied layer in the sliding fit

Definition at line 74 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetMaxLayerRms()

float lar_content::ThreeDSlidingFitResult::GetMaxLayerRms ( ) const

Get rms at maximum layer.

Returns
the rms

Definition at line 94 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetMinLayer()

int lar_content::ThreeDSlidingFitResult::GetMinLayer ( ) const

Get the minimum occupied layer in the sliding fit.

Parameters
theminimum occupied layer in the sliding fit

Definition at line 64 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetMinLayerRms()

float lar_content::ThreeDSlidingFitResult::GetMinLayerRms ( ) const

Get rms at minimum layer.

Returns
the rms

Definition at line 84 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetPrimaryAxis() [1/2]

TrackState lar_content::ThreeDSlidingFitResult::GetPrimaryAxis ( const pandora::CartesianPointVector *const  pPointVector,
const float  slidingFitLayerPitch 
)
staticprivate

Calculate the position and direction of the primary axis.

Parameters
pPointVectorthe address of the input point vector
slidingFitLayerPitchthe sliding fit z pitch, units cm
Returns
pandora::TrackState object containing the position and direction

Definition at line 216 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:

◆ GetPrimaryAxis() [2/2]

TrackState lar_content::ThreeDSlidingFitResult::GetPrimaryAxis ( const pandora::Cluster *const  pCluster,
const float  slidingFitLayerPitch 
)
staticprivate

Calculate the position and direction of the primary axis.

Parameters
pClusterthe address of the input cluster
slidingFitLayerPitchthe sliding fit z pitch, units cm
Returns
pandora::TrackState object containing the position and direction

Definition at line 207 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetSecondFitResult()

const TwoDSlidingFitResult & lar_content::ThreeDSlidingFitResult::GetSecondFitResult ( ) const
inline

Get the second sliding fit result for this cluster.

Returns
the second sliding fit result for this cluster

Definition at line 257 of file LArThreeDSlidingFitResult.h.

Here is the caller graph for this function:

◆ GetSeedDirection()

CartesianVector lar_content::ThreeDSlidingFitResult::GetSeedDirection ( const pandora::CartesianVector axisDirection)
staticprivate

Generate a seed vector to be used in calculating the orthogonal axes.

Parameters
axisDirectionthe primary axis
Returns
the seed direction vector

Definition at line 245 of file LArThreeDSlidingFitResult.cc.

Here is the call graph for this function:

Member Data Documentation

◆ m_axisDirection

const pandora::CartesianVector lar_content::ThreeDSlidingFitResult::m_axisDirection
private

The axis direction vector.

Definition at line 216 of file LArThreeDSlidingFitResult.h.

◆ m_axisIntercept

const pandora::CartesianVector lar_content::ThreeDSlidingFitResult::m_axisIntercept
private

The axis intercept position.

Definition at line 215 of file LArThreeDSlidingFitResult.h.

◆ m_firstFitResult

const TwoDSlidingFitResult lar_content::ThreeDSlidingFitResult::m_firstFitResult
private

The first sliding fit result.

Definition at line 219 of file LArThreeDSlidingFitResult.h.

◆ m_firstOrthoDirection

const pandora::CartesianVector lar_content::ThreeDSlidingFitResult::m_firstOrthoDirection
private

The orthogonal direction vector.

Definition at line 217 of file LArThreeDSlidingFitResult.h.

◆ m_maxLayer

const int lar_content::ThreeDSlidingFitResult::m_maxLayer
private

The maximum combined layer.

Definition at line 222 of file LArThreeDSlidingFitResult.h.

◆ m_maxLayerDirection

pandora::CartesianVector lar_content::ThreeDSlidingFitResult::m_maxLayerDirection
private

The global direction at the maximum combined layer.

Definition at line 227 of file LArThreeDSlidingFitResult.h.

◆ m_maxLayerPosition

pandora::CartesianVector lar_content::ThreeDSlidingFitResult::m_maxLayerPosition
private

The global position at the maximum combined layer.

Definition at line 225 of file LArThreeDSlidingFitResult.h.

◆ m_minLayer

const int lar_content::ThreeDSlidingFitResult::m_minLayer
private

The minimum combined layer.

Definition at line 221 of file LArThreeDSlidingFitResult.h.

◆ m_minLayerDirection

pandora::CartesianVector lar_content::ThreeDSlidingFitResult::m_minLayerDirection
private

The global direction at the minimum combined layer.

Definition at line 226 of file LArThreeDSlidingFitResult.h.

◆ m_minLayerPosition

pandora::CartesianVector lar_content::ThreeDSlidingFitResult::m_minLayerPosition
private

The global position at the minimum combined layer.

Definition at line 224 of file LArThreeDSlidingFitResult.h.

◆ m_primaryAxis

const pandora::TrackState lar_content::ThreeDSlidingFitResult::m_primaryAxis
private

The primary axis position and direction.

Definition at line 214 of file LArThreeDSlidingFitResult.h.

◆ m_secondFitResult

const TwoDSlidingFitResult lar_content::ThreeDSlidingFitResult::m_secondFitResult
private

The second sliding fit result.

Definition at line 220 of file LArThreeDSlidingFitResult.h.

◆ m_secondOrthoDirection

const pandora::CartesianVector lar_content::ThreeDSlidingFitResult::m_secondOrthoDirection
private

The orthogonal direction vector.

Definition at line 218 of file LArThreeDSlidingFitResult.h.


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