From jimr@maia.usno.navy.mil Fri Jul 10 12:23:45 EDT 1998
Received: (from jimr@localhost) by maia.usno.navy.mil (8.7.5/8.7.3) id MAA14257 for gpst@maia; Fri, 10 Jul 1998 12:14:50 -0400 (EDT)
From: Jim Ray (USNO 202-762-1444) 
Message-Id: <199807101614.MAA14257@maia.usno.navy.mil>
Subject: proposed format to exchange clock data
To: gpst@maia.usno.navy.mil
Date: Fri, 10 Jul 1998 12:14:50 EDT
X-Mailer: Elm [revision: 212.4]
Status: RO

Dear Colleagues,

Below is a draft format which I propose for the exchange of a variety
of clock data.  As explained in the introduction, the IGS has a
pressing need for such an exchange format for its analysis products.
This draft format is the result of considerable discussion among the
IGS Analysis Centers and draws upon contributions from a number of
individuals, which I very gratefully acknowledge and appreciate.

It would obviously be useful if the same format can be used to exchange
other clock-like information that will be necessary during the course
of this Pilot Project.  Therefore, I ask that you all please examine
this format and let me know at your earliest opportunity if you have
suggested improvements.  In particular, it would be helpful to know
of omissions or other limitations that might adversely affect the
work of the Pilot Project.

I propose that we try to adopt an initial version by 01 August,
preferably, so that exchange of clock data can commence soon.  It will
undoubtedly be necessary to make later refinements but backwards
compatibility would be highly desirable.

Best regards,
--Jim




           Proposed RINEX Extensions to Handle Clock Information
           *****************************************************

                         (draft 10 July 1998)


0. INTRODUCTION

Previously, the IGS currently has produced clock results only for the
GPS satellites and these are tabulated and distributed at the 15-minute
intervals used in the sp3 orbit ephemerides files.  There is a much
interest in increasing the satellite clock interval to 30-seconds (to
overcome SA effects on interpolation) and also in producing station
clock results (at some appropriate interval, probably 5 minutes).  In
principle, the sp3 format could continue to be used for both of these
extensions, but it would be wasteful considering that the vast majority
of the file space is set aside for orbit information.  Also, the variety
of other clock information that also needs to be exchanged does not lend
itself to the sp3 format.

Alternatively, the IGS could devise a new format specifically for
distributing clock information.  It does not appear that the timing
community already uses a standard data format that is well suited for the
IGS needs.


1. CLOCK DATA TYPES

At the level of monitoring and reporting data from a specific GPS station
the following types of observations can be expected:

        calibration data (C):  time delay measurements between a GPS 
                               receiver and some external reference point
                               (e.g., local master clock)
      discontinuity data (D):  a phase-tracking GPS receiver (e.g., AOA
                               TurboRogue) maintains an internal clock that
                               sometimes will reset itself; in principle,
                               there may be methods to monitor such changes
                               which could then be logged as a relative
                               change in clock state

>From analysis of GPS data, the results for an ensemble of station and
satellite clocks can be determined differentially.  Normally, all clock
values are estimated relative to a single clock being held fixed as a
reference.  Alternatively, a linear combination of the estimated clocks
can be held fixed to some apriori value (normally, zero).  In any case, the
data are:

           analysis data (A):  results from GPS phase/pseudorange data
                               analysis for a network of stations and
                               satellite, all relative to a fixed reference
                               adopted in the analysis

In addition, the broadcast clocks of the satellites can be monitored and
compared to a laboratory standard:

            monitor data (M):  broadcast values for satellite clocks as
                               compared with laboratory standard via monitor
                               receivers (usually timing receivers)


2. FORMAT TYPES AND FILE NAMING

Following established practice, the station-specific data ("C" and "D")
could be reported using an extension of the RINEX format while the analysis
data ("A" and "M") could be reported using an extension to a standard
product format, such as SINEX.  However, since all of these data types are
related and probably need similar format requirements, it seems more
economical to consider a single file format type suitable for all.

RINEX seems the most appropriate file type, even though it is not normally
used for analysis products.  When it becomes feasible and necessary to 
include clock estimates with other analysis products, then suitable
formats can be incorporated into SINEX.  Until then, it is suggested that
a RINEX format extension be used for all clock/timing results.  Normally,
"C" and "D" data types would be collected at the stations, files would be
prepared at the data centers, and the files would flow to the Global Data
Centers named as:

        for calibration data (C) & discontinuity data (D)
        -------------------------------------------------
        ssssdddf.yyC      ssss:    4-character station name designator
                           ddd:    day of the year of first record
                             f:    file sequence number within day
                                   0: file contains all the existing
                                      data of the current day
                            yy:    year
                             C:    file type "C" for clock information

The suffix "C" would be a new RINEX file type.  Normally, data would be
compiled into files by each 24-hour day (GPS time).

The analysis results "A" and "M" would be formed at IGS Analysis Centers or
by IGS/BIPM Pilot Project analysis groups and would normally include results
for a number of stations and/or satellites.  These files would be named as:

        for analysis data (A) & monitor data (M)
        ----------------------------------------
        cccwwwwd.clk       ccc:    3-character analysis center name
                                   designator
                          wwww:    GPS week number
                             d:    day within GPS week (0 - 7)
                           clk:    suffix to identify clock information
                                   product files

Files could be either daily (d = 0,...,6) or weekly (d = 7).

However, despite the file names, a single format for the contents would
apply for all data types.


3. NUMERICAL PRECISION

In order to maintain adequate precision, Fortran E format is used for
all clock quantities, rather than F format.  All timing quantities can
be reported with up to the full precision of REAL*8 numerical precision,
about 16 decimal places.


4. CLOCK DISCONTINUITIES

Clock discontinuities (in bias, rate, and/or acceleration) could be
reported in either of two ways.  If monitored in situ and logged, these
could be reported as "D" data types in .yyC station files.  If detected
in data analysis, these can be reported in .clk files as two "A" data
records for the same station at the same epoch but with two different
sets of clock values.


5. RECEIVER AND SATELLITE NAMES

Since the clock data are normally used in conjunction with data analysis
results (even for the calibration and discontinuity data types), it is
most convenient to use naming conventions for the receivers and
satellites which correspond to the same names used in analyses.  In order
to ensure uniqueness and complete identification, it is also necesssary
to supply the station ID number (usually, the DOMES number issued by the
Terrestrial Frame Section of the IERS).  Thus, receivers should be
identified by:

       Station names:     IGS official 4-character station name designator
       Station number:    DOMES number (or other unique identifier)

For satellite names, the following designations are used in RINEX:

       Satellite names:   3-character string:
                          "Gnn":   nn is the PRN number for GPS
                                   satellites
                          "Rnn":   nn is the almanac number for
                                   GLONASS satellites

6. RINEX CLOCK FORMAT DEFINITIONS AND EXAMPLES

The header recorders should be included in the order indicated, when
required.  The records below marked with * are optional.

It is recommended that each record be read into a blank buffer string
and then the information can be decoded afterwards from the buffer.
Header records are limited to 80 characters.  Data records are also
limited to 80 characters when only clock bias (and sigma) data are
provided; however, the data records can extend up to 170 characters
if the optional clock rate and acceleration (and sigmas) data are also
transmitted.

A data file must begin with the header records.  Data records begin
immediately after the "END OF HEADER" record and complete the remainder
of the data file.


 +----------------------------------------------------------------------------+
 |                                   TABLE A15                                |
 |                CLOCK DATA FILE - HEADER SECTION DESCRIPTION                |
 +--------------------+------------------------------------------+------------+
 |    HEADER LABEL    |               DESCRIPTION                |   FORMAT   |
 |  (Columns 61-80)   |                                          |            |
 +--------------------+------------------------------------------+------------+
 |RINEX VERSION / TYPE| - Format version (2.00)                  | F9.2,11X,  |
 |                    | - File type ("C" for Clock Data)         |   A1,39X   |
 +--------------------+------------------------------------------+------------+
 |PGM / RUN BY / DATE | - Name of program creating current file  |     A20,   |
 |                    | - Name of agency  creating current file  |     A20,   |
 |                    | - Date of file creation                  |     A20    |
 +--------------------+------------------------------------------+------------+
*|COMMENT             | Comment line(s)                          |     A60    |*
 +--------------------+------------------------------------------+------------+
*|LEAP SECONDS        | Number of leap seconds since 6-Jan-1980  |     I6     |*
 |                    | Recommended as an aid to convert from    |            |
 |                    | GPS time to UTC                          |            |
 +--------------------+------------------------------------------+------------+
 |# / TYPES OF DATA   | - Number of different clock data types   |     I6,    |
 |                    |   stored in the file                     |            |
 |                    | - List of clock data types               |  4(5X,A1)  |
 |                    |                                          |            |
 |                    | The following clock data types are       |            |
 |                    | defined in RINEX Version 2:              |            |
 |                    |                                          |            |
 |                    | "A" : Data analysis results for set of   |            |
 |                    |       network receivers and satellites   |            |
 |                    |       wrt to reference clock fixed in    |            |
 |                    |       the analysis                       |            |
 |                    | "C" : Calibration measurements for a     |            |
 |                    |       single GPS receiver wrt an         |            |
 |                    |       external local reference clock     |            |
 |                    | "D" : Discontinuity measurements for a   |            |
 |                    |       single GPS receiver                |            |
 |                    | "M" : Monitor measurements for the       |            |
 |                    |       broadcast satellite clocks wrt a   |            |
 |                    |       standard timescale                 |            |
 |                    |                                          |            |
 +--------------------+------------------------------------------+------------+
 |STATION NAME / NUMB | - 4-character station name designator    |   A4,1X,   |
 |                    | - Unique station identifier,             |   A20,35X  |
 |                    |   preferably the DOMES number            |            |
 |                    |                                          |            |
 |                    | * REQUIRED for data types "C" & "D"      |            |
 |                    |                                          |            |
 +--------------------+------------------------------------------+------------+
 |STATION CLK REF     | Unique identifier for external           |    A60     |
 |                    | reference clock being used as the        |            |
 |                    | standard for calibration                 |            |
 |                    |                                          |            |
 |                    | * REQUIRED for data type "C"             |            |
 |                    |                                          |            |
 +--------------------+------------------------------------------+------------+
 |ANALYSIS CENTER     | Name of Analysis Center                  |            |
 |                    | - 3-character IGS AC designator          |   A3,2X,   |
 |                    | - Full name of Analysis Center           |   A55      |
 |                    |                                          |            |
 |                    | * REQUIRED for data types "A" & "M"      |            |
 |                    |                                          |            |
 +--------------------+------------------------------------------+------------+
 |ANALYSIS CLK REF    | - Name of the receiver or satellite      |   A5,1X,   |
 |                    |   used as the fixed reference in data    |            |
 |                    |   analysis                               |            |
 |                    | - Unique station identifier for          |    A20     |
 |                    |   reference clock (if a receiver),       |            |
 |                    |   preferably the DOMES number            |            |
 |                    |                                          |            |
 |                    |                  OR                      |            |
 |                    |                                          |            |
 |                    | If the reference clock is "NETWK", then  |            |
 |                    | a sum of receiver & satellite clocks     |            |
 |                    | was constrained to an apriori value      |            |
 |                    | (usually, zero) as the reference in the  |            |
 |                    | data analysis.  In this case, the next   |            |
 |                    | record(s) must list the clocks used in   |            |
 |                    | the reference combination constraint.    |            |
 |                    |                                          |            |
 |                    | For the case of "NETWK" reference, this  |            |
 |                    | record has the following format:         |            |
 |                    |                                          |            |
 |                    | - Name of the reference ("NETWK")        |   A5,1X,   |
 |                    | - Number of clocks used in the           |    I20,    |
 |                    |   reference combination constraint       |            |
 |                    |   (listed in the next records)           |            |
 |                    | - Optionally a non-zero value for the    | 5X,E22.16  |
 |                    |   the apriori clock constraint can be    |            |
 |                    |   provided.                              |            |
 |                    |                                          |            |
 |                    | * REQUIRED for data types "A"            |            |
 |                    |                                          |            |
 +--------------------+------------------------------------------+------------+
 |ANALYSIS CLK REF NET| Names of the receivers or satellites     | 12(A4,1X)  |
 |                    | included in the linear combination used  |            |
 |                    | as the fixed reference in data analysis  |            |
 |                    |                                          |            |
 |                    | As many records as necessary may be      |            |
 |                    | included to complete the list            |            |
 |                    |                                          |            |
 |                    | * REQUIRED if "ANALYSIS CLK REF" is      |            |
 |                    |   "NETWK"                                |            |
 |                    |                                          |            |
 +--------------------+------------------------------------------+------------+
 |STATION LIST / TRF  | - Number of stations included in the     |   I6,1X    |
 |                    |   clock data records and listed in       |            |
 |                    |   following header records               |            |
 |                    | - Terrestrial reference frame or         |    A53     |
 |                    |   SINEX solution for the station         |            |
 |                    |   coordinates which match the clock      |            |
 |                    |   solution                               |            |
 |                    |                                          |            |
 |                    | * REQUIRED for data types "A"            |            |
 |                    |                                          |            |
 +--------------------+------------------------------------------+------------+
 |SOLN STA NAMES/NOS  | For each station included in the clock   |            |
 |                    | data records (number given in the        |            |
 |                    | previous header record), include one     |            |
 |                    | record with the following information:   |            |
 |                    | - 4-character station name designator    |   A4,1X,   |
 |                    | - Unique station identifier,             |   A20,35X  |
 |                    |   preferably the DOMES number            |            |
 |                    |                                          |            |
 |                    | * REQUIRED for data types "A"            |            |
 |                    |                                          |            |
 +--------------------+------------------------------------------+------------+
 |END OF HEADER       | Last record in the header section.       |    60X     |
 +--------------------+------------------------------------------+------------+


 +----------------------------------------------------------------------------+
 |                                   TABLE A16                                |
 |                  CLOCK DATA FILE - DATA RECORD DESCRIPTION                 |
 |                                                                            |
 |           (EACH RECORD CAN EXTEND UP TO 170 CHARACTERS IN LENGTH)          |
 +-------------+-------------------------------------------------+------------+
 | OBS. RECORD | DESCRIPTION                                     |   FORMAT   |
 +-------------+-------------------------------------------------+------------+
 |TYP/EPOCH/CLK| - Clock data type (A, C, D, M)                  |   A1,1X,   |
 |             |                                                 |            |
 |             | - Receiver or satellite name                    |   A4,1X,   |
 |             |    - Receiver name is the IGS 4-character       |            |
 |             |      designator                                 |            |
 |             |    - Satellite name is a 5-character string:    |            |
 |             |       - "Gnn" where nn is the PRN number        |            |
 |             |         for GPS satellite                       |            |
 |             |       - "Rnn" where nn is the almanac number    |            |
 |             |         for GLONASS satellite                   |            |
 |             |                                                 |            |
 |             | - Epoch in GPS time (not local time!):          |            |
 |             |     year (4 digits),month,day,hour,min,sec      |   I4,4I3,  |
 |             |     second                                      |    F10.6,  |
 |             |                                                 |            |
 |             | - Clock data in the following sequence:         |            |
 |             |    - Clock bias (seconds)                       |  X,E22.16, |
 |             |    - Clock bias sigma [optional] (seconds)      |  X,E22.16, |
 |             |    - Clock rate [optional] (dimensionless)      |  X,E22.16, |
 |             |    - Clock rate sigma [optional] (dimensionless)|  X,E22.16, |
 |             |    - Clock acceleration [optional] (per second) |  X,E22.16, |
 |             |    - Clock acceleration sigma [optional]        |  X,E22.16  |
 |             |      (per second)                               |            |
 |             |                                                 |            |
 |             |    NB: For data types "A", "C", and "M",        |            |
 |             |        clock data are in the sense of           |            |
 |             |        reported station/satellite clock         |            |
 |             |        *minus* reference clock value.           |            |
 |             |        For data type "D", clock data are        |            |
 |             |        the sense of clock value after           |            |
 |             |        discontinuity *minus* before.            |            |
 |             |                                                 |            |
 |             |    Clock data apart from bias values are        |            |
 |             |    optional.  However, if any optional values   |            |
 |             |    are included, then all lower order values    |            |
 |             |    must be supplied even if optional (although  |            |
 |             |    zero values may be given)                    |            |
 |             |                                                 |            |
 +-------------+-------------------------------------------------+------------+


+------------------------------------------------------------------------------+
|                                   TABLE A17                                  |
|                 CLOCK DATA FILE - EXAMPLE FOR ANALYSIS DATA                  |
+------------------------------------------------------------------------------+

----|---1|0---|---2|0---|---3|0---|---4|0---|---5|0---|---6|0---|---7|0---|---8|

     2.00           CLOCK DATA                              RINEX VERSION / TYPE
TORINEXC V9.9       USNO                 3-APR-96 00:10     PGM / RUN BY / DATE
EXAMPLE OF A CLOCK DATA FILE                                COMMENT
IN THIS CASE ANALYSIS RESULTS ARE INCLUDED                  COMMENT
    10                                                      LEAP SECONDS
     1     A                                                # / TYPES OF DATA
USN  USNO USING GIPSY/OASIS-II                              ANALYSIS CENTER
USNO  40451S003                                             ANALYSIS CLK REF
     4 ITRF96                                               STATION LIST / TRF
GOLD 40405S031                                              SOLN STA NAMES/NOS
AREQ 42202M005                                              SOLN STA NAMES/NOS
TIDB 50103M108                                              SOLN STA NAMES/NOS
HARK 30302M007                                              SOLN STA NAMES/NOS
                                                            END OF HEADER
A AREQ 1994 07 14 20 59 50.000000  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06
A G16  1994 07 14 20 59 50.000000 -.1234567890123456E-06  .1234567890123456E-06 -.1234567890123456E-06  .1234567890123456E-06 -.1234567890123456E-06  .1234567890123456E-06
A GOLD 1994 07 14 20 59 50.000000  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06
A HARK 1994 07 14 20 59 50.000000  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06
A TIDB 1994 07 14 20 59 50.000000  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06  .1234567890123456E-06

----|---1|0---|---2|0---|---3|0---|---4|0---|---5|0---|---6|0---|---7|0---|---8|



+------------------------------------------------------------------------------+
|                                   TABLE A18                                  |
|         CLOCK DATA FILE - EXAMPLE FOR CALIBRATION/DISCONTINUITY DATA         |
+------------------------------------------------------------------------------+

----|---1|0---|---2|0---|---3|0---|---4|0---|---5|0---|---6|0---|---7|0---|---8|

     2.00           CLOCK DATA                              RINEX VERSION / TYPE
TORINEXC V9.9       USNO                 3-APR-96 00:10     PGM / RUN BY / DATE
EXAMPLE OF A CLOCK DATA FILE                                COMMENT
IN THIS CASE CALIBRATION/DISCONTINUITY DATA GIVEN           COMMENT
    10                                                      LEAP SECONDS
     2     C     D                                          # / TYPES OF DATA
USNO 40451S003                                              STATION NAME / NUMB
UTC(USNO) MASTER CLOCK VIA CONTINUOUS CABLE MONITOR         STATION CLK REF
                                                            END OF HEADER
C USNO 1994 07 14 20 59 50.000000  .1234567890123456E-06  .1234567890123456E-06
C USNO 1994 07 14 22 19 30.000000 -.1234567890123456E-06  .1234567890123456E-06
D USNO 1994 07 14 22 23 14.500000 -.1234567890123456E-06  .1234567890123456E-06
C USNO 1994 07 14 23 44 50.000000 -.1234567890123456E-06  .1234567890123456E-06

----|---1|0---|---2|0---|---3|0---|---4|0---|---5|0---|---6|0---|---7|0---|---8|