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 の形でない、長さの不一致。
• サンプルデータ カタログ(DL URL / ライセンス) — 2-D は skimage.data(BSD/public)+ 合成、3-D は実データ源(Stanford/PDS 等)の DL URL。
• 演算子の来歴・参考文献 — この op 族の元になった研究/手法の出典。
• アルゴリズムの正典(著者・年)と用途は上記ファミリ使い方ガイドに記載。
• 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 operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.