LArSoft
v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
|
TwoDSlidingShowerFitResult class. More...
#include "LArTwoDSlidingShowerFitResult.h"
Public Member Functions | |
template<typename T > | |
TwoDSlidingShowerFitResult (const T *const pT, const unsigned int slidingFitWindow, const float slidingFitLayerPitch, const float showerEdgeMultiplier=1.f) | |
Constructor. More... | |
const TwoDSlidingFitResult & | GetShowerFitResult () const |
Get the sliding fit result for the full shower cluster. More... | |
const TwoDSlidingFitResult & | GetNegativeEdgeFitResult () const |
Get the sliding fit result for the negative shower edge. More... | |
const TwoDSlidingFitResult & | GetPositiveEdgeFitResult () const |
Get the sliding fit result for the positive shower edge. More... | |
void | GetShowerEdges (const float x, const bool widenIfAmbiguity, pandora::FloatVector &edgePositions) const |
Get the most appropriate shower edges at a given x coordinate. More... | |
Private Types | |
typedef std::pair< float, float > | FitCoordinate |
typedef std::vector< FitCoordinate > | FitCoordinateList |
typedef std::map< int, FitCoordinateList > | FitCoordinateMap |
Static Private Member Functions | |
static TwoDSlidingFitResult | LArTwoDShowerEdgeFit (const pandora::Cluster *const pCluster, const TwoDSlidingFitResult &fullShowerFit, const ShowerEdge showerEdge, const float showerEdgeMultiplier) |
Perform two dimensional sliding fit to shower edge, using specified primary axis. More... | |
static TwoDSlidingFitResult | LArTwoDShowerEdgeFit (const pandora::CartesianPointVector *const pPointVector, const TwoDSlidingFitResult &fullShowerFit, const ShowerEdge showerEdge, const float showerEdgeMultiplier) |
Perform two dimensional sliding fit to shower edge, using specified primary axis. More... | |
Private Attributes | |
TwoDSlidingFitResult | m_showerFitResult |
The sliding fit result for the full shower cluster. More... | |
TwoDSlidingFitResult | m_negativeEdgeFitResult |
The sliding fit result for the negative shower edge. More... | |
TwoDSlidingFitResult | m_positiveEdgeFitResult |
The sliding fit result for the positive shower edge. More... | |
TwoDSlidingShowerFitResult class.
Definition at line 34 of file LArTwoDSlidingShowerFitResult.h.
|
private |
Definition at line 106 of file LArTwoDSlidingShowerFitResult.h.
|
private |
Definition at line 107 of file LArTwoDSlidingShowerFitResult.h.
|
private |
Definition at line 108 of file LArTwoDSlidingShowerFitResult.h.
template lar_content::TwoDSlidingShowerFitResult::TwoDSlidingShowerFitResult | ( | const T *const | pT, |
const unsigned int | slidingFitWindow, | ||
const float | slidingFitLayerPitch, | ||
const float | showerEdgeMultiplier = 1.f |
||
) |
Constructor.
pT | describing the positions to be fitted |
slidingFitWindow | the sliding fit window |
slidingFitLayerPitch | the sliding fit z pitch, units cm |
showerEdgeMultiplier | artificially tune width of shower envelope so as to make it more/less inclusive |
Definition at line 25 of file LArTwoDSlidingShowerFitResult.cc.
Referenced by GetShowerEdges().
|
inline |
Get the sliding fit result for the negative shower edge.
Definition at line 174 of file LArTwoDSlidingShowerFitResult.h.
References m_negativeEdgeFitResult.
Referenced by lar_content::ConeClusterMopUpAlgorithm::ClusterMopUp(), GetShowerEdges(), and lar_content::CutClusterCharacterisationAlgorithm::GetShowerFitWidth().
|
inline |
Get the sliding fit result for the positive shower edge.
Definition at line 181 of file LArTwoDSlidingShowerFitResult.h.
References m_positiveEdgeFitResult.
Referenced by lar_content::ConeClusterMopUpAlgorithm::ClusterMopUp(), GetShowerEdges(), and lar_content::CutClusterCharacterisationAlgorithm::GetShowerFitWidth().
void lar_content::TwoDSlidingShowerFitResult::GetShowerEdges | ( | const float | x, |
const bool | widenIfAmbiguity, | ||
pandora::FloatVector & | edgePositions | ||
) | const |
Get the most appropriate shower edges at a given x coordinate.
x | the x coordinate |
widenIfAmbiguity | whether to widen the shower edges in cases of ambiguities (i.e. be generous) |
edgePositions | to receive the list of intersections of the shower fit at the given x coordinate |
Definition at line 35 of file LArTwoDSlidingShowerFitResult.cc.
References f, lar_content::TwoDSlidingFitResult::GetAxisDirection(), lar_content::TwoDSlidingFitResult::GetAxisIntercept(), lar_content::LArClusterHelper::GetCoordinateVector(), lar_content::TwoDSlidingFitResult::GetGlobalFitPosition(), lar_content::TwoDSlidingFitResult::GetLayer(), lar_content::TwoDSlidingFitResult::GetLayerFitHalfWindow(), lar_content::TwoDSlidingFitResult::GetLayerPitch(), lar_content::TwoDSlidingFitResult::GetLocalPosition(), lar_content::TwoDSlidingFitResult::GetMinAndMaxX(), lar_content::TwoDSlidingFitResult::GetMinAndMaxZ(), GetNegativeEdgeFitResult(), lar_content::TwoDSlidingFitResult::GetOrthoDirection(), GetPositiveEdgeFitResult(), LArTwoDShowerEdgeFit(), max, min, lar_content::NEGATIVE_SHOWER_EDGE, lar_content::POSITIVE_SHOWER_EDGE, and TwoDSlidingShowerFitResult().
Referenced by lar_content::BoundedClusterMopUpAlgorithm::GetShowerPositionMap(), and lar_content::ThreeDShowersAlgorithm::GetShowerPositionMaps().
|
inline |
Get the sliding fit result for the full shower cluster.
Definition at line 167 of file LArTwoDSlidingShowerFitResult.h.
References m_showerFitResult.
Referenced by lar_content::SplitShowersTool::CheckClusterVertexRelations(), lar_content::ConeClusterMopUpAlgorithm::ClusterMopUp(), lar_content::BoundedClusterMopUpAlgorithm::ClusterMopUp(), lar_content::CutClusterCharacterisationAlgorithm::GetShowerFitWidth(), lar_content::SplitShowersTool::GetSplitXDetails(), lar_content::ThreeDShowersAlgorithm::RemoveFromSlidingFitCache(), and lar_content::SplitShowersTool::SpecifyClusterMerges().
|
staticprivate |
Perform two dimensional sliding fit to shower edge, using specified primary axis.
pCluster | the address of the input cluster |
fullShowerFit | the result of fitting the full shower |
showerEdge | the shower edge |
showerEdgeMultiplier | artificially tune width of shower envelope so as to make it more/less inclusive |
Referenced by GetShowerEdges().
|
staticprivate |
Perform two dimensional sliding fit to shower edge, using specified primary axis.
pPointVector | the address of the input point vector |
fullShowerFit | the result of fitting the full shower |
showerEdge | the shower edge |
showerEdgeMultiplier | artificially tune width of shower envelope so as to make it more/less inclusive |
|
private |
The sliding fit result for the negative shower edge.
Definition at line 111 of file LArTwoDSlidingShowerFitResult.h.
Referenced by GetNegativeEdgeFitResult().
|
private |
The sliding fit result for the positive shower edge.
Definition at line 112 of file LArTwoDSlidingShowerFitResult.h.
Referenced by GetPositiveEdgeFitResult().
|
private |
The sliding fit result for the full shower cluster.
Definition at line 110 of file LArTwoDSlidingShowerFitResult.h.
Referenced by GetShowerFitResult().