ball op• Data kinds: signal × points × table → table
• Call: import fullseye as fs; fs.ledger.thrust_fit(t, p, bp: 'dict', *, iters: 'int' = 20, dt: 'float' = 0.001) -> 'dict' (implementation को सीधे call करना हो तो import ballistics; ballistics.thrust_fit(t, p, bp: 'dict', *, iters: 'int' = 20, dt: 'float' = 0.001) -> 'dict', registry से लेना हो तो opsdrive.get("thrust_fit"))
• GPU: नहीं (केवल CPU reference implementation)
trajectory (t_i, p_i) पर "गुरुत्व + drag + स्थिर specific thrust" model को (p₀, v₀, C_d, a_T) के 10 parameters से Levenberg–Marquardt (finite-difference Jacobian, C_d ≥ 0 projection से) द्वारा fit करता है। p या तो (N, 3) world points है या monocular side view से उठाया (N, 2) planar (x, z) track (तब y घटक का न observation है न unknown: 7 parameters, n = 2 × samples)। bp ball_params की table है (mass, frontal area, air density, g; radius केवल frontal area देने के लिए — car के लिए वह r दें जिसका A = πr² frontal area हो)। लौटाता है {"p0", "v0", "cd", "thrust" (3,), "thrust_norm", "rms", "rss", "rss_floor", "n", "k", "dims", "cond", "iters", "t0"}(n = residuals की संख्या, k = हिलाए गए parameters की संख्या; aic_from_rss के input)। thrust वाली ground-truth trajectory से a_T 1e-5 m/s² पर लौटता है; शून्य thrust से बनी trajectory में thrust_norm 1e-5 या कम रहता है (gate)। rss_floor वह ऊपरी सीमा (sum of squares) है जो RK4 grid को sample times पर linear interpolate करने की त्रुटि ≤ a dt²/8 residuals में छोड़ सकती है। dt sample spacing से अधिक नहीं हो सकता (अन्यथा model samples के बीच piecewise linear हो जाता है), iters ≥ 1, और vacuum (rho = 0) में C_d पहचाना नहीं जा सकता — हर एक ValueError।
खाली input (t में 0 elements) पर ValueError आता है।
• 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 में दिए गए हैं।
• poc_video_physics_consistency — py -3.11 examples/poc_video_physics_consistency.py
table को input के रूप में लेते हैं)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
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.