Appendix 4.  Modeling Satellite Clock Variations due to SA

For precise geodesy, the most troublesome aspect of the policy of "selective availability" (SA) is the dithering of the frequency of the satellite oscillators.  Between March and August of 1990, the level of dithering reached 1-2 Hz (~1 part in 109), making the oscillators of the Block II satellites appear to be no more stable than the better crystal oscillators used in field receivers.  Dithering is a problem because receivers do not generally sample the phase of the same transmitted wavefront.  Even if the nominal sampling time is the same, receivers separated by intercontinental distances sometimes sample wavefronts transmitted at times different by a few tens of milliseconds due to the difference in propagation time.  For the level of SA active in 1990, the phase error in the case of simultaneously sampling sites at intercontinental distances is only a few millimeters in equivalent distance.  For receivers that sample at times differing by ~1 second (e.g. TI 4100 and MiniMac 2816 or Trimble 4000SST), the error can reach a cycle or more (see Feigl et al. [1991] for a more complete discussion).  

The satellite oscillator phase (or frequency) variations can be determined rather easily from the carrier-beat phase residuals from a station using an atomic oscillator (Rubidium, Cesium, or Hydrogen-maser).  Program MAKEJ performs this task using the phase-residuals from  one or more C-files to compute satellite clock corrections at each epoch and to write these into a J-file which has the same form as the J-file created from the broadcast clock polynomial (see Chapter 4).  The only complication is the need to clean the phase data and to use the residuals from several stations in order to avoid gaps.  A reasonable strategy is to process the data from a global network of 3–10 atomic-oscillator stations using Type of Analysis = QUICK and to perform only minimal manual editing in order to get a set of C-files to be used as input to MAKEJ.  If you start with enough stations, you can afford to omit problematic C-files.  

To invoke this mode of MAKEJ, choose option 2 at the first prompt and then enter the name of the J-file to be created: 

 Choose source of SV oscillator frequency corrections:
  1  E-file broadcast message. [OK for MAKEX and MODEL without S/A]
  2  Second order fit to C-file from site with H-maser [best for S/A]
 Pick a number.2

 Enter output J-file name >: jtrex0.086
 Opened J-file: jtrex0.086

MAKEJ will then ask you whether you want to see extra (debug) information (usually not) and display a list of the C-files available in the directory: 

Wanna debug? (Y/N) n

 Choose one or more C-files from stations with atomic standards

Available files:
  1 carot0.086                                                                      
  2 cblhl0.086                                                                      
  3 ccent0.086                                                                      
  4 cjpl10.086                                                                      
  5 clock.doc                                                                       
  6 cmadc0.086                                                                      
  7 cmojm0.086                                                                      
  8 covro0.086                                                                      
  9 cpver0.086                                                                      
 10 cricm0.086                                                                      
 11 ctox.bat                                                                        
 12 cvndn0.086                                                                      
 13 cwsfm0.086                                                                      

 Enter file names or pick numbers:
1 7 10 13

In this example, we have chosen C-files from four VLBI sites (Algonquin, Mojave, Richmond, and Westford) all equipped with Hydrogen-maser frequency standards.

You will next be asked to provide as input the J-file used by MODEL in the analysis that produced the C-files.  Since the phase residuals were generated with the satellite-clock terms from this J-file, it is crucial that you use this file as reference in generating the new epoch-by-epoch J-file.

 Choose as input reference the J-file used by MODEL to produce the C-files

Available files:
  1 jrefj0.086           
  2 jtrex0.086           

 Enter a file name or pick a number:1

MAKEJ will then read the time and phase residuals from all of the C-files and estimate a series of satellite-clock coefficients defined in the same way as for the broadcast J-file.  The clock-offset term (units = seconds) is taken from the input J-file directly.  MAKEJ will estimate from three successive values of the phase residuals at each station a frequency-offset coefficient (dimensionless) and frequency rate (or clock acceleration) coefficient  (1/seconds).  The values from each station are then averaged, with outliers detected and removed, and written on the J-file.  Part of a J-file for day 86 of 1990 is shown below:

SV clock terms from C-file rwk     9.14 of 92/07/15 13:00 (sun)       sun       
YR DOY HR MN SEC(UTC)  WKNO SOW(GPST) PRN      XEAF0          XEAF1          XEAF2  
(i2,1x,i3,2i3,1x,f6.7,3x,i3,1x,f9.2,2x,i2.2,2x,3d16.8)
90  86  0 44 24.000   533 175470.00  02   -0.44736080D-05 -0.38595080D-09 -0.72672011D-13
90  86  0 44 54.000   533 175500.00  02   -0.44736080D-05 -0.37723562D-09  0.21328450D-12
...
90  86  3 44 54.000   533 186300.00  02   -0.44619665D-05 -0.18795949D-09  0.13967074D-11
90  86  3 45 24.000   533 186330.00  02   -0.44619665D-05 -0.67060934D-10  0.61826852D-12
90  86  3 45 54.000   533 186360.00  02   -0.44619665D-05 -0.29081758D-10  0.14717717D-13
90  86  3 46 24.000   533 186390.00  02   -0.44619665D-05 -0.75677689D-10 -0.79131662D-12
90  86  3 46 54.000   533 186420.00  02   -0.44619665D-05 -0.34106051D-12  0.00000000D+00
90  86  3 47 24.000   533 186450.00  02   -0.44619665D-05 -0.34106051D-12  0.00000000D+00

The estimates can be made, of course, only if the satellite is visible from the station whose C-file is being used, so if a non-global network is used, you will obtain many messages of the form

 Estimate failed for PRN   19 at epoch   2; using reference values
 Estimate failed for PRN   19 at epoch   3; using reference values
.....
 Estimate failed for PRN   19 at epoch   20; using reference values

As long as at least one "good" station is available in the region of your primary network, you will have a valid estimate for most or all of the epochs of interest.  Use of a global network and an observation span longer than that of your primary data session will avoid endpoint problems, which arise inevitably since phase data from three epochs are needed to estimate frequency and its rate of change (see Chapter 2 of Feigl [1991]).  If a good estimate cannot be obtained at any epoch, the coefficients from the input J-file are written.  In the example shown above, broadcast coefficients have been used after 3h 46m 24s, when PRN 2 is no longer visible from any of the four stations.  Note the difference in the stability of the clock as reported by the satellite (3 parts in 1013) and as actually measured (3 parts in 1010) (although part of this difference might be attributed to time period of averaging—hours versus minutes).

After writing the complete J-file, MAKEJ will display a summary: 

 J-File written for  9 satellites

     Start: 90   86   0 44
     Stop : 90   86   8 42

 Valid estimates  PRN:    2     3     6     9    11    13    14    16    19

                        362   433   542   562   832   710   499   159   369

 Outliers   PRN:     2     3     6     9    11    13    14    16    19

carot0.086           0     0     0     0     0     0     0     0     0
cmojm0.086           0     0     0     0     0     0     0     0     0
cricm0.086           0     0     0     0     0     0     0     0     0
cwsfm0.086           0     0     0     0     0     0     0     0     0

  Jfile: j4stn0.086 contains PRNs 02 03 06 09 11 13 14 16 19

In estimating the clock coefficients, MAKEJ uses only phase residuals which are flagged as "good" for SOLVE and not flagged as a cycle slip requiring an extra bias parameter.   If the data have been completely cleaned no outliers will be detected.