long_simulate — DRIVE long op

• Data kinds: scalar × scalar × any → table

• Call: import fullseye as fs; fs.ledger.long_simulate(s0: 'float', v0: 'float', command: 'Callable', road=None, t_end: 'float' = 30.0, dt: 'float' = 0.01, params: 'Optional[dict]' = None, t_breaks: 'Sequence[float]' = (), t0: 'float' = 0.0) -> 'Dict[str, object]' (implementation को सीधे call करना हो तो import drivelong; drivelong.long_simulate(s0: 'float', v0: 'float', command: 'Callable', road=None, t_end: 'float' = 30.0, dt: 'float' = 0.01, params: 'Optional[dict]' = None, t_breaks: 'Sequence[float]' = (), t0: 'float' = 0.0) -> 'Dict[str, object]', registry से लेना हो तो opsdrive.get("long_simulate"))

उपयोग

longitudinal गति समीकरण को RK4 से integrate करता है (घटनाओं के समय पर step काटे जाते हैं; module का docstring देखें)।

Parameters

s0, v0 : प्रारंभिक स्थिति [m] (सड़क के साथ चाप-लंबाई) और गति [m/s] (ऋणात्मक = पीछे की ओर)

command : command(t, s, v) -> (drive, brake) (दोनों ≥ 0 [m/s²]। ऊपरी सीमा μ g cos θ और a_max पर रुकती है)।

v = 0.0 के साथ केवल रुके रहने के दौरान ही कॉल होता है (चलते हुए चरण के मध्यबिंदु पर गति 0 को पार करे तब भी आदेश को गति की दिशा में

±1e-300 दिया जाता है), इसलिए आदेश v == 0 / v <= 0 से "रुकने पर रोके रखो" लिख सकता है।

यदि आदेश समय के साथ असतत रूप से बदलता है, तो उस समय को t_breaks में डालें ताकि चरण वहीं कटे (सटीकता के लिए)।

road : सड़क का अनुदैर्ध्य प्रोफ़ाइल (road_eval के समान)

t_end : समाप्ति समय [s], dt : चरण [s]

params : long_params का dict (None = डिफ़ॉल्ट)

t0 : प्रारंभिक समय [s]

Returns

dict : t, s, v, a, drive, brake, z, W_drive, W_brake, W_rr, W_drag (प्रत्येक (n,) सरणी, a = उस क्षण का त्वरण),

stopped (bool सरणी), events (("stop"|"move", t, s, 向き) की सूची), saturated (क्या कोई चरण सीमा पर रुका), params।

Raises 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_driving_longitudinal — py -3.11 examples/poc_driving_longitudinal.py

• poc_driving_town — py -3.11 examples/poc_driving_town.py

• poc_driving_traffic — py -3.11 examples/poc_driving_traffic.py

• poc_driving_weather — py -3.11 examples/poc_driving_weather.py

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

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

इसी category के (long)

long_params · road_profile · road_eval · long_energy_residual · stopping_distance_grade · stop_line_plan · plan_command · hill_hold_brake_min


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

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