


                DOCUMENTATION FOR DYNAP SOFTWARE

                        Software Version 2.0
               Documentation date: August 12, 1993

                      Richard A. Snay and Alice R. Drew
                      NOAA/National Geodetic Survey
                      1315 East-West Highway/Room 8112
                      Silver Spring, Maryland 20910
                      tel: 301-713-3202
                      fax: 301-713-4322
                      Internet: rich@dyna.ngs.noaa.gov


          The acronym, DYNAP (DYNamic Adjustment Program),
identifies software for estimating crustal deformation parameters
from a collection of geodetic data.  DYNAP accepts various data
types including horizontal directions, distances, azimuths, zenith
distances,and intersite vectors such as those obtained using the
Global Positioning System (GPS).

          DYNAP incorporates the "simultaneous reduction" technique
(Bibby, 1982) whereby crustal deformation (CD) parameters are
estimated simultaneously along with station positional coordinates
and various "nuisance" parameters, all via the least squares
process.  The estimated CD parameters convert mathematically to
yield the three components of the horizontal strain-rate tensor,
the horizontal rotation rate, and the two components of the
vertical tilt-rate vector.  The mathematical model in DYNAP assumes
that these six rates are temporally constant over the time span of
the data as well as being spatially constant over the geographic
extent of the data.  The software, however, allows the user to
subdivide the data among several time spans and among several
geographic areas and to estimate simultaneously the corresponding
parameter sets, even though each set is specific to a particular
subdivision.

          DYNAP was developed by modifying ADJUST, a least-squares
adjustment program for estimating the positional coordinates of
marks from horizontal, vertical angle, and Global Positioning
System (GPS) network data.  DYNAP can be used exactly the same way
as ADJUST for adjustments when neither the estimation of crustal
motion nor the estimation of GPS rotation parameters is desired. 
That is, the three input files (BBOOK -- the Blue Book data file,
GFILE -- the G-format GPS data file, and AFILE - the adjustment
option file) should not need to be changed.  With the same input
data and options, the outputs of ADJUST and DYNAP will be
essentially identical.  Any changes between the outputs should be
confined to things such as titles and, in one case, the printed
precision.  Changes between calculated values will tend to
disappear as the iterations increase, though round off error
differences may persist.

     Version 2.0 of DYNAP differs from earlier versions primarily
in the formats of its input files.  Earlier versions used the old
blue-book formats wherein geodetic stations were identified by a
3-digit Station Serial Number (SSN).  Because the geodetic
community encountered several projects involving more than 1000
geodetic stations, the Federal Geodetic Control Committee (FGCC)
modified the blue-book formats in 1989 to allow 4-digit SSN's. 
Hence, Version 2.0 of DYNAP was created mainly to accommodate this
change.

     In addition to this document, DYNAP users may find three other
documents helpful in understanding the software's application to
the estimation of crustal deformation parameters.  In particular,
Drew and Snay (1989) demonstrate some capabilities and limitations
of DYNAP with examples using geodetic data for two distinct
California regions--the Imperial Valley and the Cascadia subduction
zone.  The FGCC (1989) documents formats for the input files called
BBOOK and GFILE.  (Extensions to these formats are given in
Appendices B and C of this document.)  Also, Milbert and Kass
(1987) document the ADJUST software.  These three documents may be
obtained from the National Geodetic Information Branch, 1315 East-
West Highway, Silver Spring, Maryland 20910 (telephone: 301-713-
3242).

          A recent change in ADJUST is the addition of
          parameters for estimating the amount that the GPS data could
          be rotated to better agree with conventional data.  However, the
          capability to estimate these parameters has not been added to
          DYNAP.

          A non-documented feature in ADJUST is transformation of GPS vec-
          tors from the WGS72 coordinate system to the NAD83 coordinate
          system.  This is NOT related to the estimation of rotation param-
          eters discussed above, but is a correction applied to each GPS
          vector as it is read by the adjustment program.  In the RESIDUAL
          section of the output, the "observed" data will be the
          transformed vectors.

          Column 53 in the GFILE "B" record indicates the GPS solution
          coordinate system.  A "1" in column 53 indicates that the GPS
          vectors are in the WGS72 coordinate system; while a "2" indicates
          the NAD83 coordinate system.  ADJUST (and DYNAP) assume that if a
          vector is in the WGS72 coordinate system, then it must be
          transformed to the NAD83 system.  Thus, if (and only if) a "1"
          appears in column 53, then the correction will be made.  If GPS
          data is in the WGS72 system and is the only data type in an
          adjustment, then transformation is generally not desirable.  In
          this case, to avoid confusion column 53 should be left blank.

          The following are the constants for transforming GPS vectors from
          WGS72 to NAD83: (1) -0.554 arc seconds of rotation around the Z
          axis; (2) a scale change of +0.2263 parts per million; and (3) a
          shift in the positive Z direction of 4.5 meters.  These parameter
          values were determined by NGS.

          Besides the change from a local to a global adjustment coordinate
          system and the addition of the crustal motion parameters, several
          minor changes have been made to DYNAP that were not made to
          ADJUST.  The first change has been the addition of an option to
          the AFILE "II" record to allow the minimum number of iterations
          to be set.  The minimum number of iterations option uses columns
          19 and 20.  If no minimum is given, the program will quit iterat-
          ing either when the convergence tolerance is reached or at the
          maximum iterations.

          A second minor change is in the output section entitled "OBSERVA-
          TIONAL SUMMARY".  DYNAP, unlike ADJUST, does not abort if a sta-
          tion has been discovered to be undetermined because of insuffi-
          cient data.  DYNAP only prints a warning message.  This change
          was made because whether or not a station is undetermined is
          decided in ADJUST by a simple count of the observations (by
          dimensional type) for each station.  GPS observations are
          included in this count in a simple, but not quite correct manner.
          Thus, stations where GPS data was observed can incorrectly appear
          to be undetermined.  If they are actually undetermined, DYNAP
          will abort later in the zero-th iteration with a singularity
          error message.  Also, not all of the undetermined stations will
          be found by using a simple count of the number of observations at
          a station.

          The AFILE "TT" record is a new (to DYNAP) record that allocates
          and initiates crustal dynamic parameters.  The CD parameters are
          allocated in sets.  Each set is identified by a reference Station
          Serial Number (SSN), a reference date, a range of SSNs, and a
          time span.  The reference SSN designates the station where velo-
          city is constrained to equal zero in all three dimensions.
          (DYNAP only solves for velocities relative to this location.) The
          horizontal coordinates of the reference SSN are obtained from an
          AFILE "CC" (Constrained Coordinate) record, NOT from the BBOOK
          *80* (station identifier) record.  Thus, for each TT record there
          MUST be a CC record with the same SSN as the reference station.
          This CC record must precede the TT record in AFILE.  The CC
          record MUST have latitude and longitude constraints, regardless
          of the dimensionality of the adjustment.  The reference date is
          the date to which the crustal motions refer.  That is, the sta-
          tion locations given in the output are the locations at that
          date, for the calculated CD parameters.  The reference SSN and
          the reference date do not need to be within the SSN and date
          ranges of that CD parameter set.

          The SSN range should contain all of the stations within the geo-
          graphic region of interest for the CD parameter set.  Stations
          outside of this region should be assigned SSNs outside of the
          designated range.  Also SSNs must be unique.  Other than these
          restrictions SSNs may be assigned arbitrarily.  In particular,
          SSNs need not be sequential.

          The SSN range combined with the date range cannot overlap with
          those for another CD parameter set.  Not all observation must
          fall within the range of a CD parameter set.  However, the mixing
          in an adjustment of data which does not contribute to the estima-
          tion of any CD parameter set (but only to the overall solution)
          with data that is used in estimating one or more CD parameter
          sets has not fully been tested.  Also, constraints of any type
          contribute to the estimation of CD parameter sets as if they were
          observations at the reference time.

          The SSN range and the date range determine whether or not an
          observation participates in the estimation of that CD parameter
          set.  Only the standpoint or "from" station, and not the
          forepoint or "to" station in an observation, is used in this
          determination.  This could be a major disadvantage in those
          adjustments where more than one CD parameter set is estimated, or
          where observations from some stations do not participate in the
          calculation of any CD parameter sets.  This may be changed in the
          future.  If this presents a problem in your adjustment there are
          four methods which may be used individually or in combination for
          minimizing the resulting errors.

          1)   Eliminate as many "mixed" CD parameter observations as pos-
               sible.  Mixed CD parameter observations are those whose
               forepoint SSN is not in the SSN range of the CD parameter
               set to which this observation is contributing.

          2)   Increase the standard deviations of the mixed CD parameter
               observations.

          3)   Make sure that the standpoint station is in the SSN range of
               the CD parameter set for which it is most appropriate.

          4)   Duplicate mixed CD parameter observations interchanging the
               standpoint SSN and the forepoint SSN and, if necessary,
               changing the sign of the observation.

          The particular crustal dynamics parameters that are estimated in
          a DYNAP adjustment are determined by the dimensionality of the
          adjustment.  The following discussion will assume a three dimen-
          sional adjustment.  In a three dimensional adjustment six CD
          parameters are estimated.  In a two dimensional adjustment, the
          horizontal components only are estimated.  While in a one dimen-
          sional adjustment, only the vertical components are estimated.
          The fundamental equation for the crustal dynamics matrix is:


               | LATn(T) |   | LATn(T0) |
               |         |   |          |
               | LONn(T) | = | LONn(T0) | +
               |         |   |          |
               |  HTn(T) |   |  HTn(T0) |

                    | a(lat,lat)  a(lat,lon) |
                    |                        |   | LATn(T0)-LAT0 |
                    | a(lon,lat)  a(lon,lon) | * |               | * (T-T0)
                    |                        |   | LONn(T0)-LON0 |
                    | a( ht,lat)  a( ht,lon) |


          where:

               n is a station serial number,
               T is the time of a observation,
               T0 is the reference time,
               LAT0 and LON0 are the latitude and longitude of the
                    reference station,
               the first "*" in this equation indicates matrix multiplication
                    while the second "*" indicates scalar multiplication,
               a( , ) is an element of the CD matrix,
               and longitude is positive eastward.

          Internally, the values of a(lat,lat), a(lat,lon), a(lon,lat), and
          a(lon,lon) are calculated in units of radians per minute, while
          a(ht,lat) and a(ht,lon) are calculated in units of meters per
          minute.

          This CD matrix is not printed (it may be printed by recompiling -
          see the compiler section later in this document).  It is first
          rotated to the horizontal strain matrix and to north and east
          tilt rates and changed to a per year result.  Other commonly used
          strain and tilt parameters are calculated from these and listed
          in the output.  The constants used for these calculations are:

               A = semi-major axis of the ellipsoid
               e2 = square of the eccentricity of the ellipsoid
               sin2(LAT0) = sin(LAT0) * sin(LAT0)
               W = ( 1. - e2 * sin2(LAT0) )
               N = A / W
               M = A * ( 1. - e2 ) / (W * W * W)
               TERM = N * cos(LAT0) / M

          -----------------------------------------------------------------

          ENN = a(lat,lat)
          ENE = a(lat,lon) * TERM
          EEN = a(lon,lat) * TERM
          EEE = a(lon,lon)
          EUN = -a(ht,lat) / M = tilt rate downward to the north
          ENU = -a(ht,lon) / (N * cos(LAT0) ) = tilt rate downward
               to the east

          -----------------------------------------------------------------

          Areal dilation rate = (ENN + EEE)

          Clockwise rotation rate = (EEN - ENE)/2

          First component of shear rate = (EEE - ENN) = GAM1

          Second component of shear rate = (EEN + ENE) = GAM2

          Maximum shear rate = sqrt(GAM1*GAM1 + GAM2*GAM2)

          Direction of minimum extension
                = (0.5*arctan( -GAM2/GAM1 ))*(180/PI) = THETA
                                            (measured clockwise from north)

          Extension in the direction of THETA
                = sin(THETA)*sin(THETA)*EEE + cos(THETA)*cos(THETA)*ENN
                + sin(THETA)*cos(THETA)*GAM2

          Extension perpendicular to the direction of THETA
                = cos(THETA)*cos(THETA)*EEE + sin(THETA)*sin(THETA)*ENN
                - cos(THETA)*sin(THETA)*GAM2

          Maximum tilt rate = sqrt(EUN*EUN + EUE*EUE)

          Direction of maximum tilt = arctan( -EUE/EUN )*(180/PI)
                                            (measured clockwise from north)

          -----------------------------------------------------------------


                                COMPILER INFORMATION

          DYNAP is written in standard FORTRAN 77.  No special compiler
          options are needed to compile it.  Note however, that standard
          FORTRAN 77 assumes that INTEGER is equivalent to INTEGER*4.
          INTEGER*2 is not sufficiently large for all of the integer vari-
          ables in DYNAP.

          The primary storage array is allocated in the main routine.  The
          parameter LENA (defined in a PARAMETER statement in the main rou-
          tine) is the length of the main storage array in double precision
          words.  This parameter should be increased or decreased as neces-
          sary given the restrictions of the computer and/or compiler, and
          the size of the adjustments.

          The maximum number of GPS vectors in a group that can be pro-
          cessed by DYNAP is set by the variable NVECS.  The value of NVECS
          is set by PARAMETER statements in a number of routines.  If the
          maximum number of of GPS vectors in a group needs to be changed,
          then NVECS must be changed in each routine where it occurs.

          A special variable, IPRSZ, is used to control printing of special
          information.  If IPRSZ is initialized (in the main routine) to
          "1", then the amount that remains in the primary storage array is
          printed several times during the adjustment.  The vectors that
          store the crustal dynamics parameter sets are also printed as
          they are updated in each iteration.  They are not, however, first
          converted to the output units described above but are printed in
          their internal units of radians per minute or meters per minute
          (see above discussion).

          The matrix manipulations necessary for processing the observation
          and normal equations are made with a set of routines named "Heart
          of Gold" (Milbert, 1984).  These routines must be compiled and
          linked with the routines of DYNAP.  If you have any questions
          about these routines please refer to the "Heart of Gold" documen-
          tation.

          We would very much appreciate any comments as to form or content
          of the DYNAP adjustment program, its output, and the documenta-
          tion.

                                     REFERENCES

          Bibby, H.M., 1982: Unbiased Estimate of Strain from Triangulation
               Data Using the Method of Simultaneous Reduction, Tectonophy-
               sics 82, 161-174.

          Drew, A.R., and R.A. Snay, 1989: DYNAP: software for estimating
               crustal deformation from geodetic data, Tectonophysics
               162, 331-343.

          Federal Geodetic Control Committee, 1989: Input Formats and
               Specifications of the National Geodetic Survey Data Base,
               Volume I. Horizontal Control Data, National Geodetic
               Information Branch, NOAA, Silver Spring, MD 20910.

          Milbert, D.G., 1984: Heart of Gold: Computer Routines for Large,
               Sparse, Least Squares Computations.
               NOAA_Technical_Memorandum NOS NGS-39, National Geodetic
               Information Branch, NOAA, Silver Spring, MD 20910, 28pp.

          Milbert, D.G., and Kass, W.G., 1987: ADJUST: The Horizontal
               Observation Adjustment Program.  NOAA_Technical_Memorandum
               NOS NGS-47, National Geodetic Information Branch, NOAA,
               Silver Spring, MD 20910, 53pp.

                                     APPENDIX_A


                           ADJUSTMENT OPTION FILE (AFILE)
                          FOR THE DYNAP ADJUSTMENT PROGRAM


          This appendix contains a summary of the adjustment option file
          (AFILE) records.  Changes from the ADJUST options are indicated.
          In several cases, a certain type of option record must precede
          another type of option record if they are both in the AFILE.  If
          the option records are ordered alphabetically then all ordering
          will be correct.  The only exception that I regularly make to
          alphabetic ordering is putting the sometimes very numerous QQ
          (Accuracy Computation) records at the end.



          CODE    TYPE OF RECORD
          -----------------------------------------------------------------
          **  Comment Record
          AA  Ellipsoid Parameter Record
          BB  Bypass Record
          CA  Constrained Azimuth Record
          CC  Coordinate Constraint Record
          CD  Constrained Distance Record
          CH  Constrained Height Difference Record
          CM  Constrained Minimal Distance (Perpendicular to a Strike) Record
          CR  Constrained Rotation Rate Parameter Record
          CT  Constrained Tilt Parameters Record
          CZ  Constrained Zenith Distance Record
          DD  Dimensionality Record
          EE  Default Mean Sea Level Elevation Record
          GG  Default Geoid Height Record
          HC  Control Point Height Adjustment Record
          HD  Default Height Adjustment Record
          II  Iteration Record
          MM  Adjustment Mode Record
          PP  Print Output Record
          QQ  Accuracy Computation Record
          SS  Auxiliary Parameter Indicator and Constraint Record
          ST  Strike Record
          TT  Crustal Dynamic Parameter Set Indicator Record
          VV  Variance Factor Indicator and Constraint Record


          **_-_Comment_Record:  Comment records are ignored by the DYNAP
               adjustment program.  They ONLY make the option file easier
               to read.  DYNAP assumes any option file record that starts
               with two asterisks "**" or two blanks "  " is a comment.
               The comment record is a DYNAP addition to the ADJUST AFILE
               options.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  ** or blank
               03-80  Anything.  Any option record with columns 1 and 2
                      containing two asterisks or two blanks is treated as
                      a comment and ignored. Totally empty lines are also
                      ignored.


          AA_-_Ellipsoid_Parameter_Record:  The Ellipsoid Parameter record
               specifies new value(s) for the semi-major axis of the ellip-
               soid and/or for the square of the eccentricity of the ellip-
               soid.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  AA
               03-12  Semimajor axis, unit of meters
                      default 6378137. meters                        (real)
               13-30  Square of Eccentricity,
                      default 0.0066943800229034156                  (real)
               31-80  Reserved


          BB_-_Bypass_Record:  The Bypass record directs the adjustment
               program to ignore certain types of observations.  Horizontal
               directions (*20* and *22* Blue Book records), horizontal
               angles (*30* and *32* records), zenith distances (*40* and
               *42* records), distances (both *52* and *54* records),
               astronomic azimuths (*60* records), and GPS observations
               (GFILE) may be bypassed.  Blue Book observations which are
               to be ignored are printed (but not given observation
               numbers) in the BLUE BOOK section of the output.  If GPS
               observations are to be ignored, the GPS observation section
               of the output is not printed.

               Bypass records for a particular observation type also cause
               other AFILE options to be ignored.  For example, if the
               AFILE has a SS record for observation type 52 (mark-to-mark
               distances) and a BB record with its sixth column non-blank,
               then this SS record is ignored.  For this reason, the BB
               record MUST precede any DD, SS, TT, and VV records.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  BB
               03-03  Non-blank to bypass horizontal directions.(character)
               04-04  Non-blank to bypass horizontal angles.    (character)
               05-05  Non-blank to bypass zenith distances.     (character)
               06-06  Non-blank to bypass distances.            (character)
               07-07  Non-blank to bypass astronomic azimuths.  (character)
               08-08  Non-blank to bypass GPS observations.     (character)
               09-80  Reserved

          CA_-_Constrained_Astronomic_Azimuth_Record:  A Constrained
               Azimuth record creates a constraint for the azimuth angle
               between two stations.  The CA records are ignored for one-
               dimensional adjustments.

               If CD parameters are being calculated, the constrained
               azimuths are applied at the reference time.  That is, CA
               records do not give azimuths that are invariant across time.
               To do that put the same pseudo azimuth observations at two
               different times in the Blue Book (*60* records).

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  CA
               03-06  Standpoint Station Serial Number            (integer)
               07-10  Forepoint Station Serial Number             (integer)
               11-13  Reserved
               14-16  Degrees Azimuth                             (integer)
               17-18  Minutes Azimuth                             (integer)
               19-22  Seconds Azimuth, units of 0.01 arc seconds  (integer)
               23-27  Azimuth Standard Deviation, units of 0.01 arc
                      seconds, default of 0.01 arc seconds        (integer)
               28-80  Reserved


          CC_-_Constrained_Coordinate_Record:  A Constrained Coordinate
               record specifies that a station is a control point, is that
               its coordinate(s) are constrained or "held fixed" during the
               adjustment.  Only those coordinates which have values given
               on a CC record are constrained - i.e. there is no default
               for a constrained coordinate value.

               Standard deviations for any or all of the constrained coor-
               dinates on the record can also be specified by the CC
               record.  The units for the standard deviations of the lati-
               tudes and longitudes as well as for heights are millimeters.
               The default is 0.1 millimeter for all coordinates.

               Latitudes and longitudes on CC records are not used for the
               constraints in one dimensional adjustments and elevations on
               CC records are not used for constraints in two dimensional
               adjustments.  However, the latitudes and longitudes of CDP
               reference stations must be be included on a CC record even
               for one dimensional adjustments.

               If CD parameters are being calculated, the constrained posi-
               tions are applied at the reference time.  That is, CC
               records (other than the ones used by TT records) do not give
               positions that are invariant across time.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  CC
               03-10  Reserved
               11-14  Station Serial Number                       (integer)
               15-20  Latitude Standard Deviation, units of mm.,
                                            default 0.1 mm.       (integer)
               21-26  Longitude Standard Deviation, units of mm.,
                                            default 0.1 mm.       (integer)
               27-32  Height Standard Deviation, units of mm.,
                                            default 0.1 mm.       (integer)
               33-44  Reserved
               45-46  Degrees Latitude                            (integer)
               47-48  Minutes Latitude                            (integer)
               49-55  Seconds Latitude, units of 0.00001 arc sec. (integer)
               56-56  Latitude Code  N -- POSITIVE NORTH (default)
                                     S -- positive South
               57-59  Degrees Longitude                           (integer)
               60-61  Minutes Longitude                           (integer)
               62-69  Seconds Longitude, units of 0.00001 arc sec.(integer)
               56-56  Longitude Code  E -- positive East
                                      W -- POSITIVE WEST (default)
               70-76  Height, units of millimeters                (integer)
               77-80  Reserved


          CD_-_Constrained_Distance_Record:  A Constrained Distance record
               creates a constraint for a mark-to-mark distance between two
               stations.  This record is never ignored.

               If CD parameters are being calculated, the constrained dis-
               tances are applied at the reference time.  That is, CD
               records do not give distances that are invariant across
               time.  To do that put the same pseudo distance observations
               at two different times in the Blue Book (*52* or *54*
               records).

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  CD
               03-06  Standpoint Station Serial Number            (integer)
               07-10  Forepoint Station Serial Number             (integer)
               11-22  Mark-to-Mark Distance, units of 0.1 mm      (integer)
               23-27  Distance Standard Deviation, units of 0.1 mm,
                      default of 0.1 mm                           (integer)
               28-80  Reserved


          CH_-_Constrained_Height_Difference_Record:  A Constrained Height
               Difference record creates a constraint for the difference
               between the heights of two stations.  CH records are ignored
               in two dimensional adjustments.

               If the orthometric heights of both endpoints are adjusted,
               then the height difference given on this record is con-
               sidered to be orthometric.  If the geoid heights of both
               endpoints are adjusted, then the height difference given on
               this record is considered to be an undulation difference.
               Lastly, if the orthometric height of one endpoint is
               adjusted while the geoid height of the other endpoint is
               adjusted, then the height difference given on this record is
               considered to be an ellipsoidal height difference.  See the
               HC record for more information.

               If CD parameters are being calculated, the constrained
               heights are applied at the reference time.  That is, CH
               records do not give heights that are invariant across time.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  CH
               03-06  Standpoint Station Serial Number            (integer)
               07-10  Forepoint Station Serial Number             (integer)
               11-22  Height Difference, units of 0.1 mm          (integer)
               23-27  Height Standard Deviation, units of 0.1 mm,
                      default of 0.1 mm                           (integer)
               28-80  Reserved


          CM_-_Constrained_Minimal_Distance_(Perpendicular_to_a_Strike)_Record:
               A Constrained Distance (Perpendicular to a Strike) record
               creates a constraint which minimizing the distance distance
               between two stations perpendicular to a given direction (the
               strike).  That is, if the direction is considered to be the
               strike of a fault, then this constraint will minimize (sub-
               ject to the standard deviation) the distance that the two
               stations may differ in the direction perpendicular to the
               strike of the fault.

          If the two stations given in this record are in actuality the
          same station at two different epochs (i.e. with observations made
          to the stations made in different surveys several years apart),
          then the movement of the station is constrained to be close to
          zero in the direction perpendicular to the fault.  If there is
          only one other constraint (e.g. one latitude constraint) on the
          positions of the stations in a given epoch, then this constrain
          satisfies the minimum number of constraints necessary for a solu-
          tion.  Note that if there are no GPS observations in any of the
          time periods, then one time period must have two position con-
          straints (e.g. latitude and longitude).  Also, an elevation must
          be constrained in each epoch for a three dimensional solution.

          This record is generally not used when CD parameters are being
          estimated.  However, if it were then the constraints are applied
          at the reference time.  The strike is entered with a ST record.

          Columns  Descriptions and Defaults                      Type
          ------------------------------------------------------------
          01-02  CM
          03-06  First Station Serial Number                 (integer)
          07-10  Second Station Serial Number                (integer)
          11-15  Standard Deviation, units of millimeters,
                 default of 0.1 meter                        (integer)
          26-80  Reserved


          CR_-_Constrained_Rotation_Rate_Parameter_Record:  A Constrained
          Rotation Rate Parameter record creates a constraint for the
          regional rotation rate of the first set of crustal dynamics
          parameters.

          This constraint is labeled "CR" in the residual section of the
               output.  The regional rotation rate is a linear combination
               of the second and the third CD parameters.  This constraint
               will be ignored in a one-dimensional adjustment.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  CR
               03-14  Rotation Rate, units of microradians per       (real)
                      year, default of 0.0
               15-26  Standard Deviation of Rotation Rate, units     (real)
                      of microradians per year, default of 1
               27-80  Reserved


          CT_-_Constrained_Tilt_Parameters_Record:  A Constrained Tilt
               Parameters record creates one or two constraints for the
               tilt parameters of the first crustal dynamics parameter set.
               This constraint is ignored in a two dimensional adjustment.
               There are three cases associated with this record.

          Case 1: Only the direction of maximum tilt is constrained.  In
               this case, the maximum tilt rate and its standard deviation
               (columns 28-50) must be left blank.  This constraint is
               labeled "CT" in the residual section of the output.  The
               direction of maximum tilt is a linear combination of the
               fifth and the sixth CD parameters in a three-dimensional
               adjustment or the first and the second CD parameters in a
               one-dimensional adjustment.

          Case 2: The maximum tilt rate and the direction of maximum tilt
               are both constrained.  The direction of maximum tilt MUST be
               included as it is needed for initialization.  If it is not
               well known it should be given a large standard deviation.
               The maximum tilt rate can be constrained ONLY if it is
               greater than 0.0001 microradians per year.  If it is less
               than this then the solution approaches singularity and DYNAP
               will set the rate to 0.0 and use case 3.

               These constraints are both labeled "CT" in the residual section
               of the output.  The two constraints are easily differen-
               tiated, though, as the maximum tilt rate has its units
               (microradians per year) written in the last column (where
               station names are normally written) and the direction of
               maximum tilt is written out in degrees, minutes and seconds.
               The maximum tilt rate and the direction of maximum tilt are
               linear combinations of the fifth and the sixth CD parameters
               in a three-dimensional adjustment or the first and the
               second CD parameters in a one-dimensional adjustment.

          Case 3: The north and east tilt rates are constrained to zero.
               If the maximum tilt rate is less than 0.001 microradians per
               year then the rate is assumed to be zero (and is set to zero
               if it is not zero).  The tilt rates in the north and east
               directions are constrained to zero.  The north tilt rate is
               a linear function of the fifth CD parameter and the east
               tilt rate is a linear function of the sixth CD parameter.
               In the residual output section, the north tilt rate con-
               straint is labeled "C5" and the east tilt rate constraint is
               labeled "C6".

          A CT record with nothing in columns 3-50 will constrain the north
               and east tilt rates to zero with standard deviations of 1
               microradian per year.  While a CT record with columns 3-38
               blank will constrain the north and east tilt rates to zero
               with the standard deviations given in columns 39-50.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  CT
               03-14  Direction of Maximum Tilt, units of decimal    (real)
                      degrees, no default
               15-26  Standard Deviation of Maximum Tilt, units of   (real)
                      decimal degrees, default of 1.0 degrees
               27-38  Maximum Tilt Rate, units of microradians per   (real)
                      year, default of 0.0
               39-50  Standard Deviation of Maximum Tilt Rate, units (real)
                      of microradians per year, default of 1
               51-80  Reserved


          CZ_-_Constrained_Zenith_Distance_Record:  A Constrained Zenith
               Distance record creates a constraint for the difference
               between the zenith angles of the two stations.  CZ records
               are ignored for two dimensional adjustments.

               If CD parameters are being calculated, the constrained zen-
               ith distances are applied at the reference time.  That is,
               CZ records do not give azimuths that are invariant across
               time.  To do that put the same pseudo zenith distance obser-
               vations at two different times in the Blue Book (*40* and
               *42* records).

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  CZ
               03-06  Standpoint Station Serial Number            (integer)
               07-10  Forepoint Station Serial Number             (integer)
               11-13  Reserved
               14-16  Degrees Zenith                              (integer)
               17-18  Minutes Zenith                              (integer)
               19-22  Seconds Zenith, units of 0.01 arc seconds   (integer)
               23-27  Zenith Standard Deviation, units of 0.01 arc
                      seconds, default of 0.01 arc seconds        (integer)
               28-80  Reserved


          DD_-_Dimensionality_Record:  The Dimensionality record controls
               the number of spatial dimensions in which the program
               adjusts.  DYNAP may adjust in one, two, or three dimensions.
               If this record is not included in the AFILE, then the
               adjustment is three dimensional.

               If the adjustment is two dimensional, then any zenith dis-
               tances (*40* and *42* records) in the BBOOK file are
               ignored.  Similarly, if the adjustment is one dimensional,
               then horizontal directions (*20* and *22* records), horizon-
               tal angles (*30* and *32* records), and astronomic azimuths
               (*60* records) are ignored.

               In a two dimensional adjustment, a constraint with a stan-
               dard deviation of 0.001 meters is created for the elevation
               of each station.  The values for the elevations are obtained
               from the Blue Book *80* (station identifier) record.  In a
               one dimensional adjustment, constraints with standard devia-
               tions of 0.001 meters are created for the latitude and long-
               itude of each station.  The values for the latitudes and
               longitudes are obtained from the *80* record.  These con-
               straints are created before any other constraints or obser-
               vations.

               Latitude and longitude constraints on CC records are ignored
               in one dimensional adjustments.  Similarly, elevation con-
               straints on CC records are ignored in two dimensional
               adjustments.

               A two dimensional adjustment of the same data takes less
               time and less internal storage than a three dimensional
               adjustment.  Similarly, a one dimensional adjustment of the
               same data takes less time and less internal storage than
               either a two or a three dimensional adjustment.  Thus, using
               a smaller dimension for the adjustment can help if space,
               and to a lesser extent time, are in short supply.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  DD
               03-03  Dimensions of adjustment, no default        (integer)
               04-80  Reserved


          EE_-_Default_Mean_See_Level_Elevation_Record:  The Default Mean
               See Level Elevation record specifies a value for the default
               orthometric height of the adjustment.  The default
               orthometric height is the orthometric height for that is
               used any station which does not have an elevation in columns
               70-75 of its Blue Book *80* (station location) record.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  EE
               03-09  Default Orthometric Elevation, units of mm.
                      default 0.0                                 (integer)
               10-80  Reserved


          GG_-_Default_Geoid_Height_Record:  The Default Geoid Height
               record specifies a value for the default geoid height in the
               adjustment.  The default geoid height is used for all sta-
               tions which do not have a Blue Book *84* record giving their
               geoid height.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  GG
               03-09  Default geoid height, units of mm.,
                      default 0.                                  (integer)
               10-80  Reserved


          HC_-_Control_Point_Height_Adjustment_Record:  A Control Point
               Height Adjustment record specified which height (the
               orthometric or the geoid) is to be adjusted for a control
               point (constrained location).  All control points which do
               not have a HC record have their height adjusted as specified
               by the HD record (if there is one), If there is no HD
               record, then their orthometric height is adjusted.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  HC
               03-03  Height Indicator  E -- ADJUST ORTHOMETRIC ELEVATIONS
                                                                  (default)
                                        G -- Adjust Geoid Height
               04-07  Station Serial Number                       (integer)
               08-80  Reserved

          HD_-_Default_Height_Adjustment_Record:  The Default Height
               Adjustment record specifies which height (the orthometric or
               the geoid) is to be adjusted for all stations which are not
               control points (i.e. constrained) and for all control points
               which do not have HC records.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  HD
               03-03  Height Indicator  E -- ADJUST ORTHOMETRIC ELEVATIONS
                                                                  (default)
                                        G -- Adjust Geoid Height
               07-80  Reserved


          II_-_Iteration_Record:  The Iteration record options control the
               conditions for ceasing to iterate the adjustment solution
               and what is printed after the iterations are completed.
               After the adjustment program stops iterating it either
               aborts or continues to create the final sections of the out-
               put.

               If the adjustment program is converging slowly it stops
               iterating after it has iterated the maximum number of itera-
               tions specified by this record.  An option on this record
               may be used to control whether the program aborts immedi-
               ately or continue through the final output sections.  Print-
               ing a (possibly incorrect) output can be very useful for
               determining why the solution is converging slowly.

               The absolute value of the maximum allowable normalized resi-
               dual may be changed with this record.  If the absolute
               values of any of the residuals are larger than the maximum
               allowable normalized residual, the program aborts.  The
               absolute value of the minimum normalized residual printed
               with an warning message may also be changed with this
               record.  If on this record the user specifies the value 9999
               for the maximum allowable residual, then it is changed to a
               MUCH larger number.  This action effectively eliminates the
               possibility of large residuals causing the program to abort.
               Similarly, if the user specifies the value 999 for the
               minimum absolute normalized residual to be printed with a
               warning message, then it is also changed to a MUCH larger
               number - which causes no warning messages for large residu-
               als.

               The adjustment program normally does not abort if the vari-
               ance of unit weight is increasing, that is, if the solution
               is diverging.  This option may be changed with this record.
               With this option and the maximum iterations options adjust-
               ment results may still be printed before the program aborts.
               This can be very useful for determining why the solution is
               not converging properly.

               The parameter adjustment is converged if BOTH the RMS change
               in the station locations AND the minimum number of itera-
               tions has been reached.  If the parameter adjustment is con-
               verged and if variance factors are to be estimated, then the
               variance factor(s) are iterated (see the VV record).

               A minimum number of iterations may be specified with this
               record.  The minimum number of iterations is an addition to
               the AFILE for the program DYNAP.  It is not in the documen-
               tation for the ADJUST program.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  II
               03-04  Maximum number of iterations, default 5     (integer)
               05-08  Maximum allowable normalized residual,
                           units of sigma, default 1200           (integer)
               09-11  Minimum printed normalized residual,
                           units of sigma, default 600            (integer)
               12-17  RMS station coordinate convergence tolerance,
                           units of millimeters, default 3        (integer)
               18-18  Display results for slowly converging or
                        for diverging solution
                           N -- DO NOT DISPLAY                    (default)
                           Y -- Display
               19-20  Minimum number of iterations, default 0     (integer)
               21-80  Reserved


          MM_-_Adjustment_Mode_Record:  The Adjustment Mode record controls
               the mode of adjustment, that is, to not iterate (Mode 0), or
               what should be done after convergence (Modes 1-3).  This
               record also controls whether or not the standard deviations
               of the residuals, parameters, and station locations values
               should be scaled by the a-posteriori standard deviation of
               unit weight.  Regardless of the option indicated on this
               record, the standard deviations will not be scaled, if the
               a-posteriori standard deviation of unit weight is less than
               0.01.  The final two options on this record control whether
               or not a new Blue Book file should be created containing the
               adjusted positions.  If it is to be created, a name for the
               file can be specified.

               There is not room here to explain in detail what each
               adjustment mode does.  A complete explanation is in the
               ADJUST documentation.  Briefly however;

               Mode 0 - This is a simulation mode.  There are no itera-
               tions.  This mode is normally used for network design with
               simulated data.

               Mode 1 - The standard deviations of the residuals are
               assumed to be the same as the standard deviations of the
               observations.  Also, the standard deviations of the
               parameters and station locations are not calculated.

               Mode 2 - Same as Mode 1 except standard deviations of param-
               eters and station locations are calculated.

               Mode 3 - Same as Mode 2 except standard deviations of resi-
               duals are calculated.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  MM
               03-03  Mode indicator
                           0 -- Simulation, bypass columns 04-12
                                of this record
                           1 -- COMPUTE QUASI-NORMAL RESIDUALS    (default)
                           2 -- Compute quasi-normal residuals
                                and inverse
                           3 -- Compute normal residuals and
                                inverse
               04-04  Post-adjustment indicator
                           N -- DO NOT SCALE STANDARD DEVIATIONS BY
                                A-POSTERIORI STANDARD DEVIATION
                                OF UNIT WEIGHT                    (default)
                           Y -- Scale standard deviations by
                                a-posteriori standard deviation
               05-05  Create Adjusted Data File
                           N -- DO NOT CREATE ADJUSTED DATA FILE  (default)
                           Y -- Create adjusted data file
               06-12  Adjusted Data File Name, default is "NEWBB"
               13-80  Reserved


          PP_-_Print_Output_Record:  The Print Output record contains the
               options for controlling what is listed in the output and
               with what format.  There are seven options on this record.

               The first option controls whether all of the Blue Book
               records are listed on the output or whether only the (non-
               rejected) observations are listed.  Similarly, the second
               option controls whether all of the GFILE (GPS) records are
               listed on the output or whether only the (non-rejected)
               observations are listed.  Normally all records should be
               listed.  However, if one or the other of these files is very
               large and the output needs to be shortened, then these
               options could be used.

               The third option controls whether or not the constraints are
               listed in the output.  Again, this option should be used
               ONLY if there are a very large number of constraints.  If
               the constraints are not listed, then the only place that
               they appear in the output is in the residual section.
               Unless you know exactly what will be in the output, the
               GFILE, BBOOK, and constraints should always be listed when
               some or all of the residuals are to be not listed.

               The fourth through the eleventh options control whether or
               not post-adjustment residuals of observations and con-
               straints are listed in the output.  The forth option con-
               trols the printing of each residual by its magnitude
               (divided by its standard deviation).  The fifth through the
               tenth options control the printing of each residual by the
               observation type and the eleventh controls the printing of
               the constraint residuals.  Note that in Mode=0 post-
               adjustment residuals are never printed because they can not
               be calculated (see the MM option record).  Normally, all
               post-adjustment residuals should be printed.  Using this
               option does save some output space as residuals considered
               too small do not generates output records.  However, the
               blank lines that would have been printed around the small
               residuals are still printed.  This will often result in out-
               put that only consists of blank lines.  It is also probably
               not a good idea to use these options along with any of the
               options that control the printing of Blue Book or G-file
               observations or of constraints as you may not have enough
               information to determine the cause of problems in the data.

               The twelfth option is not implemented at present.  If it
               were, it would be used to determine whether or not there
               should be a section in the output that groups the residuals
               around the intersection stations.  If you do not desire this
               section to be printed, do not have any intersection stations
               indicated on the Blue Book *80* Control Point Records (that
               is do not have a "4" in column 80 of the *80* record).

               The thirteenth option controls whether or not the shifts in
               the positions of the stations are to be printed.  This shift
               is the difference between the final adjusted position and
               the position on the Blue Book *80* records.  Not listing the
               shifts might be used when the station locations on the *80*
               records are poor.  This might occur, for instance, if the
               station locations are from the NAD27 coordinate system and
               the constraints are from the NAD83 coordinate system.

               The fourteenth option controls whether or not the Googe
               numbers are to be printed.  The Googe numbers are always
               between zero and one.  In the adjustment program they deter-
               mine at which parameters the solution breaks down.  A Googe
               number may be considered a measure of the independence of a
               parameter.  A Googe number of zero indicates that that
               parameter is completely dependent on the earlier parameters,
               while a Googe number of one indicates that that parameter is
               independent of the previous parameters.  More information on
               Googe numbers may be found in the ADJUST documentation.

               The fifteenth option controls whether or not the observa-
               tional summary is printed.  This option may be used to shor-
               ten the output when a summary of what types of observation
               were observed "from" or "to" each station is not of concern.

               The sixteenth option controls whether or not the adjusted
               positions are to be printed.  This option may be used to
               shorten the output when the adjusted positions of the sta-
               tions are not of concern.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  PP
               03-03  Echo Blue Book File
                           0 -- ECHO ALL BLUE BOOK RECORDS        (default)
                           1 -- Echo observations only
                           2 -- Echo large misclosures only
               04-04  Echo G-Format File
                           0 -- ECHO ALL G-FORMAT RECORDS         (default)
                           1 -- Echo observations only
                           2 -- Echo large misclosures only
               05-05  Display Constraints
                           Y -- DISPLAY CONSTRAINTS               (default)
                           N -- Do not display
               06-08  Residual Output Tolerance, units of 0.1 sigma
                           0 -- DISPLAY ALL RESIDUALS             (default)
                          10 -- Display residuals greater than or equal
                                  to 1.0 sigma
                         999 -- Display no residuals (special 100,000,000.)
               09-09  Display Direction Residuals
                           Y -- DISPLAY DIRECTION RESIDUALS       (default)
                           N -- Do not display
               10-10  Display Angle Residuals
                           Y -- DISPLAY ANGLE RESIDUALS           (default)
                           N -- Do not display
               11-11  Display Zenith Distance Residuals
                           Y -- DISPLAY ZENITH DISTANCE RESIDUALS (default)
                           N -- Do not display
               12-12  Display Distance Residuals
                           Y -- DISPLAY DISTANCE RESIDUALS        (default)
                           N -- Do not display
               13-13  Display Astro-Azimuth Residuals
                           Y -- DISPLAY ASTRO-AZIMUTH RESIDUALS   (default)
                           N -- Do not display
               14-14  Display GPS Residuals
                           Y -- DISPLAY GPS RESIDUALS             (default)
                           N -- Do not display
               15-15  Display Constrained Residuals
                           Y -- DISPLAY CONSTRAINED RESIDUALS     (default)
                           N -- Do not display
               16-16  Display Residuals Grouped Around Intersection Sta.
                      NOTE - This option is not yet implemented
                           Y -- Display Residuals Grouped Around
                                intersection stations
                           N -- DO NOT DISPLAY                    (default)
               17-17  Display Position Shifts
                           Y -- DISPLAY POSITION SHIFTS           (default)
                           N -- Do not display
               18-18  Display Position Googe Numbers
                           Y -- DISPLAY GOOGE NUMBERS             (default)
                           N -- Do not display Googe numbers
               19-19  Display Observational Summary
                           Y -- DISPLAY OBSERVATIONAL SUMMARY     (default)
                           N -- Do not display Observational Summary
               20-20  Display Adjusted Positions
                           Y -- DISPLAY ADJUSTED POSITIONS        (default)
                           N -- Do not display
               21-80  Reserved


          QQ_-_Accuracy_Computation_Record:  An Accuracy Computation
               records directs that the adjusted value of the distance,
               azimuth, and vertical angle between two stations be calcu-
               lated together with associated statistics indicating the
               accuracy of these adjusted quantities.  These records are
               ignored if the Mode (from the MM Adjustment Mode record) is
               1.  The Station Serial Numbers of the two stations are
               required.  If one (or both) are blank or are otherwise
               incorrect, a warning message is printed but the program does
               not abort.

               The distances, azimuths, and vertical angles and their pro-
               pagated standard deviations are printed in the output sec-
               tion entitled "LENGTH RELATIVE ACCURACIES".  The horizontal
               shift of the length and the accuracy fraction for the dis-
               tance between the two stations are also listed.

               This section is at the end of the adjustment report.  Note
               that the columns for the Station Serial Numbers on the QQ
               record corresponds to the columns for Station Serial Numbers
               on the Blue Book observation records.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  QQ
               03-10  Reserved
               11-14  Station Serial Number, required             (integer)
               15-50  Reserved
               51-54  Station Serial Number, required             (integer)
               55-80  Reserved


          SS_-_Auxiliary_Parameter_Indicator_and_Constraint_Record:  An
               Auxiliary Parameter Indicator and Constraint record creates
               an auxiliary parameter.  Auxiliary parameters are used to
               estimate (a) scale factors for GPS data; (b) refraction
               parameters for zenith distances; or (c) scale factors for
               mark-to-mark distances.  In this section, these will all be
               referred to as scale corrections.

               Each SS record creates an auxiliary parameter for one obser-
               vation type.  The observations are grouped, for a particular
               observation type, by a range of dates.  There is no default
               for the observation type.  The defaults for the starting and
               ending dates are set to include all valid observation dates.
               There may be no overlapping dates on auxiliary parameters
               for the same observation type.

               The auxiliary parameters may be constrained or not con-
               strained to particular values.  The initial values for the
               scale corrections may be specified with this record.  If a
               standard deviation is included on this record, then the
               scale factor is constrained with that standard deviation.

               The auxiliary parameters estimate scale corrections for
               various types of observations from the observations within a
               given time period.  In general, they should be included in
               an adjustment only after blunders and other non-systematic
               errors have been removed from the data set.  However, if you
               suspect that the scale for a set of observations is large,
               the SS record may be included in the AFILE at any time.

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-02  SS
               03-04  Observation Type
                          25 -- GPS (scale)
                          40 -- Zenith distances (refraction)  (also *42*)
                          52 -- Mark-to-mark distances (scale) (also *54*)
               05-08  Start year,  default 1801                   (integer)
               09-10  Start month, default 01                     (integer)
               11-12  Start day,   default 01                     (integer)
               13-14  Start hour,  default 00                     (integer)
               15-16  Start min.,  default 00                     (integer)
               17-17  Time Code, Start Time, default Z
               18-21  End   year,  default 2099                   (integer)
               22-23  End   month, default 12                     (integer)
               24-25  End   day,   default 31                     (integer)
               26-27  End   hour,  default 23                     (integer)
               28-29  End   min.,  default 59                     (integer)
               30-30  Time Code, Start Time, default Z
               31-35  Scale Correction, units of .00000001 (.01 ppm),
                      default 0                                   (integer)
               36-40  Standard Deviation of Scale, units of .01 ppm,
                      default 100                                 (integer)
               41-80  Reserved


          ST_-_Strike_Record:  The Strike record specifies the direction
          needed for CM constraints (see the CM record).  This direction
          may be thought of as the strike of a fault.  Then CM constraint
          record creates minimal distance constraints perpendicular to the
          strike of the fault.  There is no default for the direction on
          this record.  There may be only on ST record in the AFILE.  If
          there are no CM constraint records, then this record has no
          effect.

          Columns  Descriptions and Defaults                      Type
          ------------------------------------------------------------
          01-02  ST
          03-05  Degrees of strike                           (integer)
          06-07  Minutes of strike                           (integer)
          08-11  Seconds of strike, units of 0.01 seconds    (integer)
          12-80  Reserved


          TT_-_Crustal_Dynamic_Parameter_Set_Indicator_Record:  A Crustal
          Dynamic Parameter Set Indicator record creates in the DYNAP
          adjustment program a set of crustal dynamics parameters.  These
          parameters estimate components of a CD matrix of parameters of a
          group of observations which have at least two well separated
          dates of observation.  From the calculated CD matrix various com-
          mon strain rate and tilt rate values are calculated.  These
          strain rate and tilt rate parameters are printed in the output
          section entitled "ADJUSTED CRUSTAL DYNAMICS PARAMETERS".

          The observations are grouped by a range of station serial numbers
          and a range of dates.  The station serial number range is gen-
          erally used to restrict the estimation of the crustal dynamics
          parameter set to only those observation made from stations in a
          limited geographic region.  Because the station serial numbers
          are arbitrary, they can be changed, as desired, so that the sta-
          tion serial numbers for an arbitrary region are the only ones
          within a given range of numbers.

          Each crustal dynamics parameter set has a reference station and a
          reference date.  The crustal dynamics parameters are calculated
          with respect to the location of the reference station at the
          reference date.  The latitude and longitude of the reference sta-
          tion must be constrained even for a one dimensional adjustment as
          the coordinates are needed in for the reference location.  Con-
          straining the heights is not required (even for three and one
          dimensional adjustments) but the results of the adjustment may be
          strange if it is not.  The constraints on the latitude and longi-
          tude are required because the reference location is obtained from
          the "CC" record NOT from the Blue Book *80* record for that sta-
          tion.  The default for the reference date is Jan. 1, 1950.  It
          may be set no earlier than the year 1900 and no later than year
          1999.  The time of day cannot be set but is 0000 hours (midnight)
          GMT.

          The defaults for the range of the station serial numbers include
          every possible station serial number.  The defaults for the dates
          are from Jan. 1, 1900 to Dec. 31, 1999.  There may be no overlap-
          ping dates on crustal dynamics parameter sets for the same range
          of station serial numbers.

          Unlike auxiliary parameters, crustal dynamics parameters may not
          be constrained to particular values nor may initial values be
          specified.  The initial values for all crustal dynamics parame-
          ters are zeros.

          The crustal dynamics parameters are used to estimate the movement
          rate of stations.  They should be included in an adjustment only
          after blunders and other non-systematic errors have been removed
          from the data set.  Also, they should be used only if the degrees
          of freedom is large with respect to the total number of parame-
          ters and stations coordinates (several times larger at least).

          The addition of crustal dynamics parameters does not, in general,
          alter the number of iterations necessary for convergence.  How-
          ever, you may occasionally wish to force the adjustment to
          iterate one extra time to check on the convergence of the crustal
          dynamics parameters.  This may be done by setting a minimum
          iteration number.  The minimum iteration number has been added to
          the II record for DYNAP.  It is not a part if the II record as
          described in the ADJUST documentation.  It is described under the
          the II description here.  The value to be set for the minimum
          iteration can be determined by adding one to the number of itera-
          tions needed for convergence when the minimum number of itera-
          tions has not been set.

          If there are SS (Auxiliary Parameter) records in addition to TT
          records, then the SS records must precede the TT records.

          Columns  Descriptions and Defaults                      Type
          ------------------------------------------------------------
          01-02  TT
          03-06  Reference Station Serial Number
          07-10  Reference year,  default 1950               (integer)
          11-12  Reference month, default 01                 (integer)
          13-14  Reference day,   default 01                 (integer)
          15-18  Start Station Serial Number
          19-22  Start year,      default 1900               (integer)
          23-24  Start month,     default 01                 (integer)
          25-26  Start day,       default 01                 (integer)
          27-30  End Station Serial Number
          31-34  End year,        default 1999               (integer)
          35-36  End month,       default 12                 (integer)
          37-38  End day,         default 31                 (integer)
          39-80  Reserved


          VV_-_Variance_Factor_Indicator_and_Constraint_Record:  A Variance
          Factor Indicator and Constraint record creates and, optionally,
          constrains a variance factor.  Variance factors estimate the
          variance component of a group of observations.  If any variance
          factors are initialized, then the Mode is set to 3 regardless of
          the Mode indicated on the MM record (see the MM record).  If all
          of the initialized variance factors are "fixed" then adjustment
          output appears as if no variance factors had been initialized
          (that is there are no variance factor iterations).

          The observations are grouped by observation types and dates.
          There is no default for the observation types.  There may be no
          overlapping dates on variance factors of the same observation
          type.

          The variance factors may be either absolutely constrained
          ("fixed") or freely determined ("free").  A constrained variance
          factor can be considered a rescaling of the variance of the
          observations.  The weight of an observation is 1.0 divided by the
          variance (the standard deviation squared) of the observation.  A
          free variance factor is, in effect, calculating a scaling factor
          for the observation weights.  The variance factors are used to
          estimate systematic errors or the proper a-priori variance for a
          group of observations.  They should be used only after blunders
          and other non-systematic errors have been removed from the data
          set.  Also they should be used only if the degrees of freedom is
          large with respect to the total number of parameters and stations
          coordinates (several times larger at least).

          If there are free variance factors then there are additional
          iterations in order to calculate variance factor values.  The
          program first iterates to convergence on the parameters.  After
          the parameter adjustment has converged the variance factor
          adjustment commences.  The maximum number of iterations (see the
          II record) applies to the sum of the parameter adjustment itera-
          tions and the variance factor iterations.  The minimum number of
          iterations applies only to the parameter adjustment iterations.

          Columns  Descriptions and Defaults                      Type
          ------------------------------------------------------------
          01-02  VV
          03-04  Observation Type
                     25 -- GPS
                     20 -- Horizontal directions    (also *22*)
                     30 -- Horizontal angles        (also *32*)
                     40 -- Zenith distances         (also *42*)
                     52 -- Mark-to-mark distances   (also *54*)
                     60 -- Astronomic azimuths
          05-08  Start year,  default 1801                   (integer)
          09-10  Start month, default 01                     (integer)
          11-12  Start day,   default 01                     (integer)
          13-14  Start hour,  default 00                     (integer)
          15-16  Start min.,  default 00                     (integer)
          17-17  Time Code, Start Time, default Z
          18-21  End   year,  default 2099                   (integer)
          22-23  End   month, default 12                     (integer)
          24-25  End   day,   default 31                     (integer)
          26-27  End   hour,  default 23                     (integer)
          28-29  End   min.,  default 59                     (integer)
          30-30  Time Code, Start Time, default Z
          31-35  Initial Variance Factor, units of 0.01,
                      default 100                            (integer)
          36-36  Absolute Constraint
                      Y -- Impose Constraint
                      N -- DO NOT CONSTRAIN                  (default)
          37-80  Reserved



                                     APPENDIX_B


                         BLUE BOOK DATA FILE FORMAT (BBOOK)
                          FOR THE DYNAP ADJUSTMENT PROGRAM


          This appendix is to be used only with the DYNAP adjustment pro-
          gram.  It is a supplement to the official Blue Book as published
          by NOAA.  A number of records which are a part of the Blue Book
          format definition are ignored by DYNAP (or ADJUST).  Also, some
          options on particular records are not recognized.  Finally, one
          record which is not part of the Blue Book format is recognized by
          DYNAP (but not by ADJUST).  This appendix provides a brief sum-
          mary.

          The first table provides a list of Blue Book format data records
          which are ignored by DYNAP.  Alternate records are suggested,
          when appropriate.  If the information on the record is never used
          in the DYNAP adjustment then the table lists it as ignored.  Com-
          ment records are not on this list, but are likewise ignored.
          Blue Book records which are ignored by DYNAP, are nontheless
          printed in the Blue Book section of the output (subject to the
          options specified on the AFILE "PP" Print Output record).  Also
          note that a "R" in column 6 of the observation records (*20*,
          *22*, *30*, *32*, *40*, *42*, *52*, *54*, and *60*) will cause
          that record to be rejected (i.e. treated as a comment).



          CODE    TYPE OF RECORD                                  ALTERNATE
          -----------------------------------------------------------------

          Data_Set_Identification_and_Data_Set_Termination_records:
               ignored.

          *10*_and_*11*_Project_Title_records: ignored.

          *12*_Project_Information_record: ignored.

          *13*_Geodetic_Datum_and_Ellipsoid_Record: use an AFILE "AA"
               record.

          *25*,_*27*,_and_*28*_Global_Positioning_System_(GPS)_Blue_Book
               Records: ignored.  All GPS required data is in the GFILE -
               See Appendix C.

          *50*_Taped_Distance_Record: use a *52* record (but see *52*
               record below).

          *51*_Unreduced_Distance_Record: use a *52* record (but see *52*
               record below).

          *53*_Unreduced_Long_Line_Record: use a *54* record (but see *52*
               record below).

          *61*_Geodetic_Azimuth_Record: use a *60* record.

          *70*_Instrument_Records: ignored.

          *81*_Control_Point_Record_(UTM/SPC): use a *80* record.

          *82*_Reference_or_Azimuth_Mark_Record: use a *80* record.

          *83*_Bench_Mark_Record: use a *80* record.

          *90*__Fixed_Control_Record: use AFILE "CC" record.




          The next section of this appendix contains a list of the options
          which MUST be of a specific type for DYNAP.  The list also con-
          tains other information about the Blue Book records.  The list is
          NOT complete, only the most common and/or important options and
          information are given.


          *20*_and_*22*_Horizontal_Direction_Records: The field set number
               must differ for each *20* record which has the same stand-
               point.  The observation must be reduced to the station
               marker (i.e. the height of the instrument must be zero).
               The external consistency is used rather than the internal
               consistency for the standard deviation of the observation.
               If the external consistency columns are blank, then the
               standard deviation of the horizontal direction observation
               is 1 arc second.


          *30*_and_*32*_Horizontal_Angle_Records: Same as for the *20* and
               *22* records except that the standard deviation of the
               observation is obtained from the number of blanks in the
               seconds portion of the horizontal angle value.  If columns
               69-71 are blank, then the standard deviation is set to 1
               minute of arc.  If columns 70-71 are blank, then the stan-
               dard deviation is set to 10 seconds of arc.  If only column
               71 is blank, then the standard deviation is set to 1 second
               of arc.


          *40*_and_*42*_Vertical_Angle_Records: Same as for the *20* and
               *22* records.  Also, the angle must be a zenith distance
               (i.e. column 72 must contain a "Z")


          *52*_Reduced_Distance_Records_and_*54*_Reduced_Long_Line_Records:
               The distances on these records must be mark-to-mark dis-
               tances (i.e.  code "X" ).  The external consistency columns
               contain the standard deviation of a mark-to-mark distance.
               The external consistency on the *52* record is in units of
               millimeters (not ppm) and has a default of 0.01 mm.  The
               external consistency on the *54* record is in units of
               decimeters and has a default of 0.1 mm.  The geoid heights
               and elevations of the standpoint and forepoint are obtained
               from the *80* and *84* records, not these records.


          *60*_Laplace_Azimuth_Records: The Laplace azimuth on this record
               is assumed to be in a geodetic coordinate system.  The prime
               vertical component from this record, not from the *85*
               Deflection record, is used by DYNAP.  If the azimuth is an
               astronomic azimuth then the prime vertical component should
               be zero.  The observation must be reduced to the station
               marker (i.e. the height of the instrument and the height of
               the target must be zero).  The external consistency is used
               rather than the internal consistency for the standard devia-
               tion of the observation.  If the external consistency
               columns are blank, then the standard deviation of the hor-
               izontal direction observation is 1 arc second.


          *80*_Control_Point_Record: If the elevation columns are blank,
               then the elevation is taken from the AFILE "EE" Default Mean
               Sea Level Elevation Record.  This record is required for all
               stations participating in the adjustment.  That is, every
               standpoint or forepoint station serial number which is on a
               non-rejected data record must have a corresponding *80*
               record.  Initial station locations are obtained from this
               record.


          *84*_Geoid_Height_Record: This record is required for all sta-
               tions whose geoid height is not the same as that given on
               the AFILE "GG" Default Geoid Height record.


          *85*_Deflection_Record: The *89* Astronomic Station Location
               record (which is not a valid Blue Book record) may be used
               instead of this record for deflection information.

          The last section of this appendix contains a table of non-Blue
          Book records which,if they are in the BBOOK file, will be treated
          by DYNAP as if they are Blue Book records.  An asterisk between
          the columns and the description indicates required items for that
          record.


          CODE    TYPE OF RECORD
          -----------------------------------------------------------------
          *89*    Astronomic Station Location Record


          *89*_-_Astronomic_Station_Location_record:  The only record
               currently of this type is an Astronomic Station Location
               record.  It has been given a data code type of *86*.  The
               Astronomic Station Location record can be used instead of
               the Blue Book record *85* Deflection Record to specify the
               astronomic values for a control point.  (In DYNAP the
               deflection information on a *85* record is combined with the
               geographic station location information on an *80* Control
               Point record and saved as an astronomic station location.)


               Columns  Descriptions                                   Type
               ------------------------------------------------------------
               01-06   Sequence number                            (Integer)
               07-10 * *89*
               11-14 * Station Serial Number                      (Integer)
               15-44   Reserved
               45-46 * Astronomic Latitude,  Degrees              (Integer)
               47-48 * Astronomic Latitude,  Minutes              (Integer)
               49-55 * Astronomic Latitude,  Seconds,
                              units of 0.00001 seconds of arc     (Integer)
               56-56   Direction of Astronomic Latitude, N or S,
                              default N                         (Character)
               57-59 * Astronomic Longitude, Degrees              (Integer)
               60-61 * Astronomic Longitude, Minutes              (Integer)
               62-68 * Astronomic Longitude, Seconds,
                              units of 0.00001 seconds of arc     (Integer)
               56-56   Direction of Astronomic Longitude, E or W,
                              default W                         (Character)
               57-80   Reserved

                                     APPENDIX_C


                        GPS DATA TRANSFER FILE FORMAT (GFILE)
                          FOR THE DYNAP ADJUSTMENT PROGRAM


          This appendix is not a complete description of the G-format data
          - see the revised Blue Book for the official version.  The infor-
          mation required by the DYNAP adjustment program has an asterisk
          between the columns and the description.  Also note that unlike
          other portions of the Blue Book format, the date and time must be
          in Universal Coordinated Time (UTC).  This is also known as GMT
          or Zulu time.  Time is still encoded as a 24 hour clock (0000 to
          2359).



          CODE    TYPE OF RECORD
          -----------------------------------------------------------------
           A   Project Record
           B   Group Header Record
           C   Member Record
           D   Correlation Record


          A_-_Project_Record:

               Columns  Descriptions                                   Type
               ------------------------------------------------------------
               01-01 * A
               02-03   Job Code (as in Blue Book)               (Character)
               04-07   Year,  Start of Project                    (Integer)
               08-09   Month, Start of Project                    (Integer)
               10-11   Day,   Start of Project                    (Integer)
               12-15   Year,  End of Project                      (Integer)
               16-17   Month, End of Project                      (Integer)
               18-19   Day,   End of Project                      (Integer)
               20-80   Reserved

          B_-_Group_Header_Record:

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-01 * B
               02-05 * Year,  First Actual Measurement (UTC time) (Integer)
               06-07 * Month, First Actual Measurement (UTC time) (Integer)
               08-09 * Day,   First Actual Measurement (UTC time) (Integer)
               10-13 * Time,  First Actual Measurement
                              (UTC time - truncated)              (Integer)
               14-17 * Year,  Last Actual Measurement (UTC time)  (Integer)
               18-19 * Month, Last Actual Measurement (UTC time)  (Integer)
               20-21 * Day,   Last Actual Measurement (UTC time)  (Integer)
               22-25 * Time,  Last Actual Measurement
                              (UTC time - truncated)              (Integer)
               26-27 * Number of Vectors in Group                 (Integer)
               28-42   Software ID & Version (observation and
                               ephemeris models)                (Character)
               43-47   Orbit source                             (Character)
               48-51   Orbit accuracy, units of 0.1 meter         (Integer)
               52-52 * Solution coordinate system code            (Integer)
               54-55   Solution meteorological use code           (Integer)
               56-57   Solution ionospheric use code              (Integer)
               58-59   Solution time parameter use code           (Integer)
               60-60   Nominal accuracy code                      (Integer)
               61-66   Processing agency code
                             (in Appendix C of the Blue Book)   (Character)
               67-70   Year of processing                         (Integer)
               71-71   Month of processing                        (Integer)
               73-74   Day of processing                          (Integer)
               75-80   Reserved


          C_-_Member_Record:

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-01 * C
               02-05 * Origin        Station Serial Number        (Integer)
               06-09 * Differential  Station Serial Number        (Integer)
               10-20 * Delta X, units of 0.0001 meter             (Integer)
               21-25 * Std. Dev. of delta X, units of 0.0001 meter(Integer)
               26-36 * Delta Y, units of 0.0001 meter             (Integer)
               37-41 * Std. Dev. of delta Y, units of 0.0001 meter(Integer)
               42-52 * Delta Z, units of 0.0001 meter             (Integer)
               53-57 * Std. Dev. of delta Z, units of 0.0001 meter(Integer)
               58-58   Rejection Code, non-blank to reject observation
               59-68   Origin Station Data Media Identifier
                              (as in Blue Book)                 (Character)
               69-78   Differential Station Data Media Identifier
                              (as in Blue Book)                 (Character)
               79-80   Reserved

         D_-_Correlation_Record:

               Columns  Descriptions and Defaults                      Type
               ------------------------------------------------------------
               01-01 * D
               02-04 * Row    Index Number                        (Integer)
               05-07 * Column Index Number                        (Integer)
               08-16 * Correlation, units of 0.0000001            (Integer)
               17-19   Row    Index Number                        (Integer)
               20-22   Column Index Number                        (Integer)
               23-31   Correlation, units of 0.0000001            (Integer)
               32-34   Row    Index Number                        (Integer)
               35-37   Column Index Number                        (Integer)
               38-46   Correlation, units of 0.0000001            (Integer)
               47-49   Row    Index Number                        (Integer)
               50-52   Column Index Number                        (Integer)
               53-61   Correlation, units of 0.0000001            (Integer)
               62-64   Row    Index Number                        (Integer)
               65-67   Column Index Number                        (Integer)
               68-76   Correlation, units of 0.0000001            (Integer)
               77-80   Reserved




                                     AUXILIARY TABLES


               Solution_Coordinate_System_Codes

               01 -- WGS72
               02 -- NAD83


               Solution_Meteorological_Use_Codes

               01 -- Default values used
               02 -- Blue Book meteorological data used


               Solution_Ionospheric_Use_Codes

               01 -- None used
               02 -- Ionospheric measurements used


               Solution_Time_Parameter_Use_Codes

               01 -- Blue Book synchronization data used
               02 -- Time parameters solved for in data reduction

               Nominal_Accuracy_Codes

               4 -- Intended accuracy 1 x 10 E -4 plus 5 cm
               5 -- Intended accuracy 1 x 10 E -5 plus 1 cm
               6 -- Intended accuracy 1 x 10 E -6 plus 0.5 cm
