unexplained_peaks — DRIVE pxrd op

• 資料種類:table → table

• 呼叫: import fullseye as fs; fs.ledger.unexplained_peaks(fit_result, intensity=None, min_snr=6.0, index=True, noise=None, known_ratio=0.25, model_error=0.1)(要直接呼叫實作,import pxrd; pxrd.unexplained_peaks(fit_result, intensity=None, min_snr=6.0, index=True, noise=None, known_ratio=0.25, model_error=0.1);從台帳取用則 opsdrive.get("unexplained_peaks"))

用法

從物相分率擬合的殘差中擷取字典中任何物相都無法解釋的峰(未知物相的線索)。

對殘差(fit_result 的 residual,或 intensity − fit)套用 diffraction_peaks,只保留正峰。疊在已知相強線上的殘差峰(高度小於該位置已知相模型的 known_ratio 倍)很可能是寬度或形狀不吻合的殘留,因此標記 near_known=True 並從指標化中排除(不刪除,照樣回傳)。若剩餘 3 條以上,則以 cubic_index 嘗試按立方晶指標化(index=True,允許最多 1/3 離群)。若已知相的晶格有偏差,殘差中會出現「正負成對」,成為假峰 —— 此時應先使用 phase_fractions 的 lattice_tolerance。noise 理應傳入 azimuthal_integrate 的 sigma(若無,則由殘差的 MAD 估計)。判定峰所用的雜訊為 sqrt(noise² + (model_error × 既知相の模型)²) —— 計數多時 Poisson 的 σ 很小,強已知線形狀的微小不吻合(以高斯近似像素箱形展寬的殘留;合成像中 rwp 2~4 %)會看起來像數千 σ 的「峰」,因此把模型本身的相對誤差放入雜訊底。

回傳值(dict): two_theta/d [Å]/height/fwhm/snr/near_known(bool)/index (cubic_index 的結果或 None)。

Raises ValueError: fit_result 不是 phase_fractions 的形式、長度不一致。

參考(範例資料、文獻)

• 範例資料目錄(下載 URL / 授權) —— 2-D 用 skimage.data(BSD/公有領域)加合成圖,3-D 給出真實資料源(Stanford/PDS 等)的下載 URL。

• 運算子來歷與參考文獻 —— 該運算子族所依據的研究/方法出處。

• 演算法的正典(作者、年份)與用途見上面的族使用指南。

可執行的範例(實際呼叫該運算子並已驗證的樣例)

• poc_pxrd_phase_peel — py -3.11 examples/poc_pxrd_phase_peel.py

型別可銜接的下一個運算子(可接受 table 作為輸入)

course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same

同類別(pxrd)

cif_read · cubic_prototype · powder_reflections · scherrer_size · debye_ring_image · detector_two_theta · detector_calibrate · azimuthal_integrate


*Provenance: pxrd.py — DRIVE 運算子登記表。本條目由 tools/opdocs.py md 自動產生(請勿手動編輯)。*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.