LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
Set of hits with a 2D structure. More...
#include "Cluster.h"
Classes | |
struct | SentryArgument_t |
Type of sentry argument. More... | |
Public Types | |
enum | ClusterEnds_t { clStart, clEnd, NEnds, clFirstEnd = 0 } |
enum | ChargeMode_t { cmFit, cmADC, NChargeModes, cmFirstMode = 0 } |
typedef int | ID_t |
Type of cluster ID. More... | |
Public Member Functions | |
Cluster () | |
Default constructor: an empty cluster. More... | |
Cluster (float start_wire, float sigma_start_wire, float start_tick, float sigma_start_tick, float start_charge, float start_angle, float start_opening, float end_wire, float sigma_end_wire, float end_tick, float sigma_end_tick, float end_charge, float end_angle, float end_opening, float integral, float integral_stddev, float summedADC, float summedADC_stddev, unsigned int n_hits, float multiple_hit_density, float width, ID_t ID, geo::View_t view, geo::PlaneID const &plane, SentryArgument_t sentry=Sentry) | |
Constructor: assigns all the fields. More... | |
Cluster (Cluster const &)=default | |
Copy constructor: automatically generated. More... | |
Cluster (Cluster &&from) | |
Move constructor: as copy, but source cluster gets an invalid ID. More... | |
Cluster & | operator= (Cluster const &)=default |
Copy assignment: automatically generated. More... | |
Cluster & | operator= (Cluster &&from) |
Move assignment: as copy, but source cluster gets an invalid ID. More... | |
~Cluster ()=default | |
Destructor: automatically generated. More... | |
float | StartCharge () const |
Returns the charge on the first wire of the cluster. More... | |
float | StartAngle () const |
Returns the starting angle of the cluster. More... | |
float | StartOpeningAngle () const |
Returns the opening angle at the start of the cluster. More... | |
float | EndCharge () const |
Returns the charge on the last wire of the cluster. More... | |
float | EndAngle () const |
Returns the ending angle of the cluster. More... | |
float | EndOpeningAngle () const |
Returns the opening angle at the end of the cluster. More... | |
float | Integral () const |
Returns the total charge of the cluster from hit shape. More... | |
float | IntegralStdDev () const |
Returns the standard deviation of the charge of the cluster hits. More... | |
float | IntegralAverage () const |
Returns the average charge of the cluster hits. More... | |
float | SummedADC () const |
Returns the total charge of the cluster from signal ADC counts. More... | |
float | SummedADCstdDev () const |
Returns the standard deviation of the signal ADC counts of the cluster hits. More... | |
float | SummedADCaverage () const |
Returns the average signal ADC counts of the cluster hits. More... | |
float | MultipleHitDensity () const |
Density of wires in the cluster with more than one hit. More... | |
float | Width () const |
A measure of the cluster width, in homogenized units. More... | |
ID_t | ID () const |
Identifier of this cluster. More... | |
geo::View_t | View () const |
Returns the view for this cluster. More... | |
geo::PlaneID | Plane () const |
Returns the plane ID this cluster lies on. More... | |
bool | hasPlane () const |
Returns whether geometry plane is valid. More... | |
bool | isValid () const |
Returns if the cluster is valid (that is, if its ID is not invalid) More... | |
Accessors | |
unsigned int | NHits () const |
Number of hits in the cluster. More... | |
float | StartWire () const |
Returns the wire coordinate of the start of the cluster. More... | |
float | StartTick () const |
Returns the tick coordinate of the start of the cluster. More... | |
float | SigmaStartWire () const |
Returns the uncertainty on wire coordinate of the start of the cluster. More... | |
float | SigmaStartTick () const |
Returns the uncertainty on tick coordinate of the start of the cluster. More... | |
float | EndWire () const |
Returns the wire coordinate of the end of the cluster. More... | |
float | EndTick () const |
Returns the tick coordinate of the end of the cluster. More... | |
float | SigmaEndWire () const |
Returns the uncertainty on wire coordinate of the end of the cluster. More... | |
float | SigmaEndTick () const |
Returns the uncertainty on tick coordinate of the end of the cluster. More... | |
float | WireCoord (ClusterEnds_t side) const |
Returns the wire coordinate of one of the end sides of the cluster. More... | |
float | WireCoord (unsigned int side) const |
Number of hits in the cluster. More... | |
float | TickCoord (ClusterEnds_t side) const |
Returns the tick coordinate of one of the end sides of the cluster. More... | |
float | TickCoord (unsigned int side) const |
Returns the tick coordinate of one of the end sides of the cluster. More... | |
float | SigmaWireCoord (ClusterEnds_t side) const |
Returns the uncertainty on wire coordinate of one of the end sides of the cluster. More... | |
float | SigmaWireCoord (unsigned int side) const |
Returns the uncertainty on wire coordinate of one of the end sides of the cluster. More... | |
float | SigmaTickCoord (ClusterEnds_t side) const |
Returns the uncertainty on tick coordinate of one of the end sides of the cluster. More... | |
float | SigmaTickCoord (unsigned int side) const |
Returns the uncertainty on tick coordinate of one of the end sides of the cluster. More... | |
float | EdgeCharge (ClusterEnds_t side) const |
Returns the charge on the first or last wire of the cluster. More... | |
float | EdgeCharge (unsigned int side) const |
Returns the charge on the first or last wire of the cluster. More... | |
float | Angle (ClusterEnds_t side) const |
Returns the angle at either end of the cluster. More... | |
float | Angle (unsigned int side) const |
Returns the angle at either end of the cluster. More... | |
float | OpeningAngle (ClusterEnds_t side) const |
Returns the opening angle at either end of the cluster. More... | |
float | OpeningAngle (unsigned int side) const |
Returns the opening angle at either end of the cluster. More... | |
float | Charge (ChargeMode_t mode) const |
Returns the total charge of the cluster. More... | |
float | Charge (unsigned int mode) const |
Returns the total charge of the cluster. More... | |
float | ChargeStdDev (ChargeMode_t mode) const |
Returns the standard deviation of charge of the cluster hits. More... | |
float | ChargeStdDev (unsigned int mode) const |
Returns the standard deviation of charge of the cluster hits. More... | |
float | ChargeAverage (ChargeMode_t mode) const |
Returns the average charge of the cluster hits. More... | |
float | ChargeAverage (unsigned int mode) const |
Returns the average charge of the cluster hits. More... | |
Static Public Attributes | |
static constexpr ID_t | InvalidID = -1 |
Value for an invalid cluster ID. More... | |
static const SentryArgument_t | Sentry |
An instance of the sentry object. More... | |
Private Attributes | |
unsigned int | fNHits |
Number of hits in the cluster. More... | |
float | fMultipleHitDensity |
Density of wires in the cluster with more than one hit. More... | |
float | fWidth |
A measure of the cluster width, in homogenized units. More... | |
ID_t | fID |
geo::View_t | fView |
View for this cluster. More... | |
geo::PlaneID | fPlaneID |
Location of the start of the cluster. More... | |
Data referring to start and end of the cluster | |
Wire coordinate of the start and end of the cluster (may lie between wires); index is intended to be of type ClusterEnds_t. | |
float | fEndWires [NEnds] |
float | fSigmaEndWires [NEnds] |
float | fEndTicks [NEnds] |
float | fSigmaEndTicks [NEnds] |
float | fEndCharges [NEnds] |
float | fAngles [NEnds] |
float | fOpeningAngles [NEnds] |
Data derived from hit charge | |
Sum of the charge of all hits in the cluster. Index is intended to be of type ChargeMode_t | |
float | fChargeSum [NChargeModes] |
float | fChargeStdDev [NChargeModes] |
float | fChargeAverage [NChargeModes] |
Friends | |
std::ostream & | operator<< (std::ostream &o, Cluster const &c) |
bool | operator< (Cluster const &a, Cluster const &b) |
Set of hits with a 2D structure.
A cluster is a set of reconstructed hits supposed to originate from the same physical entity. A cluster lies in a single plane (of a single TPC).
Clusters provide the base of reconstructed 3D objects: tracks and showers. The cluster class contains information that helps characterizing the originating particle and discriminating its signature as track-like or shower-like.
A cluster is supposed to describe the reconstruction of a transiting particle, and can therefore be thought as having a start, the location where it is first seen in time, and an end, the location where it is seen last. In practice, it is often hard to determine by the shape which tip is which, and in case of showers the end might be hard to determine. As a consequence, although the two tips are called "start" and "end", their order is not unerringly; the tip labelled "start" is still deemed to be more likely the beginning of the cluster rather than the end. In the extreme case the "end" should be considered just as an alternative cluster start.
typedef int recob::Cluster::ID_t |
Enumerator | |
---|---|
clStart |
Represents the most likely start of the cluster. |
clEnd |
Represents the end, or the alternative start, of the cluster. |
NEnds |
End count. |
clFirstEnd |
Just an alias for loops. |
Definition at line 74 of file Cluster.h.
recob::Cluster::Cluster | ( | ) |
Default constructor: an empty cluster.
Definition at line 34 of file Cluster.cxx.
Referenced by Cluster().
recob::Cluster::Cluster | ( | float | start_wire, |
float | sigma_start_wire, | ||
float | start_tick, | ||
float | sigma_start_tick, | ||
float | start_charge, | ||
float | start_angle, | ||
float | start_opening, | ||
float | end_wire, | ||
float | sigma_end_wire, | ||
float | end_tick, | ||
float | sigma_end_tick, | ||
float | end_charge, | ||
float | end_angle, | ||
float | end_opening, | ||
float | integral, | ||
float | integral_stddev, | ||
float | summedADC, | ||
float | summedADC_stddev, | ||
unsigned int | n_hits, | ||
float | multiple_hit_density, | ||
float | width, | ||
ID_t | ID, | ||
geo::View_t | view, | ||
geo::PlaneID const & | plane, | ||
SentryArgument_t | sentry = Sentry |
||
) |
Constructor: assigns all the fields.
start_wire | wire coordinate of the start of the cluster |
sigma_start_wire | uncertainty on start_wire |
start_tick | tick coordinate of the start of the cluster |
sigma_start_tick | uncertainty on start_tick |
start_charge | charge on the start wire |
start_angle | angle of the start of the cluster, in [-pi,pi] |
start_opening | opening angle at the start of the cluster |
end_wire | wire coordinate of the end of the cluster |
sigma_end_wire | uncertainty on end_wire |
end_tick | tick coordinate of the end of the cluster |
sigma_end_tick | uncertainty on end_tick |
end_charge | charge on the end wire |
end_angle | angle of the end of the cluster, in [-pi,pi] |
end_opening | opening angle at the end of the cluster |
integral | total charge from fitted shape of hits |
integral_stddev | standard deviation of hit charge from fitted shape |
summedADC | total charge from signal ADC of hits |
summedADC_stddev | standard deviation of signal ADC of hits |
n_hits | number of hits in the cluster |
multiple_hit_density | density of wires with more than one hit |
width | a measure of the cluster width |
ID | cluster ID |
view | view for this cluster |
plane | location of the start of the cluster |
sentry | a sentry instance |
Coordinates are in homogenized units.
See the documentation of the relative data members for more details on the definition and constraints of the various constructor arguments.
Definition at line 54 of file Cluster.cxx.
References ChargeAverage(), ChargeStdDev(), Cluster(), cmADC, cmFirstMode, cmFit, EndTick(), EndWire(), fAngles, fChargeAverage, fChargeStdDev, fChargeSum, fEndCharges, fEndTicks, fID, fMultipleHitDensity, fNHits, fOpeningAngles, fPlaneID, fSigmaEndTicks, fSigmaEndWires, fView, fWidth, hasPlane(), ID(), Integral(), InvalidID, NChargeModes, NHits(), operator+(), fhicl::other, Plane(), sqr(), StartTick(), StartWire(), SummedADC(), and View().
|
default |
Copy constructor: automatically generated.
|
inline |
Move constructor: as copy, but source cluster gets an invalid ID.
Definition at line 243 of file Cluster.h.
References fID, InvalidID, and operator=().
|
default |
Destructor: automatically generated.
Referenced by operator=().
|
inline |
Returns the angle at either end of the cluster.
side | clStart for start, clEnd for end of the cluster |
The angle of the group of hits at the specified position of the cluster is returned, defined and so that (or, more precisely, angle = atan2(dT, dW)
). The elements are expressed in physical distances and therefore this represents a physical angle on the plane orthogonal to the wires in the view and containing the drift direction ("x"); the angle is 0 or when lying on the wire plane, when pointing into/from the wire plane. The angle is pointing so that increasing wire number yields positive . This value can be result of extrapolation or average from a range of hits.
Definition at line 553 of file Cluster.h.
Referenced by cluster::ClusterMerger::AdoptEnd().
|
inline |
Returns the angle at either end of the cluster.
side | clStart for start, clEnd for end of the cluster |
The angle of the group of hits at the specified position of the cluster is returned, defined and so that (or, more precisely, angle = atan2(dT, dW)
). The elements are expressed in physical distances and therefore this represents a physical angle on the plane orthogonal to the wires in the view and containing the drift direction ("x"); the angle is 0 or when lying on the wire plane, when pointing into/from the wire plane. The angle is pointing so that increasing wire number yields positive . This value can be result of extrapolation or average from a range of hits.
Definition at line 554 of file Cluster.h.
|
inline |
Returns the total charge of the cluster.
mode | cmFit to use fitted hit shape, cmADC for signal ADCs |
The total charge is computed as the sum of the charge of all the hits. The charge of a single hit comes from the fitted hit shape (recob::Hit::Integral()) for cmFit, and signal ADC counts (recob::Hit::SummedADC()) for cmADC.
Charge()
with Charge(cmFit)
should do the trick. The recommended update is to use Integral()
instead. Definition at line 655 of file Cluster.h.
|
inline |
Returns the total charge of the cluster.
mode | cmFit to use fitted hit shape, cmADC for signal ADCs |
The total charge is computed as the sum of the charge of all the hits. The charge of a single hit comes from the fitted hit shape (recob::Hit::Integral()) for cmFit, and signal ADC counts (recob::Hit::SummedADC()) for cmADC.
Charge()
with Charge(cmFit)
should do the trick. The recommended update is to use Integral()
instead. Definition at line 656 of file Cluster.h.
|
inline |
Returns the average charge of the cluster hits.
The charge of a single hit comes from the fitted hit shape (recob::Hit::Integral()) for cmFit, and signal ADC counts (recob::Hit::SummedADC()) for cmADC. It should return 0 if no hit is available.
Definition at line 685 of file Cluster.h.
Referenced by Cluster().
|
inline |
Returns the average charge of the cluster hits.
The charge of a single hit comes from the fitted hit shape (recob::Hit::Integral()) for cmFit, and signal ADC counts (recob::Hit::SummedADC()) for cmADC. It should return 0 if no hit is available.
Definition at line 686 of file Cluster.h.
|
inline |
Returns the standard deviation of charge of the cluster hits.
The charge of a single hit comes from the fitted hit shape (recob::Hit::Integral()) for cmFit, and signal ADC counts (recob::Hit::SummedADC()) for cmADC. It should return 0 if less than two hits are available.
Definition at line 670 of file Cluster.h.
Referenced by Cluster().
|
inline |
Returns the standard deviation of charge of the cluster hits.
The charge of a single hit comes from the fitted hit shape (recob::Hit::Integral()) for cmFit, and signal ADC counts (recob::Hit::SummedADC()) for cmADC. It should return 0 if less than two hits are available.
Definition at line 671 of file Cluster.h.
|
inline |
Returns the charge on the first or last wire of the cluster.
side | clStart for start, clEnd for end of the cluster |
The returned value is in unit of ADC count, although it may be fractional. This value can be result of extrapolation or average from a range of hits.
Definition at line 528 of file Cluster.h.
Referenced by cluster::ClusterMerger::AdoptEnd().
|
inline |
Returns the charge on the first or last wire of the cluster.
side | clStart for start, clEnd for end of the cluster |
The returned value is in unit of ADC count, although it may be fractional. This value can be result of extrapolation or average from a range of hits.
Definition at line 529 of file Cluster.h.
|
inline |
Returns the ending angle of the cluster.
The angle of the group of hits at the end position of the cluster is returned, defined and so that (or, more precisely, angle = atan2(dT, dW)
). The elements are expressed in physical distances and therefore this represents a physical angle on the plane orthogonal to the wires in the view and containing the drift direction ("x"); the angle is 0 or when lying on the wire plane, when pointing into/from the wire plane. The angle is pointing toward the outside of the cluster (that is, is positive going toward the last wire). This value can be result of extrapolation or average from a range of hits.
Definition at line 504 of file Cluster.h.
References clEnd.
Referenced by trkf::CCTrackMaker::produce().
|
inline |
Returns the charge on the last wire of the cluster.
The returned value is in unit of ADC count, although it may be fractional. This value can be result of extrapolation or average from a range of hits.
Definition at line 483 of file Cluster.h.
References clEnd.
Referenced by trkf::CCTrackMaker::produce().
|
inline |
Returns the opening angle at the end of the cluster.
The returned value is from homogenized coordinates and in the range .
Definition at line 514 of file Cluster.h.
References clEnd.
|
inline |
Returns the tick coordinate of the end of the cluster.
The "end" of the cluster is, in the more ambiguous cluster shapes, defined as an alternative cluster start. The tick coordinate is in tick units (the homogenized coordinate), but can have a fractional part describing the relative time from the previous tick.
Definition at line 331 of file Cluster.h.
References clEnd.
Referenced by Cluster(), filter::MuonFilter::filter(), shwf::ShowerReco::GetVertexAndAnglesFromCluster(), recob::operator<(), recob::operator<<(), cosmic::CosmicClusterTagger::produce(), and trkf::CCTrackMaker::produce().
|
inline |
Returns the wire coordinate of the end of the cluster.
The "end" of the cluster is, in the more ambiguous cluster shapes, defined as an alternative cluster start. The wire coordinate is in wire units (the homogenized coordinate), but can have a fractional part describing the relative distance from the previous wire.
Definition at line 318 of file Cluster.h.
References clEnd.
Referenced by cluster::ClusterMerger::Add(), Cluster(), filter::MuonFilter::filter(), shwf::ShowerReco::GetVertexAndAnglesFromCluster(), recob::operator<<(), and trkf::CCTrackMaker::produce().
|
inline |
Returns whether geometry plane is valid.
Definition at line 722 of file Cluster.h.
References geo::CryostatID::isValid.
Referenced by cluster::ClusterMerger::Add(), Cluster(), and recob::operator<().
|
inline |
Identifier of this cluster.
The identifier should be unique per event and per algorithm. An invalid cluster can be defined by having an ID Cluster::InvalidID.
Definition at line 711 of file Cluster.h.
References fID.
Referenced by cluster::ClusterMatchAlg::AppendClusterInfo(), Cluster(), isValid(), recob::operator<(), recob::operator<<(), lar_pandora::LArPandoraEventDump::PrintCluster(), shwf::ShowerFinder::produce(), and cluster::LineMerger::produce().
|
inline |
Returns the total charge of the cluster from hit shape.
The total charge is computed as the sum of the charge of all the hits. The charge of a single hit includes the hit shape (fit) and is obtained by recob::Hit::Integral().
Definition at line 581 of file Cluster.h.
References cmFit.
Referenced by Cluster(), recob::operator<<(), and trkf::CCTrackMaker::produce().
|
inline |
Returns the average charge of the cluster hits.
The charge of a single hit includes the hit shape (fit) and is obtained by recob::Hit::Integral(). It should return 0 if no hit is available.
Definition at line 603 of file Cluster.h.
References cmFit.
|
inline |
Returns the standard deviation of the charge of the cluster hits.
The charge of a single hit includes the hit shape (fit) and is obtained by recob::Hit::Integral(). It should return 0 if less than two hits are available.
Definition at line 592 of file Cluster.h.
References cmFit.
|
inline |
Returns if the cluster is valid (that is, if its ID is not invalid)
Definition at line 725 of file Cluster.h.
References ID(), InvalidID, operator<, and operator<<.
Referenced by cluster::ClusterMerger::Add().
|
inline |
Density of wires in the cluster with more than one hit.
Returns a quantity defined as NMultiHitWires / Length, where NMultiHitWires is the number of wires which have more than just one hit amd Length is an estimation of the length of the cluster, in centimetres.
Definition at line 698 of file Cluster.h.
References fMultipleHitDensity.
|
inline |
Number of hits in the cluster.
Definition at line 265 of file Cluster.h.
References fNHits.
Referenced by Cluster(), and recob::operator<<().
|
inline |
Returns the opening angle at either end of the cluster.
The returned value is from homogenized coordinates and in the range . This value can be result of extrapolation or average from a range of hits.
Definition at line 568 of file Cluster.h.
Referenced by cluster::ClusterMerger::AdoptEnd().
|
inline |
Returns the opening angle at either end of the cluster.
The returned value is from homogenized coordinates and in the range . This value can be result of extrapolation or average from a range of hits.
Definition at line 569 of file Cluster.h.
Copy assignment: automatically generated.
Referenced by Cluster(), and operator=().
Move assignment: as copy, but source cluster gets an invalid ID.
Definition at line 249 of file Cluster.h.
References InvalidID, operator=(), and ~Cluster().
|
inline |
Returns the plane ID this cluster lies on.
Definition at line 717 of file Cluster.h.
References fPlaneID.
Referenced by cluster::ClusterMerger::Add(), nnet::PointIdEffTest::analyze(), shower::EMShowerAlg::CheckShowerPlanes(), Cluster(), filter::MuonFilter::filter(), recob::operator<(), and recob::operator<<().
|
inline |
Returns the uncertainty on tick coordinate of the end of the cluster.
The tick uncertainty is in tick units (as for EndTick()).
Definition at line 349 of file Cluster.h.
References clEnd.
|
inline |
Returns the uncertainty on wire coordinate of the end of the cluster.
The wire uncertainty is in wire units (as for EndWire()).
Definition at line 340 of file Cluster.h.
References clEnd.
|
inline |
Returns the uncertainty on tick coordinate of the start of the cluster.
The tick uncertainty is in tick units (as for StartTick()).
Definition at line 305 of file Cluster.h.
References clStart.
Referenced by shwf::ShowerReco::GetVertexAndAnglesFromCluster().
|
inline |
Returns the uncertainty on wire coordinate of the start of the cluster.
The wire uncertainty is in wire units (as for StartWire()).
Definition at line 296 of file Cluster.h.
References clStart.
Referenced by shwf::ShowerReco::GetVertexAndAnglesFromCluster().
|
inline |
Returns the uncertainty on tick coordinate of one of the end sides of the cluster.
side | clStart for start, clEnd for end of the cluster |
Usage of this method is similar to TimeCoord().
Definition at line 427 of file Cluster.h.
Referenced by cluster::ClusterMerger::AdoptEnd().
|
inline |
Returns the uncertainty on tick coordinate of one of the end sides of the cluster.
side | clStart for start, clEnd for end of the cluster |
Usage of this method is similar to TimeCoord().
Definition at line 428 of file Cluster.h.
|
inline |
Returns the uncertainty on wire coordinate of one of the end sides of the cluster.
side | clStart for start, clEnd for end of the cluster |
Usage of this method is similar to WireCoord().
Definition at line 414 of file Cluster.h.
Referenced by cluster::ClusterMerger::AdoptEnd().
|
inline |
Returns the uncertainty on wire coordinate of one of the end sides of the cluster.
side | clStart for start, clEnd for end of the cluster |
Usage of this method is similar to WireCoord().
Definition at line 415 of file Cluster.h.
|
inline |
Returns the starting angle of the cluster.
The angle of the group of hits at the start position of the cluster is returned, defined and so that (or, more precisely, angle = atan2(dT, dW)
). The elements are expressed in physical distances and therefore this represents a physical angle on the plane orthogonal to the wires in the view and containing the drift direction ("x"); the angle is 0 or when lying on the wire plane, when pointing into/from the wire plane. The angle is pointing toward the inside of the cluster (that is, is positive going from the first wire on). This value can be result of extrapolation or average from a range of hits.
Definition at line 461 of file Cluster.h.
References clStart.
Referenced by shwf::ShowerReco::GetVertexAndAnglesFromCluster(), trkf::SpacePts::produce(), and trkf::CCTrackMaker::produce().
|
inline |
Returns the charge on the first wire of the cluster.
The returned value is in unit of ADC count, although it may be fractional. This value can be result of extrapolation or average from a range of hits.
Definition at line 440 of file Cluster.h.
References clStart.
Referenced by trkf::CCTrackMaker::produce().
|
inline |
Returns the opening angle at the start of the cluster.
The returned value is from physical coordinates and in the range .
Definition at line 471 of file Cluster.h.
References clStart.
|
inline |
Returns the tick coordinate of the start of the cluster.
The tick coordinate is in tick units (the homogenized coordinate), but can have a fractional part describing the relative time from the previous tick.
Definition at line 287 of file Cluster.h.
References clStart.
Referenced by Cluster(), filter::MuonFilter::filter(), shwf::ShowerReco::GetVertexAndAnglesFromCluster(), recob::operator<(), recob::operator<<(), cosmic::CosmicClusterTagger::produce(), trkf::SpacePts::produce(), and trkf::CCTrackMaker::produce().
|
inline |
Returns the wire coordinate of the start of the cluster.
The wire coordinate is in wire units (the homogenized coordinate), but can have a fractional part describing the relative distance from the previous wire.
Definition at line 276 of file Cluster.h.
References clStart.
Referenced by cluster::ClusterMerger::Add(), Cluster(), filter::MuonFilter::filter(), shwf::ShowerReco::GetVertexAndAnglesFromCluster(), recob::operator<<(), trkf::SpacePts::produce(), and trkf::CCTrackMaker::produce().
|
inline |
Returns the total charge of the cluster from signal ADC counts.
The total charge is computed as the sum of the charge of all the hits. The charge of a single hit includes the signal ADC counts and is obtained by recob::Hit::SummedADC().
Definition at line 614 of file Cluster.h.
References cmADC.
Referenced by Cluster(), and recob::operator<<().
|
inline |
Returns the average signal ADC counts of the cluster hits.
The charge of a single hit includes the signal ADC counts and is obtained by recob::Hit::SummedADC(). It should return 0 if no hit is available.
Definition at line 636 of file Cluster.h.
References cmADC.
|
inline |
Returns the standard deviation of the signal ADC counts of the cluster hits.
The charge of a single hit includes the signal ADC counts and is obtained by recob::Hit::SummedADC(). It should return 0 if less than two hits are available.
Definition at line 625 of file Cluster.h.
References cmADC.
|
inline |
Returns the tick coordinate of one of the end sides of the cluster.
side | clStart for start, clEnd for end of the cluster |
The tick coordinate is in tick units (the homogenized coordinate), but can have a fractional part describing the relative time from the previous tick.
For algorithms not distinguishing start and end, all the ends can be tested by the loop:
for (unsigned int side = recob::Cluster::clFirstEnd; side < recob::Cluster::NEnds; ++side) { float wire = cluster.WireCoord(side); float tick = cluster.TickCoord(side); // ... } // for
Definition at line 401 of file Cluster.h.
Referenced by cluster::ClusterMerger::AdoptEnd().
|
inline |
Returns the tick coordinate of one of the end sides of the cluster.
side | clStart for start, clEnd for end of the cluster |
The tick coordinate is in tick units (the homogenized coordinate), but can have a fractional part describing the relative time from the previous tick.
For algorithms not distinguishing start and end, all the ends can be tested by the loop:
for (unsigned int side = recob::Cluster::clFirstEnd; side < recob::Cluster::NEnds; ++side) { float wire = cluster.WireCoord(side); float tick = cluster.TickCoord(side); // ... } // for
Definition at line 402 of file Cluster.h.
|
inline |
Returns the view for this cluster.
Definition at line 714 of file Cluster.h.
References fView.
Referenced by cluster::ClusterMerger::Add(), cluster::ClusterPCA::analyze(), cluster::ClusterMatchAlg::AppendClusterInfo(), Cluster(), trkf::SeedFinderModule::GetSortedHitsFromClusters(), recob::operator<(), recob::operator<<(), lar_pandora::LArPandoraEventDump::PrintCluster(), trkf::SpacePointFinder::produce(), trkf::SpacePointCheater::produce(), cluster::LineMerger::produce(), trkf::SpacePts::produce(), and trkf::Track3Dreco::produce().
|
inline |
A measure of the cluster width, in homogenized units.
Definition at line 701 of file Cluster.h.
References fWidth.
Referenced by cluster::ClusterMerger::Add(), and recob::operator<<().
|
inline |
Returns the wire coordinate of one of the end sides of the cluster.
side | clStart for start, clEnd for end of the cluster |
The wire coordinate is in wire units (the homogenized coordinate), but can have a fractional part describing the relative distance from the previous wire.
For algorithms not distinguishing start and end, all the ends can be tested by the loop:
for (unsigned int side = recob::Cluster::clFirstEnd; side < recob::Cluster::NEnds; ++side) { float wire = cluster.WireCoord(side); float tick = cluster.TickCoord(side); // ... } // for
Definition at line 374 of file Cluster.h.
Referenced by cluster::ClusterMerger::AdoptEnd().
|
inline |
|
friend |
Definition at line 168 of file Cluster.cxx.
Referenced by isValid().
|
private |
Angle of the start and end of the cluster, defined in [-pi,pi] and so that tan(angle) = dT/dW (or, more precisely, angle = atan2(dT, dW)
). The elements are expressed in physical distances and therefore this represents a physical angle on the plane orthogonal to the wires in the view and containing the drift direction ("x"); the angle is 0 or when lying on the wire plane, when pointing into/from the wire plane. Index is intended to be of type ClusterEnds_t.
Definition at line 125 of file Cluster.h.
Referenced by Cluster().
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
Identifier of this cluster. It should be unique per event and per algorithm. An invalid cluster can be defined by having an ID Cluster::InvalidID.
|
private |
Density of wires in the cluster with more than one hit.
Definition at line 151 of file Cluster.h.
Referenced by Cluster(), and MultipleHitDensity().
|
private |
|
private |
Opening angle of the cluster shape at the start and end of the cluster. The coordinates are expressed in physical distances and therefore this represents a physical opening angle on the plane orthogonal to the wires in the view and containing the drift direction ("x"). Index is intended to be of type ClusterEnds_t.
Definition at line 132 of file Cluster.h.
Referenced by Cluster().
|
private |
|
private |
|
private |
|
private |
|
private |
|
static |
Value for an invalid cluster ID.
Definition at line 171 of file Cluster.h.
Referenced by Cluster(), isValid(), and operator=().
|
static |
An instance of the sentry object.
Definition at line 174 of file Cluster.h.
Referenced by cluster::ClusterMergeHelper::AppendResult(), lar_pandora::LArPandoraOutput::BuildCluster(), lar_cluster3d::Cluster3D::ConvertToArtOutput(), cluster::HoughBaseAlg::FastTransform(), cluster::LineCluster::produce(), cluster::ClusterCheater::produce(), cluster::ClusterCrawler::produce(), cluster::DBcluster::produce(), cluster::LineMerger::produce(), cluster::BlurredClustering::produce(), cluster::TrajCluster::produce(), cluster::SmallClusterFinder::produce(), and evd::GraphCluster::produce().