mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-08-24 15:16:36 -04:00
2. Fixed grid2deg to be case-insensitive for grid locator. 3. Bumped Revision number to 5.9.3. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/trunk@116 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
41 lines
1.3 KiB
Fortran
41 lines
1.3 KiB
Fortran
subroutine grid2deg(grid0,dlong,dlat)
|
|
|
|
C Converts Maidenhead grid locator to degrees of West longitude
|
|
C and North latitude.
|
|
|
|
character*6 grid0,grid
|
|
character*1 g1,g2,g3,g4,g5,g6
|
|
|
|
grid=grid0
|
|
i=ichar(grid(5:5))
|
|
if(grid(5:5).eq.' ' .or. i.le.64 .or. i.ge.128) grid(5:6)='mm'
|
|
|
|
if(grid(1:1).ge.'a' .and. grid(1:1).le.'z') grid(1:1)=
|
|
+ char(ichar(grid(1:1))+ichar('A')-ichar('a'))
|
|
if(grid(2:2).ge.'a' .and. grid(2:2).le.'z') grid(2:2)=
|
|
+ char(ichar(grid(2:2))+ichar('A')-ichar('a'))
|
|
if(grid(5:5).ge.'A' .and. grid(5:5).le.'Z') grid(5:5)=
|
|
+ char(ichar(grid(5:5))-ichar('A')+ichar('a'))
|
|
if(grid(6:6).ge.'A' .and. grid(6:6).le.'Z') grid(6:6)=
|
|
+ char(ichar(grid(6:6))-ichar('A')+ichar('a'))
|
|
|
|
g1=grid(1:1)
|
|
g2=grid(2:2)
|
|
g3=grid(3:3)
|
|
g4=grid(4:4)
|
|
g5=grid(5:5)
|
|
g6=grid(6:6)
|
|
|
|
nlong = 180 - 20*(ichar(g1)-ichar('A'))
|
|
n20d = 2*(ichar(g3)-ichar('0'))
|
|
xminlong = 5*(ichar(g5)-ichar('a')+0.5)
|
|
dlong = nlong - n20d - xminlong/60.0
|
|
c print*,nlong,n20d,xminlong,dlong
|
|
nlat = -90+10*(ichar(g2)-ichar('A')) + ichar(g4)-ichar('0')
|
|
xminlat = 2.5*(ichar(g6)-ichar('a')+0.5)
|
|
dlat = nlat + xminlat/60.0
|
|
c print*,nlat,xminlat,dlat
|
|
|
|
return
|
|
end
|