puck_wall_bounce — DRIVE puck op

• Datenarten: signal × signal × scalar × scalar → table

• Aufruf: import fullseye as fs; fs.ledger.puck_wall_bounce(v, normal, e: 'float', kt: 'float' = 1.0) -> 'dict' (die Implementierung direkt: import puck; puck.puck_wall_bounce(v, normal, e: 'float', kt: 'float' = 1.0) -> 'dict'; aus dem Register: opsdrive.get("puck_wall_bounce"))

Verwendung

Stoß mit einer Wand: Normalkomponente vₙ' = −e vₙ, Tangentialkomponente vₜ' = kₜ vₜ (e = normale Stoßzahl, kₜ = tangentiale Erhaltungsrate = tangentiale Stoßzahl).

Rotation wird nicht mitgeführt (die durch Wandreibung eingetragene Rotation ist in die tangentiale Abnahme eingefaltet. Cross 2022 beschreibt die tangentiale Stoßzahl bei Scheibenstößen nach "Gleiten oder Haften" —— diese 2 Bereiche sind nicht enthalten). Rückgabe {"v", "vn_in", "vn_out", "vt_in", "vt_out", "energy_ratio"}. Bei rein normalem Stoß gilt energy_ratio = e² (Gate). Bei v·n ≥ 0 (entfernt sich) geschieht nichts.

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_air_hockey_intercept — py -3.11 examples/poc_air_hockey_intercept.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 (puck)

puck_table · puck_slide_predict · puck_state_at · puck_crossing_point · puck_mirror_path · puck_stop_distance · puck_camera · puck_pinhole_camera


*Provenance: puck.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.