long_simulate — DRIVE long op

• Datenarten: scalar × scalar × any → table

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

Verwendung

Integriert die Längsbewegungsgleichung mit RK4 (Schritte werden an Ereigniszeitpunkten geteilt; siehe Docstring des Moduls).

Parameters

s0, v0 : Anfangsposition [m] (Bogenlänge entlang der Straße) und Geschwindigkeit [m/s] (negativ = rückwärts)

command : command(t, s, v) -> (drive, brake) (beide ≥ 0 [m/s²]. Gekappt bei μ g cos θ und a_max).

Mit v = 0.0 wird nur während des Stillstands aufgerufen (selbst wenn die Geschwindigkeit im Mittelpunkt eines Bewegungsschritts 0 kreuzt, erhält der Befehl

±1e-300 in Bewegungsrichtung), daher darf der Befehl „nach dem Anhalten halten“ mit v == 0 / v <= 0 formulieren.

Ändert sich der Befehl zeitlich unstetig, diesen Zeitpunkt in t_breaks eintragen, damit der Schritt dort geteilt wird (für Exaktheit).

road : Längsprofil der Straße (wie road_eval)

t_end : Endzeit [s], dt : Schrittweite [s]

params : dict von long_params (None = Standard)

t0 : Anfangszeit [s]

Returns

dict : t, s, v, a, drive, brake, z, W_drive, W_brake, W_rr, W_drag (jeweils (n,)-Arrays, a = Beschleunigung zu diesem Zeitpunkt),

stopped (bool-Array), events (Liste von ("stop"|"move", t, s, 向き)), saturated (ob ein Schritt an einer Grenze gekappt wurde), params.

Raises ValueError: ungültige Argumente, Befehl lieferte negativen oder nicht endlichen Wert.

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_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

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

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