EAS-591T – Space Geodetic Measurements of Active Crustal Motions

 

LAB 3

GPS orbits

The purpose of this lab it to start familiarize yourself with GPS satellite orbits. GPS orbits are distributed in several formats, this will be covered during the lectures on “Satellite orbits”. The simplest format, called “sp3”, provides the (X,Y,Z) position of the satellite center of mass in an ECEF frame every 15 minutes.

(SP3 format: ftp://igscb.jpl.nasa.gov/igscb/data/format/sp3.txt), see also http://www.nima.mil/GandG/sathtml/sp3format.html and http://www.ngs.noaa.gov/GPS/SP3_format.html)

 

#aP1999  1  6 17 15   .00000000     151     D ITR96 FIT  NOA
## 0991 321300.00000000   900.00000000 51184  .7187500000000
+   27     1  2  3  4  5  6  7  8  9 10 13 14 15 16 17 18 19
+         21 22 23 24 25 26 27 29 30 31  0  0  0  0  0  0  0
+          0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
+          0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
+          0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
++         4  5  5  5  5  5  5  5  4  4  5  5  4  5  5  4  5
++         4  5  5  5  5  5  5  5  5  5  0  0  0  0  0  0  0
++         0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
++         0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
++         0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
%c CC CC CCC CCC CCCC CCCC CCCC CCCC CCCCC CCCCC CCCCC CCCCC
%c CC CC CCC CCC CCCC CCCC CCCC CCCC CCCCC CCCCC CCCCC CCCCC
%f   .0000000   .000000000   .00000000000   .000000000000000
%f   .0000000   .000000000   .00000000000   .000000000000000
%i    0    0    0    0      0      0      0      0         0
%i    0    0    0    0      0      0      0      0         0
/* CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
/* CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
/* CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
/* CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC

Header

 

Time, sampling interval, reference frame, list of satellites, etc… (+ several unused fields)

*  1999  1  6 17 15   .00000000                                                 
P  1  20104.806030 -13217.390413 -11082.798291     70.501167                    
P  2 -16426.085225    846.801170 -20466.982765     -9.683821                    
P  3  12408.902332 -23096.398021  -4392.698280     82.115662                    
P  4 -21814.685761   6583.286004  13903.675494    397.078225                    
P  5  11483.578489  23992.934989   -103.222680    179.645035                    
P  6  13914.603552   7028.569760  21655.583624      -.379980                    
P  7 -19497.644080  13513.068456 -11379.499312    804.727473                    
P  8  21255.177904  11180.772732 -11537.683401    652.383494                    
P  9  10922.667891  15086.394860 -19182.925877    -25.699309                    
P 10  -2909.051798  20868.604858  16098.215646     30.825520                    
P 13 -19644.179444  14713.190738  10164.040025   -431.626805                    
P 14 -12173.295431 -23145.973755   4512.270804     11.343876                    
P 15 -11729.204609 -14814.730123 -18890.726846    638.694491                    
P 16 -16504.576939 -14398.826376  15118.107482     96.021738                    
P 17  25744.646319   7081.585610   2368.464782   -199.669427                    
P 18 -14967.040976  -5045.055314  21129.413198     20.485541                    
P 19 -24482.823759  -7103.441318   7864.777634    -93.916348                    
P 21  14574.553758  -3853.965998 -21700.618494      2.745205                    
P 22   6282.098696 -17831.093585  18292.188311    607.655490                    
P 23  16804.363450   9819.108835 -17799.413543      8.263823                    
P 24  -8324.122868  13303.010877  21686.577866    465.370012                    
P 25  21041.028738  -8698.502930  13618.533056       .176293                    
P 26  -2867.387168  21433.101570 -15024.810125    746.988810                    
P 27 -26293.544224   1704.131282  -5324.491666      7.363154                    
P 29  19065.846736 -15843.465371  -9156.826537     84.477396                    
P 30  17020.411582  15981.210745  12498.451275     -3.471081                    
P 31   2229.792497 -21612.934676 -15257.431585     11.933700                     

Date and time

 

P = position

 

Satellite number, X, Y, Z (in km), satellite clock correction (in microsecs)

 

*  1999  1  6 17 30   .00000000                                                 
P  1  19452.467561 -11932.168876 -13430.167048     70.502088                    
P  2 -17495.696948  -1288.487879 -19607.913315     -9.687811 
…etc       

Same, 15 minutes later

 

Satellire orbits are often visualized either by their “ground track” (= projection of their position on the Earth’s surface), or as a “sky plot” (= polar representation, valid at a given location).

Ground track

Sky plot

 

Assignment:

Produce a ground track and a sky plot, at latitude 40N, longitude –86, for satellites 10 and 30, using the sp3 orbit file provided [igs11376.sp3]:

 

1.      Ground track:

    1. Extract satellite position information from sp3 file for SV10 and SV30.
    2. Convert XYZ ECEF satellite coordinates to ellipsoidal coordinates using the Matlab function written for lab2.
    3. Verify that:
      Lat = 45.87907012  Lon =  4.67657211  Alt = 433.8770 m
      Corresponds to:
      X = 4433469.9438m Y = 362672.7267m Z = 4556211.6409 m
    4. Plot ground tracks on a Mercator projection (-80<latitude<80)

 

2.      Sky plot:

    1. Extract satellite position information from sp3 file.
    2. Compute ground-station to satellite unit-vector in geocentric XYZ coordinates
    3. Convert that vector to unit vector (i.e. divide by range)
    4. Rotate it into a local North, West, Up frame (= local [n, e, u] topocentric frame at latitude 40N, longitude 86W) using the Matlab function written for lab2.
    5. Convert [n, e, u] coordinates to azimuth and elevation angle using:

Horizontal length of unit vector = sqrt(n**2+e**2)

Angle from Zenith to satellite = atan2(hlen,u)

Azimith from North = atan2(e,n)

    1. Discard data when azimuth angle is below horizon.
    2. Plot data on a polar plot.

 

Use any combination of csh, GMT, C, F77, or Matlab. Provide source code, executable (code only if Matlab), and resulting plots with explanation if necessary.