"elevup.txt - 1.1 - 2010/04/29" ---------------------------------------------------------------------- DOCUMENTATION for NGS program elevup ---------------------------------------------------------------------- PROGRAM FUNCTION: Combines positions (lat, lon, ellipsoid height[NAVD 84 only] ) from one horizontal bluebook file, with elevations from a second bluebook, and writes to a third horizontal bluebook file. PROGRAM OPERATION: Entering the program name without two input filenames and an output filename displays program name, version, date, and a brief usage. To run the program, the command line must have: 0) elevup, the program name 1) the input bluebook file with positions 2) the input bluebook file with elevations 3) the output bluebook file Optionally, the command line may have: 4) SSN length (3 or 4) [default = 4] If the input file with positions cannot be found, then the program ends with an error message, displaying the input filename, to help check for typo errors. If the input file with elevations cannot be found, then the program ends with an error message, displaying the input filename, to help check for typo errors. If the output file cannot be created (rare), then the program ends with an error message, and advises to check available memory. If a SSN is input, and it is not 3 or 4, then the program ends with an error message. Job statistics are prepared, and written to both display and output file: - System run time: - Input position filename: - Input elevation filename: - Output filename: - SSN length: If no SSN was entered, then "SSN Length 4 (default)" is displayed. For both SSN length conditions, the elevation bluebook is scanned and data structure(s) is (are) filled with SSN and elevation data. All relevant and complete elevation data from the elevation bluebook, is stored for transfer to the output file. No elevation data or codes from the position file are used. For the 1980 horizontal bluebook (SSN length = 3), the *80* record is scanned (columns 70-76) for: - elevation - elevation code For the 1994 horizontal bluebook (SSN length = 4) the *80* record is scanned (columns 70-76) for: - elevation - elevation code and, the *86* record is scanned (columns 17-43) for: - orthometric height - orthometric height code - orthometric height order and class - orthometric height NGSIDB indicator - orthometric height vertical datum - organization - geoid height - geoid height code When the elevation bluebook has had all records scanned, then the position bluebook then is scanned. If a *80* or *86* record is read from the position file, then the SSN from that record is read. The data structures in memory are then scanned for a matching SSN. - If a SSN is read from the position bluebook without a corresponding SSN from the elevation bluebook, then an error message is displayed and the program ends. - If the SSN is matched, then the elevation data in memory overwrites the position bluebook record in memory, and the modified record is written to the output file. This matching process proceeds for each *80* and/or *86* record in the position file. Finally, a message is printed to display to show program completion, "Normal end of program elevup ... bye" elevup.txt - end ------------------------------