地平坐標系

维基百科,自由的百科全书
跳到导航 跳到搜索
地平坐標系:方位角可分為由北點開始向東方順時鐘方向所定義的北方位角(如圖中所示兩條藍線夾角),或是從南點向西方順時鐘方向所定義的南方位角(如圖中紅色弧線所示夾角),高度角為星體與地平面的夾角(綠色弧線夾角)

地平坐標系英语:Horizontal coordinate system),是天球坐標系統中的一種,以觀測者所在地為中心點,所在地的地平線作為基礎平面,將天球適當的分成能看見的上半球和看不見(被地球本身遮蔽)的下半球。上半球的頂點(最高點)稱為天頂,下半球的頂點(最低點)稱為地底

地平坐標系統由兩個夾角來定義一個天體位置的極座標:

  • 高度角(Altitude, Alt)或仰角又稱地平緯度,是天體和觀測者所在地的地平線的夾角。
  • 方位角(Azimuth, Az)又稱地平經度,是沿着地平線測量的角度. 一般文獻指稱的方位角是以正北方為0度起點, 順時鐘向東方測量. 但對於某些觀星者或航海家而言, 定義以南方為0度起點的方向角, 有其方便性. 因此以下將以 分別代表(以正北為0度的)北方位角及(以正南為0度的)南方位角。

因此地平坐標系有時也被稱為高度/方位(Alt/Az)坐標系統

簡略的觀測[编辑]

地平坐標系統是固定在地球上而不是恆星,所以天體出現在天球上的高度和方位會隨著時間,在天球上不停的改變。另一方面,因為基礎平面是觀測者所在地的地平面,所以相同的天體在相同的時間從不同的位置觀察,也會有不同的高度和方位。

地平坐標系在測量天體的出沒上非常的好用,當一個天體的高度為0°,就表示他位於地平線上。此時若其高度增加,就代表上升;若高度減少,便是下降。然而天球上所有天體的運動都受到由西向東的周日運動支配,所以與其笨拙的去觀察高度是增加或減少,不如改為觀察天體的方位更容易來判斷是上升或是下降:

  • 當天體的方位在0°~180°之間(北方—東方—南方,亦即子午線之東)是上升。
  • 當天體的方位在180°~360°之間(南方—西方—北方,亦即子午線之西)是下降。

但在下面的特殊位置則例外:

  • 在北極點,因為天頂就是北天極,所有的方向都是南方,所以無法定出方位,但這並不造成問題,因為所有天體的高度無論任何時間都不會改變,即既不升高也不降低,只繞北極星以逆時針轉動。(头朝下感觉天星是顺时针转,抬头望天,才看见天星逆时针转)
  • 在南極,地面上所有方向都是北方,也會有與北極相同情況,只是所有星星皆繞天頂的南天極順時針轉動。
  • 在赤道,位於極點的天體會固定不動的永遠停留在地平線上的那一個點。(但實際上由於天極很接近地平線,在該處天體未必能直接看到)

需要注意的是:前面所考慮的衹是理論上的幾何地平,即不考慮地球大氣層對天體位置的影響,讓觀測者的地平線完全以理想的海平面構成。因為地球有弧度,實際上看見的視地平面會隨著觀測者的高度增加而降低(出現負值)。另一方面大氣層也會將地平線下半度的天體折射到地平線上。

與赤道坐標系的互換[编辑]

只要知道觀測者的地理坐標與時間,就可以將地平坐標轉換成赤道坐標,或是反過來將赤道坐標轉換成地平坐標。

在以下公式中,以代表方位,代表高度。

表示赤經表示赤緯表示時角。 φ為觀測者所在地的纬度

不管赤緯或地理緯度, 都是以北極點為+90°,在赤道是0°,南極點是-90°。

天體時角與本地恆星時[编辑]

在座標轉換前會先計算天體時角。天體時角為觀測時通過本地子午圈的天球經線的赤經值 與天體赤經 的差值, 也代表星體所在的赤經線與南方子午線在赤道面的夾角, 所以用它來轉換到方位角較為直覺. 天體的時角由天體的赤經及觀測時間及觀測地經度決定,故有時也會寫成, 代表特定時地的赤經訊息. 上述的 正式名稱為本地恆星時 (Local Sidereal Time) . 想像當地球以穩定的自轉速度旋轉時, 每個恆星日, 南方子午線上會陸續通過赤經為 , ..., 東昇西落的星星, 就可想像觀測時 可以當成本地的一個時鐘, 上面顯示的時鐘刻度就是本地恆星時 ; 也可當成觀測地經線相對於天球赤道起點 (春分點) 的旋轉角度, 換算成一小時 15 度就是與春分點的夾角. 而時角與本地恆星時的關係就是:

其中, GST 為格林威治恆星時. 241.3872 度代表在特定儒略日 (Julian Date) 2440000.5 JD 時, 經過格林威治子午線的遙遠恆星的赤經. 360.9856091 度代表一天 (一個平太陽日) 地球轉動的度數. 乘以 (用儒略日 jd 表示) 與 的差值, 代表至觀測時間 總共新增的轉動度數. LST 為 GST 加上本地經度 (以度表示). 由 LST 就可以知道觀測時通過本地子午線的恆星的赤經了. 當然, 這些角度都要調整到 [0, 360] 的範圍.

赤道坐標轉為地平坐標[编辑]

赤道坐標轉為地平坐標時, 可以透過以下的關係, 由天體的赤經 () 及赤緯 (), 求得天體的方位角() 及高度角 ()。

根據以上關係式, . 則可由 求得.

有種方式是把 相除後消去項,而化簡為, 再用 來求 。但是, 使用的反正切函數的值域只在[-90, 90] 度之間, 無法完整涵蓋 [0, 360] 度的方位角. 而在 0 到 360 度之間, 值相同的角度有兩個 (). 例如45°和225°是完全不同的方位, 但正切值相同。因此, 必須根據 的正負符號, 決定方位角落在哪個象限. 如果這些同值的角度落在非值域的第二及第三象限, 即 X 值為負時, 必須 +180 度, 才會得到正確的 . 若為 X=0 (Y/X 為無限大) 的特殊狀況, 則依 的正負符號, 定義其方位角為 90 或 180 度。若 X, Y 皆為 0 (即天體在天頂), 則可依習慣定義方位。

其實不少程式語言(如 C, C++, Java, Python) 都有提供一個叫做 ATAN2(Y,X) 的反三角函數 (atan2是已將象限納入考量的反正切函數), 可算出 的值, 並根據 (X,Y) 的正負號判斷所屬象限, 從而決定 (X, Y) 向量與 X 軸的夾角, 讓他的值域涵蓋 360 度角. 這對決定方位角非常方便, 省掉自己編寫程式碼來判斷象限的麻煩. 至於高度角 的求解, 可令第一個公式等號右邊的值為 , 用 值即可, 不必再做調整. 因為, 的值域為正負 90 度, 正好對應地平線上下夾角 (這狀況同樣適用於之後在計算赤經赤緯時對應北南半球緯度).

兩種方位角[编辑]

需要特別注意的是, 上面計算出來的的方位角 其實指的是以南方為0度向西遞增的方位角, 而不是一般文獻指稱的, 以北方為0度, 向東遞增的方位角. 這種一般文獻上所稱的 (北)方位角 若表示成, 則與上列計算出來的 , 或特意表示成 南方位角, 兩者相差正好 180 度, 可以用 計算出來, 並調整到 0~360 度即可. 由於很多人不明白其間的差異, 因此由其他文獻上抄錄來的公式, 常因公式中某些項目的正負符號與其他來源(如維基網頁)不同, 而誤以為錯誤, 甚至錯誤更改維基百科的公式而不自知 (可察看本頁歷史編輯紀錄). 其算出的結果也可能與預期有 180 度的差異. 所以, 參照不同來源公式時, 必須小心. 而之所以會有人定義這種南方為零的南方向角, 主要是一些北半球的觀星者平時觀測的星體以南方星體為主. 因此, 以南方為零度方位, 有其方便性.

赤平座標轉換之矩陣轉換式[编辑]

上列公式並不容易理解其來由, 若移項重新整理, 並刻意以 提醒此方位角為南方位角, 則可得:

其矩陣形式則為:

,

其中, 最右邊要被轉換的行向量表示赤道極座標 () 投影在赤道面某選定直角座標的三個分量 , 等號左邊的轉換後所得行向量表示地平極座標 投影在地平面某選定直角座標的三個分量 . 中間的轉換矩陣代表將赤道座標沿著子午線由天球北極 (Z 軸) 轉向赤道面 (X軸) 轉動 90- 度角的座標旋轉矩陣. 這樣的矩陣式說明了原公式的直覺意義, 對於需要時常計算的觀星者,航海家或天文計算程式員而言比較不必硬記, 也較不容易弄錯.

地平坐標轉為赤道坐標[编辑]

上列矩陣轉換公式, 也讓地平座標轉赤道座標變得容易. 事實上, 只要把轉換對象調換, 並進行逆轉換即可. 換句話說, 前式的兩個行向量只要互相調換, 並把原來的轉換矩陣變成他的逆矩陣 (inverse matrix) 即可得到反向轉換公式. 有趣的是, 座標轉換的逆矩陣也是他的轉置矩陣 (transpose matrix), 也就是行列互換的矩陣, 因此並不需要費力去求原轉換矩陣的逆矩陣. 因此, 我們可以輕易得到:

亦即

, , .

其中, 為觀測者所在經度 於觀測時間 的本地恆星時.

方位角以北為零時的赤平座標相互轉換[编辑]

前面已提到, 實用上有兩種方位角, 前面計算的其實是南方位角 . 一般官方文獻所提的方位角為北方位角 . 為了避免混淆, 以下將使用 時的座標轉換公式也一併列出, 以便相互對照.

赤道轉北地平[编辑]

赤道轉地平, 求 的方法除了用先前方法算出 再加 180 度之外, 也可以將原來的轉換公式中的 等號右側方程式都加負號, 並把等號左側的 改成 即可. 其結果是:

,

有興趣者可以把他轉成矩陣轉換式, 會發現這樣的轉換是經過兩道轉換手續, 即先轉成原先的南地平, 再把 X 軸轉 180 度, 也就是 X 值跟 Y 值都取負號.

北地平轉赤道[编辑]

要得到使用 時的地平轉赤道座標轉換公式, 只要將 代入原來的南地平轉赤道的轉換公式即可. 此代換會得出, , , 因此, 有以下轉換公式:

, , .

其中, 為觀測者所在經度 於觀測時間 的本地恆星時.

比較 會發現, 兩者的轉換公式長得完全一樣, 不同得只是符號的代換. 把 分別與 互相代換就會得到另一組轉換公式. 這是因為赤道轉地平的轉換矩陣(即矩陣式中的兩個矩陣相乘)是對稱矩陣, 所以它的逆矩陣 (已知等於轉置矩陣) 跟原轉換矩陣是一樣的. 所以, 除了負號互相替換之外, 公式的形式完全相同. 這個有趣的結果可以有兩個應用. 第一,是可以由兩個方向的轉換矩陣或轉換公式的形式是否一樣來判斷公式裡的方位角到底是不是以北方為零度的方位角. 第二,如果採用 為方位角, 則撰寫轉換程式碼時其實只需要寫一個函數.

太阳的位置[编辑]

在地平坐標系統中,有好幾種方法可以計算太陽的視位置。

完整和精確的計算方法可以參考比利時天文學家簡米斯天文計算(Astronomical Algorithms)

下面是一種簡單的近似計算法的例子:

已知:

你需要進行下面的計算,以下面的公式可以算出太陽的赤緯

  • 此處的是自1月1日開始的天數。
  • 此處的真時角是觀測者因為地球的自轉與太陽之間相對應的角度。
    • hh:mm是觀測者由計時器所得到的時間。
    • 將時與分結合成一個變數 = hh + mm/60,單位為時。
    • hh:mm是官方(公眾)在時區中所使用的時間,與觀測者所需要的地方時(真正以太陽的位置定出的時間)是不同的,必須依照經度來修正+(經度/15-時區),這是時區內的標準時間和觀測者在地的真太阳時之間的差異。
    • 如果在夏季有使用日光節約時間(或稱夏令時),還要從官方時間減一小時,才是當地的標準時
    • 當天的均時差也要加入,由於的單位是時,均時差需要除以60,由分轉為時之後才能併入。
    • 現在已經可以算出太陽的時角了。事實上這個角度是由下面的算式直接得到:

由於是以時來計算,而地球每小時轉動15度,所以的單位是度。如果要轉成徑度量,只要成上2π/360就可以了。

  • 使用地平坐標系統中的公式計算太陽的高度與方位:

這篇文章最早出現在賈森・哈里斯附在KStars的附錄中。適合Linuxc和KDE的天象儀程式,可以拜訪後附的網址:http://edu.kde.org/kstars/index.phtml页面存档备份,存于互联网档案馆