LArSoft
v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
|
#include "EMShowerAlg.h"
Public Member Functions | |
EMShowerAlg (fhicl::ParameterSet const &pset) | |
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) |
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) |
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) |
Takes the initial showers found and tries to resolve issues where one bad view ruins the event. More... | |
std::unique_ptr< recob::Track > | ConstructTrack (std::vector< art::Ptr< recob::Hit > > const &track1, std::vector< art::Ptr< recob::Hit > > const &track2, std::map< int, TVector2 > const &showerCentreMap) |
std::unique_ptr< recob::Track > | ConstructTrack (std::vector< art::Ptr< recob::Hit > > const &track1, std::vector< art::Ptr< recob::Hit > > const &track2) |
void | FindInitialTrack (const std::map< int, std::vector< art::Ptr< recob::Hit > > > &hits, std::unique_ptr< recob::Track > &initialTrack, std::map< int, std::vector< art::Ptr< recob::Hit > > > &initialTrackHits, int plane) |
Finds the initial track-like part of the shower and the hits in all views associated with it. More... | |
std::vector< std::vector< int > > | FindShowers (std::map< int, std::vector< int > > const &trackToClusters) |
Makes showers given a map between tracks and all clusters associated with them. More... | |
recob::Shower | MakeShower (art::PtrVector< recob::Hit > const &hits, std::unique_ptr< recob::Track > const &initialTrack, std::map< int, std::vector< art::Ptr< recob::Hit > > > const &initialTrackHits) |
Makes a recob::Shower object given the hits in the shower and the initial track-like part. More... | |
recob::Shower | MakeShower (art::PtrVector< recob::Hit > const &hits, art::Ptr< recob::Vertex > const &vertex, int &iok) |
<Tingjun to="" document>=""> More... | |
std::vector< recob::SpacePoint > | MakeSpacePoints (std::map< int, std::vector< art::Ptr< recob::Hit > > > hits, std::vector< std::vector< art::Ptr< recob::Hit > > > &hitAssns) |
Makes space points from the shower hits in each plane. More... | |
std::map< int, std::vector< art::Ptr< recob::Hit > > > | OrderShowerHits (const art::PtrVector< recob::Hit > &shower, int plane) |
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) |
<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) |
<Tingjun to="" document>=""> More... | |
bool | isCleanShower (std::vector< art::Ptr< recob::Hit > > const &hits) |
<Tingjun to="" document>=""> More... | |
Public Attributes | |
int | fDebug |
Private Member Functions | |
void | CheckIsolatedHits (std::map< int, std::vector< art::Ptr< recob::Hit > > > &showerHitsMap) |
Checks the hits across the views in a given shower to determine if there is one in the incorrect TPC. More... | |
bool | CheckShowerHits (std::map< int, std::vector< art::Ptr< recob::Hit > > > const &showerHitsMap) |
TVector3 | Construct3DPoint (art::Ptr< recob::Hit > const &hit1, art::Ptr< recob::Hit > const &hit2) |
Constructs a 3D point (in [cm]) to represent the hits given in two views. More... | |
double | FinddEdx (std::vector< art::Ptr< recob::Hit > > const &trackHits, std::unique_ptr< recob::Track > const &track) |
Finds dE/dx for the track given a set of hits. More... | |
std::vector< art::Ptr< recob::Hit > > | FindOrderOfHits (std::vector< art::Ptr< recob::Hit > > const &hits, bool perpendicular=false) |
std::map< int, std::vector< art::Ptr< recob::Hit > > > | FindShowerStart (std::map< int, std::vector< art::Ptr< recob::Hit > > > const &orderedShowerMap) |
std::map< int, std::map< int, bool > > | GetPlanePermutations (const std::map< int, std::vector< art::Ptr< recob::Hit > > > &showerHitsMap) |
double | GlobalWire (const geo::WireID &wireID) |
Find the global wire position. More... | |
TVector2 | HitCoordinates (art::Ptr< recob::Hit > const &hit) |
Return the coordinates of this hit in global wire/tick space. More... | |
TVector2 | HitPosition (art::Ptr< recob::Hit > const &hit) |
Return the coordinates of this hit in units of cm. More... | |
TVector2 | HitPosition (TVector2 const &pos, geo::PlaneID planeID) |
Return the coordinates of this hit in units of cm. More... | |
std::unique_ptr< recob::Track > | MakeInitialTrack (std::map< int, std::vector< art::Ptr< recob::Hit > > > const &initialHitsMap, std::map< int, std::vector< art::Ptr< recob::Hit > > > const &showerHitsMap) |
Takes initial track hits from multiple views and forms a track object which best represents the start of the shower. More... | |
void | OrderShowerHits (std::vector< art::Ptr< recob::Hit > > const &shower, std::vector< art::Ptr< recob::Hit > > &orderedShower, art::Ptr< recob::Vertex > const &vertex) |
Takes the hits associated with a shower and orders then so they follow the direction of the shower. More... | |
TVector2 | Project3DPointOntoPlane (TVector3 const &point, int plane, int cryostat=0) |
std::map< double, int > | RelativeWireWidth (const std::map< int, std::vector< art::Ptr< recob::Hit > > > &showerHitsMap) |
TVector2 | ShowerCentre (const std::vector< art::Ptr< recob::Hit > > &showerHits) |
Returns the charge-weighted shower centre. More... | |
TVector2 | ShowerDirection (const std::vector< art::Ptr< recob::Hit > > &showerHits) |
Returns a rough charge-weighted shower 'direction' given the hits in the shower. More... | |
double | ShowerHitRMS (const std::vector< art::Ptr< recob::Hit > > &showerHits) |
Returns the RMS of the hits from the central shower 'axis' along the length of the shower. More... | |
double | ShowerHitRMSGradient (const std::vector< art::Ptr< recob::Hit > > &showerHits, TVector2 trueStart=TVector2(0, 0)) |
Returns the gradient of the RMS vs shower segment graph. More... | |
int | WorstPlane (const std::map< int, std::vector< art::Ptr< recob::Hit > > > &showerHitsMap) |
Returns the plane which is determined to be the least likely to be correct. More... | |
int | FindTrueParticle (const std::vector< art::Ptr< recob::Hit > > &showerHits) |
int | FindParticleID (const art::Ptr< recob::Hit > &hit) |
void | MakePicture () |
Private Attributes | |
double | fMinTrackLength |
double | fdEdxTrackLength |
double | fSpacePointSize |
unsigned int | fNfitpass |
std::vector< unsigned int > | fNfithits |
std::vector< double > | fToler |
art::ServiceHandle< geo::Geometry > | fGeom |
detinfo::DetectorProperties const * | fDetProp |
art::ServiceHandle< art::TFileService > | tfs |
shower::ShowerEnergyAlg | fShowerEnergyAlg |
calo::CalorimetryAlg | fCalorimetryAlg |
pma::ProjectionMatchingAlg | fProjectionMatchingAlg |
std::string | fDetector |
art::ServiceHandle< cheat::BackTrackerService > | bt_serv |
TH1I * | hTrueDirection |
TProfile * | hNumHitsInSegment |
TProfile * | hNumSegments |
bool | fMakeGradientPlot |
bool | fMakeRMSGradientPlot |
int | fNumShowerSegments |
Definition at line 74 of file EMShowerAlg.h.
shower::EMShowerAlg::EMShowerAlg | ( | fhicl::ParameterSet const & | pset | ) |
Definition at line 13 of file EMShowerAlg.cxx.
References art::errors::Configuration, fdEdxTrackLength, fDetector, fMakeGradientPlot, fMakeRMSGradientPlot, fMinTrackLength, fNfithits, fNfitpass, fNumShowerSegments, fSpacePointSize, fToler, fhicl::ParameterSet::get(), hNumHitsInSegment, hNumSegments, hTrueDirection, art::TFileDirectory::make(), and tfs.
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 | ||
) |
Map associated tracks and clusters together given their associated hits.
Definition at line 43 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 | ||
) |
Map associated tracks and clusters together given their associated hits, whilst ignoring certain clusters.
Definition at line 56 of file EMShowerAlg.cxx.
References evd::details::begin(), evd::details::end(), fDebug, fMinTrackLength, track, and lar::dump::vector().
|
private |
Checks the hits across the views in a given shower to determine if there is one in the incorrect TPC.
Definition at line 101 of file EMShowerAlg.cxx.
References fGeom, geo::GeometryCore::MaxPlanes(), 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 183 of file EMShowerAlg.cxx.
References Construct3DPoint(), fDebug, HitPosition(), Project3DPointOntoPlane(), lar::dump::vector(), 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 | ||
) |
Takes the initial showers found and tries to resolve issues where one bad view ruins the event.
Definition at line 271 of file EMShowerAlg.cxx.
References fDebug, hits(), art::Ptr< T >::key(), geo::PlaneID::Plane, recob::Cluster::Plane(), util::flags::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 396 of file EMShowerAlg.cxx.
References detinfo::DetectorProperties::ConvertTicksToX(), fDetProp, 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 | ( | std::vector< art::Ptr< recob::Hit > > const & | track1, |
std::vector< art::Ptr< recob::Hit > > const & | track2, | ||
std::map< int, TVector2 > const & | showerCentreMap | ||
) |
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 409 of file EMShowerAlg.cxx.
References pma::ProjectionMatchingAlg::buildSegment(), Construct3DPoint(), evd::details::end(), fDebug, fProjectionMatchingAlg, HitCoordinates(), if(), Project3DPointOntoPlane(), track, and lar::dump::vector().
Referenced by ConstructTrack(), and MakeInitialTrack().
std::unique_ptr< recob::Track > shower::EMShowerAlg::ConstructTrack | ( | std::vector< art::Ptr< recob::Hit > > const & | track1, |
std::vector< art::Ptr< recob::Hit > > const & | track2 | ||
) |
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 532 of file EMShowerAlg.cxx.
References ConstructTrack().
|
private |
Finds dE/dx for the track given a set of hits.
Definition at line 541 of file EMShowerAlg.cxx.
References calo::CalorimetryAlg::dEdx_AREA(), fCalorimetryAlg, fdEdxTrackLength, lar::util::TrackPitchInView(), and lar::dump::vector().
Referenced by MakeShower().
void shower::EMShowerAlg::FindInitialTrack | ( | const std::map< int, std::vector< art::Ptr< recob::Hit > > > & | hits, |
std::unique_ptr< recob::Track > & | initialTrack, | ||
std::map< int, std::vector< art::Ptr< recob::Hit > > > & | initialTrackHits, | ||
int | plane | ||
) |
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: – put the hits in the correct order in each view – find the initial track-like hits in each view – use these to construct a track
Definition at line 590 of file EMShowerAlg.cxx.
References fDebug, FindShowerStart(), HitCoordinates(), MakeInitialTrack(), lar::dump::vector(), 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 | ||
) |
<Tingjun to="" document>="">
Definition at line 1539 of file EMShowerAlg.cxx.
References geo::vect::coord(), fGeom, geo::GeometryCore::FindTPCAtPosition(), fNfithits, fNfitpass, fToler, HitCoordinates(), geo::CryostatID::isValid, geo::TPCID::TPC, WeightedFit(), and recob::Vertex::XYZ().
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 658 of file EMShowerAlg.cxx.
References fMakeGradientPlot, HitPosition(), hits(), ShowerCentre(), ShowerDirection(), and lar::dump::vector().
Referenced by OrderShowerHits().
|
private |
Returns the true track ID associated with this hit (if more than one, returns the one with highest energy)
Definition at line 2327 of file EMShowerAlg.cxx.
std::vector< std::vector< int > > shower::EMShowerAlg::FindShowers | ( | std::map< int, std::vector< int > > const & | trackToClusters | ) |
Makes showers given a map between tracks and all clusters associated with them.
Definition at line 711 of file EMShowerAlg.cxx.
References evd::details::begin(), and evd::details::end().
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 749 of file EMShowerAlg.cxx.
References fDebug, HitCoordinates(), lar::dump::vector(), X, and Y.
Referenced by FindInitialTrack().
|
private |
Returns the true particle most likely associated with this shower
Definition at line 2301 of file EMShowerAlg.cxx.
References recob::Hit::Integral(), and lar::dump::vector().
|
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 845 of file EMShowerAlg.cxx.
References fDebug, for(), if(), RelativeWireWidth(), ShowerHitRMS(), ShowerHitRMSGradient(), and lar::dump::vector().
Referenced by OrderShowerHits().
|
private |
Find the global wire position.
Definition at line 1633 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 1612 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 1618 of file EMShowerAlg.cxx.
References HitCoordinates(), geo::WireID::planeID(), and recob::Hit::WireID().
Referenced by CheckShowerHits(), FindOrderOfHits(), MakeSpacePoints(), OrderShowerHits(), Project3DPointOntoPlane(), ShowerCentre(), ShowerDirection(), ShowerHitRMS(), and ShowerHitRMSGradient().
|
private |
Return the coordinates of this hit in units of cm.
Definition at line 1626 of file EMShowerAlg.cxx.
References detinfo::DetectorProperties::ConvertTicksToX(), fDetProp, fGeom, and geo::GeometryCore::WirePitch().
bool shower::EMShowerAlg::isCleanShower | ( | std::vector< art::Ptr< recob::Hit > > const & | hits | ) |
|
private |
Takes initial track hits from multiple views and forms a track object which best represents the start of the shower.
Definition at line 928 of file EMShowerAlg.cxx.
References CheckShowerHits(), ConstructTrack(), fDebug, lar::dump::vector(), and WorstPlane().
Referenced by FindInitialTrack().
|
private |
recob::Shower shower::EMShowerAlg::MakeShower | ( | art::PtrVector< recob::Hit > const & | hits, |
std::unique_ptr< recob::Track > const & | initialTrack, | ||
std::map< int, std::vector< art::Ptr< recob::Hit > > > const & | initialTrackHits | ||
) |
Makes a recob::Shower object given the hits in the shower and the initial track-like part.
Definition at line 968 of file EMShowerAlg.cxx.
References art::PtrVector< T >::begin(), art::PtrVector< T >::end(), 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 | ( | art::PtrVector< recob::Hit > const & | hits, |
art::Ptr< recob::Vertex > const & | vertex, | ||
int & | iok | ||
) |
<Tingjun to="" document>="">
Definition at line 1022 of file EMShowerAlg.cxx.
References art::PtrVector< T >::begin(), pma::ProjectionMatchingAlg::buildSegment(), calo::CalorimetryAlg::dEdx_AREA(), art::PtrVector< T >::end(), fCalorimetryAlg, fDebug, fdEdxTrackLength, fGeom, FindInitialTrackHits(), fProjectionMatchingAlg, fShowerEnergyAlg, geo::GeometryCore::MaxPlanes(), OrderShowerHits(), geo::GeometryCore::Plane(), shower::ShowerEnergyAlg::ShowerEnergy(), pma::Track3D::size(), lar::dump::vector(), geo::PlaneGeo::View(), geo::GeometryCore::WireAngleToVertical(), geo::GeometryCore::WirePitch(), and recob::Vertex::XYZ().
std::vector< recob::SpacePoint > shower::EMShowerAlg::MakeSpacePoints | ( | std::map< int, std::vector< art::Ptr< recob::Hit > > > | hits, |
std::vector< std::vector< art::Ptr< recob::Hit > > > & | hitAssns | ||
) |
Makes space points from the shower hits in each plane.
Definition at line 1187 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 | ( | const art::PtrVector< recob::Hit > & | shower, |
int | plane | ||
) |
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 1312 of file EMShowerAlg.cxx.
References art::PtrVector< T >::begin(), CheckIsolatedHits(), CheckShowerHits(), art::PtrVector< T >::end(), fDebug, fGeom, FindOrderOfHits(), GetPlanePermutations(), HitCoordinates(), HitPosition(), hits(), geo::GeometryCore::MaxPlanes(), n, RelativeWireWidth(), ShowerHitRMS(), ShowerHitRMSGradient(), lar::dump::vector(), X, and Y.
Referenced by MakeShower(), and 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 1502 of file EMShowerAlg.cxx.
References detinfo::DetectorProperties::ConvertXToTicks(), fDetProp, fGeom, FindOrderOfHits(), geo::GeometryCore::FindTPCAtPosition(), art::Ptr< T >::isNull(), geo::CryostatID::isValid, recob::Hit::PeakTime(), geo::WireID::planeID(), geo::TPCID::TPC, geo::WireID::Wire, geo::GeometryCore::WireCoordinate(), recob::Hit::WireID(), and recob::Vertex::XYZ().
|
private |
Projects a 3D point (units [cm]) onto a 2D plane Returns 2D point (units [cm])
Definition at line 2093 of file EMShowerAlg.cxx.
References detinfo::DetectorProperties::ConvertXToTicks(), e, fDetProp, 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 1674 of file EMShowerAlg.cxx.
References fGeom, HitCoordinates(), geo::GeometryCore::MaxPlanes(), lar::dump::vector(), and X.
Referenced by GetPlanePermutations(), and OrderShowerHits().
|
private |
Returns the charge-weighted shower centre.
Definition at line 1726 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 1701 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 1741 of file EMShowerAlg.cxx.
References HitPosition(), proj, ShowerCentre(), ShowerDirection(), and lar::dump::vector().
Referenced by GetPlanePermutations(), and OrderShowerHits().
|
private |
Returns the gradient of the RMS vs shower segment graph.
Definition at line 1757 of file EMShowerAlg.cxx.
References fMakeRMSGradientPlot, fNumShowerSegments, HitPosition(), proj, ShowerDirection(), lar::dump::vector(), 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 | ||
) |
<Tingjun to="" document>="">
Definition at line 2157 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 2127 of file EMShowerAlg.cxx.
References fDebug, fGeom, for(), HitCoordinates(), geo::GeometryCore::MaxPlanes(), lar::dump::vector(), and X.
Referenced by MakeInitialTrack().
|
private |
Definition at line 249 of file EMShowerAlg.h.
|
private |
Definition at line 240 of file EMShowerAlg.h.
Referenced by FinddEdx(), and MakeShower().
int shower::EMShowerAlg::fDebug |
Definition at line 147 of file EMShowerAlg.h.
Referenced by AssociateClustersAndTracks(), CheckShowerHits(), CheckShowerPlanes(), ConstructTrack(), FindInitialTrack(), FindShowerStart(), GetPlanePermutations(), MakeInitialTrack(), MakeShower(), MakeSpacePoints(), OrderShowerHits(), shower::EMShower::reconfigure(), and WorstPlane().
|
private |
Definition at line 226 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), FinddEdx(), and MakeShower().
|
private |
Definition at line 243 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and GlobalWire().
|
private |
Definition at line 235 of file EMShowerAlg.h.
Referenced by Construct3DPoint(), shower::HitPosition::ConvertWireTickToCm(), HitPosition(), OrderShowerHits(), and Project3DPointOntoPlane().
|
private |
Definition at line 234 of file EMShowerAlg.h.
Referenced by CheckIsolatedHits(), Construct3DPoint(), shower::HitPosition::ConvertWireTickToCm(), FindInitialTrackHits(), GlobalWire(), HitPosition(), MakeShower(), MakeSpacePoints(), OrderShowerHits(), Project3DPointOntoPlane(), RelativeWireWidth(), and WorstPlane().
|
private |
Definition at line 253 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and FindOrderOfHits().
|
private |
Definition at line 253 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and ShowerHitRMSGradient().
|
private |
Definition at line 225 of file EMShowerAlg.h.
Referenced by AssociateClustersAndTracks(), and EMShowerAlg().
|
private |
Definition at line 230 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and FindInitialTrackHits().
|
private |
Definition at line 229 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and FindInitialTrackHits().
|
private |
Definition at line 254 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and ShowerHitRMSGradient().
|
private |
Definition at line 241 of file EMShowerAlg.h.
Referenced by ConstructTrack(), and MakeShower().
|
private |
Definition at line 239 of file EMShowerAlg.h.
Referenced by MakeShower().
|
private |
Definition at line 227 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and MakeSpacePoints().
|
private |
Definition at line 231 of file EMShowerAlg.h.
Referenced by EMShowerAlg(), and FindInitialTrackHits().
|
private |
Definition at line 251 of file EMShowerAlg.h.
Referenced by EMShowerAlg().
|
private |
Definition at line 251 of file EMShowerAlg.h.
Referenced by EMShowerAlg().
|
private |
Definition at line 250 of file EMShowerAlg.h.
Referenced by EMShowerAlg().
|
private |
Definition at line 236 of file EMShowerAlg.h.
Referenced by EMShowerAlg().