WGS-84楕円体上のGPS衛星のカバレッジのリングを見つける方法


14

次の場合:

  1. 時間、t
  2. 時間tに対応するGPS衛星のIS-200エフェメリスデータのセットE
  3. GPS衛星のECEF位置、P =(x、y、z)、時間とエフェメリス、(t、E)から導出。
  4. 地球がWGS-84楕円体であると仮定します。
  5. WGS-84のすべてのポイントには、マスク角度mがあります。

以下を見つけてください。

  1. GPS衛星のWGS-84のカバレッジのリングR。すなわち、どのWGS-84ポイントがP =(x、y、z)のポイントにある衛星を表示しているか、どのWGS-84ポイントが表示されていないかを区別する境界

問題の概念図。 Pは赤い点、PRN12です。 そして黒いリングは「カバレッジのリング」です

許容できるソリューション:

  1. Rに近似するWGS-84上のスプライン。
  2. Rに近いWGS-84上のポリゴン。
  3. または私にRを与える式

私がこれまでに試したこと:

  • e ^ 2 = 0.0066943799901264; 離心率の二乗

測地緯度phiと経度lambdaによるECEF WGS-84の位置があります。

r = 1 /(sqrt(1-e ^ 2 sin ^ 2(phi)))*(cos(phi)* cos(lambda)、cos(phi)* sin(lambda)、(1-e ^ 2)* sin(phi))

次に、マトリックスを使用して、phiとlambdaを使用してECEFを東北アップ(ENU)地理的フレームに変換します。

     (-sin(lambda)                  cos(lambda)                  0       )
C=   (-cos(lambda)*sin(phi)        -sin(lambda)*sin(phi)         cos(phi))
     ( cos(lambda)*cos(phi)         sin(lambda)*cos(phi)         sin(phi))
  • G = C(P-r)とする
  • Gのz成分を取得します。Gのz成分がsin(m)よりも大きい場合、ポイントrが表示されていることがわかります。しかし、それは私が求めている解決策を得るのに十分ではありません。視界にあるたくさんのポイントを見つけて、それらのポイントの凸包を取ることができますが、それはまったく効率的ではありません。

1
こんにちは@ torrho、GIS.stackexchangeへようこそ。自分の作品を見せれば、助けを得る可能性が高くなります-これまでに試したことと、(具体的には!)何があなたに問題を与えているか。
シンバマング

@Simbamangu GIS.stackexchangeでラテックスマークアップを使用するにはどうすればよいですか?ただ$$ \ pi $$と言えますか?
トーリョ

1
@tomfumbいいえ、これは宿題ではありません。この問題に出くわしたのは自分だけではないと思ったので、コミュニティに質問することを考えました。
トッホ

1
[ meta.gis.stackexchange.com/questions/3423 / ...の誰かがこれを宿題だと思っているようです。それは宿題ではありません。私はこのトピックを徹底的にグーグルで調べましたが、何も発見していません。
トッホ

残念ながら、私はこのサイトでLaTeXを使用する方法を見つけることができません!可能な限りテキストに方程式を挿入するか、他の場所のLaTeX方程式のスクリーンショットにリンクできます(つまり、Dropboxフォルダー。評判が良くなるまで画像を追加できません)。この問題のコンテキスト(なぜそれを行っているのか)、問題の特定のGISコンポーネント、および使用した他の研究またはリソースを教えてください。
シンバマング

回答:


17

楕円体の解法はかなり乱雑であり、円ではなく不規則な形状であり、数式ではなく数値で計算するのが最適です。

世界地図では、WGS84ソリューションと完全に球形のソリューションの違いはほとんど目立ちません(画面上の1ピクセル程度です)。同じ違いは、マスクの角度を約0.2度変更するか、多角形近似を使用することで作成されます。これらの誤差が許容できるほど小さい場合は、球体の対称性を利用して単純な式を取得できます。

図

このマップ(正距円筒図法を使用)は、WGS84回転楕円体上でマスク角度がm = 15度で、22,164キロメートル(地球の中心から)の衛星のカバレッジを示しています。球体のカバレッジを再計算しても、このマップは視覚的に変更されません。

球体では、カバレッジは真に衛星の位置を中心とする円になるため、その半径(角度)を把握するだけで済みます。 これをtと呼びます。断面には、地球の中心(O)、衛星(S)、および円上の任意の点(P)によって形成される三角形のOSPがあります。

  • 辺OPは地球の半径Rです。

  • サイドOSは、衛星の高さ(地球の中心より上)です。これをhと呼びます。

  • 角度OPSは90 + mです。

  • 角度SOPはtで、これを見つけたいです。

  • 三角形の3つの角度の合計は180度であるため、3番目の角度OSPは90-(m + t)に等しくなければなりません。

解決策は、基本的な三角法の問題です。サインの(平面)法則は、

sin(90 - (m+t)) / r = sin(90 + m) / h.

解決策は

t = ArcCos(cos(m) / (h/r)) - m.

チェックとして、いくつかの極端なケースを考慮してください。

  1. m = 0、t = ArcCos(r / h)の場合、基本ユークリッドジオメトリで検証できます。

  2. h = r(衛星が打ち上げられていない)、t = ArcCos(cos(m)/ 1)-m = m-m = 0

  3. m = 90度の場合、t = ArcCos(0)-90 = 90-90 = 0になります。

これにより、球体に円を描くという問題が軽減され、多くの方法で解決できます。たとえば、衛星を中心とする等距離投影を使用して、衛星の位置をt * R * pi / 180だけバッファリングできます。球体上の円を直接操作する方法は、https://gis.stackexchange.com/a/53323/664で説明されています


編集

FWIW、GPS衛星および小さなマスク角度(20度未満)の場合、この非三角関数の近似は正確です(マスク角度が10度未満の場合、数十分の1から数百分の1未満) ):

t (degrees) = -0.0000152198628163333 * (-5.93410042925107*10^6 + 
              3.88800000000000*10^6 r/h + 65703.6145507725 m + 
              9.86960440108936 m^2 - 631.654681669719 r/h m^2)

たとえば、マスク角度がm = 10度で、衛星が地球の中心から26,559.7 km(GPS衛星の公称距離)上にある場合、この近似では66.32159 ...が得られますが、値(球体に対して正しい)は66.32023 ...です。

(近似は、m = 0、r / h = 1/4の周りのテイラー級数展開に基づいています。)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.