curve_speed_limit — DRIVE lateral op

• Data kinds: any → any

• Call: import fullseye as fs; fs.ledger.curve_speed_limit(radius, *, side_friction: 'float', superelevation: 'float' = 0.0, g: 'float' = 9.81) (to call the implementation directly, import drivelateral; drivelateral.curve_speed_limit(radius, *, side_friction: 'float', superelevation: 'float' = 0.0, g: 'float' = 9.81); from the registry, opsdrive.get("curve_speed_limit"))

Usage

Upper speed limit without sliding outward on a curve (radius R) with superelevation i and side-friction coefficient f: v = √(g R (i + f)/(1 − i f)) [m/s].

The exact form obtained by solving for v the commentary's eq. (2) of the Road Structure Ordinance (Japan), Z cos α − G sin α ≤ f (Z sin α + G cos α) (Z = G v²/(gR), i = tan α). If i f ≥ 1 (it does not slide outward at any speed), inf. radius may be an array (> 0).

Raises ValueError: R ≤ 0, f < 0, |i| ≥ 1, i + f ≤ 0 (slides inward even when stopped).

Empty input (radius with 0 elements) raises ValueError.

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)

• gallery_drive_lateral_env — py -3.11 examples/gallery_drive_lateral_env.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 · design_min_radius · understeer_gradient · steady_cornering · bicycle_model_step · 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.