SUBROUTINE DISTANCE(rlat1,rlat2,rlon1,rlon2,x) C DISTANCE CALCULATES THE DISTANCE BETWEEN TWO C LATITUDE,LONGITUDE POINTS c***************************************************** c c rlat1,rlon1 - first position c rlat2,rlon2 - second position c x - distance between points c c***************************************************** c***************************************************** c c Parameters: c c req - radius of the earth at the equator c pi - pi c c***************************************************** parameter (req=6378.137D00, pi=3.141592653D00) double precision ang,x1,rlat1a,rlat2a,rlon1a,rlon2a c***************************************************** c c Convert lats and lons to radians c c***************************************************** rlat1a=((rlat1*pi)/180.)+0.D00 rlat2a=((rlat2*pi)/180.)+0.D00 rlon1a=((rlon1*pi)/180.)+0.D00 rlon2a=((rlon2*pi)/180.)+0.D00 c***************************************************** c c Figure distance c c***************************************************** ang=(dsin(rlat1a)*dsin(rlat2a)) + * (dcos(rlat1a)*dcos(rlat2a) * * dcos((rlon1a-rlon2a))) if ( ang .ge. 1.0D00 ) then x=0. else x1=req* dacos(ang) x=x1 endif return end