Class Map_Function
In: map_function.f90

地図座標系におけるいくらかの変換関数

Methods

dis2mlat   dis2mlon  

Included Modules

Phys_Const Math_Const

Public Instance methods

Function :
dis2mlat :real
y :real, intent(in)
: 基準緯度 phi0 からの空間距離 [rad] (北向き正).
phi0 :real, intent(in)
: 基準緯度 [rad]
 基準緯度 phi0 から空間距離 y [m] 離れた位置における緯度 [rad].
 ただし, x は東方向に正, 西方向に負を与えれば計算可能.

[Source]

real function dis2mlat(y,phi0)
!  基準緯度 phi0 から空間距離 y [m] 離れた位置における緯度 [rad].
!  ただし, x は東方向に正, 西方向に負を与えれば計算可能.
  use Phys_Const
  use Math_Const
  implicit none
  real, intent(in) :: y     ! 基準緯度 phi0 からの空間距離 [rad] (北向き正).
  real, intent(in) :: phi0  ! 基準緯度 [rad]

  dis2mlat=asin(tanh(log(tan(0.25*pi+0.5*phi0))+y/radius))

  return
end function
Function :
dis2mlon :real
x :real, intent(in)
: 基準経度 lam0 からの空間距離 [m] (東向きが正)
lam0 :real, intent(in)
: 基準経度 [rad]
 基準経度 lam0 から空間距離 x [m] 離れた位置における経度 [rad].
 ただし, x は東方向に正, 西方向に負を与えれば計算可能.

[Source]

real function dis2mlon(x,lam0)
!  基準経度 lam0 から空間距離 x [m] 離れた位置における経度 [rad].
!  ただし, x は東方向に正, 西方向に負を与えれば計算可能.
  use Phys_Const
  implicit none
  real, intent(in) :: x     ! 基準経度 lam0 からの空間距離 [m] (東向きが正)
  real, intent(in) :: lam0  ! 基準経度 [rad]

  dis2mlon=x/radius+lam0

  return
end function