Package org.jlab.rec.cvt.track
Class Track
- All Implemented Interfaces:
Serializable,Cloneable,Comparable<Track>,Iterable<Cross>,Collection<Cross>,List<Cross>,RandomAccess
A class representing track candidates in the CVT. A track has a trajectory
represented by an ensemble of geometrical state vectors along its path, a
charge and a momentum
- Author:
- ziegler
- See Also:
-
Field Summary
Fields inherited from class org.jlab.rec.cvt.trajectory.Trajectory
isFinalFields inherited from class java.util.AbstractList
modCount -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanbetterThan(Track o) Compare this track quality with the given track based on NDF and Chi2static voidcheckForOverlaps(List<Track> tracks, String msg) intbooleancontainsCross(Cross cross) booleanvoidfindTrajectory(Swim swimmer, List<Surface> outer) doublegetChi2()doubleintintgetNDF()doublegetP()doubleintgetPID()doublegetPt()doublegetPz()intgetQ()doubleintgetSeed()static longintintdouble[][]inthashCode()booleanisGood()Check if track passes basic quality cutsbooleanoverlapWith(Track o) Check track overlaps with the given track an overlaps is detected if the tracks share at least two crossesstatic voidremoveOverlappingTracks(List<Track> tracks) final voidsetChi2(double _Chi2) voidsetKFIterations(int iter) final voidsetKFTrajectories(Map<Integer, AKFitter.HitOnTrack> trajectory) final voidsetNDF(int _NDF) voidsetP(double _P) Sets the total momentum valuevoidsetPathToCTOF(double _pathLength) voidsetPID(int _PID) voidsetPt(double _Pt) final voidsetPXYZ()Sets the track helical track parameters P, Pt, PzvoidsetPz(double _Pz) voidsetQ(int _Q) Sets the chargevoidsetSecondaryChi2(double secondaryChi2) voidsetSecondaryHelix(Helix secondaryHelix) voidsetSecondaryNDF(int secondaryNDF) final voidvoidsetStatus(int passKFFlag) voidsetTempId(int _tempId) voidsetTrackCovMat(double[][] trackCovMat) voidsetTrackDirAtCTOF(Vector3D _TrackDirAtCTOFRadious) voidsetTrackPosAtCTOF(Point3D _TrackPointAtCTOFRadius) toString()voidupdate_Clusters(int trackId) voidupdate_Crosses(int trackId, double xb, double yb) Updates the crosses positions based on trajectories or helixMethods inherited from class org.jlab.rec.cvt.trajectory.Trajectory
getBMTIntersections, getHelix, getId, getRay, getSVTIntersections, getSVTSector, getTrajectory, setBMTIntersections, setHelix, setId, setRay, setSVTIntersections, setSVTSector, setTrajectoryMethods inherited from class java.util.ArrayList
add, add, addAll, addAll, clear, clone, contains, ensureCapacity, forEach, get, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, removeIf, removeRange, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray, trimToSizeMethods inherited from class java.util.AbstractCollection
containsAllMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Collection
parallelStream, stream, toArrayMethods inherited from interface java.util.List
containsAll
-
Constructor Details
-
Track
-
Track
-
Track
-
Track
-
-
Method Details
-
getQ
public int getQ()- Returns:
- the charge
-
setQ
public void setQ(int _Q) Sets the charge- Parameters:
_Q- the charge
-
getPt
public double getPt() -
setPt
public void setPt(double _Pt) -
getPz
public double getPz() -
setPz
public void setPz(double _Pz) -
getSerialversionuid
public static long getSerialversionuid() -
getP
public double getP()- Returns:
- the total momentum value
-
setP
public void setP(double _P) Sets the total momentum value- Parameters:
_P- the total momentum value
-
getSecondaryHelix
-
setSecondaryHelix
-
getSecondaryChi2
public double getSecondaryChi2() -
setSecondaryChi2
public void setSecondaryChi2(double secondaryChi2) -
getSecondaryNDF
public int getSecondaryNDF() -
setSecondaryNDF
public void setSecondaryNDF(int secondaryNDF) -
getSeed
-
setSeed
-
setPXYZ
public final void setPXYZ()Sets the track helical track parameters P, Pt, Pz -
update_Crosses
public void update_Crosses(int trackId, double xb, double yb) Updates the crosses positions based on trajectories or helix- Parameters:
trackId-
-
update_Clusters
public void update_Clusters(int trackId) -
containsCross
- Parameters:
cross- the cross- Returns:
- a boolean to indicate if a cross belongs to the track
-
equals
-
hashCode
public int hashCode() -
compareTo
- Specified by:
compareToin interfaceComparable<Track>
-
isGood
public boolean isGood()Check if track passes basic quality cuts- Returns:
-
betterThan
Compare this track quality with the given track based on NDF and Chi2- Parameters:
o- the other track- Returns:
- true if this track quality is better than the given track
-
overlapWith
Check track overlaps with the given track an overlaps is detected if the tracks share at least two crosses- Parameters:
o- the other track- Returns:
- true if this track overlaps with the given track, false otherwise
-
getTrackPosAtCTOF
-
setTrackPosAtCTOF
-
getTrackDirAtCTOF
-
setTrackDirAtCTOF
-
getPathToCTOF
public double getPathToCTOF() -
setPathToCTOF
public void setPathToCTOF(double _pathLength) -
getPID
public int getPID() -
setPID
public void setPID(int _PID) -
getNDF
public int getNDF() -
setNDF
public final void setNDF(int _NDF) -
getChi2
public double getChi2() -
setChi2
public final void setChi2(double _Chi2) -
getChi2Prob
public double getChi2Prob() -
getKFIterations
public int getKFIterations() -
setKFIterations
public void setKFIterations(int iter) -
getKFTrajectories
-
setKFTrajectories
-
getStatus
public int getStatus() -
setStatus
public void setStatus(int passKFFlag) -
getTrackCovMat
public double[][] getTrackCovMat()- Returns:
- the trackCovMat
-
setTrackCovMat
public void setTrackCovMat(double[][] trackCovMat) - Parameters:
trackCovMat- the trackCovMat to set
-
findTrajectory
-
getTempId
public int getTempId() -
setTempId
public void setTempId(int _tempId) -
removeOverlappingTracks
-
checkForOverlaps
-
toString
- Overrides:
toStringin classAbstractCollection<Cross>
-