.. _intro_proc_flow: Summary of Program Flow ======================= To understand how to set up input controls and evaluate your solution, you need to have in mind the data and solution files produced at each step. The examples below are from the 5-station 2000 February 3rd (day-of-year 034) GPS-only Southern California survey used in previous releases for testing the installation. .. list-table:: :width: 100% * - **File** - **Name example** - **Description** * - RINEX - :file:`blyt0340.05o` - RINEX observation file, input to :program:`makex` * - x-files - :file:`xblyt0.034` - GAMIT ASCII observation files, similar to RINEX but the start/stop times and sampling interval are the same for all sites; output of :program:`makex`, input to :program:`model`. * - c-files - :file:`cblyt0.034` - GAMIT binary observation files, contain ":math:`\text{o} - \text{c}`"s and partial derivatives as well as observations; output of :program:`model`, input and output of :program:`autcln`, input to :program:`solve`. 6th character increments :file:`a`, :file:`b`, etc. in successive iterations. * - q-file - :file:`qscala.034` - Full solution report from :program:`solve`; 6th character :file:`p` indicates the preliminary solution, :file:`a` the final solution. * - GAMIT h-file - :file:`hscala.00034` - Loosely constrained solution estimates and covariances from :program:`solve`. * - GLOBK h-file - :file:`h0002031200_scal.glx` - Binary h-file for GLOBK, created by :program:`htoglb`. * - :file:`.org` file - :file:`globk.org` - Solution report from :program:`glorg`. Note that GAMIT files are named with single- or two-digit years and day-of-year and have a required format, whereas GLOBK h-filenames are arbitrary but conventionally named with two-digit year, month, day, hour, and minute. A full description of the preprocessing steps undertaken by :program:`makexp` and :program:`makex` to produce x-files and the coordinate, clock, and orbit files used by :program:`model` can be found in Chapter 2 of the `GAMIT Reference Manual `_; naming of c-files and a description of the q- and o-files produced by :program:`solve` is in Chapter 3. Of the GAMIT-produced files, only the h-file has more than a one-digit year in its name since it is the only file that is carried beyond the processing for a single survey. The :file:`.org` file is described in Chapter 3 below. It is also useful to have in mind the way the files containing external data, survey metadata, and command files get from their natural homes to the day directory for processing. "Global" files, which contain information useful for many surveys reside in :file:`~/gg/tables` but are linked by :program:`sh_gamit` into the project :file:`tables/` directory (script :program:`sh_link_tables`) and then into the day directory (script :program:`links.day`), usually under the same name. These include: .. list-table:: * - EOP tables from the IERS - :file:`ut1.` :file:`pole.` * - Lunar-solar ephemerides - :file:`nbody` * - :math:`\text{GPST} - \text{UTC}` - :file:`leap.sec` * - IGS receiver/antenna codes - :file:`rcvant.dat` * - User-defined receiver/antenna codes1 - :file:`guess_rcvant.dat` * - Ground antenna mechanical dimensions - :file:`hi.dat` * - Satellite block #s, PRN #s, masses - :file:`svnav.dat` * - Ground/SV antenna phase center models - :file:`antmod.dat` * - P1-C1, P1-P2 code biases - :file:`dcb.dat` * - Empirical ZHD &mapping functions (MF) - :file:`gpt.grid` * - Time- and space-dependent ZHD and MF - :file:`map.grid` :file:`map.list` * - Ocean loading - :file:`otl.grid` :file:`otl.list` * - Atmospheric tidal loading - :file:`atl.grid` :file:`atl.list` * - Non-tidal atmospheric loading - :file:`atml.grid` :file:`atml.list` The particular version of each of these files is specified by the link in :file:`~/gg/tables/` or the project :file:`tables/` directory. For example, the FES2004 ocean loading model is selected by linking :file:`otl.grid` to :file:`otl_FES2004.grid` in :file:`~/gg/tables/`. For EOP tables, the source (e.g., IERS Bulletin A, coded as :content:`usno` or :content:`usnd`) is specified in :file:`process.defaults` or the :program:`sh_gamit` command line and implemented via the link in the project :file:`tables/` directory. For the non-tidal atmospheric loading (:file:`otl.grid`) and the atmospheric delay (:file:`map.grid`) files the link in the project :file:`tables/` directory is made to a :file:`~/gg/tables/` version for the appropriate year. The grid files for VMF1, atmospheric tidal loading, and non-tidal atmospheric loading may not be needed for most analyses, so their links can remain empty (see below for :file:`sestbl.` entries). **All of these global tables need to be updated from time to time**—the EOP and the VMF1 and ATML grid files daily or weekly if you are processing in near real-time; :file:`dcb.dat` monthly; :file:`leap.sec` yearly; :file:`svnav.dat` whenever a new satellite is launched; and the receiver/antenna tables whenever new instrumentation appears. Note that with the 10.7 release the Earth and Sun positions are obtained from a 20-year tabulation, file named :file:`nbody` which may be linked in :file:`~/gg/tables/` either to the MIT/CfA file :file:`nbody740.2020.asc` used in the past to produce :file:`soltab.` and :file:`luntab.` for each year or to the JPL file :file:`JPL.DE200`, which is the IGS standard. We've found no significant difference in GPS orbital accuracy between the two ephemerides and hence have created the link in :file:`~/gg/tables/` to the MIT/CfA file for continuity. Nutation, which were tabulated in :file:`nutabl.` for each year from an IERS-produced subroutine, are now computed internally from the subroutine. If the :file:`nbody` link is empty, GAMIT will revert to using :file:`soltab.{}`, :file:`luntab.{}`, and :file:`nutabl.{}` which are available through 2018 but will not be created in the future. The command files (:file:`process.defaults`, :file:`sites.defaults`, :file:`sestbl.`, :file:`sittbl.`, :file:`autcln.cmd`, and the GLOBK files) are usually specific to a particular survey or processing effort, so the main version of these is usually kept in the project :file:`tables/` directory or a higher-level directory common to multiple projects, each of which may pertain only to a single year's data. (It is possible to include multiple years within a single project by pre-pending the year to the day directories, but this introduces complications in linking single-year, meteorological, and loading files into the project :file:`tables/` directory.) When :program:`sh_gamit` runs it will link these files into each day directory. However, if a file by the same name already exists in the day directory, it will not be removed, so if you need to have a different setting for one day (e.g. a day-specific :file:`autcln.cmd` file), you can create it within the day directory and it will be maintained through repeated processing of that day. The third set of files comprises those that are day-specific. These include the data files shown at the beginning of this section, but also the orbit, clock, and coordinate files created during the processing. The primary orbital information for GAMIT is the (short, ascii) g-file (e.g., :file:`gigg0.034` where the :file:`f` for final in the :option:`-orbt` option has been replaced by :file:`g` to indicate GPS), which contains for each satellite the values of position and velocity at a particular epoch (usually 12:00 on the day being processed) and coefficients of the 9-component solar radiation-pressure model. These 16 parameters are sufficient for :program:`arc` to generate a tabular ephemeris (binary t-file, e.g., :file:`tigsg0.034`) for model to use in computing the theoretical value of the observations. In normal processing, the g-file is created by :program:`sh_gamit` (invoking :program:`sh_sp3fit`) in the :file:`igs/` directory by fitting :program:`arc`'s model to an ascii tabular ephemeris (in the IGS SP3 format) from an external source. :program:`sh_gamit` then copies the g-file to the :file:`gfiles/` directory and creates a link from the day directory to the file in :file:`gfiles/`. This complicated procedure is useful for two reasons: 1) GAMIT requires partial derivatives of the orbital position with respect to the initial parameters in order to estimate these parameters, and these are not available on the SP3 file; 2) the :file:`igs/` and/or :file:`gfiles/` directories can be used to create multiday orbits for processing pre-IGS data. The satellite clock file (e.g., :file:`jcodr0.034` or :file:`jbrdc0.034`) and receiver clock files (e.g., :file:`kblyt0.034`, :file:`iscal0.034`) all exist solely within the day directory. A description of each of these files may be found in Chapters 1 and 2 of the `GAMIT Reference Manual `_. The main coordinate file for the survey is named :file:`lfile.` and kept in the project :file:`tables/` directory. When :program:`sh_gamit` runs it makes a day-specific link, e.g. :file:`lscal0.034` within each day directory, where updates are made by after each of the two solutions and given the names, e.g., :file:`lscala.034` and :file:`lscalb.034`. We discuss in :numref:`intro_proc_flow` the rules for updating :file:`../tables/lfile.`.