env op• Data kinds: scalar × scalar × scalar × scalar × scalar → table
• Call: import fullseye as fs; fs.ledger.sun_events(year: 'int', month: 'int', day: 'int', lat: 'float', lon: 'float', tz_hours: 'float' = 9.0, *, h0: 'float' = -0.8333) -> 'Dict[str, object]' (to call the implementation directly, import driveenv; driveenv.sun_events(year: 'int', month: 'int', day: 'int', lat: 'float', lon: 'float', tz_hours: 'float' = 9.0, *, h0: 'float' = -0.8333) -> 'Dict[str, object]'; from the registry, opsdrive.get("sun_events"))
Times of sunrise, solar noon and sunset for the day (local calendar date), plus the azimuths of sunrise/sunset and the altitude at solar noon.
Sunrise/sunset = the time at which the geometric altitude of the Sun's centre crosses h0 (default −0.8333° = refraction 34′ + semidiameter 16′, upper limb touching the horizon). h0="naoj" uses the definition of the Ephemeris Computation Office of the National Astronomical Observatory of Japan (upper limb of the Sun on the apparent horizon, horizontal refraction 35′8″, semidiameter from the distance). Transit = hour angle 0. Both are obtained by solving sun_at in time (bisection, to 1e-6 day ≈ 0.1 s).
dict : sunrise / transit / sunset (timezone-aware datetime, None if there is no sunrise/sunset),
sunrise_azimuth / sunset_azimuth (degrees), transit_altitude (degrees, geometric altitude without refraction, and transit_altitude_apparent).
• 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.
• poc_driving_weather — py -3.11 examples/poc_driving_weather.py
table as input)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
env)julian_day · sun_at · sun_vector · sun_illuminance · koschmieder · mor_from_beta · beta_from_mor · road_row_distance
*Provenance: driveenv.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.