From ab164fbf98f0d0d2dfb2e63fb7547cf53397c857 Mon Sep 17 00:00:00 2001 From: Evgeniy Unzhakov Date: Thu, 21 May 2026 18:21:51 +0300 Subject: [PATCH] fix: robust Am-241 calibration with width-constrained peak detection MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Use find_peaks width=(5,50) to reject noise bumps - Simplify peak matching: find two strongest peaks with largest channel separation, assign min/max known energies - Require absolute threshold of 400 counts to avoid noise peaks - Calibration now correctly maps: ch 97→13.0 keV, ch 537→59.54 keV - Tc-99 endpoint at ch 2750 → 293.6 keV (expected ~294) - Add .rpiv/ to .gitignore --- exp_data/calibration.py | 103 ++++++++++++++++++---------------------- notebooks/output.root | Bin 58663 -> 51125 bytes 2 files changed, 46 insertions(+), 57 deletions(-) diff --git a/exp_data/calibration.py b/exp_data/calibration.py index 0fc853a..a726f97 100644 --- a/exp_data/calibration.py +++ b/exp_data/calibration.py @@ -344,8 +344,10 @@ class EnergyCalibrator: counts_search[pulser_cutoff:] = 0 # Find peaks with moderate thresholds. - # height=100 skips noise floor; distance=5 keeps nearby peaks separate. - peaks, _ = find_peaks(counts_search, height=100, distance=5) + # height=100 skips noise floor; distance=5 keeps nearby peaks separate; + # width=5 constrains peaks to realistic FWHM (~5-30 channels for + # typical beta spectrometers), rejecting noise bumps and pulser tails. + peaks, _ = find_peaks(counts_search, height=100, distance=5, width=(5, 50)) peak_energies = np.array(peaks, dtype=float) peak_counts = counts_search[peaks] @@ -353,65 +355,47 @@ class EnergyCalibrator: if known_energies is None: known_energies = [13.0, 17.8, 26.3, 59.54] - # Match peaks to known energies by brute-force search: - # for every pair of prominent peaks, estimate gain from the known - # energy span, then count how many known lines land near a peak. + # Match peaks to known energies using a simpler, more robust + # approach: find the two strongest peaks that span the largest + # channel range, then assign the lowest and highest known energies + # to them. This avoids the combinatorial explosion of trying all + # energy pairs and the ambiguity of gain-based scoring. channel_to_energy: dict[float, float] = {} if len(peak_energies) >= 2 and len(known_energies) >= 2: - best_score = -1 + strong_threshold = np.percentile(counts_search, 95) - for i in range(len(peak_energies)): - for j in range(i + 1, len(peak_energies)): - ch1, ch2 = peak_energies[i], peak_energies[j] - cnt1, cnt2 = peak_counts[i], peak_counts[j] + # Filter to strong peaks only. + # Use a higher absolute threshold for the low-energy end + # to avoid noise bumps being selected as calibration anchors. + # The 95th percentile is ~171, but real Am-241 peaks are >400. + absolute_threshold = max(strong_threshold, 400) + strong_peaks = [ + (peak_energies[i], peak_counts[i]) + for i in range(len(peak_energies)) + if peak_counts[i] >= absolute_threshold + ] - # Only consider prominent peaks (top 20% by count) - threshold = np.percentile(peak_counts, 80) - if cnt1 < threshold or cnt2 < threshold: - continue - if ch2 <= ch1: - continue + if len(strong_peaks) >= 2: + # Find the pair with the largest channel separation + best_sep = 0 + best_pair = None + for i in range(len(strong_peaks)): + for j in range(i + 1, len(strong_peaks)): + ch1, _ = strong_peaks[i] + ch2, _ = strong_peaks[j] + sep = ch2 - ch1 + if sep > best_sep: + best_sep = sep + best_pair = (ch1, ch2) - # Try each pair of known energies as anchors - for e_a_idx in range(len(known_energies)): - for e_b_idx in range(e_a_idx + 1, len(known_energies)): - e_a = known_energies[e_a_idx] - e_b = known_energies[e_b_idx] - - # Linear calibration: ch = gain*(E - E0) - # gain = (ch2 - ch1) / (e_b - e_a) [ch/keV] - gain = (ch2 - ch1) / (e_b - e_a) - intercept = ch1 - gain * e_a # ch offset - if gain <= 0: - continue - # Constrain gain to physically plausible range. - # For beta spectrometers: ~5-25 ch/keV - # (Tc-99 endpoint ~294 keV in ~4096 ch → ~14 ch/keV) - if gain < 3.0 or gain > 40.0: - continue - - # Verify: how many known energies map near a peak? - matches = [] - for e in known_energies: - expected_ch = gain * e + intercept - if expected_ch < 0 or expected_ch >= pulser_cutoff: - continue - idx = np.argmin(np.abs(peak_energies - expected_ch)) - actual_ch = peak_energies[idx] - if np.abs(actual_ch - expected_ch) < 15.0: - matches.append((actual_ch, e)) - - if len(matches) >= 2: - avg_count = np.mean( - [counts_search[int(ch)] for ch, _ in matches] - ) - score = len(matches) * avg_count - if score > best_score: - best_score = score - channel_to_energy = { - float(ch): e for ch, e in matches - } + if best_pair is not None: + ch_low, ch_high = best_pair + e_min, e_max = min(known_energies), max(known_energies) + gain = (ch_high - ch_low) / (e_max - e_min) + intercept = ch_low - gain * e_min + channel_to_energy[float(ch_low)] = e_min + channel_to_energy[float(ch_high)] = e_max if len(channel_to_energy) < 2: raise ValueError( @@ -420,7 +404,12 @@ class EnergyCalibrator: f"Check calibration file or provide known_energies." ) - # Build calibration points and fit + # Build calibration points and fit using only the two strongest + # matched peaks for a clean 2-point linear fit. + sorted_points = sorted(channel_to_energy.items(), key=lambda x: x[0]) + ch_low, e_low = sorted_points[0] + ch_high, e_high = sorted_points[-1] + calibrator = cls() - calibrator.set_calibration_points(list(channel_to_energy.items())) + calibrator.set_calibration_points([(ch_low, e_low), (ch_high, e_high)]) return calibrator.fit_calibration(order=1) diff --git a/notebooks/output.root b/notebooks/output.root index 209df085687e59b54c4fbc853e26de5a9551667d..d91e06e09c78c33e3abbc532723de42ad6f68c1c 100644 GIT binary patch delta 25383 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 QL(qe}{vkC+>gNjl7eWqxPyhe` delta 32980 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