前のページ|次のページ

GEODIST関数

2つの緯度と経度の座標間の測地距離を返します

カテゴリ: 距離

構文

必須引数

緯度

赤道の南北にある特定の場所の座標を指定する数値定数、変数または式です。赤道の北にある座標は正の値、赤道の南にある座標は負の値になります。

制限事項 値を度数で表す場合、90から–90までの値にする必要があります。値をラジアンで表す場合、pi/2から–pi/2までの値にする必要があります。

経度

英国のグリニッジを通過するグリニッジ子午線の東西にある特定の場所の座標を指定する数値定数、変数または式です。グリニッジ子午線の東にある座標は正の値、グリニッジ子午線の西にある座標は負の値になります。

制限事項 値を度数で表す場合、180から-180までの値にする必要があります。値をラジアンで表す場合、piから–piまでの値にする必要があります。

オプション引数

option

次のいずれかの文字を含む文字定数、変数または式を指定します。

M マイル単位で距離を指定します。
K キロメートル単位で距離を指定します。Kは、距離のデフォルト値です。
D 入力値を度数で表すように指定します。Dは、入力値のデフォルトです。
R 入力値をラジアンで表すように指定します。

詳細

GEODIST関数は、2つの緯度と経度の座標間の測地距離を計算します。入力値は、度数またはラジアンで表すことができます。

例1: 測地距離(キロメートル単位)の計算

次の例では、ALのMobile (緯度30.68 N、経度88.25 W)とNCのAsheville (緯度35.43 N、経度82.55 W)間の測地距離(キロメートル単位)を示します。プログラムでは、デフォルトのKオプションが使用されます。
data _null_;
   distance=geodist(30.68, -88.25, 35.43, -82.55);
   put 'Distance= ' distance 'kilometers';
run;
次の出力がログに書き込まれます。
Distance= 748.6529147 kilometers

例2: 測地距離(マイル単位)の計算

次の例では、Mオプションを使用して、ALのMobile (緯度30.68 N、経度88.25 W)とNCのAsheville (緯度35.43 N、経度82.55 W)間の測地距離(マイル単位)を計算します。
data _null_;
   distance=geodist(30.68, -88.25, 35.43, -82.55, 'M');
   put 'Distance = ' distance 'miles';
run;
次の出力がログに書き込まれます。
Distance = 465.29081088 miles

例3: 度数単位の入力を使用した測地距離の計算

次の例では、度数で表される緯度と経度の値を使用して、2つの場所の測地距離を計算します。プログラムでは、DオプションとMオプションの両方が指定されます。
data _null_; 
   input lat1 long1 lat2 long2; 
   Distance = geodist(lat1, long1, lat2, long2, 'DM'); 
   put 'Distance = ' Distance 'miles';
   datalines; 
35.2 -78.1 37.6 -79.8    
;  
run; 
次の出力がログに書き込まれます。
Distance = 190.72474282 miles

例4: ラジアン単位の入力を使用した測地距離の計算

次の例では、ラジアンで表される緯度と経度の値を使用して、2つの場所の測地距離を計算します。プログラムでは、GEODIST関数を実行する前に度数がラジアンに変換されます。このプログラムでは、RオプションとMオプションの両方が指定されます。
data _null_; 
   input lat1 long1 lat2 long2; 
   pi = constant('pi'); 
   lat1 = (pi*lat1)/180;
   long1 = (pi*long1)/180;
   lat2 = (pi*lat2)/180;
   long2 = (pi*long2)/180;
   Distance = geodist(lat1, long1, lat2, long2, 'RM'); 
   put 'Distance= ' Distance 'miles';
   datalines; 
35.2 -78.1 37.6 -79.8    
;  
run; 
次の出力がログに書き込まれます。
Distance= 190.72474282 miles

参考文献

Vincenty, T. “Direct and Inverse Solutions of Geodesics on the Ellipsoid with Application of Nested Equations.” 1975. Survey Review 22: 99-93.
前のページ|次のページ|ページの先頭へ