User Instructions for Interpolation Programs



These instructions explain how to create the files required by the three interpolation programs DIRACC, BILINT, and BILGRID and how to run them. The programs are designed for an IBM-compatible PC using MS-DOS commands, and their source codes are in Fortran 77. Because the interpolation programs require the worldwide geoid height file as input, the instructions for setting up this file are included first.


Geoid Height File

The worldwide grid of geoid heights is a large file with a spacing of 30'. This file has been compressed for MS-DOS by creating a self-extracting file called WWGRID.EXE. Once it has been downloaded to a directory, simply type "WWGRID" at the command line to restore it to an ASCII file of 10,919,259 bytes called WWGRID.TXT. The file has also been compressed for UNIX using the compress command and creating a version called WWGRID.TXT.Z. To restore it on a UNIX computer, type "uncompress WWGRID.TXT.Z" at the command line to restore it to the ASCII file WWGRID.TXT.


Interpolation Programs

DIRACC, BILINT, and BILGRID are the three interpolation programs needed to compute either the geoid height at a specific point or the geoid heights over a specific area.

DIRACC is a direct access program that takes WWGRID.TXT and converts it to a direct access file. The program requires three files to run, and they are DIRACC.FOR, DIRACC.EXE, and DIRACC.DAT. Use the following procedure to create these files:
1. Copy DIRACC to the same directory that contains WWGRID.TXT.
2. Rename DIRACC to DIRACC.FOR or DIRACC.F depending on the type of compiler being used. If using a Lahey compiler, type the following sequence of commands:
  • a. >f77l3 diracc.for (This creates DIRACC.OBJ)
  • b. >386link diracc.obj (This creates DIRACC.EXE, the executable file)
3. Create a file called DIRACC.DAT and enter the following program parameters in the format shown below:
            721, 3, 260281, 30.0
            3, 83, 5400.0, 0.0
            
4. Now run the program by typing the following command:
  • a. >diracc.exe
  • b. After the program finishes, there should be a message stating that 260281 values have been written to the output file.
  • c. Check the directory for an output file called DIRACC.OUT with 3,119,040 bytes. This file is the input for both BILINT and BILGRID.

The program BILINT is used to compute the geoid height at a specific point and requires the files BILINT.FOR, BILINT.EXE, and BILINT.DAT. Use the following procedure to create these files:
1. Copy BILINT to the same directory as DIRACC.
2. Rename BILINT to BILINT.FOR or BILINT.F depending on the type of compiler being used.
3. Run BILINT.FOR through a Fortran compiler (see step 3 under the section for DIRACC) to create BILINT.EXE.
4. Create a file called BILINT.DAT and enter the geodetic latitude and the geodetic longitude for each point in the following format:
            30.0, 721, 3, 260281, 5400.0, -5400.0, 0.0   (parameters)
            2074.88127 14362.4345   (first point)
            2244.7214 14278.42833   (second point)
            
  • a. Enter one point per row.
  • b. Enter the latitude and longitude in decimal minutes, e.g. 37.3141 degrees = 2238.846 minutes.
  • c. For this program, longitude is based on a 0' - 21600' system starting from the prime meridian. In the western hemisphere subtract the longitude from 21600' and enter the resulting value, e.g. 21600' - 7321.448' = 14278.552'.
  • d. Latitude is positive for areas north of the equator and negative for areas to the south.
5. Run the program by typing the following command:
  • a. >bilint.exe
  • b. There is no output file from BILINT.EXE, and the data will go to the screen only. If computing several heights, direct the output to a printer or to a file. See example below:
                for printer:   >bilint.exe > lpt
                for file:   >bilint.exe > temp.dat
                
  • c. All geoid heights are in meters.

The program BILGRID is used to compute geoid heights over an area and requires the files BILGRID.FOR, BILGRID.EXE, and BILGRID.DAT. Use the following procedure to create these files:
1-3. Create BILGRID.FOR and BILGRID.EXE using the same first three steps under the section for DIRACC.
4. Create a file called BILGRID.DAT and enter the limits of the desired area starting with the north geodetic latitude, south geodetic latitude, west geodetic longitude, east geodetic longitude, and the grid spacing in minutes. See the following example for the format:
            5370.0, 5300.0, 0.0, 21600.0, 5.	(area limits)
            721, 3, 260281, 30.0, 5400.0, -5400.0, 0.0, 21600.0
            3, 83, 1	(last two lines of file are parameters)
            
  • a. As with BILINT, all latitude and longitude values are in decimal minutes.
  • b. Longitude is based on a 0' - 21600' system starting from the prime meridian. See step 4-b under the BILINT section for converting longitude values in the western hemisphere to this system.
  • c. Latitude is positive north of the equator and negative to the south.
5. Run the program as shown below:
  • a. >bilgrid.exe
  • b. As with BILINT, BILGRID doesn't automatically produce an ASCII output file. If the area is large or the data must be saved, use the following commands to direct the output to a printer or a file:
                For printer:   >bilgrid.exe > lpt
                For file:   >bilgrid.exe > temp.dat
                
  • c. However, BILGRID does produce a binary output file BILGRID.OUT. The final line of BILGRID.DAT contains the following information: words/record = 3 and records/block = 83, which is the blocking for BILGRID.OUT, and IPRT = 1, which is the n value of the record to be printed. If IPRT = 1, then every record will be printed.
  • d. The output is in the format of latitude (decimal degrees), longitude (decimal degrees), and geoid height (meters). See example below:
                89.416660  198.250000  11.636730
                
 

Point of Contact: Office of Geomatics
phone (314) 676-9127, DSN 846-9127
wgs84@nga.mil

Document last modified April 29, 2013