sun op• Data kinds: signal → table
• Call: import fullseye as fs; fs.ledger.sun_position(lat_deg, lon_deg, unix_times) (implementation को सीधे call करना हो तो import geocam; geocam.sun_position(lat_deg, lon_deg, unix_times), registry से लेना हो तो opsgeocam.get("sun_position"))
latitude, longitude, समय (UNIX second, UTC) → सूर्य का azimuth और elevation [degree] (NOAA का solar position algorithm, Meeus 1998 का कम-सटीकता सूत्र)।
एक प्रकाशित closed form (NOAA Global Monitoring Laboratory के Solar Calculator जैसे ही formulas:
Julian century → mean longitude, mean anomaly, equation of centre → apparent longitude → obliquity of the ecliptic → declination और equation of time → hour angle → zenith angle, azimuth)। accuracy 2000 ± 1 century के लिए लगभग 0.01° है (NOAA का कथन), atmospheric refraction को elevation में जोड़ा जाता है (NOAA का piecewise formula, horizon के पास अधिकतम 0.57°)। समय UTC के UNIX seconds में (1-D, float चलेगा)। leap seconds और ΔT को ignore किया जाता है (0.01° पर इनका असर नहीं)।
Args:
lat_deg, lon_deg: observation point। longitude पूर्व की ओर positive।
unix_times: (N,) UNIX seconds (UTC)। scalar भी चलेगा।
Returns:
table: azimuth_deg (N,) (उत्तर 0°, clockwise) / elevation_deg (N,) (refraction सहित) /
elevation_true_deg (N,) (refraction के बिना) / declination_deg / equation_of_time_min /
hour_angle_deg / n।
ground truth से जाँचे गए गुण (tests/test_geocam.py): equinox की दोपहर में elevation = 90 − |latitude|, northern hemisphere में दोपहर का azimuth 180° (दक्षिण), azimuth पूर्व → दक्षिण → पश्चिम monotonic, sunrise और sunset की elevation symmetric, declination ±23.44° के अंदर रहता है।
• 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 में दिए गए हैं।
• poc_public_camera_heading — py -3.11 examples/poc_public_camera_heading.py
• poc_public_camera_heading_real — py -3.11 examples/poc_public_camera_heading_real.py
table को input के रूप में लेते हैं)render_skyline_view · camera_orientation_from_skyline
sun)sun_pixel_position · camera_orientation_from_sun · sun_bloom_fit · camera_orientation_from_sun_candidates
*Provenance: geocam.py — GEOCAM operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.