C C$$$ SUBPROGRAM DOCUMENTATION BLOCK C . . . . C SUBPROGRAM: DISTSP DISTANCE ON GREAT CIRCLE C PRGMMR: S. J. LORD ORG: W/NMC22 DATE: 91-06-06 C C ABSTRACT: CALCULATES DISTANCE ON GREAT CIRCLE BETWEEN TWO LAT/LON C POINTS. C C PROGRAM HISTORY LOG: C 91-06-06 S. J. LORD C YY-MM-DD MODIFIER1 DESCRIPTION OF CHANGE C YY-MM-DD MODIFIER2 DESCRIPTION OF CHANGE C C USAGE: DXY=DISTSP(DLAT1,DLON1,DLAT2,DLON2) C INPUT ARGUMENT LIST: C DLAT1 - LATITUDE OF POINT 1 (-90<=LAT<=90) C DLON1 - LONGITUDE OF POINT 1 (-180 TO 180 OR 0 TO 360) C DLAT2 - LATITUDE OF POINT 2 (-90<=LAT<=90) C DLON1 - LONGITUDE OF POINT 2 C C C REMARKS: DISTANCE IS IN METERS C C ATTRIBUTES: C LANGUAGE: INDICATE EXTENSIONS, COMPILER OPTIONS C MACHINE: NAS, CYBER, WHATEVER C C$$$ FUNCTION DISTSP(DLAT1,DLON1,DLAT2,DLON2) DATA REARTH/6.37E6/ C XXD=COSD(DLON1-DLON2)*COSD(DLAT1)*COSD(DLAT2)+ 1 SIND(DLAT1)*SIND(DLAT2) C XXM=AMIN1(1.0,AMAX1(-1.0,XXD)) C DISTSP=ACOS(XXM)*REARTH RETURN END