LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
#include "EMShowerAlg.h"
Public Member Functions | |
EMShowerAlg (fhicl::ParameterSet const &pset, int debug=0) | |
void | AssociateClustersAndTracks (std::vector< art::Ptr< recob::Cluster >> const &clusters, art::FindManyP< recob::Hit > const &fmh, art::FindManyP< recob::Track > const &fmt, std::map< int, std::vector< int >> &clusterToTracks, std::map< int, std::vector< int >> &trackToClusters) const |
Map associated tracks and clusters together given their associated hits. More... | |
void | AssociateClustersAndTracks (std::vector< art::Ptr< recob::Cluster >> const &clusters, art::FindManyP< recob::Hit > const &fmh, art::FindManyP< recob::Track > const &fmt, std::vector< int > const &clustersToIgnore, std::map< int, std::vector< int >> &clusterToTracks, std::map< int, std::vector< int >> &trackToClusters) const |
Map associated tracks and clusters together given their associated hits, whilst ignoring certain clusters. More... | |
std::vector< int > | CheckShowerPlanes (std::vector< std::vector< int >> const &initialShowers, std::vector< art::Ptr< recob::Cluster >> const &clusters, art::FindManyP< recob::Hit > const &fmh) const |
Takes the initial showers found and tries to resolve issues where one bad view ruins the event. More... | |
std::unique_ptr< recob::Track > | ConstructTrack (detinfo::DetectorPropertiesData const &detProp, std::vector< art::Ptr< recob::Hit >> const &track1, std::vector< art::Ptr< recob::Hit >> const &track2, std::map< int, TVector2 > const &showerCentreMap) const |
std::unique_ptr< recob::Track > | ConstructTrack (detinfo::DetectorPropertiesData const &detProp, std::vector< art::Ptr< recob::Hit >> const &track1, std::vector< art::Ptr< recob::Hit >> const &track2) const |
void | FindInitialTrack (detinfo::DetectorPropertiesData const &detProp, std::map< int, std::vector< art::Ptr< recob::Hit >>> const &hits, std::unique_ptr< recob::Track > &initialTrack, std::map< int, std::vector< art::Ptr< recob::Hit >>> &initialTrackHits) const |
std::vector< std::vector< int > > | FindShowers (std::map< int, std::vector< int >> const &trackToClusters) const |
Makes showers given a map between tracks and all clusters associated with them. More... | |
recob::Shower | MakeShower (detinfo::DetectorClocksData const &clockData, detinfo::DetectorPropertiesData const &detProp, art::PtrVector< recob::Hit > const &hits, std::unique_ptr< recob::Track > const &initialTrack, std::map< int, std::vector< art::Ptr< recob::Hit >>> const &initialTrackHits) const |
Makes a recob::Shower object given the hits in the shower and the initial track-like part. More... | |
recob::Shower | MakeShower (detinfo::DetectorClocksData const &clockData, detinfo::DetectorPropertiesData const &detProp, art::PtrVector< recob::Hit > const &hits, art::Ptr< recob::Vertex > const &vertex, int &iok) const |
<Tingjun to="" document>=""> More... | |
std::vector< recob::SpacePoint > | MakeSpacePoints (detinfo::DetectorPropertiesData const &detProp, std::map< int, std::vector< art::Ptr< recob::Hit >>> const &hits, std::vector< std::vector< art::Ptr< recob::Hit >>> &hitAssns) const |
Makes space points from the shower hits in each plane. More... | |
std::map< int, std::vector< art::Ptr< recob::Hit > > > | OrderShowerHits (detinfo::DetectorPropertiesData const &detProp, art::PtrVector< recob::Hit > const &shower, int plane) const |
Takes the hits associated with a shower and orders them so they follow the direction of the shower. More... | |
void | FindInitialTrackHits (std::vector< art::Ptr< recob::Hit >> const &showerHits, art::Ptr< recob::Vertex > const &vertex, std::vector< art::Ptr< recob::Hit >> &trackHits) const |
<Tingjun to="" document>=""> More... | |
Int_t | WeightedFit (const Int_t n, const Double_t *x, const Double_t *y, const Double_t *w, Double_t *parm) const |
<Tingjun to="" document>=""> More... | |
bool | isCleanShower (std::vector< art::Ptr< recob::Hit >> const &hits) const |
<Tingjun to="" document>=""> More... | |
Public Attributes | |
int | fDebug |
Private Member Functions | |
void | CheckIsolatedHits_ (std::map< int, std::vector< art::Ptr< recob::Hit >>> &showerHitsMap) const |
bool | CheckShowerHits_ (detinfo::DetectorPropertiesData const &detProp, std::map< int, std::vector< art::Ptr< recob::Hit >>> const &showerHitsMap) const |
geo::Point_t | Construct3DPoint_ (detinfo::DetectorPropertiesData const &detProp, art::Ptr< recob::Hit > const &hit1, art::Ptr< recob::Hit > const &hit2) const |
Constructs a 3D point (in [cm]) to represent the hits given in two views. More... | |
double | FinddEdx_ (detinfo::DetectorClocksData const &clockData, detinfo::DetectorPropertiesData const &detProp, std::vector< art::Ptr< recob::Hit >> const &trackHits, std::unique_ptr< recob::Track > const &track) const |
Finds dE/dx for the track given a set of hits. More... | |
std::vector< art::Ptr< recob::Hit > > | FindOrderOfHits_ (detinfo::DetectorPropertiesData const &detProp, std::vector< art::Ptr< recob::Hit >> const &hits, bool perpendicular=false) const |
std::map< int, std::vector< art::Ptr< recob::Hit > > > | FindShowerStart_ (std::map< int, std::vector< art::Ptr< recob::Hit >>> const &orderedShowerMap) const |
std::map< int, std::map< int, bool > > | GetPlanePermutations_ (const detinfo::DetectorPropertiesData &detProp, const std::map< int, std::vector< art::Ptr< recob::Hit >>> &showerHitsMap) const |
double | GlobalWire_ (const geo::WireID &wireID) const |
Find the global wire position. More... | |
TVector2 | HitCoordinates_ (recob::Hit const &hit) const |
Return the coordinates of this hit in global wire/tick space. More... | |
TVector2 | HitPosition_ (detinfo::DetectorPropertiesData const &detProp, recob::Hit const &hit) const |
Return the coordinates of this hit in units of cm. More... | |
TVector2 | HitPosition_ (detinfo::DetectorPropertiesData const &detProp, TVector2 const &pos, geo::PlaneID planeID) const |
Return the coordinates of this hit in units of cm. More... | |
std::unique_ptr< recob::Track > | MakeInitialTrack_ (detinfo::DetectorPropertiesData const &detProp, std::map< int, std::vector< art::Ptr< recob::Hit >>> const &initialHitsMap, std::map< int, std::vector< art::Ptr< recob::Hit >>> const &showerHitsMap) const |
void | OrderShowerHits_ (detinfo::DetectorPropertiesData const &detProp, std::vector< art::Ptr< recob::Hit >> const &shower, std::vector< art::Ptr< recob::Hit >> &orderedShower, art::Ptr< recob::Vertex > const &vertex) const |
TVector2 | Project3DPointOntoPlane_ (detinfo::DetectorPropertiesData const &detProp, geo::Point_t const &point, int plane, int cryostat=0) const |
std::map< double, int > | RelativeWireWidth_ (const std::map< int, std::vector< art::Ptr< recob::Hit >>> &showerHitsMap) const |
TVector2 | ShowerCenter_ (detinfo::DetectorPropertiesData const &detProp, std::vector< art::Ptr< recob::Hit >> const &showerHits) const |
Returns the charge-weighted shower center. More... | |
TVector2 | ShowerDirection_ (detinfo::DetectorPropertiesData const &detProp, const std::vector< art::Ptr< recob::Hit >> &showerHits) const |
double | ShowerHitRMS_ (detinfo::DetectorPropertiesData const &detProp, std::vector< art::Ptr< recob::Hit >> const &showerHits) const |
double | ShowerHitRMSGradient_ (detinfo::DetectorPropertiesData const &detProp, const std::vector< art::Ptr< recob::Hit >> &showerHits) const |
Returns the gradient of the RMS vs shower segment graph. More... | |
int | WorstPlane_ (const std::map< int, std::vector< art::Ptr< recob::Hit >>> &showerHitsMap) const |
Returns the plane which is determined to be the least likely to be correct. More... | |
Private Attributes | |
double const | fMinTrackLength |
double const | fdEdxTrackLength |
double const | fSpacePointSize |
unsigned int const | fNfitpass |
std::vector< unsigned int > const | fNfithits |
std::vector< double > const | fToler |
art::ServiceHandle< geo::Geometry const > | fGeom |
shower::ShowerEnergyAlg const | fShowerEnergyAlg |
calo::CalorimetryAlg const | fCalorimetryAlg |
pma::ProjectionMatchingAlg const | fProjectionMatchingAlg |
std::string const | fDetector |
bool const | fMakeGradientPlot |
bool const | fMakeRMSGradientPlot |
int const | fNumShowerSegments |
Definition at line 60 of file EMShowerAlg.h.
shower::EMShowerAlg::EMShowerAlg | ( | fhicl::ParameterSet const & | pset, |
int | debug = 0 |
||
) |
Definition at line 37 of file EMShowerAlg.cxx.
References art::errors::Configuration, fCalorimetryAlg, fdEdxTrackLength, fDetector, fMakeGradientPlot, fMakeRMSGradientPlot, fMinTrackLength, fNfithits, fNfitpass, fNumShowerSegments, fProjectionMatchingAlg, fShowerEnergyAlg, fSpacePointSize, and fToler.
void shower::EMShowerAlg::AssociateClustersAndTracks | ( | std::vector< art::Ptr< recob::Cluster >> const & | clusters, |
art::FindManyP< recob::Hit > const & | fmh, | ||
art::FindManyP< recob::Track > const & | fmt, | ||
std::map< int, std::vector< int >> & | clusterToTracks, | ||
std::map< int, std::vector< int >> & | trackToClusters | ||
) | const |
Map associated tracks and clusters together given their associated hits.
Definition at line 59 of file EMShowerAlg.cxx.
Referenced by shower::EMShower::produce().
void shower::EMShowerAlg::AssociateClustersAndTracks | ( | std::vector< art::Ptr< recob::Cluster >> const & | clusters, |
art::FindManyP< recob::Hit > const & | fmh, | ||
art::FindManyP< recob::Track > const & | fmt, | ||
std::vector< int > const & | clustersToIgnore, | ||
std::map< int, std::vector< int >> & | clusterToTracks, | ||
std::map< int, std::vector< int >> & | trackToClusters | ||
) | const |
Map associated tracks and clusters together given their associated hits, whilst ignoring certain clusters.
Definition at line 71 of file EMShowerAlg.cxx.
References fDebug, fMinTrackLength, and track.
|
private |
Checks the hits across the views in a given shower to determine if there is one in the incorrect TPC
Definition at line 116 of file EMShowerAlg.cxx.
References fGeom, hits(), geo::GeometryCore::MaxPlanes(), util::values(), and lar::dump::vector().
Referenced by OrderShowerHits().
|
private |
Takes the shower hits in all views and ensure the ordering is consistent Returns bool, indicating whether or not everything makes sense!
Definition at line 197 of file EMShowerAlg.cxx.
References util::abs(), Construct3DPoint_(), fDebug, HitPosition_(), hits(), Project3DPointOntoPlane_(), X, and Y.
Referenced by MakeInitialTrack_(), and OrderShowerHits().
std::vector< int > shower::EMShowerAlg::CheckShowerPlanes | ( | std::vector< std::vector< int >> const & | initialShowers, |
std::vector< art::Ptr< recob::Cluster >> const & | clusters, | ||
art::FindManyP< recob::Hit > const & | fmh | ||
) | const |
Takes the initial showers found and tries to resolve issues where one bad view ruins the event.
Definition at line 289 of file EMShowerAlg.cxx.
References fDebug, hits(), art::Ptr< T >::key(), geo::PlaneID::Plane, recob::Cluster::Plane(), sum, lar::to_element, util::to_string(), and lar::dump::vector().
Referenced by shower::EMShower::produce().
|
private |
Constructs a 3D point (in [cm]) to represent the hits given in two views.
Definition at line 389 of file EMShowerAlg.cxx.
References detinfo::DetectorPropertiesData::ConvertTicksToX(), fGeom, recob::Hit::PeakTime(), geo::WireID::planeID(), recob::Hit::WireID(), geo::GeometryCore::WireIDsIntersect(), x, geo::WireIDIntersection::y, and geo::WireIDIntersection::z.
Referenced by CheckShowerHits_(), ConstructTrack(), and MakeSpacePoints().
std::unique_ptr< recob::Track > shower::EMShowerAlg::ConstructTrack | ( | detinfo::DetectorPropertiesData const & | detProp, |
std::vector< art::Ptr< recob::Hit >> const & | track1, | ||
std::vector< art::Ptr< recob::Hit >> const & | track2, | ||
std::map< int, TVector2 > const & | showerCentreMap | ||
) | const |
Constructs a recob::Track from sets of hits in two views. Intended to be used to construct the initial first part of a shower. All PMA methods taken from the pma tracking algorithm (R. Sulej and D. Stefan). This implementation also orients the track in the correct direction if a map of shower centres (units [cm]) in each view is provided.
Definition at line 406 of file EMShowerAlg.cxx.
References pma::ProjectionMatchingAlg::buildSegment(), Construct3DPoint_(), recob::tracking::convertCollToPoint(), recob::tracking::convertCollToVector(), util::end(), fDebug, fProjectionMatchingAlg, HitCoordinates_(), if(), Project3DPointOntoPlane_(), util::size(), lar::to_element, geo::vect::toPoint(), and track.
Referenced by ConstructTrack(), and MakeInitialTrack_().
std::unique_ptr< recob::Track > shower::EMShowerAlg::ConstructTrack | ( | detinfo::DetectorPropertiesData const & | detProp, |
std::vector< art::Ptr< recob::Hit >> const & | track1, | ||
std::vector< art::Ptr< recob::Hit >> const & | track2 | ||
) | const |
Constructs a recob::Track from sets of hits in two views. Intended to be used to construct the initial first part of a shower. All methods taken from the pma tracking algorithm (R. Sulej and D. Stefan).
Definition at line 557 of file EMShowerAlg.cxx.
References ConstructTrack().
|
private |
Finds dE/dx for the track given a set of hits.
Definition at line 566 of file EMShowerAlg.cxx.
References calo::CalorimetryAlg::dEdx_AREA(), util::empty(), fCalorimetryAlg, fdEdxTrackLength, geo::PlaneID::Plane, lar::to_element, lar::util::TrackPitchInView(), recob::Hit::View(), and recob::Hit::WireID().
Referenced by MakeShower().
void shower::EMShowerAlg::FindInitialTrack | ( | detinfo::DetectorPropertiesData const & | detProp, |
std::map< int, std::vector< art::Ptr< recob::Hit >>> const & | hits, | ||
std::unique_ptr< recob::Track > & | initialTrack, | ||
std::map< int, std::vector< art::Ptr< recob::Hit >>> & | initialTrackHits | ||
) | const |
Finds the initial track-like part of the shower and the hits in all views associated with it
Finding the initial track requires three stages: – find the initial track-like hits in each view – use these to construct a track
Definition at line 607 of file EMShowerAlg.cxx.
References fDebug, FindShowerStart_(), HitCoordinates_(), MakeInitialTrack_(), lar::to_element, recob::Track::Vertex(), and recob::Track::VertexDirection().
Referenced by shower::EMShower::produce().
void shower::EMShowerAlg::FindInitialTrackHits | ( | std::vector< art::Ptr< recob::Hit >> const & | showerHits, |
art::Ptr< recob::Vertex > const & | vertex, | ||
std::vector< art::Ptr< recob::Hit >> & | trackHits | ||
) | const |
<Tingjun to="" document>="">
Definition at line 1604 of file EMShowerAlg.cxx.
References util::abs(), geo::vect::coord(), fGeom, geo::GeometryCore::FindTPCAtPosition(), fNfithits, fNfitpass, fToler, HitCoordinates_(), geo::CryostatID::isValid, recob::Vertex::position(), geo::TPCID::TPC, and WeightedFit().
Referenced by MakeShower().
|
private |
Orders hits along the best fit line through the charge-weighted centre of the hits. Orders along the line perpendicular to the least squares line if perpendicular is set to true.
Definition at line 652 of file EMShowerAlg.cxx.
References color(), fMakeGradientPlot, HitPosition_(), hits(), ShowerCenter_(), ShowerDirection_(), lar::to_element, X, and Y.
Referenced by OrderShowerHits(), and OrderShowerHits_().
std::vector< std::vector< int > > shower::EMShowerAlg::FindShowers | ( | std::map< int, std::vector< int >> const & | trackToClusters | ) | const |
Makes showers given a map between tracks and all clusters associated with them.
Definition at line 710 of file EMShowerAlg.cxx.
References util::values().
Referenced by shower::EMShower::produce().
|
private |
Takes a map of the shower hits on each plane (ordered from what has been decided to be the start) Returns a map of the initial track-like part of the shower on each plane
Definition at line 750 of file EMShowerAlg.cxx.
References util::abs(), fDebug, HitCoordinates_(), util::size(), lar::to_element, lar::dump::vector(), X, and Y.
Referenced by FindInitialTrack().
|
private |
Takes all the shower hits, ready ordered, and returns information to help with the orientation of the shower in each view Returns map of most likely permutations of reorientation Starts at 0,0,0 (i.e. don't need to reorient any plane) and ends with 1,1,1 (i.e. every plane needs reorienting) Every permutation inbetween represent increasing less likely changes to satisfy the correct orientation criteria
Definition at line 865 of file EMShowerAlg.cxx.
References util::abs(), fDebug, RelativeWireWidth_(), ShowerHitRMS_(), ShowerHitRMSGradient_(), value, and util::values().
Referenced by OrderShowerHits().
|
private |
Find the global wire position.
Definition at line 1683 of file EMShowerAlg.cxx.
References geo::CryostatID::Cryostat, fDetector, fGeom, geo::WireGeo::GetCenter(), geo::kInduction, geo::GeometryCore::Nwires(), geo::PlaneID::Plane, geo::GeometryCore::SignalType(), geo::TPCID::TPC, geo::WireID::Wire, geo::GeometryCore::WireCoordinate(), and geo::GeometryCore::WireIDToWireGeo().
Referenced by HitCoordinates_(), and Project3DPointOntoPlane_().
|
private |
Return the coordinates of this hit in global wire/tick space.
Definition at line 1664 of file EMShowerAlg.cxx.
References GlobalWire_(), recob::Hit::PeakTime(), and recob::Hit::WireID().
Referenced by ConstructTrack(), FindInitialTrack(), FindInitialTrackHits(), FindShowerStart_(), HitPosition_(), OrderShowerHits(), RelativeWireWidth_(), and WorstPlane_().
|
private |
Return the coordinates of this hit in units of cm.
Definition at line 1669 of file EMShowerAlg.cxx.
References HitCoordinates_(), geo::WireID::planeID(), and recob::Hit::WireID().
Referenced by CheckShowerHits_(), FindOrderOfHits_(), MakeSpacePoints(), OrderShowerHits(), Project3DPointOntoPlane_(), ShowerCenter_(), ShowerDirection_(), ShowerHitRMS_(), and ShowerHitRMSGradient_().
|
private |
Return the coordinates of this hit in units of cm.
Definition at line 1676 of file EMShowerAlg.cxx.
References detinfo::DetectorPropertiesData::ConvertTicksToX(), fGeom, and geo::GeometryCore::WirePitch().
bool shower::EMShowerAlg::isCleanShower | ( | std::vector< art::Ptr< recob::Hit >> const & | hits | ) | const |
<Tingjun to="" document>="">
Definition at line 2027 of file EMShowerAlg.cxx.
References hits(), and lar::to_element.
|
private |
Takes initial track hits from multiple views and forms a track object which best represents the start of the shower
Definition at line 951 of file EMShowerAlg.cxx.
References CheckShowerHits_(), ConstructTrack(), fDebug, lar::dump::vector(), and WorstPlane_().
Referenced by FindInitialTrack().
recob::Shower shower::EMShowerAlg::MakeShower | ( | detinfo::DetectorClocksData const & | clockData, |
detinfo::DetectorPropertiesData const & | detProp, | ||
art::PtrVector< recob::Hit > const & | hits, | ||
std::unique_ptr< recob::Track > const & | initialTrack, | ||
std::map< int, std::vector< art::Ptr< recob::Hit >>> const & | initialTrackHits | ||
) | const |
Makes a recob::Shower object given the hits in the shower and the initial track-like part.
Definition at line 1000 of file EMShowerAlg.cxx.
References tca::dEdx(), fDebug, fGeom, FinddEdx_(), fShowerEnergyAlg, geo::GeometryCore::MaxPlanes(), shower::ShowerEnergyAlg::ShowerEnergy(), recob::Track::Vertex(), and recob::Track::VertexDirection().
Referenced by shower::EMShower::produce().
recob::Shower shower::EMShowerAlg::MakeShower | ( | detinfo::DetectorClocksData const & | clockData, |
detinfo::DetectorPropertiesData const & | detProp, | ||
art::PtrVector< recob::Hit > const & | hits, | ||
art::Ptr< recob::Vertex > const & | vertex, | ||
int & | iok | ||
) | const |
<Tingjun to="" document>="">
Definition at line 1066 of file EMShowerAlg.cxx.
References util::abs(), pma::ProjectionMatchingAlg::buildSegment(), tca::dEdx(), calo::CalorimetryAlg::dEdx_AREA(), fCalorimetryAlg, fDebug, fdEdxTrackLength, fGeom, FindInitialTrackHits(), fProjectionMatchingAlg, fShowerEnergyAlg, geo::GeometryCore::MaxPlanes(), OrderShowerHits_(), geo::GeometryCore::Plane(), shower::ShowerEnergyAlg::ShowerEnergy(), pma::Track3D::size(), util::size(), lar::dump::vector(), geo::PlaneGeo::View(), geo::GeometryCore::WireAngleToVertical(), geo::GeometryCore::WirePitch(), and recob::Vertex::XYZ().
std::vector< recob::SpacePoint > shower::EMShowerAlg::MakeSpacePoints | ( | detinfo::DetectorPropertiesData const & | detProp, |
std::map< int, std::vector< art::Ptr< recob::Hit >>> const & | hits, | ||
std::vector< std::vector< art::Ptr< recob::Hit >>> & | hitAssns | ||
) | const |
Makes space points from the shower hits in each plane.
Definition at line 1218 of file EMShowerAlg.cxx.
References Construct3DPoint_(), fDebug, fGeom, fSpacePointSize, HitPosition_(), geo::GeometryCore::MaxPlanes(), Project3DPointOntoPlane_(), and lar::dump::vector().
Referenced by shower::EMShower::produce().
std::map< int, std::vector< art::Ptr< recob::Hit > > > shower::EMShowerAlg::OrderShowerHits | ( | detinfo::DetectorPropertiesData const & | detProp, |
art::PtrVector< recob::Hit > const & | shower, | ||
int | plane | ||
) | const |
Takes the hits associated with a shower and orders them so they follow the direction of the shower.
Ordering the shower hits requires three stages: – putting all the hits in a given plane in some kind of order – use the properties of the hits in all three planes to check this order – orient the hits correctly using properties of the shower
Definition at line 1359 of file EMShowerAlg.cxx.
References CheckIsolatedHits_(), CheckShowerHits_(), fDebug, fGeom, FindOrderOfHits_(), GetPlanePermutations_(), HitCoordinates_(), HitPosition_(), hits(), geo::GeometryCore::MaxPlanes(), n, RelativeWireWidth_(), ShowerHitRMS_(), ShowerHitRMSGradient_(), lar::to_element, lar::dump::vector(), X, and Y.
Referenced by shower::EMShower::produce().
|
private |
Takes the hits associated with a shower and orders then so they follow the direction of the shower
Definition at line 1574 of file EMShowerAlg.cxx.
References detinfo::DetectorPropertiesData::ConvertXToTicks(), fGeom, FindOrderOfHits_(), geo::GeometryCore::FindTPCAtPosition(), art::Ptr< T >::isNull(), geo::CryostatID::isValid, recob::Hit::PeakTime(), geo::WireID::planeID(), recob::Vertex::position(), geo::TPCID::TPC, geo::WireID::Wire, geo::GeometryCore::WireCoordinate(), and recob::Hit::WireID().
Referenced by MakeShower().
|
private |
Projects a 3D point (units [cm]) onto a 2D plane Returns 2D point (units [cm])
Definition at line 1915 of file EMShowerAlg.cxx.
References detinfo::DetectorPropertiesData::ConvertXToTicks(), e, fGeom, geo::GeometryCore::FindTPCAtPosition(), GlobalWire_(), HitPosition_(), geo::CryostatID::isValid, geo::GeometryCore::NearestWireID(), geo::InvalidWireError::suggestedWireID(), and geo::TPCID::TPC.
Referenced by CheckShowerHits_(), ConstructTrack(), and MakeSpacePoints().
|
private |
Determines the 'relative wire width', i.e. how spread a shower is across wires of each plane relative to the others If a shower travels along the wire directions in a particular view, it will have a smaller wire width in that view Returns a map relating these widths to each plane
Definition at line 1731 of file EMShowerAlg.cxx.
References util::abs(), fGeom, HitCoordinates_(), geo::GeometryCore::MaxPlanes(), lar::dump::vector(), and X.
Referenced by GetPlanePermutations_(), and OrderShowerHits().
|
private |
Returns the charge-weighted shower center.
Definition at line 1796 of file EMShowerAlg.cxx.
References HitPosition_(), and lar::dump::vector().
Referenced by FindOrderOfHits_(), and ShowerHitRMS_().
|
private |
Returns a rough charge-weighted shower 'direction' given the hits in the shower
Definition at line 1770 of file EMShowerAlg.cxx.
References HitPosition_(), lar::dump::vector(), and weight.
Referenced by FindOrderOfHits_(), ShowerHitRMS_(), and ShowerHitRMSGradient_().
|
private |
Returns the RMS of the hits from the central shower 'axis' along the length of the shower
Definition at line 1815 of file EMShowerAlg.cxx.
References HitPosition_(), proj, ShowerCenter_(), ShowerDirection_(), and lar::dump::vector().
Referenced by GetPlanePermutations_(), and OrderShowerHits().
|
private |
Returns the gradient of the RMS vs shower segment graph.
Definition at line 1834 of file EMShowerAlg.cxx.
References bin, fMakeRMSGradientPlot, fNumShowerSegments, HitPosition_(), proj, ShowerDirection_(), lar::to_element, and weight.
Referenced by GetPlanePermutations_(), and OrderShowerHits().
Int_t shower::EMShowerAlg::WeightedFit | ( | const Int_t | n, |
const Double_t * | x, | ||
const Double_t * | y, | ||
const Double_t * | w, | ||
Double_t * | parm | ||
) | const |
<Tingjun to="" document>="">
Definition at line 1983 of file EMShowerAlg.cxx.
References n.
Referenced by FindInitialTrackHits().
|
private |
Returns the plane which is determined to be the least likely to be correct.
Definition at line 1946 of file EMShowerAlg.cxx.
References util::abs(), fDebug, fGeom, HitCoordinates_(), hits(), geo::GeometryCore::MaxPlanes(), and X.
Referenced by MakeInitialTrack_().
|
private |
Definition at line 279 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), FinddEdx_(), and MakeShower().
int shower::EMShowerAlg::fDebug |
Definition at line 153 of file EMShowerAlg.h.
Referenced by AssociateClustersAndTracks(), CheckShowerHits_(), CheckShowerPlanes(), ConstructTrack(), FindInitialTrack(), FindShowerStart_(), GetPlanePermutations_(), MakeInitialTrack_(), MakeShower(), MakeSpacePoints(), OrderShowerHits(), and WorstPlane_().
|
private |
Definition at line 266 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), FinddEdx_(), and MakeShower().
|
private |
Definition at line 282 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and GlobalWire_().
|
private |
Definition at line 275 of file EMShowerAlg.h.
Referenced by CheckIsolatedHits_(), Construct3DPoint_(), FindInitialTrackHits(), GlobalWire_(), HitPosition_(), MakeShower(), MakeSpacePoints(), OrderShowerHits(), OrderShowerHits_(), Project3DPointOntoPlane_(), RelativeWireWidth_(), and WorstPlane_().
|
private |
Definition at line 285 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and FindOrderOfHits_().
|
private |
Definition at line 286 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and ShowerHitRMSGradient_().
|
private |
Definition at line 265 of file EMShowerAlg.h.
Referenced by AssociateClustersAndTracks(), and EMShowerAlg().
|
private |
Definition at line 271 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and FindInitialTrackHits().
|
private |
Definition at line 270 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and FindInitialTrackHits().
|
private |
Definition at line 287 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and ShowerHitRMSGradient_().
|
private |
Definition at line 280 of file EMShowerAlg.h.
Referenced by ConstructTrack(), EMShowerAlg(), and MakeShower().
|
private |
Definition at line 278 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and MakeShower().
|
private |
Definition at line 267 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and MakeSpacePoints().
|
private |
Definition at line 272 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and FindInitialTrackHits().