日出日落時間計算器

Sunrise Sunset

Sunrise Sunset

📐 工作原理與說明

Key formulas: now.getUTCHours() × 60 + now.getUTCMinutes() + now.getUTCSeconds() ÷ 60; ((utcMin + tz × 60) % 1440 + 1440) % 1440; 720 - 4 × lon - p.EoT + tz × 60

🕐 一日日照時間軸

橙色區域為白晝時段(含大氣折射修正),紅線為太陽正午,紫線為當前時刻

00:0006:0012:0018:0024:00

🧭 當前太陽位置

基於所選日期的太陽引數與該地當前時刻計算的太陽高度角與方位角

天穹投影(圓心=正上方,圓邊=地平線)

📐 NOAA 太陽演算法說明

計算流程

1. 由公曆日期計算 儒略日 (JD),再得 儒略世纪 T = (JD - 2451545) / 36525

2. 由 T 計算 太阳几何平黄经 L₀、平近点角 M、地球轨道偏心率 e

3. 中心方程求得 太阳真黄经,經章動與光行差修正得 视黄经

4. 由 黄赤交角 與視黃經求得 太阳赤纬 δ

5. 由 L₀、M、e、黃赤交角求得 时差方程 EoT(分鐘)

6. 日出日落時角:cosH = cos(90.833°)/(cosφ·cosδ) - tanφ·tanδ

7. 太阳正午 = 720 - 4·经度 - EoT + 时区×60(分鐘)

8. 日出 = 正午 - 4·H,日落 = 正午 + 4·H

關鍵引數

90.833°:日出日落的天頂角,= 90° + 0.266°(太陽視半徑)+ 0.566°(大氣折射),計入太陽未完全升至地平線即可被看見的效應。

時差方程 EoT:由於地球橢圓軌道與自轉軸傾斜,太陽實際位置與鐘錶時間的偏差,全年範圍約 -14 ~ +16 分鐘。

太陽正午:太陽到達當地子午圈最高點的時刻,並不一定恰為 12:00,與經度和時區中心經度差異有關。

計算結果為理論天文值,未考慮地形遮擋、海拔及區域性氣象。日出日落時刻精度約 ±1~2 分鐘,高緯度地區誤差略大。

📚 深度解析:日出日落時間計算器

💡 常見使用場景

  • 基於 NOAA 太陽演算法,按日期、經緯度與時區計算日出、日落、太陽正午與日照時長。
  • 規劃戶外拍攝、航行或作息,瞭解不同季節的白晝長短變化。
  • 結合海拔與地形遮擋做更貼近實際的可見時段估計。
示例:北緯 40°、夏至日出約 4:30
在 NOAA 演算法下,緯度 40°N 於夏至(δ≈+23.44°)的晝長可達約 15 小時,日出約在當地 4:30、日落約 19:30;冬至晝長約 9 小時,日出約 7:30。

❓ 常見問題(FAQ)

演算法為什麼要區分民用、航海、天文晨昏?
它們以太陽中心在地平線下 6°、12°、18° 劃分,對應不同活動所需的天光條件。
海拔和地形會影響結果嗎?
會。高山或海濱的幾何地平與標準海平面不同,需疊加地形遮擋才能得到實際可見的日出日落。
⚠️ 使用說明與注意事項
📖關於「日出日落時間計算器」 ▼

📝工具簡介

日出日落時間計算器是一款天文領域的線上工具,採用美國國家海洋和大氣管理局(NOAA)釋出的標準太陽計算演算法,根據使用者輸入的日期、緯度、經度與時區,精準計算任意地點當日的日出時間、日落時間、太陽正午時刻、白晝時長與日照時長,並即時顯示當前太陽的高度角和方位角。所有計算均在瀏覽器本地完成,無需聯網,資料不上傳。

✨功能特點

🎯使用場景

📐計算原理

工具首先將公曆日期轉換為儒略日(JD),再求得儒略世紀 T,依次計算太陽幾何平黃經、平近點角、地球軌道偏心率,通過中心方程與章動光行差修正得到太陽視黃經,結合黃赤交角求出太陽赤緯與時差方程(EoT)。日出日落採用 90.833° 天頂角(含太陽視半徑與大氣折射修正),通過時角公式 cosH = cos(90.833°)/(cosφ·cosδ) - tanφ·tanδ 求得日出日落時角,進而得到當地日出、日落與太陽正午時刻。