Skip to content

Commit 5adac5c

Browse files
committed
cleanup, use static loop test
1 parent e8c3822 commit 5adac5c

1 file changed

Lines changed: 24 additions & 31 deletions

File tree

  • reconstruction/cvt/src/main/java/org/jlab/rec/cvt/track

reconstruction/cvt/src/main/java/org/jlab/rec/cvt/track/Track.java

Lines changed: 24 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import java.util.ArrayList;
44
import java.util.Collection;
55
import java.util.Collections;
6-
import java.util.Comparator;
76
import java.util.HashMap;
87
import java.util.List;
98
import java.util.Map;
@@ -62,7 +61,6 @@ public class Track extends Trajectory implements Comparable<Track> {
6261
private int secondaryNDF; // for track with no beamSpot information
6362
private int _status = 0;
6463

65-
6664
public Track(Helix helix) {
6765
super(helix);
6866
if (helix != null) {
@@ -97,7 +95,6 @@ public Track(Seed seed, KFitter kf) {
9795
this.setStatus(-1);
9896
}
9997
}
100-
10198

10299
public Track(Seed seed, KFitter kf, int pid) {
103100
this(seed, kf);
@@ -162,23 +159,23 @@ public Helix getSecondaryHelix() {
162159
return secondaryHelix;
163160
}
164161

165-
public void setSecondaryHelix(Helix secondaryHelix) {
162+
public final void setSecondaryHelix(Helix secondaryHelix) {
166163
this.secondaryHelix = secondaryHelix;
167164
}
168165

169166
public double getSecondaryChi2() {
170167
return secondaryChi2;
171168
}
172169

173-
public void setSecondaryChi2(double secondaryChi2) {
170+
public final void setSecondaryChi2(double secondaryChi2) {
174171
this.secondaryChi2 = secondaryChi2;
175172
}
176173

177174
public int getSecondaryNDF() {
178175
return secondaryNDF;
179176
}
180177

181-
public void setSecondaryNDF(int secondaryNDF) {
178+
public final void setSecondaryNDF(int secondaryNDF) {
182179
this.secondaryNDF = secondaryNDF;
183180
}
184181

@@ -205,8 +202,7 @@ public final void setPXYZ() {
205202
calcPt = 100;
206203
setQ(1);
207204
}
208-
double calcPz = 0;
209-
calcPz = calcPt * helix.getTanDip();
205+
double calcPz = calcPt * helix.getTanDip();
210206
double calcP = Math.sqrt(calcPt * calcPt + calcPz * calcPz);
211207
setPt(calcPt);
212208
setPz(calcPz);
@@ -217,6 +213,8 @@ public final void setPXYZ() {
217213
/**
218214
* Updates the crosses positions based on trajectories or helix
219215
* @param trackId
216+
* @param xb
217+
* @param yb
220218
*/
221219
public void update_Crosses(int trackId, double xb, double yb) {
222220
for (int i = 0; i < this.size(); i++) {
@@ -288,12 +286,7 @@ public boolean equals(Object obj) {
288286
if (getClass() != obj.getClass()) {
289287
return false;
290288
}
291-
Track other = (Track) obj;
292-
if (this.getId() != other.getId()) {
293-
return false;
294-
}
295-
296-
return true;
289+
return this.getId() == ((Track)obj).getId();
297290
}
298291

299292
@Override
@@ -328,9 +321,9 @@ else if(this.getChi2() > Constants.CHI2CUT * (this.getNDF() + 5))
328321
return false;
329322
if(this.getNDF() < Constants.NDFCUT)
330323
return false;
331-
if(this.getHelix().radius() < Constants.getInstance().getRCUT())
324+
if(this.getHelix().radius() < Constants.getRCUT())
332325
return false;
333-
if(Math.abs(Geometry.getInstance().getTargetZOffset()-this.getHelix().getZ0()) > Geometry.getInstance().getTargetHalfLength()+Constants.getInstance().getZRANGE())
326+
if(Math.abs(Geometry.getInstance().getTargetZOffset()-this.getHelix().getZ0()) > Geometry.getInstance().getTargetHalfLength()+Constants.getZRANGE())
334327
return false;
335328
else
336329
return true;
@@ -396,7 +389,7 @@ public int getPID() {
396389
return _PID;
397390
}
398391

399-
public void setPID(int _PID) {
392+
public final void setPID(int _PID) {
400393
this._PID = _PID;
401394
}
402395

@@ -445,13 +438,14 @@ public final void setKFTrajectories(Map<Integer, HitOnTrack> trajectory) {
445438
public int getStatus() {
446439
return _status;
447440
}
448-
public void setStatus(int passKFFlag) {
441+
public final void setStatus(int passKFFlag) {
449442
//for status word:
450443
int nSVT = 0;
451444
int nBMTZ = 0;
452445
int nBMTC = 0;
453446
// fills the list of cross ids for crosses belonging to that reconstructed track
454-
for (int j = 0; j < this.size(); j++) {
447+
int size = this.size();
448+
for (int j = 0; j < size; j++) {
455449
// counter to get status word
456450
if (this.get(j).getDetector() == DetectorType.BST) {
457451
nSVT++;
@@ -565,7 +559,8 @@ else if(MLayer.getDetectorType(index) == DetectorType.BMT) {
565559

566560
private static int[] getTrackKey(Track track) {
567561
int[] cids = new int[9];
568-
for (int i = 0; i < track.size(); i++) {
562+
int size = track.size();
563+
for (int i = 0; i < size; i++) {
569564
Cross c = track.get(i);
570565
if(c.getDetector()==DetectorType.BST) {
571566
cids[c.getRegion()-1] = c.getId();
@@ -593,23 +588,25 @@ public static void removeOverlappingTracks(List<Track> tracks) {
593588
return;
594589
Map<Integer, Track> map = new HashMap<>();
595590
Map<Integer, Track> selectedTracks = new HashMap<>();
596-
for (int i = 0; i < tracks.size(); i++) {
591+
final int size = tracks.size();
592+
for (int i = 0; i < size; i++) {
597593
Track t1 = tracks.get(i);
598594
t1.setTempId(i+1);
599595
map.put(i+1, t1);
600596
}
601-
for (int i = 0; i < tracks.size(); i++) {
597+
for (int i = 0; i < size; i++) {
602598
Track t1 = tracks.get(i);
603599
int[] cids = getTrackKey(t1);
604600
for (int j = 0;j < tracks.size(); j++) {
605601
boolean ov = false;
606602
if(i==j) continue;
607603
Track t2 = tracks.get(j);
608604
int[] cids2 = getTrackKey(t2);
609-
for(int k = 0; k<9; k++) {
605+
for(int k = 0; k < 9; k++) {
610606
if(cids[k]!=-1) {
611607
if(cids[k]==cids2[k]) {
612608
ov=true;
609+
break;
613610
}
614611
}
615612
}
@@ -618,7 +615,7 @@ public static void removeOverlappingTracks(List<Track> tracks) {
618615
}
619616
}
620617
}
621-
for (int i = 0; i < tracks.size(); i++) {
618+
for (int i = 0; i < size; i++) {
622619
List<Track> ovlTracks = new ArrayList<>();
623620
Track t1 = tracks.get(i);
624621
ovlTracks.add(t1);
@@ -638,9 +635,10 @@ public static void removeOverlappingTracks(List<Track> tracks) {
638635
}
639636

640637
public static void checkForOverlaps(List<Track> tracks, String msg) {
641-
for (int i = 0; i < tracks.size(); i++) {
638+
int size = tracks.size();
639+
for (int i = 0; i < size; i++) {
642640
Track t1 = tracks.get(i);
643-
for(int j=0; j<tracks.size(); j++ ) {
641+
for(int j=0; j<size; j++ ) {
644642
Track t2 = tracks.get(j);
645643
if(i!=j && t1.overlapWith(t2)) {
646644
System.out.println(msg + " " + "overlap");
@@ -649,7 +647,6 @@ public static void checkForOverlaps(List<Track> tracks, String msg) {
649647
}
650648
}
651649

652-
653650
@Override
654651
public String toString() {
655652
String str = String.format("Track id=%d, q=%d, p=%.3f GeV pt=%.3f GeV, d0=%.3f deg, phi=%.3f deg, z0=%.3f deg, tandip=%.3f deg, NDF=%d, chi2=%.3f, seed method=%d, KF iterations=%d, status=%d\n",
@@ -661,8 +658,4 @@ public String toString() {
661658
return str;
662659
}
663660

664-
665-
666-
667-
668661
}

0 commit comments

Comments
 (0)