unexplained_peaks — DRIVE pxrd op

• Datenarten: table → table

• Aufruf: 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) (die Implementierung direkt: 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); aus dem Register: opsdrive.get("unexplained_peaks"))

Verwendung

Extrahiert aus dem Residuum der Phasenanteil-Anpassung die Peaks, die keine Phase des Wörterbuchs erklären kann (Hinweise auf eine unbekannte Phase).

Wendet diffraction_peaks auf das Residuum an (fit_result von residual oder intensity − fit) und behält nur positive Peaks. Ein Residuum-Peak auf einer starken Linie einer bekannten Phase (Höhe kleiner als das known_ratio-Fache des Modells der bekannten Phase an dieser Stelle) ist wahrscheinlich ein Rest von Breiten- oder Formabweichung; er wird daher mit near_known=True markiert und von der Indizierung ausgeschlossen (zurückgegeben, nicht gelöscht). Bleiben 3 oder mehr übrig, versucht cubic_index eine kubische Indizierung (index=True, bis zu 1/3 Ausreißer erlaubt). Ist das Gitter einer bekannten Phase verschoben, zeigt das Residuum „Positiv-Negativ-Paare“, die zu falschen Peaks werden — dann zuerst lattice_tolerance von phase_fractions verwenden. Für noise übergibt man sinnvollerweise sigma von azimuthal_integrate (fehlt es, wird es aus dem MAD des Residuums geschätzt). Das für die Peak-Entscheidung verwendete Rauschen ist sqrt(noise² + (model_error × 既知相の模型)²) — bei hohen Zählraten ist das Poisson-σ klein, und eine geringe Formabweichung einer starken bekannten Linie (Rest der Näherung der kastenförmigen Pixelverbreiterung durch eine Gaußfunktion; rwp 2 bis 4 % in synthetischen Bildern) sieht wie ein „Peak“ von Tausenden σ aus; daher wird der relative Fehler des Modells selbst in den Rauschboden aufgenommen.

Rückgabe (dict): two_theta / d [Å] / height / fwhm / snr / near_known (bool) / index (Ergebnis von cubic_index oder None).

Raises ValueError: fit_result nicht in der Form von phase_fractions, Längen stimmen nicht überein.

Referenzen (Beispieldaten, Literatur)

• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).

• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.

• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

• poc_pxrd_phase_peel — py -3.11 examples/poc_pxrd_phase_peel.py

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

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

Gleiche Kategorie (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. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*

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