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

LAB 6

The objective of this lab is to quantify the level of noise in our GPS measurements from the pseudorange and phase data. We are looking for the main contributors to that noise, the multipath effects and the receiver noise.

The GPS pseudorange measurements can be modeled as:

_{} (1)

with: P1 = L1 pseudorange (m)

P2 = L2 pseudorange (m)

R = satellite-receiver geometric range (m)

I1 = L1 ionospheric delay

I2 = L2 ionospheric delay

MP1 = P1 multipath plus receiver noise (m)

MP2 = P2 multipath plus receiver noise (m)

Similarly, the phase measurements can be modeled as:

_{} (2)

with: L1 = L1 phase measurement (m)

L2 = L2 phase measurement (m)

B1 = L1 phase ambiguity (m)

B2 = L2 phase ambiguity (m)

mp1 = L1 phase multipath plus receiver noise (m)

mp2 = L2 phase multipath plus receiver noise (m)

Phase noise is much smaller than
pseudorange noise, therefore *mp1>>MP1~0* and *mp2>>MP2~0*.

Now let’s combine (1) and (2) in order to find MP1:

_{} (3)

We need to solve for *I1*.
Let’s combine *L1* and *L2* from (2):

_{} (4)

Now we have to deal with *I1* and *I2*. We know
that the ionospheric delay is proportional to the ionospheric electron content
(*IEC*) and depends on the signal wavelenght. It can be written as (see
lecture notes):

_{}(5)

Substituting (5) into (4) gives:

_{} (6)

Now we can substitute *I1*
from (6) into (3) to get:

_{} (7)

We can rearrange (7) by putting all the constant terms on the right hand side:

_{} (8)

Since *MP1* has a zero mean,
we are only interested in the structure of *MP1* over time, not in the constant DC bias term (constant for
each given orbit arc). We can therefore compute the constant by averaging *MP1*
over a given orbit arc, and then substract this average value from the *MP1*
values at each epoch. Consequently, after removing that bias, the pseudorange
multipath noise can be written as (same derivation for *MP2*):

_{} (9)

Þ Isn’t there an important additional noise term that is not modeled here and which, consequently, is present in MP1 and MP2 as derived above?

Þ Write a Matlab function to compute and plot MP1 and MP2 from GPS data. The data should be read from a RINEX file using the read_rinexo.m function that you used for lab5.

o Compute and plot MP1 and MP2 for PRN10 and PRN31.

o Extra credit if your program plots MP1 and MP2 any PNR requested by the user.

Use the following values:

f_{1} =
1.57542 x 10^{9} Hz;

f_{2} =
1.2276
x 10^{9} Hz;

c = 0.299792458 x 10^{9}
m/s;

l1 = c/f1;

l2 = c/f2;