00001 *> @file geoddirect.for 00002 *! @brief A test program for direct() 00003 00004 *> A simple program to solve the direct geodesic problem. 00005 *! 00006 *! This program reads in lines with lat1, lon1, azi1, s12 and prints out 00007 *! lines with lat2, lon2, azi2 (for the WGS84 ellipsoid). 00008 00009 program geoddirect 00010 implicit none 00011 00012 include 'geodesic.inc' 00013 00014 double precision a, f, lat1, lon1, azi1, lat2, lon2, azi2, s12, 00015 + dummy 00016 logical arcmod 00017 integer omask 00018 00019 * WGS84 values 00020 a = 6378137d0 00021 f = 1/298.257223563d0 00022 00023 arcmod = .false. 00024 omask = 0 00025 00026 10 continue 00027 read(*, *, end=90, err=90) lat1, lon1, azi1, s12 00028 call direct(a, f, lat1, lon1, azi1, s12, arcmod, 00029 + lat2, lon2, azi2, omask, dummy, dummy, dummy, dummy, dummy) 00030 print 20, lat2, lon2, azi2 00031 20 format(f20.15, 1x, f20.15, 1x, f20.15) 00032 go to 10 00033 90 continue 00034 stop 00035 end