hits matching
play

Hits matching Science Board Meeting 07 / 12 / 2016 Laura Zambelli - PowerPoint PPT Presentation

Hits matching Science Board Meeting 07 / 12 / 2016 Laura Zambelli for the LAPP group 1 MC truth / Rec. hit matching - Code available in src/hitrecon.cc - Provides good (accurate & efficient) hit matching in most cases But if tracks are


  1. Hits matching Science Board Meeting 07 / 12 / 2016 Laura Zambelli for the LAPP group 1

  2. MC truth / Rec. hit matching - Code available in src/hitrecon.cc - Provides good (accurate & efficient) hit matching in most cases But if tracks are too vertical, matching is either not good or do not work [seg. fault] Two reasons : - philosophy of the code (see next slides) - true hits are found, stored and organized in fixed size containers → can lead to seg. faults for busy events 2

  3. MC truth / Rec. hit matching code philosophy True hits are stored in a container like hits[crm][channel][nf][8] (one per view) nf (<20) per hits 0 : Nhits, 1: tstart, charge from µ± (2), e± (3), γ (4), π 0 (5), π ± (6), else (7) → hits[crm][channel][0][0] stores the number of hits on this line 1. Loop on all voxels (= truth) and merge together hits with same view, crm, channel, tstart, pid 
 [one voxel is created per step in VMC, and one step length is 1mm, so several energy depositions 
 within one time/channel bin are possible] 2. Fill the hits container in sorted time 3. Loop and merge hits together if they have a time difference ≤ gap 
 → From Elisabetta’s SB presentation a gap = 6 time bins is optimal [24/02/16] 4. Reconstruct hits 5. Loop on reconstructed hits Loop on true hits if the time difference Δ t = |tstart(recHit) - tstart(trueHit)| < 10 compute the normalized charge difference: Δ Q = {QTot(trueHit) - QTot(recHit)}/QTot(trueHit) → Match together rec and true hits for the lowest Δ Q value 3

  4. MC truth / Rec. hit matching for vertical tracks Simulation of CR tracks in the 6x6x6 detector Black : Reconstructed hits with a matching truth information Red : Unmatched hits Matching efficiency : → Clear problem for vertical tracks View 0 : 16986 matched out of 17731 hits [95.7%] View 1 : 14970 matched out of 16134 hits [92.8%] 4

  5. MC truth / Rec. hit matching for vertical tracks Simulation of a CR tracks in the 6x6x6 [ZOOM] recmchit_v0_CRM0 Black : Reconstructed hits with a matching truth information Red : Unmatched hits 3 10 2 10 10 1 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 − − − − − Q ∆ Along the channel, all true hits are merged together (here gap = 6) → only the first rec. hit on the channel is matched to the merged true hits → QTot(true hit) >> QTot (rec hit) for this particular matched hit → Δ Q value is biased Not sure what’s the problem here 5

  6. MC truth / Rec. hit matching - alternative algorithm In order to avoid the segmentation faults on certain events, I wrote an alternative hit matching algorithm It follows a similar philosophy, and true hits are stored in a vector 1. loop on all voxel, merge together voxels at same time, position and pid. 2. sort the vector by increasing view, crm, channel and time 3. merge hits together if their time difference is ≤ gap value 4. match reconstructed and true hits if their starting time is ≤ Δ t value 5. if several true hits could be associated, select the one with lowest Δ Q value 6

  7. MC truth / Rec. hit matching - Matching Efficiency Reconstruction of the same CR event. View 0 View 0 View 1 View 1 20 20 0.965 tdiff tdiff 0.94 18 18 0.96 0.935 16 16 14 0.955 14 0.93 12 12 0.95 ★ ★ 0.925 10 10 0.945 8 8 0.92 6 6 4 5 6 7 8 9 10 11 4 5 6 7 8 9 10 11 gap gap gap and Δ t values varied At gap = 6 and Δ t = 10 ( ★ ), very similar results as the svn code 7

  8. MC truth / Rec. hit matching - Δ Q mean Δ Q = {QTot(trueHit) - QTot(recHit)}/QTot(trueHit) Reconstruction of the same CR event. View 0 - CRM 0 View 0 - CRM 0 View 0 - CRM 1 View 0 - CRM 1 20 0.004 20 tdiff tdiff 0.024 0.003 18 18 0.002 0.022 16 16 0.001 0.02 14 14 0 0.018 12 12 − 0.001 0.016 ★ ★ 10 10 0.002 − 0.014 8 0.003 8 − 0.012 0.004 − 6 6 4 5 6 7 8 9 10 11 4 5 6 7 8 9 10 11 gap gap View 0 - CRM 2 View 0 - CRM 2 View 0 - CRM 4 View 0 - CRM 4 20 20 0.01 0.018 tdiff tdiff 18 18 0.008 0.016 0.006 16 16 0.014 0.004 14 14 0.012 0.002 12 12 ★ ★ 0.01 0 10 10 0.002 0.008 − 8 8 0.004 − 0.006 6 6 4 5 6 7 8 9 10 11 4 5 6 7 8 9 10 11 gap gap gap and Δ t values varied At gap = 6 and Δ t = 10( ★ ), very similar results as the svn code 8

  9. MC truth / Rec. hit matching - Δ Q rms Δ Q = {QTot(trueHit) - QTot(recHit)}/QTot(trueHit) Reconstruction of the same CR event. View 0 - CRM 0 View 0 - CRM 0 View 0 - CRM 1 View 0 - CRM 1 20 20 0.174 tdiff 0.09 tdiff 0.172 18 18 0.088 0.17 16 16 0.086 0.168 14 14 0.166 0.084 12 12 0.164 ★ ★ 10 10 0.082 0.162 8 8 0.16 0.08 6 6 4 5 6 7 8 9 10 11 4 5 6 7 8 9 10 11 gap gap View 0 - CRM 2 View 0 - CRM 2 View 0 - CRM 4 View 0 - CRM 4 20 20 tdiff tdiff 0.096 0.136 18 18 0.094 0.134 0.092 16 16 0.132 0.09 14 14 0.088 0.13 0.086 12 12 0.128 ★ ★ 0.084 10 10 0.126 0.082 0.08 8 8 0.124 0.078 6 6 4 5 6 7 8 9 10 11 4 5 6 7 8 9 10 11 gap gap gap and Δ t values varied At gap = 6 and Δ t = 10 ( ★ ), very similar results as the svn code 9

  10. On gap and Δ t cuts ETHZ preAmp response Function mV 9 8 Any deposition at the CRP is shaped by the electronics (modeled by a 7 6 convolution between the deposition and the pre-amplifier response function) 5 4 3 2 two peaks 9 time bins apart two peaks 10 time bins apart 1 0 0 5 10 15 20 25 30 35 40 45 50 → makes 1 hit. → makes 2 hits. time [us] → Any deposition within 9 time 2 2 10 10 bins will be inseparable NB : Here both input peaks have the same charge. If charges are 10 10 different, the minimum time difference to distinguish two charge 1000 1010 1020 1030 1040 1050 1060 995 1000 1005 1010 1015 1020 1025 1030 1035 1040 deposition is larger. time time Red : Input hits [as true hits] Black : Shaped distributions [as measured hits] I changed the code philosophy: • No more true hits merging [gap = 0] • Any true hits from tstart(recHit) - Δ t to tpeak(recHit) is matched to the reconstructed hit 10

  11. MC truth / Rec. hit matching - gap = 0 Matching efficiency - same CR events View 0 - View 1 Matching Efficiency 1 0.9998 0.9996 0.9994 0.9992 0.999 svn : 0.957 - 0.928 0.9988 8 10 12 14 16 18 tdiff 11

  12. MC truth / Rec. hit matching - Δ Q mean Δ Q mean distribution - same CR events Δ Q = {QTot(trueHit) - QTot(recHit)}/QTot(trueHit) View 0 - View 1 View 0 - View 1 CRM 0 CRM 0 CRM 1 CRM 1 0.01 0.03 mean mean 0.02 0.005 0.01 0 0 − 0.01 − 0.02 0.005 − − 0.03 − 0.04 0.01 − 0.05 − svn : 0.0007 - 0.0054 svn : 0.0217 - 0.0245 0.015 0.06 − − 8 10 12 14 16 18 8 10 12 14 16 18 tdiff tdiff View 0 - View 1 View 0 - View 1 CRM 2 CRM 2 CRM 3 CRM 3 0.012 mean mean 0.02 0.01 0.01 0.008 0.006 0 0.004 0.01 − 0.002 0 − 0.02 0.002 − − 0.03 − 0.004 0.006 0.04 − − svn : 0.0131 - 0.0359 svn : 0.0024 - 0.0020 − 0.008 0.05 − 8 10 12 14 16 18 8 10 12 14 16 18 tdiff tdiff 12

  13. MC truth / Rec. hit matching - Δ Q rms Δ Q rms distribution - same CR events Δ Q = {QTot(trueHit) - QTot(recHit)}/QTot(trueHit) View 0 - View 1 View 0 - View 1 CRM 0 CRM 0 CRM 1 CRM 1 0.12 0.18 rms rms 0.11 0.17 0.1 0.16 0.09 0.15 0.08 0.14 0.07 0.13 0.06 svn : 0.0720 - 0.0984 svn : 0.1591 - 0.1648 0.05 0.12 8 10 12 14 16 18 8 10 12 14 16 18 tdiff tdiff View 0 - View 1 View 0 - View 1 CRM 2 CRM 2 CRM 3 CRM 3 0.17 rms rms 0.09 0.16 0.085 0.08 0.15 0.075 0.14 0.07 0.065 0.13 0.06 0.12 0.055 svn : 0.1171 - 0.1567 svn : 0.0805 - 0.0782 0.11 0.05 8 10 12 14 16 18 8 10 12 14 16 18 tdiff tdiff 13

  14. MC truth / Rec. hit matching - bad match Black : Reconstructed hits with a matching truth information Green : ‘Badly’ matched hits (| Δ Q| > 0.4) [gap = 0, Δ t = 15 time bins] 14

  15. MC truth / Rec. hit matching focus on a bad match case Black : Reconstructed hits with a matching truth information Green : ‘Badly’ matched hits (| Δ Q| > 0.4) on channel 467 = 145.93 cm 3 charge 10 Black : Measured hits Red : true hits (gap = 0) 2 10 Blue : true hits (gap = 6) 10 1 1 − 10 2 − 10 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 time bin 15

  16. MC truth / Rec. hit matching Black : Measured hits (= red shaped by QScan) Blue : red distribution shaped offline charge hit 2 hit 3 The hit finding algorithm hit 1 tstart tpeak finds 3 hits 3 10 2 10 Red : True hits (no gap, pedestal added) Gray : QScan simulation, shaping turned off → Original deposition retrieved 10 5600 5650 5700 5750 5800 time bin 16

  17. MC truth / Rec. hit matching - bad match example Black : Measured hits Charge between tstart(recHit) -10 to tstart(recHit) +10 is matched to the hit Blue : true hits (gap = 6) charge hit 2 hit 3 hit 1 3 10 unmatched unmatched 2 10 Δ Q = 0.74 10 5600 5650 5700 5750 5800 time bin 17

  18. MC truth / Rec. hit matching - bad match example Black : Measured hits any true charge between tstart(recHit) -15 to tpeak(recHit) is matched to the hit Red : true hits (no gap) charge hit 2 hit 3 hit 1 3 10 Δ Q = -0.98 Δ Q = -0.58 2 10 Δ Q = 0.04 10 5600 5650 5700 5750 5800 time bin some true hits are not matched 18

Recommend


More recommend