極座標(赤経・赤緯)と直交座標(方向余弦)の変換 (3)
極座標から方向余弦への変換を
「極座標(赤経・赤緯)と直交座標(方向余弦)の変換 (1) 」
「極座標(赤経・赤緯)と直交座標(方向余弦)の変換 (2) 」
に書きましたので、今回は直交座標(方向余弦)を極座標(赤経・赤緯等)に変換する方法です。
xp = r * cos(δ) * cos(α)
yp = r * cos(δ) * sin(α)
zp = r * sin(δ)
という関係があります(方向余弦の場合は r=1 です)ので最後の式から
δ = asin(zp/r)
となります。Nとδの範囲は
-1 ≦ N ≦ 1
-π/2 ≦ δ ≦ π/2
でありNとδは一対一で対応していますからこれで問題ありません。
一方αの方は注意が必要です。
二番目の式を最初の式で割ると
M/L = sin(α) / cos(α)
ですから
α = atan(yp/xp)
となるのですが
-1 ≦ xp ≦ 1
「極座標(赤経・赤緯)と直交座標(方向余弦)の変換 (1) 」
「極座標(赤経・赤緯)と直交座標(方向余弦)の変換 (2) 」
に書きましたので、今回は直交座標(方向余弦)を極座標(赤経・赤緯等)に変換する方法です。
xp = r * cos(δ) * cos(α)
yp = r * cos(δ) * sin(α)
zp = r * sin(δ)
という関係があります(方向余弦の場合は r=1 です)ので最後の式から
δ = asin(zp/r)
となります。Nとδの範囲は
-1 ≦ N ≦ 1
-π/2 ≦ δ ≦ π/2
でありNとδは一対一で対応していますからこれで問題ありません。
一方αの方は注意が必要です。
二番目の式を最初の式で割ると
M/L = sin(α) / cos(α)
ですから
α = atan(yp/xp)
となるのですが
-1 ≦ xp ≦ 1
-1 ≦ yp ≦ 1
ですのでxpとypの値は(符号が)違うのにαの値は同じになってしまうことがあります。
ですのでxpとypの値は(符号が)違うのにαの値は同じになってしまうことがあります。
赤経のように 0 ≦ α < 2π であれば
xp ≧ 0、yp ≧ 0 のとき α = atan(yp/xp)
xp ≧ 0、yp ≧ 0 のとき α = atan(yp/xp)
xp < 0 のとき α = atan(yp/xp) + π
xp ≧ 0、 yp < 0 のとき α = atan(yp/xp) + π*2
のようなことになります。
のようなことになります。
こういうときはatan2を使うのが便利です。
yp ≧ 0 のとき α = atan2(xp,yp)
yp ≧ 0 のとき α = atan2(xp,yp)
yp < 0 のとき α= atan2(xp,yp) + π*2
(経度のように)-π ≦ α ≦ πで表記してもよければatan2を使う場合は
α = atan2(xp,yp)
だけで済みます。
(経度のように)-π ≦ α ≦ πで表記してもよければatan2を使う場合は
α = atan2(xp,yp)
だけで済みます。
atan(arctan)を使う場合もゼロ割りを避けるため
xp=0、yp > 0 のとき α = π/2
xp=0、yp > 0 のとき α = π/2
xp=0、yp < 0 のとき α = -π/2
とする必要がありますがExcelのatan2()はこのあたりもxp=0、yp=0のときを含めちゃんと考慮してくれるようです。
とする必要がありますがExcelのatan2()はこのあたりもxp=0、yp=0のときを含めちゃんと考慮してくれるようです。
以上赤経・赤緯のばあいでしたが方位角も同様です。ただ赤経と方位角は測り方が逆向きということについては注意する必要があります。つまり
atan2(xp, -yp)
となります。方位角0度を北とした場合はさらにこの結果から180度(π)を引く必要があります。
atan2(xp, -yp) - π
atan2(xp, -yp)
となります。方位角0度を北とした場合はさらにこの結果から180度(π)を引く必要があります。
atan2(xp, -yp) - π
あるいは
atan2(-xp, yp)
となります。
atan2(-xp, yp)
となります。
次の記事 「極座標(赤経・赤緯)と直交座標(方向余弦)の変換 (4) 」でこれまで書いたことをExcelのファイルで示します。
« 極座標(赤経・赤緯)と直交座標(方向余弦)の変換 (2) | トップページ | 極座標(赤経・赤緯)と直交座標(方向余弦)の変換 (4) »
「天文計算」カテゴリの記事
- 太陽の赤経・赤緯・地心距離をExcelで求める(海洋情報部の計算式) 2018年版(2017.12.25)
- 海上保安庁水路部の惑星位置の略算式 - 天王星の視赤経・赤緯(2017.07.22)
- 海上保安庁水路部の略算式 - 水星の視位置(視赤経・視赤緯)(2017.07.15)
- 海上保安庁水路部の惑星位置の略算式 - 火星の視赤経・赤緯(2017.07.13)
- 海上保安庁水路部の惑星位置の略算式 - 火星の(日心)黄経・黄緯(2017.07.11)
この記事へのコメントは終了しました。
« 極座標(赤経・赤緯)と直交座標(方向余弦)の変換 (2) | トップページ | 極座標(赤経・赤緯)と直交座標(方向余弦)の変換 (4) »
コメント