Skip to content

Commit 6d23ae5

Browse files
authored
Merge pull request #1138 from mgignac/mgignac-t0err
Retrieve t0 errors from LC relations
2 parents b127d8a + 299dcf6 commit 6d23ae5

File tree

1 file changed

+16
-10
lines changed

1 file changed

+16
-10
lines changed

tracking/src/main/java/org/hps/recon/tracking/kalman/KalmanInterface.java

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1039,6 +1039,15 @@ private boolean fillAllMeasurements(EventHeader event) {
10391039
// Get the collection of 1D hits
10401040
String stripHitInputCollectionName = "StripClusterer_SiTrackerHitStrip1D";
10411041
List<TrackerHit> striphits = event.get(TrackerHit.class, stripHitInputCollectionName);
1042+
1043+
// LCRelations
1044+
String fittedHitsCollectionName = "SVTFittedRawTrackerHits";
1045+
List<LCRelation> _fittedHits = event.get(LCRelation.class, fittedHitsCollectionName);
1046+
1047+
Map<RawTrackerHit, LCRelation> fittedRawTrackerHitMap = new HashMap<RawTrackerHit, LCRelation>();
1048+
for (LCRelation fittedHit : _fittedHits) {
1049+
fittedRawTrackerHitMap.put(FittedRawTrackerHit.getRawTrackerHit(fittedHit), fittedHit);
1050+
}
10421051

10431052
if (striphits.size() > maxHits) maxHits = striphits.size();
10441053
if (striphits.size() > 200) nBigEvents++;
@@ -1175,18 +1184,15 @@ private boolean fillAllMeasurements(EventHeader event) {
11751184
fitter.setRunNum(event.getRunNumber());
11761185
double Variance=0.0;
11771186
for(RawTrackerHit rth: rawhits){
1178-
double Min = 10000;
1179-
for(ShapeFitParameters fit : fitter.fitShape(rth, shape)){
1180-
if(fit.getT0Err()<Min){
1181-
Min=fit.getT0Err();
1182-
}
1183-
}
1184-
if(module.Layer>1){
1185-
Variance+=1/(Min*Min);
1186-
}
1187+
double t0err = FittedRawTrackerHit.getT0Err(fittedRawTrackerHitMap.get(rth));
1188+
Variance+=1.0/(t0err*t0err);
1189+
// Why were we ignoring Layer 0...?
1190+
// if(module.Layer>1){
1191+
// Variance+=1/(Min*Min);
1192+
// }
11871193
}
11881194
Variance=1.0/Variance;
1189-
Measurement m = new Measurement(umeas, xStrip, du, time, localHit.getdEdx()*1000000.,Variance);
1195+
Measurement m = new Measurement(umeas, xStrip, du, time, localHit.getdEdx()*1000000.0,Variance);
11901196
module.addMeasurement(m);
11911197
hitMap.put(m, hit);
11921198
hitsFilled++;

0 commit comments

Comments
 (0)