bicycle_model_step — DRIVE lateral op

• Data kinds: any → any

• Call: import fullseye as fs; fs.ledger.bicycle_model_step(state, steer, speed, params: 'dict', dt: 'float') -> 'np.ndarray' (to call the implementation directly, import drivelateral; drivelateral.bicycle_model_step(state, steer, speed, params: 'dict', dt: 'float') -> 'np.ndarray'; from the registry, opsdrive.get("bicycle_model_step"))

Usage

1 step of the linear 2-wheel equivalent (bicycle) model (classic 4th-order Runge–Kutta; δ and u are constant within the step).

state: (..., 5) = (x, y, ψ, v_y, r) (centre-of-gravity position [m], heading [rad], lateral velocity in vehicle coordinates [m/s], yaw rate [rad/s]). steer: front-wheel steering angle δ [rad] (broadcast to the leading shape of state). speed: forward speed u [m/s] (> 0, broadcast). params also needs inertia (I_z [kg m²]). Return value: next state (same shape).

Lateral forces are linear (no saturation). The equations become singular as u → 0, so u ≥ 0.5 m/s is required (handle low speeds with kinematics).

Raises ValueError: wrong shape, non-finite, u < 0.5, dt ≤ 0, I_z missing.

References (sample data, literature)

• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).

• Operator provenance and references — the sources of the research/methods this op family came from.

• The canonical algorithm (author, year) and its uses are named in the family usage guide above.

Runnable examples (verified samples that actually call this op)

• poc_driving_lateral — py -3.11 examples/poc_driving_lateral.py

Ops the type connects to (they accept any as input)

course_crank · course_s_curve · course_turnaround · course_slope · course_intersection · course_parallel_parking · course_crossing · course_road

Same category (lateral)

friction_circle_usage · curve_speed_limit · design_min_radius · understeer_gradient · steady_cornering · ackermann_steer_angles · offtracking_circle · rear_axle_path


*Provenance: drivelateral.py — DRIVE operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*

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