每一個月相都是一個以 UTC 表示的單一全球性瞬間,所以月球本身從不因時區而有所不同——會改變的只有印在它旁邊的日期。一個滿月是發生在某一個精確瞬間的天文事件;從東京到倫敦到洛杉磯,改變的是這個 UTC 瞬間如何對應到當地的時鐘和日期。這就是為什麼一家報紙可以列出「滿月:10 月 15 日」,而相隔十二小時的另一家卻把同一個滿月標示為「滿月:10 月 16 日」。月球是同一個天體,軌道是同一條路徑,在任何選定的瞬間,月球與太陽之間的相角只有一個數字。時區只有在標記的步驟才會介入,也就是把 UTC 事件轉換成讀者所在地的當地日期時。

why does moon phase differ by timezone
為何月相日期會因時區而不同

月球在同一瞬間只有一個相位

月球的相位是由月球與太陽的地心黃經差所定義。這個差值在空間中的任何單一瞬間都是一個以度數表示的單一數字。不存在「東京滿月」或「倫敦滿月」這種說法——只有一個以 UTC 表示的滿月瞬間,地球上的每一位觀測者都在同一刻共享它。

當像 USNO 天文應用月相 服務這類權威來源發布相位表時,每個事件時間都以 UTC 表示,正是出於這個原因。專業天文學家所使用的星曆表也遵循相同的慣例:在任何選定的瞬間,太陽、月球與地球的幾何關係並不會因為觀測者站在地球的哪一側而有所不同。週期是一個週期,瞬間是一個瞬間。

這也是為什麼在不同城市的兩個人,在同一個 UTC 瞬間抬頭看天空,會對月球被照亮的百分比以及月球與太陽之間的相角看法一致。如果你在同一個時鐘瞬間,與身處另一時區的人交換筆記,你們對月相的描述會相符。相角是一個全球性的單一數字;會改變的只有當地時鐘和當地日期。

為何日曆日期會跨時區移動

相位本身不會因為時區而改變。日期標記會,因為日期是一種與當地午夜綁定、而非與日月幾何綁定的日曆慣例。

想像一個發生於 10 月 16 日 02:30 UTC 的滿月。在冬季採用 UTC+0 的倫敦,當地時鐘顯示為 10 月 16 日 02:30,所以當地報紙會把滿月列在 10 月 16 日。在洛杉磯——晚了八小時——滿月實際發生時,當地時鐘仍顯示為 10 月 15 日 18:30。同一個天文事件在加州被標記為 10 月 15 日,在倫敦則被標記為 10 月 16 日,儘管它是同一個事件。

這樣的偏移不一定是整整一個日曆日;它取決於 UTC 事件落在當地午夜的哪一側。一個發生於 06:00 UTC 的滿月,在歐洲會是上午,在美洲是前一天的深夜,在東亞則是次日的下午。許多傳統的月相年曆會標明一個參考時區(通常是 UTC+0),讓讀者自行換算,而不是去猜測。天文現象在整個地球是一致的;標記則不是。

本機地心工具如何去除標記的干擾

要跳過時區日期標記造成的混淆,最快的方法是根據你自己瀏覽器當下的瞬間來計算相位,而不是依賴一份還得手動換算的 UTC 表。今日月相 就是這樣做的。它在頁面內執行一份固定版本的本機 Astronomy Engine 2.1.19,根據你的瀏覽器所回報的瞬間,計算地心月球–太陽黃經差以及被照亮比例,並把結果連同計算時間戳和你瀏覽器解析出的時區一起顯示出來。不需要位置權限、不需要遠端天文服務、執行階段不需要 CDN、也不需要帳號。

因為角度是針對你所處的瞬間計算出來的,所以「在我所在的位置此刻的月相是什麼」這個問題,與「在這個精確的 UTC 瞬間月相是什麼」會得到相同的答案。這個工具會明確顯示你所解析出的時區,正是為了讓你能看到瀏覽器正在使用哪一個 UTC 偏移量,而公開的角度區間則讓你能判斷該瞬間距離某個精確的主要事件有多接近。地心計算與你所在的城市無關,這就是為什麼它不會要求位置資料,也因此結果會與身處不同時區的朋友在同一個 UTC 瞬間所看到的完全相同。

對於想要在地心瞬間與具名主要事件之間進行轉換的讀者,這個工具也會在本機搜尋前後最接近的 0°、90°、180° 和 270° 事件,並將它們顯示在當前相位旁邊。這讓你不用自己進行時區計算,就能輕鬆看出距離下一次滿月還有多久。關於本機時間判讀的實務說明,請參考 本機時間判讀指南。

三步驟讀取當前相位

依照下列步驟讀取當前相位,避免掉入時區日期的陷阱。

  1. 開啟「今日月相」並等待本機計算結果顯示八階段標籤、以度數表示的相角、被照亮百分比,以及附近的主要相位事件。所有運作都在頁面內進行,因此不會有任何網路請求離開你的裝置。
  2. 讀取顯示在結果旁的計算時間戳以及瀏覽器所解析出的時區。每當你想要取得瀏覽器當下瞬間的新樣本時,使用「重新計算」;這個小工具在掛載時也會每分鐘自動重新整理一次。
  3. 將該角度與下一節中公開的區間表進行交叉比對,以判斷你看到的是一個方便閱讀的八階段標籤,還是正好落在精確的 0°、90°、180° 或 270° 主要事件之上。

八階段標籤與精確主要事件的差異

八階段標籤是用於日常顯示。它把 0–360° 的圓周在四個主要角度的中點處劃分,而這些區間會在工具中公開揭露,而不是隱藏起來。新月、上弦、滿月、下弦分別是發生於 0°、90°、180° 和 270° 的精確主要事件;其餘四個標籤則是用來涵蓋中間角度的便利區間。

顯示標籤角度範圍(度)
新月337.5 – 360 和 0 – 22.5
眉月(漸盈)22.5 – 67.5
上弦67.5 – 112.5
盈凸月112.5 – 157.5
滿月157.5 – 202.5
虧凸月202.5 – 247.5
下弦247.5 – 292.5
眉月(漸虧)292.5 – 337.5

區間包含下限但不包含上限,唯一例外是在 360° 處會整齊地銜接回起點。這個標籤是 Lizely 的慣例,並非 USNO 的官方分類。相對地,四個主要事件在這個產品中具有精確的數學事件定義,工具會在本機搜尋前後最接近的 0°、90°、180° 和 270° 瞬間,讓讀者能明確看到每個事件相對於當前瞬間落在什麼時候。

時區會影響與不會影響的事項

時區不會影響地心相角。在給定的 UTC 瞬間,地心月球–太陽差值在地球上的每一個時區都相同;改變的只有當地時鐘和當地日期標記。

時區會影響三項這個工具刻意不計算的事項:月出與月沒時間、月球在當地地平線上的視高度,以及月球目前是否根本位於地平線以上。這些問題屬於位置相關,需要經緯度,而這項工具並不會索取。大氣能見度、當地地平線、天氣,以及月出月沒是不同的問題,需要位置相關資料。

公開的準確度界限反映了這項區別。所得結果為教育性質的天文估算,並不主張具有秒級精度、不主張為特定地點的觀測視效時間、不具專業星曆地位,也不適用於導航、攝影安全、潮汐、宗教儀式或其他對時間敏感的重要決策。發布的輸入與輸出範圍為 1700 至 2100 年,這正是 USNO 天文應用 API 用於獨立測試固定資料所涵蓋的範圍。即時介面通常遠在這個範圍之內。

有 12 個明確的主要相位時間戳是從官方的 USNO 分鐘精度 API 凍結而來,並用作測試固定資料;這項工具要求每一個結果與對應的 USNO 分鐘精度時間戳的差距不得超過兩分鐘。USNO 僅供研究與測試使用,絕不會在執行階段使用。當頁面資源載入完成後,結果在離線狀態下仍完全可用,並且當小工具處於掛載狀態時,會每分鐘自動重新整理一次。計算過程不需要任何外部 CDN、USNO 執行階段請求、依賴分析數據的運算、檔案上傳、相機、GPS、cookie 或瀏覽器儲存空間。

如果你正在權衡各種選項,如何查詢過去日期的逆行行星 一文對此有詳細說明。