excel中atan2函數的值錯誤

excel中atan2函數的值錯誤

atan2(X,Y)我正在嘗試計算兩個緯度和經度之間的角度,但在 Excel 上使用時得到錯誤的結果。

β = atan2(X,Y) = atan2(0.05967668696, -0.00681261948)

它應該是1.68弧度(96.51°),但在Excel上它顯示-0.113666736(-6.512624235°)

β = atan2(X,Y),

其中,X和Y是兩個量,可以計算為:

  • X =cos θb * sin ∆L
  • Y=cos θa * sin θb – sin θa * cos θb * cos ∆L

    緯度/經度(1): (Lat1,Lon1)= 39.099912, -94.581213

    緯度/經度(2): (Lat2,Lon2)= 38.627089, -90.200203

    ‘L’            be the longitude,
    ‘∆L=lon2-lon1’ be the difference of longitude,
    ‘θ’            be latitude,
    ‘β‘            be Bearing
    

答案1

問題是excel使用函數Atan2(y,X) 而不是 (x, y)。在 C 中,Atan2 使用參數 (X,y)這會給你你期望的答案。只需切換參數即可。

答案已經晚了六年,但希望有人發現這個有用,哈哈。

答案2

  1. Excel中的函數沒有任何問題atan2(X,Y):您指定的點「(0.05967668696,-0.00681261948)」位於第四象限,即它的角度實際上是「-6.51°」。

  2. 但是如果你想計算兩個地理點之間角度的「絕對」值,你應該使用座標之間的絕對差:

      β=ATAN2(ABS(0.05967668696), ABS(-0.00681261948))
    
  3. 請記住,如果此計算是在球體(地球)上進行的,則由於圓形三角形,它是近似值。對於小角度來說是可以的。

相關內容