drag_fit — DRIVE ball op

• Data kinds: signal × points × table → table

• Call: import fullseye as fs; fs.ledger.drag_fit(t, p, bp: 'dict', *, iters: 'int' = 20, dt: 'float' = 0.001) -> 'dict' (implementation को सीधे call करना हो तो import ballistics; ballistics.drag_fit(t, p, bp: 'dict', *, iters: 'int' = 20, dt: 'float' = 0.001) -> 'dict', registry से लेना हो तो opsdrive.get("drag_fit"))

• GPU: नहीं (केवल CPU reference implementation)

उपयोग

trajectory (t_i, p_i) पर "गुरुत्व + drag" model को (p₀, v₀, C_d) के 7 parameters(planar input में 5)से fit करता है — thrust_fit का बिना-thrust रूप (flight_fit C_d को ज्ञात मानकर 6 parameters रखता है; यह C_d भी पहचानता है)। result keys और entrance checks (dt ≤ sample spacing, iters ≥ 1, vacuum अस्वीकृत) thrust_fit जैसी हैं, thrust शून्य vector है। ground-truth trajectory से C_d 1e-4 पर लौटता है (gate)।

खाली input (t में 0 elements) पर ValueError आता है।

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• poc_video_physics_consistency — py -3.11 examples/poc_video_physics_consistency.py

वे अगले ops जिनसे type जुड़ता है (table को input के रूप में लेते हैं)

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

इसी category के (ball)

ball_params · impact_params · flight_vacuum · flight_ode · flight_simulate · flight_state_at · magnus_lift_coefficient · drag_coefficient_sphere


*Provenance: ballistics.py — DRIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

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