地図投影変換に関する関数パッケージ. このパッケージでは地球の半径を1とし, 投影点の緯度を (0,0) または 北極 とした時の地図投影関数を定義する. 投影点での面積が変わらないように (?) 定義されている. また,全ての関数に逆関数が定義されている.
角度に関する引数の単位は全てラジアンである.
多くの逆投影関数に関して,与えた値が定義域外のとき,内部変数 'RUNDEF'で決まる不定を示す値(初期値は-999)を返す.
MPFCYL(XLON,YLAT,X,Y) 正距円筒図法 MPFMER(XLON,YLAT,X,Y) Mercator図法. MPFMWD(XLON,YLAT,X,Y) Mollweide図法. MPFMWL(XLON,YLAT,X,Y) Mollweide図法もどき. MPFHMR(XLON,YLAT,X,Y) Hammer図法 MPFEK6(XLON,YLAT,X,Y) Eckert 第6図法 MPFKTD(XLON,YLAT,X,Y) 北田楕円図法 MPFCON(XLON,YLAT,X,Y) 円錐図法 MPSCON(YLAT1) 標準緯線の指定 MPFCOA(XLON,YLAT,X,Y) Lambert 正積円錐図法 MPSCOA(YLAT1) 標準緯線の指定 MPFCOC(XLON,YLAT,X,Y) Lambert 正角円錐図法 MPSCOC(YLAT1,YLAT2) 標準緯線の指定 MPFBON(XLON,YLAT,X,Y) Bonne's 図法 MPSBON(YLAT1) 標準緯線の指定 MPFOTG(XLON,YLAT,X,Y) 正射図法 MPSOTG(RSAT) 軌道半径の設定 MPFPST(XLON,YLAT,X,Y) Polar Stereo 図法 MPFAZM(XLON,YLAT,X,Y) 正距方位図法 MPFAZA(XLON,YLAT,X,Y) Lambert 正積方位図法これらのルーチン以外に,すべての変換関数に対して逆関数が定義されている. それらのルーチン名は,正変換関数の名前の3文字めをIにしたもので ある.
正距円筒図法の投影,逆投影を行なう.
CALL MPFCYL(XLON,YLAT,X,Y)
CALL MPICYL(X,Y,XLON,YLAT)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標.
x = λ y = φ
メルカトール図法の投影,逆投影を行なう.
CALL MPFMER(XLON,YLAT,X,Y)
CALL MPIMER(X,Y,XLON,YLAT)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標.
x = λ y = (π/4 + φ/2)
モルワイデ図法の投影,逆投影を行なう.
CALL MPFMWD(XLON,YLAT,X,Y)
CALL MPIMWD(X,Y,XLON,YLAT)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標.
x = 2√2 (α)π λ y = √2 (α)
ここで,α は
2α + (2α)= π φ
の解である.
モルワイデ図法(もどき)の投影,逆投影を行なう.
CALL MPFMWL(XLON,YLAT,X,Y)
CALL MPIMWL(X,Y,XLON,YLAT)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標.
x = 2√2 (φ)π λ y = √2 (φ)
ハンメル図法の投影,逆投影を行なう.
CALL MPFHMR(XLON,YLAT,X,Y)
CALL MPIHMR(X,Y,XLON,YLAT)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標.
x = 2√2 (φ)(λ/2) √1+(φ)(λ/2) y = √2 (φ) √1+(φ)(λ/2)
エッケルト第6図法の投影,逆投影を行なう.
CALL MPFEK6(XLON,YLAT,X,Y)
CALL MPIEK6(X,Y,XLON,YLAT)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標.
x = a(1+ (α)) 2 λ y = a α
ここで, a=2/√π+2, α は
α + (α)= π+22 φ
の解である.
北田楕円図法の投影,逆投影を行なう.
CALL MPFKTD(XLON,YLAT,X,Y)
CALL MPIKTD(X,Y,XLON,YLAT)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標.
x = 9 a (α)5π λ y = a (α)
ここで,a = 2 √10 π/(12π + 93) ,
α は
2α + (2α)=
( 2π3 + √32 )
φ
の解である.
正距円錐図法の投影,逆投影を行なう.
CALL MPFCON(XLON,YLAT,X,Y)
CALL MPICON(X,Y,XLON,YLAT)
CALL MPSCON(YLAT1)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標. YLAT1 (R) 標準緯線の緯度
x = r (kλ) y = - r (kλ)
ここで,r, k は
k = (θ_1) r = θ - θ_1 + (θ_1)
である (θ は余緯度,θ_1 は標準緯線の余緯度).
ランベルト正積円錐図法の投影,逆投影を行なう.
CALL MPFCOA(XLON,YLAT,X,Y)
CALL MPICOA(X,Y,XLON,YLAT)
CALL MPSCOA(YLAT1)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標. YLAT1 (R) 標準緯線の緯度
x = r (kλ) y = - r (kλ)
ここで,r, k は
k = ^2(θ_1/2) r = 2√k (θ2 )
である (θ は余緯度,θ_1 は標準緯線の余緯度).
ランベルト正角円錐図法の投影,逆投影を行なう.
CALL MPFCOC(XLON,YLAT,X,Y)
CALL MPICOC(X,Y,XLON,YLAT)
CALL MPSCOC(YLAT1,YLAT2)
XLON,YLAT (R) 経度,緯度. X,Y (R) x, y座標. YLAT1, (R) 標準緯線の緯度 YLAT2
x = r (kλ) y = - r (kλ)
ここで,r, k は
k = (θ_2 ) - (θ_1 ) (θ_2/2) - (θ_1/2) r = (θ_1)k^k(θ_1/2) ^k(θ/2)
である (θ は余緯度,θ_i は標準緯線の余緯度).
ボンヌ図法の投影,逆投影を行なう.
CALL MPFBON(XLON,YLAT,X,Y)
CALL MPIBON(X,Y,XLON,YLAT)
CALL MPSBON(YLAT1)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標. YLAT1 (R) 標準緯線の緯度
x = r (kλ) y = - r (kλ)
ここで,r, k は
k = (θ)/r r = θ - θ_1 + (θ_1)
である (θ は余緯度,θ_1 は標準緯線の余緯度).
正射図法および Satellite View の投影,逆投影を行なう.
CALL MPFOTG(XLON,YLAT,X,Y)
CALL MPIOTG(X,Y,XLON,YLAT)
CALL MPSOTG(RSAT)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標. RSAT (R) 地球の半径を単位とする 衛星の軌道半径.
x = r (λ) y = - r (λ) r = (θ)(1-C(θ))
ここで C はRSAT>1 の時, RSAT の逆数, それ以外の時は C=0 で通常の正射図法となる.
ポーラーステレオ図法の投影,逆投影を行なう.
CALL MPFPST(XLON,YLAT,X,Y)
CALL MPIPST(X,Y,XLON,YLAT)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標.
x = r (λ) y = -r (λ) r = 2(θ/2)
正距方位図法の投影,逆投影を行なう.
CALL MPFAZM(XLON,YLAT,X,Y)
CALL MPIAZM(X,Y,XLON,YLAT)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標.
x = r (λ) y = - r (λ)
ここで,r は
r = θ
である.
ランベルト正積方位図法の投影,逆投影を行なう.
CALL MPFAZA(XLON,YLAT,X,Y)
CALL MPIAZA(X,Y,XLON,YLAT)
XLON, (R) 経度,緯度. YLAT X,Y (R) x, y座標.
x = r (λ) y = - r (λ)
ここで,r は
r = 2 (θ/2)
である.
NUMAGUTI Atusi <a1n@gfdl.gov> Last Modified: Thu Aug 31 13:01:16 EDT 1995