hps-java/src/main/java/org/lcsim/hps/recon/tracking
diff -u -r1.4 -r1.5
--- HelicalTrackHitResidualsDriver.java 21 Apr 2013 23:38:32 -0000 1.4
+++ HelicalTrackHitResidualsDriver.java 23 Apr 2013 00:07:04 -0000 1.5
@@ -120,7 +120,7 @@
for (Track track : tracklist) {
- if(!TrackUtils.passTrackSelection(track, tracklist, EventQuality.Quality.MEDIUM)) {
+ if(!TrackUtils.isGoodTrack(track, tracklist, EventQuality.Quality.MEDIUM)) {
continue;
}
hps-java/src/main/java/org/lcsim/hps/recon/tracking
diff -u -r1.17 -r1.18
--- TrackUtils.java 20 Apr 2013 04:00:25 -0000 1.17
+++ TrackUtils.java 23 Apr 2013 00:07:04 -0000 1.18
@@ -28,7 +28,7 @@
/**
*
* @author Omar Moreno <[log in to unmask]>
- * @version $Id: TrackUtils.java,v 1.17 2013/04/20 04:00:25 phansson Exp $
+ * @version $Id: TrackUtils.java,v 1.18 2013/04/23 00:07:04 phansson Exp $
* TODO: Switch to JLab coordinates
*/
@@ -651,11 +651,16 @@
}
- public static boolean passTrackSelection(Track track, List<Track> tracklist, EventQuality.Quality trk_quality) {
+ public static boolean isGoodTrack(Track track, List<Track> tracklist, EventQuality.Quality trk_quality) {
+ int cuts = passTrackSelections(track, tracklist, trk_quality);
+ return cuts==0?true:false;
+ }
+
+ public static int passTrackSelections(Track track, List<Track> tracklist, EventQuality.Quality trk_quality) {
int cuts[] = {0};
if(track.getTrackStates().get(0).getMomentum()[0] < EventQuality.instance().getCutValue(EventQuality.Cut.PZ, trk_quality))
cut(cuts,EventQuality.Cut.PZ);
- if(track.getTrackStates().get(0).getMomentum()[0]>= EventQuality.instance().getCutValue(EventQuality.Cut.CHI2, trk_quality))
+ if(track.getChi2()>= EventQuality.instance().getCutValue(EventQuality.Cut.CHI2, trk_quality))
cut(cuts,EventQuality.Cut.CHI2);
if(numberOfSharedHits(track,tracklist) > ((int)Math.round(EventQuality.instance().getCutValue(EventQuality.Cut.SHAREDHIT, trk_quality))))
cut(cuts,EventQuality.Cut.SHAREDHIT);
@@ -663,12 +668,7 @@
cut(cuts,EventQuality.Cut.TOPBOTHIT);
if(track.getTrackerHits().size()< ((int)Math.round(EventQuality.instance().getCutValue(EventQuality.Cut.NHITS, trk_quality))))
cut(cuts,EventQuality.Cut.NHITS);
-
-
- //System.out.printf("pz=%f chi2=%f nsh=%d nhits=%d topbot=%d => %s\n%s",track.getTrackStates().get(0).getMomentum()[0],track.getChi2(),numberOfSharedHits(track,tracklist),track.getTrackerHits().size(),hasTopBotHit(track)?1:0,Integer.toBinaryString(cuts[0]),EventQuality.instance().print(cuts[0]));
-
-
- return cuts[0]==0?true:false;
+ return cuts[0];
}