GNSS Data Processing Laboratory Slides
GNSS Data Processing Laboratory Slides
Laboratory
Slides
http://www.gage.upc.edu
Barcelona, Spain
gAGE
The authorship of this material and the Intellectual Property Rights are owned
by J. Sanz Subirana and J.M. Juan Zornoza.
This authorship statement must be kept intact and unchanged at all times.
5 March 2017
Contents
Tutorial 0: UNIX environment, tools and skills. GNSS standard files formats.
List of Acronyms.
Tutorial 0
UNIX enviroment, Tools and Skills.
GNSS Standard File Formats
Objectives
Files to use
sxyz.eci
Programs to use
graph.py
Development
1. First instructions
(a) Show the name of the directory where you are located.
Execute: pwd
(b) Examine the directory content.
Execute: ls -lt
(c) Go to the personal directory or home directory (‘∼’).
Execute: cd or cd ∼
(d) Go to the GNSS directory (inside the home directory)1
Execute: cd GNSS
(e) Access the HTML directory and view its contents.
Execute:
cd HTML
ls -lt
(f) Go back to the home directory.
Execute: cd ∼
1
If the installation has been done properly according to instructions in the installation
guide, the following three directories will be found: FILES, PROG and HTML. These directories,
together with the Notepad files, will appear in the home/GNSS directory.
1
gAGE/UPC
2. Directory management
(a) From any directory where you are located, go to the GNSS directory
and check that you are in it. Create the directory working inside
the GNSS directory. Access it. Go back to the directory immediately
above (in this case the GNSS directory) by executing ‘..’).
Execute:
cd ∼/GNSS
pwd
mkdir working
cd working
pwd
cd ..
pwd
3. File management
2
Any text editor can also be used.
3
As file file1 does not exist, a new file will be created with this name and with the
same contents as file test.
2
Tutorial 0.1. UNIX Environment, Tools and Skills
(c) Create a ‘link’4 from file file2 to file test. Check the file contents.
Check the contents of file2.
Execute:
ln -s test file2
ls -lt
more file2
(d) Using a text editor (e.g. gedit or similar), edit file2 and change the
word day to the word YEAR. Save the changes and exit gedit. Next,
check the contents of file test and its link file2. Have the contents
of the original file test been modified through its link file2?
Execute:
gedit file2
more test
more file1
(e) Remove file file1 and its link file2. Check if they have been
deleted. Create the directory other. Remove the directory other.
Execute:
ls -lt
rm file1 file2
ls -lt
mkdir other
ls -lt
rm -r other
ls -lt
(f) Find information on the ‘mkdir’ and ‘rm’ commands in the help pages
(i.e. in the UNIX manual).
Execute:
man mkdir
man rm
4
This differs from the previous case because file2 is not a new file, just a pointer to
file test. Thus, the ‘link’ file2 represents the minimum space expense, independent of
the file test size. Execute man ln to see the meaning of different types of links.
5
gawk is the GNU implementation of awk (from the Free Software Foundation).
3
gAGE/UPC
(b) Execute the instructions cat, more and less in order to display the
file contents sxyz.eci. What differences can be seen among these
instructions?6
Execute:
cat sxyz.eci
more sxyz.eci
less sxyz.eci
cat sxyz.eci | less
(c) Using the programming language gawk, print (on screen) the first
and third fields of file sxyz.eci.
Execute:
gawk ’{print $1,$3}’ sxyz.eci |more
or
cat sxyz.eci |gawk ’{print $1,$3}’ |more
(d) Now print all the fields at the same time.
Execute:
cat sxyz.eci | gawk ’{print $0}’ | more
(e) The following instruction generates the file prb1 which contains data
from a single satellite. Which satellite is selected?
Execute:
cat sxyz.eci | gawk ’{if ($1==5) print $0 }’ > prb1
more prb1
(f) What is the meaning of the values in the second column of file prb2
generated by the next instruction?
Execute (in a single line):7
cat sxyz.eci | gawk ’{if ($1==5)
print $2,sqrt($3**2+$4**2+$5**2)}’> prb2
more prb2
(g) Discuss the structure of the following instruction that makes a ‘print’
with a particular format (where %i=integer, %f= float, %s= string).
Execute:
cat sxyz.eci |gawk ’{printf
"%2i %02i %11.3f %i %s \n",$1,$1,$3,$3, $1}’|more
(h) Access the manual pages of gawk.
Execute:
man gawk
6
The command ‘|’ allows us to connect the output of a process with the input of another.
For example, the output of cat can be sent to more.
7
The sentence line is a single line, although it may appear as two lines because of
typesetting constraints.
4
Tutorial 0.1. UNIX Environment, Tools and Skills
(b) For the previously generated file prb1, plot the third field (x coordi-
nate) as a function of the second one (time in seconds).
Execute:8
graph.py -f prb1 -x2 -y3
(g) For the same file used in the previous cases (prb1), write the title
"orbit", x label "sec" and y label "m".
Execute:
graph.py -f prb1 -x2 -y3 -t "orbit" --xl "sec" --yl "m"
8
Depending on the PATH configuration, it would be necessary to execute ‘./graph.py’
instead of ‘graph.py’. Another possibility is to include the current directory ‘.’ in the PATH
variable of the current terminal. This is done in the bash environment by executing export
PATH="./:$PATH". On the other hand, if we want to make this PATH update permanent,
then the sentence export PATH="./:$PATH" must be included at the end of file ‘.bashrc’
in the home directory. When working in tcsh instead of bash, the equivalent sentences are
as follows: execute set PATH=./:${PATH} in the current directory (for a non-permanent
change), or add the sentence set path=(./ $path) to the end of file /etc/csh.cshrc to
make the PATH update permanent. Note that, in this last case, administrator privileges are
needed to edit the /etc/csh.cshrc file.
9
Note that, in the Windows OS, instructions like ’($1=="5")’ must be written as
"($1==’5’)"; that is, replacing (") by (’).
5
gAGE/UPC
Execute:
graph.py -f prb1 -x2 -y3 -s.
graph.py -f prb1 -x2 -y3 -s-
graph.py -f prb1 -x2 -y3 -s-.
graph.py -f prb1 -x2 -y3 -s--
graph.py -f prb1 -x2 -y3 -so
graph.py -f prb1 -x2 -y3 -s+
graph.py -f prb1 -x2 -y3 -sp
graph.py -f prb1 -x2 -y3 -so --cl r
graph.py -f prb1 -x2 -y3 -s. --cl g
(i) Save the plot in a POSTSCRIPT file "orbit.ps" and in a PNG! (PNG!)
file "orbit.png".
Execute:
graph.py -f prb1 -x2 -y3 --sv orbit.ps
graph.py -f prb1 -x2 -y3 --sv orbit.png
(j) Check "help" in graph.py.
Execute:
graph.py -help
6
Tutorial 0.2. GNSS Standard File Format
Objectives
Files to use
LaunchHTML.html, GLONASS Navigation Rinex v2.11.html,
SP3 Version C.html, Observation Rinex v3.01.html,
ANTEX v1.3.html, Observation Rinex v2.11.html,
IONEX v1.0.html, Observation Rinex v2.10.html,
SP3 Version C.html, RINEX CLOCKS v3.00.html,
SBAS Navigation Rinex v3.01.html,
GPS Navigation Rinex v2.11.html
Programs to use
Any Web browser (Firefox can be used, as well).
Development
(a) Hover the mouse over the title ‘Observation RINEX 2.10 Format’,
where some general information is given. Which was the first insti-
tution to develop this format?
→ The Astronomical Institute of the University of Berne.
(b) What was the reason for developing such a standard?
→ The exchange of GPS data from several different GPS receivers.
7
gAGE/UPC
8
Tutorial 0.2. GNSS Standard File Format
(a) Hover over the ‘WAVELENGTH FACT L1/2’ line records. The first line
states the default values for the wavelength measures for the L1
and L2 frequencies. Which satellite system do the default values
apply to? Interpret the second line of the ‘WAVELENGTH FACT L1/2’
records.
→ The Default Wavelength Factor applies for GPS only.
Three satellites (G14, G18, G19) have a full cycle factor in the first
frequency (L1) and half a cycle factor in the second frequency (L2).
(b) Hover over the first record of line ‘# / TYPES OF OBSERV’. What
observation types are defined in RINEX version 2.11? In what units
are these observations measured?
9
gAGE/UPC
(a) This RINEX version is newer than version 2. At first glance the
header section is larger and the observation data records are reor-
ganised to be column readable. Which satellite system does this file
belong to? What type of file is it?
→ This file contains GPS, Glonass and SBAS observations, so it is a
mixed file. It is an observation data file. Note that the possible values
may have changed from the previous version.
(b) The date record in ’PGM / RUN BY / DATE’ also has been redesigned.
What is the date format now? What has changed in the versions?
→ In version 2.11, there was no a strict rule stating date file creation.
In version 3.01, the date has to follow the structure Year/Month/Day
- Hour/Minute/Second - Time zone.
(c) A ‘MARKER TYPE ’ record has been added to the header. What type
of marker type would report a station at the North Pole?
→ The North Pole is located in the middle of the Arctic Ocean, almost
permanently covered with constantly shifting sea ice. It suits the
‘FLOATING ICE’ marker type.
(d) An extensive description of the ANTENNA can now be obtained
from this new standard. What type of antenna information is avail-
able?
→ Antenna Number. Antenna Type + Radome Identifier.
ARP: (Height, East Eccentricity, North Eccentricity).
ARP: (X,Y,Z) when mounted on a vehicle.
Antenna Phase Centre: (North, East, North) w.r.t. the ARP.
Antenna Bore-sight: (North, East, North) or (X,Y,Z).
Antenna Zero Direction: Azimuth or Vector.
(e) A new ‘SYS / # / OBS TYPES’ record has been added in this file.
What observations are present for the SBAS satellites?
Hover over the observation descriptors. How many pseudorange code
descriptors are present for the sixth Beidou (Compass) frequency?
→ Glonass and SBAS satellites have the same four observation types:
L1C S1C C1C S1C. RINEX v3.01 defines C6I, C6Q, C6X pseudor-
ange code descriptors for Beidou.
(f) A new ‘SIGNAL STRENGTH UNIT ’ record has been added to stan-
dardise RINEX SSI. What indicator would have a signal-to-noise
ratio of 33 dBHz at the output of the correlator?
10
Tutorial 0.2. GNSS Standard File Format
(a) As usual, this file is divided into a header section and a data record
section. The header section is shorter than in the observation RINEX.
How short can a GPS navigation message RINEX header be?
→ The shortest header contains just three lines: ‘RINEX VERSION /
TYPE’, ‘PGM / RUN BY / DATE’ and ‘END OF HEADER’.
(b) What ionospheric corrections are given?
The alpha0, alpha1, alpha2, alpha3 and the beta0, beta1, beta2,
beta3 coefficients for the Klobuchar model.
(c) How many leap seconds are used in the file? When is it recommended
to state the number of leap seconds?
→ Fifteen leap seconds. It is recommended for mixed GPS/Glonass files.
(d) This file contains the ephemerides for two different satellites, each
block of ephemeris having a separate colour. Where is the satellite
identifier found? What satellites are present in the file?
10
Program CC2NONCC is available from https://goby.nrl.navy.mil/IGStime/cc2noncc/ .
11
gAGE/UPC
12
Tutorial 0.2. GNSS Standard File Format
13
gAGE/UPC
(a) Hover over the third record of the first line. How many sources can
contribute to produce an IONEX map? And how many models?
→ Several satellite sources can be used: Envisat, Geostationary,
Glonass, GPS, TOPEX/POSEIDON, Navy Navigation Satellite
(NNS) or IRI. Two different models are possible: BENt or ERS.
(b) This file contain two types of information lines: COMMENT lines
and DESCRIPTION lines. What is the difference between the two
records? Which model is used in this IONEX map? When is this
map valid?
→ Description lines give a brief description of the technique and model
used, while comment lines can contain any kind of information. The
IONEX map model of this file is based on spherical harmonics. The
ionospheric map is for Day of Year (DoY) 288 of 1995.
(c) What information would you expect to appear in the ‘OBSERVABLES
USED’ line when using a theoretical model?
→ A blank line is given when a theoretical model is used.
(d) After COMMENT line(s) the IONEX Map Grid is described. Give
details about: the number and dimension of the maps present in
the current file with its mapping function; the number of stations
and satellites used for the TEC computations; the grid size and the
satellite elevation cut-off.
→ The IONEX file contains five 3D TEC/RMS/HGT maps with a 1/ cos(z)
mapping function.
80 stations and 24 satellites have been used to produce this map.
The grid extends from 200 to 800 km in height with an equidistant
increment of 50 km.
The grid extends from 85◦ to −85◦ in latitude and from 0◦ to 355◦
in longitude in increments of 5◦ .
(e) There are some auxiliary data in this file. What type of information
is given, and in which units?
→ The IONEX map gives the DCBs and their RMS for the satellites
used in the map.
The DCBs are given between the GPS P1 and P2 codes in units of
nanoseconds (of L1−L2 delay).
(f) Once the header section ends, the ionospheric maps are detailed.
How many ionospheric maps are presented in the current file?
→ There are three different maps: a TEC; an RMS error map of the
associated TEC map; and a final map containing the heights at which
the TEC values are obtained.
(g) Hover over the first TEC values. What is the time for this map?
14
Tutorial 0.2. GNSS Standard File Format
(a) This clock data file starts with a header section as usual. Hover
over the first and second comment records. What is the difference
between the comments? What kind of information does the second
comment give?
→ The first comment is generic, while the second is a Timescale Re-
Alignment comment. This comment is required if ‘Ax’ data are given
(AR or AS). In case clock values have been time-scale shifted, the
method applied to all receiver and satellite clocks should be noted.
(b) Hover over the ‘SYS / # / OBS TYPES’ records. Which observation
descriptors are present in this RINEX clock file?
→ This file contains four different descriptors from the GPS system:
C1W, L1W, C2W, L2W.
(c) Records ‘SYS / DCBS APPLIED’ and ‘SYS / PCVS APPLIED’ describe
the DCB and PCV. What programs are used to apply different cor-
rections?
→ DCB corrections are applied using the CC2NONCC program, while PCV
corrections are applied using the PAGES program.
(d) Records ‘STATION NAME / NUM’ and ‘STATION CLK REF’ give infor-
mation about the station. Which receiver identifier is present in the
file? What external clock of this station is used for calibration?
→ The station name is the USNO with a receiver identifier 40451S003.
The external clock is the USNO, connected via a continuous cable.
15
gAGE/UPC
16
Tutorial 0.2. GNSS Standard File Format
17
gAGE/UPC
(j) This antenna has a non-zero DAZI record for the PCVs. What is
the value of this increment? Where else can we see this DAZI?
→ This antenna block has a 30◦ azimuth increment for the PCVs. So,
this value will be given from 0 to 360 in increments of 30◦ .
Apart from giving the NOAZI values, this data set includes the DAZI
values, both of them using a 0.0 to 90 grid with a 5◦ step.
(a) The structure of this file is different from the RINEX ones seen up
to now. Hover the mouse over the ‘Extended Standard Product 3
Orbit Format’ title, where some general information is given. What
additional information is included regarding to the SP3-c version?
→ Satellite clock corrections, orbit accuracy exponents, comment lines,
the GPS week and the first epoch seconds of a week.
(b) What was the main advance in the SP3-b version? Did this change
some previous characteristics?
→ Version B of the SP3 files accommodated Glonass orbits. SP3-b modi-
fications were backwards compatible with SP3-a, with the exception
of the satellite identification records, from an I3 field to an A1,I2
one.
(c) What is the main advance in the SP3-c version? How is this achieved?
→ Files now include not only clock accuracy information, but also infor-
mation on the accuracy of (X, Y, Z) satellite coordinates, which is
added using columns 61 to 80 in each position and clock record.
(d) How is this format organised? Is there any optional record?
→ The format of an SP3 file is a header, followed by a series of epoch
times, each with a set of position and clock records listed for each
satellite. Optional records are: satellite velocities, clock correction
rate of change, position and clock correlation record (EP record)
and velocity and clock rate-of-change correlation record (EV record).
(e) The first line of the SP3 file contains information about the entire
file. What is the version of the current file? What might be the next
SP3 version? Which flag mode is set in this file? What time is the
first epoch? How many epochs are included in this file? What type
of orbit is used in the file? Which agency has created the file?
→ The version of the file is C-version. SP3 versions follow the alpha-
bet, so next one might be the SP3-D version. The velocity mode flag
is set. This means the records will follow the order P,V, P,V, ...
in case there are additional records, (EP or EV), which would be in
the middle.
The first epoch dates from 08/08/2001 at 00:00:00.
There are 192 epochs up to a maximum of 10 million.
18
Tutorial 0.2. GNSS Standard File Format
The orbit type is HLM, which means it has been fitted by applying a
Helmert transformation.
IGS is the agency that created the file.
(f) What is the symbol identifying the start of the second line? Which
GPS week number corresponds to this file? Which interval is used
in this file?
→ The ## symbols.
This file corresponds to the GPS week 1126.
A 900 s interval is used.
(g) The next block (lines 3–7) states the satellites used in the file. How
many have contributed? What does a zero value mean? How many
different satellites from different satellite systems are identified?
→ There are 31 different satellites.
The 0 value indicates that all identifiers have been listed.
Each identifier consists of the satellite system indicator followed by
a two-digit integer.
(h) From lines 8 to 12, orbit accuracy of the satellites is listed following
the previous block order (lines 3–7). How is this accuracy exponent
interpreted?
→ For example, if the accuracy exponent is 13 → 213 mm ' 8 m. This
accuracy represents one standard deviation of the entire file (per
satellite).
(i) The next block comprises lines 13 and 14. Although it is mainly
unused, what information is given in the file?
→ This block states the file type and the system time used in the file.
(j) The next block comprises lines 15 and 16. What information is given
in the file? What is the reason for using such base numbers?
→ This block contains the floating-point base number used for computing
the standard deviations of satellite position, velocity, clock correction
and rate of change of the clock correction. Better resolution can be
obtained using a floating-point number different from 2.
(k) After the ’comment’ section, the data records start with the pre-
viously seen time of first epoch. What symbols mark the start of
comments and the new epoch?
→ Comments start with symbols ‘/*’, while the new epoch starts with
symbol ‘*’.
(l) The second epoch line contains the position and clock data record.
What parameters are given? Which units are used? Explain the
different flags applied to the first satellite.
→ Satellite (X,Y,Z) positions, the clock correction with its correspond-
ing standard deviation exponents. There are four final flags.
Satellite positions are given in kilometres, clock correction in mil-
liseconds. The exponents generate corrections in millimetres and pi-
coseconds.
The first satellite has set: a discontinuity flag between the previous
epoch and the current epoch; an orbit position and clock prediction
flag; and a manoeuvre flag.
19
gAGE/UPC
(m) The third epoch line contains the extended position and clock cor-
relation record. What information is given in the first four records?
What is the difference with the previous line? Which correlation
coefficients are given next?
→ The standard deviations of the satellite position and clock correction
are given with greater resolution than the approximate values given
in the position and clock record.
The correlations between the X/Y, X/Z, Y/Z satellite coordinates, and
the correlations between the X/C, Y/C, Z/C satellite coordinates and
clock.
(n) The fourth epoch line contains the velocity and clock rate-of-change
record. In which units are satellite velocities, clock rate of change
and their deviations expressed? What happens if the deviations are
unknown or too big to represent?
→ Velocities are given in decimetres/second and clock rate of change
in microseconds/second. Velocity deviation is in millimetres/second
and clock rate-of-change deviation in picoseconds/second.
A value of 99 means the standard deviation was too large to represent,
while a blank means it is unknown.
(o) The fourth epoch line contains the extended velocity and clock rate-
of-change record. What correlation coefficients are given? Why are
the values given greater than one?
→ The correlations between the Vx/Vy, Vx/Vz, Vy/Vz satellite velocities,
and correlations between the Vx/Clock, Vy/Clock, Vz/Clock satellite
velocities and clock.
Because they have to be divided by 107 .
20
Tutorial 1
GNSS Data Processing Lab Exercises
Prof. Dr. Jaume Sanz Subirana and Prof. Dr. J. M. Juan Zornoza
assisted by Dr. Adrià Rovira Garcia
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
©gAGE/UPC Su
http://www.gage.upc.edu gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
OVERVIEW
• Introduction
• The gLAB tool suite
• Examples of GNSS Positioning using gLAB
• Laboratory session organization
LABORATORY Session
• Starting-up your laptop
• Basic: Introductory lab exercises
• Medium: Laboratory Work Project:
Kinematic positioning of a LEO sat.
• Advanced: Homework
OVERVIEW
• Introduction
¾ The gLAB tool suite
• Examples of GNSS Positioning using gLAB
• Laboratory session organization
LABORATORY Session
• Starting-up your laptop
• Basic: Introductory lab exercises
• Medium: Laboratory Work Project:
Kinematic positioning of a LEO sat.
• Advanced: Homework
Main features:
• High Accuracy Positioning
capability.
• Fully configurable.
• Easy to use.
• Access to internal computations.
• Professionals/Experts:
– Powerful tool with High Accuracy Positioning capability.
– Fast to configure and use: Templates and carefully chosen defaults.
– Able to be executed in command-line and to be included in batch
processing.
9 Introduction
9 The gLAB tool suite
¾ Examples of GNSS Positioning using gLAB
• Laboratory session organization
LABORATORY Session
• Starting-up your laptop
• Basic: Introductory laboratory exercises (Ex1, Ex2)
• Medium: Laboratory Work Project (LWP):
Kinematic positioning of a LEO satellite
• Advanced: Homework
©gAGE/UPC http://www.gage.upc.edu gAGE/UPC
Research group of Astronomy & Geomatics 14
Technical University of Catalonia
RINEX FILES
OVERVIEW
9 Introduction
9 The gLAB tool suite
9 Examples of GNSS Positioning using gLAB
¾ Laboratory session organization
LABORATORY Session
• Starting-up your laptop
• Basic: Introductory laboratory exercises (Ex1, Ex2)
• Medium: Laboratory Work Project (LWP):
Kinematic positioning of a LEO satellite
• Advanced: Homework
Brief summaries of
fundamentals in backup slides
A minimum
knowledge of
UNIX (e.g.,
awk) is
required for
these homework
exercises.
Inside the “Virtual Machine” folder, there are two folders and one file.
Select the OSX Installers folder and follow the instructions of document
“VirtualBoxInstaller_OSX.pdf”
Backup solution
for Macintosh users:
8GB of free space
in disk are required
to install this SW.
Local Organiser: Su
Supported by: gAGE/UPC
ESA/ JRC INTERNATIONAL SUMMER SCHOOL ON GNSS 2015 Research group of Astronomy & Geomatics
Technical University of Catalonia
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
37
OVERVIEW
9 Introduction
9 The gLAB tool suite
9 Examples of GNSS Positioning using gLAB
9 Laboratory session organization
LABORATORY Session
9 Starting-up your laptop
¾ Basic: Introductory laboratory exercises (Ex1, Ex2)
• Medium: Laboratory Work Project (LWP):
Kinematic positioning of a LEO satellite
• Advanced: Homework
Given that session time is limited to 3h, students who feel comfortable
using gLAB, can skip part of the basic exercises (Ex1, Ex2) and jump to
the Lab. Work Project.
4
2
1 3 5
gLAB.out
North East Up
2. Save as gLAB1.out
the associated
In the Default
output file.
Notice that the gLAB.out
2Set output file
file contains the
configuration the processing results with as
output file was the FULL model, as it gLAB1.out
gLAB.out was set in the default
configuration. 3
©gAGE/UPC http://www.gage.upc.edu gAGE/UPC
Research group of Astronomy & Geomatics 43
Technical University of Catalonia
NEU Position Error plot from gLAB1.out
No Iono. correction
gLAB1.out
North East Up
Click Clear to
1 restart plots
Y-min, Y-max
2 3
gLAB1.out
gLAB.out
Time (sec) Vertical
©gAGE/UPC http://www.gage.upc.edu gAGE/UPC
Research group of Astronomy & Geomatics 45
Technical University of Catalonia
Horizontal Position Error plot: gLAB.out, gLAB1.out
Click Clear to
1 restart plots
2 3
gLAB1.out
gLAB.out East: 19 North: 18
Code
delay
Carrier
advance
gLAB1.out gLAB1.out
Ionospheric correction
gLAB.out
(broadcast Klobuchar )
Ionospheric delays are larger
at noon due to the higher
insulation.
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
49
Example of model component analysis: TROPO.
The gLAB configuration can be set-up as follows, to repeat the processing without
applying the tropospheric correction (but using the ionosphere again!):
keep
Set again: Iono gLAB1.out
Disable: Tropo as output file
• The same scheme must be applied for all other model terms (TGDs, relat...)
gLAB1.out gLAB1.out
Tropospheric correction
gLAB.out (blind model)
Tropospheric and vertical
error are highly correlated.
A displacement of vertical
component appears when
gLAB1.out neglecting tropospheric
corrections.
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
52
gLAB1.out gLAB1.out
Relativistic correction
on satellite clock due to
orbit eccentricity.
This is an additional
correction to apply at the
receiver level. The satellite
gLAB1.out gLAB.out
clock oscillator is modified
on factory to compensate
the main effect (~40Ps/day).
being f0 = 10.23 MHz, we have 'f=4.464 10-10 f0= 4.57 10-3 Hz. So, satellite should use f’0=10.22999999543 MHz.
Pa rv
rel 2 e sin( E ) 2 (meters)
c c
Being P=G ME =3.986005 1014 (m3/s2) the gravitational constant, c =299792458 (m/s) light speed in vacuum,
a is orbit’s major semi-axis, e is its eccentricity, E is satellite’s eccentric anomaly, and r and v are
satellite’s geocentric position and speed in an inertial system.
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
54
gLAB1.out gLAB1.out
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
56
gLAB1.out gLAB1.out
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
58
Given that session time is limited to 3h, students who feel comfortable
using gLAB, can skip part of the basic exercises (Ex1, Ex2) and jump to
the Lab. Work Project.
2 Set Kinematic
3
1
Note: The igs_pre1400.atx file contains the APC
used by IGS before GPS week 1400.
Broadcast:
• Few metres of
accuracy for
broadcast orbits
and clocks
Precise:
• Few centimetres
of accuracy for
broadcast orbits
and clocks
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
64
Proceed as in the
previous exercise:
1. In Modeling panel,
disable the model
Default component to
analyze.
1 Disable
Solid Tides
configuration for
PPP 2. Save as correction
gLAB1.out the
associated output
file.
Notice that the gLAB.out
In the Default
file contains the
processing results with
2 Set output file
the FULL model, as it
configuration the
was set in the default as
output file was configuration. gLAB1.out
gLAB.out Make plots as in previous
exercises (see slides 38-40).
3
©gAGE/UPC http://www.gage.upc.edu gAGE/UPC
Research group of Astronomy & Geomatics 65
Technical University of Catalonia
Vertical Position Error plot from gLAB.out, gLAB1.out
1 Click Clear to
restart plots
Y-min, Y-max
-0.4
-0.4 0.4
2 3
gLAB1.out gLAB.out Time (sec) Vertical
1 Click Clear to
restart plots
2 3
gLAB1.out East: 19
($1==“OUTPUT”)
gLAB.out North: 18
Solid Tides:
These effects do not affect the
Sun GNSS signals, but if they were
not considered, the station
coordinates would oscillate
with relation to a mean value.
gLAB.out They produce vertical (mainly)
and horizontal displacements.
Moon
gLAB.out gLAB.out
Satellite
Mass
Center
(MC) Satellite MC to APC:
gLAB.out The satellite MC to APC
eccentricity vector depends on
Broadcast orbits are the satellite. The APC values
referred to the antenna used in the IGS orbits and
phase center, but IGS clocks products are referred to
precise orbits are referred the iono-free combination (LC,
PC) . They are given in the IGS
to the satellite mass center. ANTEX files (e.g., igs05.atx).
OVERVIEW
9 Introduction
9 The gLAB tool suite
9 Examples of GNSS Positioning using gLAB
9 Laboratory session organization
LABORATORY Session
9 Starting-up your laptop
9 Basic: Introductory laboratory exercises (Ex1, Ex2)
¾ Medium: Laboratory Work Project (LWP):
Kinematic positioning of a LEO satellite
• Advanced: Homework
Data files:
Measurements file: graa0800.07o
GPS orbits and clocks:
Broadcast: brdc0800.07n
Precise: cod14193.sp3, cod14193.clk, igs05_1402.atx
GRACE-A Precise Reference Orbit file: GRAA_07_080.sp3
2
3
Select files Set calculate Set data decimation to 30
graa0800.07o seconds instead of 300 to
Set SPP Set SPP
brdc0800.07n have a higher number of
output samples
1
Run gLAB
3
Plotting
Set plotting ranges
[Xmin, Xmax] [Ymin,Ymax] dif.out
1 with the GUI
4
2 Upload file dif.out in
Plot 1, Plot 2 & Plot 3
Questions
1. Is it reasonable to disable
the tropospheric and
ionospheric corrections?
Answer to Question 1:
Is it reasonable to disable the tropospheric and ionospheric corrections?
– Troposphere:
The troposphere is the atmospheric layer placed between Earth’s surface and an
altitude of about 60 km.
GRACE-A satellite is orbiting at about 450 km altitude, thence no tropospheric error
is affecting the measurements.
– Ionosphere:
The ionosphere extends from about 60 km over the Earth surface until more than
2000 km, with a sharp electron density maximum at around 350 km.
GRACE-A satellite, orbiting at about 450 km altitude, is less affected by the
ionosphere than on the ground, but nonetheless a few meters of slant delay
could be experienced. On the other hand, as the correction from Klobuchar
model is tuned for ground receivers, its usage could produce more harm than
benefit (see HW1).
Homework:
HW1: Assess the ionospheric delay on the GRACE-A satellite measurements.
Compare with the Klobuchar model corrections.
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
82
Answer to Question 2:
In this approach, is it necessary to introduce an additional model term to
account for the relativity effect on LEO satellite?
– GRACE-A clock is affected by general and special relativistic effects (due to the
gravitational potential and satellite speed). But this is not a problem, because the
receiver clock is estimated along with the coordinates.
Notice that this relativistic effect will affect all measurements in the same way, and
thence, it will be absorbed into the receiver clock offset estimation.
Answer to Question 3:
What could be the reason for the large error peaks seen in the plots?
– The large error peaks are associated to bad GPS-LEO satellite geometries and
mismodelling. Notice that the satellite is moving at about 8 km/s and therefore the
geometry changes quickly (see HW2). Also, the geometry is particularly poor when
GRACE-A satellite is over poles.
Homework:
HW2: Plot in the same graph the “True 3D error”, the “Formal 3D error” (i.e, the 3D-
sigma) and the number of satellites used. Analyze the evolution of the error.
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
83
Mode 2. Dual frequency PC code with broadcast orbits & clocks
Example of computation with gLAB:
Code positioning + broadcast orbits: Dual frequency: PC
code combination.
Complete the steps
(from previous configuration):
1. [Modeling]:
1 • Disable P1-P2 correction
From previous 2. [Filter]:
configuration, disable From previous
• Dual Frequency
2
(TGD): configuration, set:
• P1 – P2 Correction • Dual Frequency • PC measurement
• PC Measurement
3. Run gLAB
1. Convert the output gLAB.out file to sp3 format: 4. In console mode:
Execute (in Console): out2sp3 gLAB.out
Î orb.sp3
Plotting
• Make the same plots as in
the previous case.
Questions
4. Why is the solution noisier
than the previous one with
Zoom C1 code?
5. Discuss the pros and cons
of the ionosphere-free
combination of codes (PC),
compared with C1 code.
6. How could the
performance be improved?
Plotting
• Make the same plots as in
the previous case.
Questions
4. Why is the solution noisier
than the previous one with
Zoom C1 code?
5. Discuss the pros and cons
of the ionosphere-free
combination of codes (PC),
compared with C1 code.
6. How could the
performance be improved?
Answer to Question 4:
Why the solution is noisier than the previous one with C1 code?
f12 P1 f 22 P2 J P1 P2 § 77 ·
2
Answer to Question 5:
Discuss the pros and cons of the ionosphere-free combination of codes (PC).
– Combination PC removes about the 99.9% of ionospheric delay, one of the most difficult error
sources to model, but two frequency signals are needed. On the other hand, PC is noisier than the
individual codes C1, P1 or P2 (see HW3).
Answer to Question 6:
How could the performance be improved?
– Smoothing the code with the carrier and/or using precise orbits and clock products as well.
Homework:
HW3: Assess the measurement noise on the C1, P1, P2 and PC code measurements.
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
87
Mode 3. Dual freq. LC, PC carrier and code with precise orbits & clocks
2
Set calculate Set data decimation to 30
Select files seconds instead of 300 to
Set SPPof
have a higher number
graa0800.07o
cod14193.sp3
Set PPP
1 3 output samples
cod14193.clk
igs05_1402.atx
Mode 3. Dual freq. LC, PC carrier and code with precise orbits & clocks
Disable Estimate
Troposphere
From PPP configuration, disable:
• Receiver Antenna Phase Center
• Receiver Antenna Ref. Point
• Ionospheric (already disabled)
• P1 – P2 (already disabled)
• Tropospheric Switch to
• Solid Tides correction Kinematic
Î dif.out
3. Plot dif.out file:
1 4
3. Make plots
as before
Run gLAB 2 Upload file dif.out in
Plot 1, Plot 2 & Plot 3
Mode 3. Dual freq. LC, PC carrier and code with precise orbits & clocks
Questions
7. Which is the improvement
in precise orbits and clocks
accuracy, regarding the
broadcast case?
8. How do carrier phase
measurements allow to
improve the accuracy?
9. Why do large peaks appear?
Zoom 10. Why does a 40-50 cm bias
appear in the radial
component?
11. Why do wind-up and
satellite antenna phase
center offset corrections
have to be applied? What
about the solid tides
correction?
Answer to Question 7:
Which is the improvement in precise orbits and clocks accuracy, regarding
the broadcast case?
– Broadcast orbits and clocks are accurate at the level of few meters.
– Precise orbits and clocks IGS products are accurate at few centimeter level (see HW4).
Answer to Question 8:
How do carrier phase measurements allow to improve the accuracy?
– Code measurements are unambiguous but noisy (meter-level measurement noise).
– Carrier measurements are precise but ambiguous (few millimetres of noise, but with
an unknown bias that can reach thousands of kilometres).
– The carrier phase biases are estimated in the navigation filter along with the other
parameters (coordinates, clock offsets, etc.). If these biases were fixed, then
measurements accurate at the level of few millimetres, would be available for
positioning. However, some time is needed to decorrelate such biases from the other
parameters in the filter, and the estimated values are not fully unbiased.
• Homework:
HW4: Assess the broadcast orbits and clock accuracy using the precise products as
the truth.
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
92
Mode 3. Dual freq. LC, PC carrier and code with precise orbits & clocks
Answer to Question 9:
Why do large peaks appear?
– The peaks are related to massive cycle-slips experienced after each revolution (about
1.5 h).
– After a cycle-slip happens, the filter has to restart the carrier ambiguity. This is not a
problem when it occurs on a single satellite (being the others well determined), as its
ambiguity is estimated quickly. But when a massive cycle-slip occurs, the filter needs
more time to converge (see HW5).
• Homework:
HW5: Analyze the carrier phase biases convergence in this kinematic PPP
positioning.
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
93
Mode 3. Dual freq. LC, PC carrier and code with precise orbits & clocks
– Wind-up correction: Wind-up only affects the carrier phase measurements, but not
the code ones. This is due to the electromagnetic nature of circularly polarised waves
of GPS signals.
The correction implemented in gLAB only accounts for the satellite movement relative
to a receiver with fixed coordinates. An additional correction to account for the
GRACE-A motion along its orbital path could also be included, but since most part of
this effect will be common for all satellites, it will be absorbed by the receiver clock
offset estimation.
– GPS satellite antenna phase center: Precise orbits and clocks of IGS products are
relative to the GPS satellite mass centre (unlike the broadcast ones, which are
relative to the satellite antenna phase centre [APC]). Thence an APC offset vector
must be applied.
– Solid tides correction: No Earth’s Solid Tides corrections are needed because the
rover is not on the ground.
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
94
Mode 4. Single freq. with L1, C1 GRAPHIC comb. and precise orbits & clocks
Questions
12. Which is the main benefit
of the GRAPHIC
combination?
Mode 4. Single freq. with L1, C1 GRAPHIC comb. and precise orbits & clocks
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
97
Mode 5. Single freq. L1, C1 carrier and code with precise orbits & clocks
1
Note:
2
TGDs (i.e, P1-P2
DCBs) are needed
for single-
frequency
positioning.
Mode 5. Single freq. L1, C1 carrier and code with precise orbits & clocks
Questions
15. Explain why the solution
has a more defined
pattern, with large
oscillations.
Mode 5. Single freq. L1, C1 carrier and code with precise orbits & clocks
Homework:
HW6: Apply the Klobuchar model and discuss the results.
HW7: Generate a file with the satellite track (in a Earth-Fixed Earth-Centered
reference frame) to be viewed with .
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
101
OVERVIEW
9 Introduction
9 The gLAB tool suite
9 Examples of GNSS Positioning using gLAB
9 Laboratory session organization
LABORATORY Session
9 Starting-up your laptop
9 Basic: Introductory laboratory exercises (Ex1, Ex2)
9 Medium: Laboratory Work Project (LWP):
Kinematic positioning of a LEO satellite
¾ Advanced: Homework
HW2: Plot in the same graph the “True 3D error”, the “Formal 3D error” (i.e,
the 3D-sigma) and the number of satellites used. Analyze the evolution of
the error.
HW3: Assess the measurement noise on the C1, P1, P2 measurements and
the PC code combination.
HW4: Assess the broadcast orbits and clocks accuracy using the precise
products as the truth.
HW5: Analyze the carrier phase biases convergence in this kinematic PPP
positioning.
HW6: Apply the Klobuchar model to the L1, P1 positioning with precise
orbits and clocks and discuss the results.
HW7: Generate a file with the satellite track ((in a Earth-Fixed Earth-Centered
reference frame) to be viewed with .
Backup slides
1. [Output]: set
• Print INPUT Message
• Print MODEL Message
(see message content in the Tooltips)
2. Run gLAB.
3. Make plots:
[Analysis] section:
• Click on the preconfigured Ionospheric
combinations option.
• Complete the [Plot1, Plot2, Plot3] panels
configuration as indicated in the next
slide.
Note: This configuration will provide:
Plot 1: L1-L2 as a function of time for ALL sat.
Plot 2: L1-L2 as a function of time for PRN16.
Plot 3: P2-P1 as a function of time for PRN16
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
106
Plot 1
Plot 3
$11-$12 ÍL1-L2
Plot 2
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
107
HW1: Assessing the ionospheric delay on the GRACE-A satellite
The previous plot can be also generated in console mode as follows (see graph.py –help):
graph.py -f gLAB.out -c '($1=="INPUT")' -x4 -y'($11-$12)' --l "ALL"
-f gLAB.out -c '($1=="INPUT")&($6==16)' -x4 –y '($10-$9)' -so --l "PRN16 P2-P1"
-f gLAB.out -c '($1=="INPUT")&($6==16)' -x4 –y '($11-$12)' -so --l "PRN16 L1-L2"
--xn 43000 --xx 67000 --yn -10 --yx 15
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
108
3. From previous file, plot the ionospheric delay for the time interval [43000:67000]. Show in the
same plot: 1) ALL satellites, 2) PRN16 and 3) PRN21 (see Plot HW1-b in next slide).
graph.py -f I1.txt -x2 -y3 -s. --cl y --l "ALL"
-f I1.txt -c '($1==16)' -x2 -y3 -so --cl r --l "PRN16"
-f I1.txt -c '($1==21)' -x2 -y3 -so --cl g --l "PRN21"
--xn 43000 --xx 67000 --yn -10 --yx 10
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
109
HW1: Assessing the ionospheric delay on the GRACE-A satellite
Plot HW1-c generation (working with the GUI and in console mode):
1. Using the gLAB configuration of exercise 1, activate the “Ionospheric Correction” option in the
[Modelling] panel and run again gLAB. The program will output the file gLAB.out.
(see help and file format executing: gLAB_linux –messages, or gLAB_linux –help).
2. “grep” the MODEL messages of file gLAB.out, selecting the C1P [PRN, time Klob_iono] data:
3. Plot in the same graph the ionospheric delays of satellites PRN16 and PRN21 from I1.txt and
klob.txt file (see Plot HW1-c in the previous slide).
Note: Both the Graphic User Interface (GUI) panel or the graph.py tool (in console mode) can be
used for plotting.
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
111
HW2: Plot in the same graph the “True 3D error”, the “Formal 3D
error” and the number of satellites used. Analyze the result.
Complete the following steps
1. Configure gLAB as in Mode1 and set Print EPOCHSAT Messages in Output panel.
(see message content in the Tooltip, or executing gLAB_linux –messages).
Remember that IONO corrections were unable in Mode 1.
2. Run gLAB.
The program will output the file gLAB.out.
3. Generate the dif.out file from gLAB.out as in the previous exercises.
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
112
HW2: Plot in the same graph the “True 3D error”, the “Formal 3D
error” and the number of satellites used. Analyze the result.
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
114
[Id YY Doy sec GPS PRN el Az N. list C1C L1C C1P L1P C2P L2P]
1 2 3 4 5 6 x x 9 10 11 xx 13 14 15 16 ]
2
§ 77 ·
Compute P1 code noise and multipath as: M P1 P1 L1 2 J 1( L1 L 2) J ¨ ¸
© 60 ¹
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
115
HW3: Code measurements noise assessment: C1, P1, P2 and PC
[Id YY Doy sec GPS PRN el Az N. list C1C L1C C1P L1P C2P L2P]
1 2 3 4 5 6 x x 9 10 11 xx 13 14 15 16 ]
2
§ 77 ·
P2 L2 2J J
J 1( L1 L2) ¨ ¸
Compute P2 code noise and multipath as: M P2
© 60 ¹
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
116
[Id YY Doy sec GPS PRN el Az N. list C1C L1C C1P L1P C2P L2P]
1 2 3 4 5 6 x x 9 10 11 xx 13 14 15 16 ]
f12 P1 f 22 P2 J P1 P2
Pc
P ;
f12 f 22 J 1
Compute PC noise and multipath as: M Pc Pc Lc
f12 L1 f 22 L2 J L1 L2
Lc
L
f12 f 22 J 1
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
117
HW3: Code measurements noise assessment: C1, P1, P2 and PC
Comments
• Large noise patterns appear at the end
of each data arc. This is due to
interference cross-talk with other
components. The figure at bottom shows
the multipath map for the GRACE-A .
• P2 code is noisier than P1 or C1.
Plot HW3-a Plot HW3-b • PC code combination is the noisiest one,
as expected.
C1 multipath
map of sat.
GRACE_A.
A GPS satellite
track is
shown in
blue
Plot HW3-c Plot HW3-d This figure is from
P. Ramos-Bosch
PhD dissertation,
gAGE/UPC 2008].
HW4: Broadcast orbits and clocks accuracy assessment using the IGS
precise products as the accurate reference (i.e, the truth).
Complete the following steps:
File brdc0800.07n contains the orbit and clocks data broadcast in the GPS navigation message.
Files cod14193.sp3, cod14193.clk contain the precise orbits and clocks computed in post-
process by “CODE” center (IGS precise orbits and clocks products program).
1. Execute the following sentence to compute the difference of satellite coordinates and clock
offsets between both orbits and clocks sources:
gLAB_linux -input:nav brdc0800.07n -input:SP3 cod14193.sp3 -input:ant igs05_1402.atx > dif.tmp
gAGE/UPC
©gAGE/UPC http://www.gage.upc.edu
Backup Research group of Astronomy & Geomatics
Technical University of Catalonia
119
HW4: Broadcast orbits and clocks accuracy assessment using the IGS
precise products as the accurate reference (i.e, the truth).
Comments
• Meter level errors are found on
broadcast orbits and clocks.
• The bias seen in the radial component is
due to the different APC’s used by the
GPS ground segment (i.e, in broadcast
orbits) and by IGS (precise products).
• This bias is compensated by a similar
Plot HW4-a1 Plot HW4-b1 shift in clocks.
• For the Signal-In-Space-Range-Error
(SISRE), please see the plot below.
Plot HW4-e1
HW4: Broadcast orbits and clocks accuracy assessment using the IGS
precise products as the accurate reference (i.e, the truth).
Comments
The previous computations have been
repeated, but using the ANTEX file
gps_brd.atx, instead of
igs05_1402.atx.
This new ANTEX file contains the GPS
antenna phase center offsets used by the
Plot HW4-a2 Plot HW4-b2 GPS ground segment, not the IGS ones.
• Notice that the biases in the radial
component have disappeared.
Plot HW4-e2
2. Run gLAB.
The program will output the file gLAB.out.
3. From gLAB.out, “grep” the POSTFIT message and generate the file amb.out, containing
the estimates of ambiguities for each epoch. Take the last estimated value of the ambiguities
for each epoch. This can be done by executing:
grep POSTFIT gLAB.out| gawk '{i=$6" "$4;a[i]=$13}END{for (i in a) print i,a[i]}' |sort -n > amb.out
Plot the results: Plot the ionosphere-free bias estimates as a function of time for the time interval
[40000:70000]. Show in the same graph: 1) ALL satellites, 2) PRN16 and 3) PRN21 (see
Plot HW5-d).
Note: The GUI can be graph.py -f amb.out -x2 -y3
used instead of the -f amb.out -x2 -y3 -c '($1==16)' --l "PRN16"
“graph.py” command. -f amb.out -x2 -y3 -c '($1==21)' --l "PRN21"
--xn 40000 --xx 70000 --yn -10 --yx 10
Zoom Comments
• Large peaks appear in the carrier phase
biases due to massive cycle-slips:
– Satellite tracking loses happen
periodically after each revolution.
– These satellite loses produce massive
Plot HW5-a Plot HW5-b cycle slips which leads to a global
reinitialization of carrier-phase biases
in the navigation (Kalman) filter .
– After such ambiguities reinitialization,
Zoom Zoom the filter needs some time to
converge.
Code and Carrier + precise orbits & clocks: Single frequency (L1, C1)
+ Klobuchar ionosphere
Configure gLAB as in Mode 5 and
complete the following steps:
1. [Input]: Upload the
• brdc0800.07n file to IONO
• brdc0800.07n file to DCBs
2. [Model]: set
• P1 – P2 corr.
• IONO corr.
1
2
HW6: Single freq. L1, C1 carrier and code with precise orbits & clocks
using Klobuchar ionospheric corrections
Code and Carrier + precise orbits & clocks: Single frequency (L1, C1) +
Klobuchar ionosphere
Complete the steps
Single frequency
C1P 3. [Filter]:
L1P 3 • Single Frequency
Set measurements:
• L1P (L1 carrier)
VC1P= 1 meter
• C1P (P1 code)
VL1P = 0.01 meters 4. In console mode:
• Convert the gLAB.out
to orb.sp3 format file.
1. Convert the output gLAB.out file to sp3 format: 4
Execute (in Console): out2sp3 gLAB.out
• Compute differences
Î orb.sp3
with reference file
2. Compare the computed coordinates orb.sp3 with reference GRAA_07_080.sp3.
GRAA_07_080.sp3
Note: Use the configuration file dif.cfg.
gLAB_linux –input:cfg dif.cfg –input:SP3 GRAA_07_080.sp3 –input:SP3 orb.sp3
Make plots as before.
Î dif.out
3. Plot dif.out file:
Comments
• A clear degradation is seen when
applying the Klobuchar model to the LEO.
• This is due to the large error introduced
by this model which was designed for
ground receivers, not for LEO’s.
• Next plot compares the L1 delay
computed from Klobuchar with the STEC
experienced by the GPS signal.
HW7: Generate a file with the satellite track (in a Earth-Fixed Earth-
Centered reference frame) to be viewed with Google Earth
• The ESA/UPC GNSS-Lab Tool suit (gLAB) has been developed under the ESA
Education Office contract N. P1081434.
• The data set of GRACE-A LEO satellite was obtained from the NASA Physical
Oceanography Distributed Active Archive Center at the Jet Propulsion
Laboratory, California Institute of Technology.
• The other data files used in this study were acquired as part of NASA's Earth
Science Data Systems and archived and distributed by the Crustal Dynamics
Data Information System (CDDIS).
• To Pere Ramos-Bosch for his fully and generous disposition to perform gLAB
updates in his afterhours.
• To Adrià Rovira-Garcia for his contribution to the edition of this material and
gLAB updating.
• To Deimos Ibáñez for his contribution to gLAB updating and making the
Windows installable version for this tutorial.
Contact: [email protected]
Web site: http://www.gage.upc.edu
Slides associated to
gLAB version 2.0.0
Authorship statement
The authorship of this material and the Intellectual Property Rights are owned by
J. Sanz Subirana and J.M. Juan Zornoza.
This authorship statement must be kept intact and unchanged at all times.
The laboratory exercises will be developed with actual GPS measurements, and processed
with the ESA/UPC GNSS-Lab Tool suite (gLAB), which is an interactive software package
for GNSS data processing and analysis.
All software tools (including gLAB) and associated files for the laboratory session are
included in the CD-ROM or USB stick associated with this tutorial.
OVERVIEW
¾ Introduction: gLAB processing in command line.
Test cases on Atmospheric Propagation Effects:
Troposphere, Ionosphere.
Test cases on Measurement Noise and Multipath: C1,
Ionosphere-free and Melbourne Wübbena combinations.
Test cases on Carrier Smoothed Code: Code-carrier
divergence.
Test cases on Broadcast Orbits and Clocks Accuracy
A “notepad”
with the
command
line sentence
is provided to
facilitate the
sentence
writing: just
“copy” and
“ paste”
Console to execute
from
“command line” notepad to
sentences the working
terminal.
gLAB_linux -messages
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 6
OVERVIEW
Introduction: gLAB processing in command line.
¾ Test cases on Atmospheric Propagation Effects:
Troposphere, Ionosphere.
Test cases on Measurement Noise and Multipath: C1,
Ionosphere-free and Melbourne Wübbena combinations.
Test cases on Carrier Smoothed Code: Code-carrier
divergence.
Test cases on Broadcast Orbits and Clocks Accuracy
The troposphere is
estimated as a Random
Walk process in the Kalman
Filter. A process noise of
1cm/sqrt(h) has been taken.
1 2
ftp://cddis.gsfc.nasa.gov/pub/gps/products/troposphere/new/2009/181/roap1810.09zpd.gz
The ZTD in this file is given in mm of delay. Thus, it is converted to m to compare with gLAB results
grep ROAP roap1810.09zpd | gawk -F\: '{print $3} ' | gawk '{print $1,$2/1000}' > roap_igs.trp
Questions:
• What is the level of discrepancy between the estimated ZTD and the
accurate IGS determination?
• What is the variation of ZTD in 24 hours due to the wet content?
• What is the proportion of wet component compared with the dry (or
hydrostatic) component?
PI { P2 P1 I K 21
LI { L1 L2 I Ambiguity
P1 L1 2D1 I ambiguity1
Ambiguity= P L
P2 L2 2D 2 I ambiguity 2
1
D1 1.546 ; D 2 1 D1
Carrier Phase L1-L2 (ambiguous but precise) J 21 1
f1 / f2
2
J 21 (154 / 120) 2
U Refers to all non-dispersive terms: geometric range, clocks, tropo. delay… (see [R-1]).
Ionospheric delay
STEC is in TECUs
sat
40.3 f12 f 22
STEC ³
rec
N e dl ,
I 2 2
1016 STEC ; ( I is in m of L1 L2 delay) 1 TECU 1016 e / m 2 0.10m of L1- L 2 delay
f f
1 2
Inter-frequency bias As the satellite clocks are referred to the ionosphere-free combination
of codes (PC), the K 21sat cancels in such combination. f12 P1 f 22 P2
K 21 K 21,rec K 21sat Note: TGD D1 K 21sat is broadcast in GPS nav. Message. C
P
f12 f 22
Carrier ambiguities
Bi Oi N i bi Ni is an integer number. bi is a real number (fractional part of ambiguity)
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 18
Exercise 2: Ionospheric delay analysis
1.- Read RINEX file with gLAB and generate a “measurements file” in
a columnar format (the easiest to manipulate and plot content):
Æ Using the configuration file meas.cfg, READ the RINEX and generate the MEAS file:
gLAB_linux -input:cfg meas.cfg -input:obs coco0090.97o -input:nav brdc0090.97n > coco.meas
-pre:dec 1
-print:none
-print:meas RINEX RINEX
--model:satphasecenter Measurement Navigation
--model:recphasecenter file file
--model:satclocks
--pre:cs:li
Input Files:
--pre:cs:bw
coco0090.97o
brdc0090.97n
Set default
SPP config.
MEAS
Set data decimation to 1s file
-pre: dec 1
Disable:
--model:satphasecenter
--model:recphasecenter
Disable cycle-slip detectors: --model:satclocks
--pre:cs:li
--pre:cs:bw
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan
Exercise 2: Ionospheric delay analysis
2.- Manipulate the file with the easy & powerful awk (or gawk)
programming language (to compute the combinations of measurements):
P1 L1 P2 L2 ]
[Id YY Doy sec GPS PRN el Az N. list C1C L1C C1P L1P C2P L2P]
Æ From coco.meas file: 1 2 3 4 5 6 7 8 9 10 11 xx xx 14 15 16
Compute different ionospheric combination of codes and carriers, and generate the
obs.txt file containing the fields: [PRN,sec, P2-P1, (P2-L2)/5.09, (P1-L1)/3.09, L1-L2, Elev/10]
Show in the same plot the following iono. delays for satellite PRN01:
P2-P1, (P2-L2)/5.09, (P1-L1)/3.09, L1-L2, Elev./10
PI { P2 P1 I K 21
LI { L1 L2 I Ambiguity
P1 L1 2D1 I ambiguity1
1
D1 1.546 ; D 2 1 D1
J 21 1
f1 / f2
2
J 21 (154 / 120) 2
Questions:
• Justify the expressions used to depict the Ionospheric delay (see
slides #16 to #18).
• Justify the factors of 5.09 and 3.09 used in the P2-L2 and P1-L1
combinations to give the results of L1-L2 delay in metres.
• Why is the STEC larger at low elevations?
)=40º
)=90º
Sky plots at
)=0º different
coco
latitudes
PRN01
gAGE/UPC @ J. Sanz & J.M. Juan 25
Research group of Astronomy & Geomatics
Technical University of Catalonia
Exercise: Analyze the effect of the Solar Flare on the Slant Total
Electron Content (STEC) measurements of four permanent IGS
receivers ankr, asc1, kour and qaq1, covering a wide range of
longitude and latitude.
qaq1
Data sets:
ankr
ankr3010.03o, asc13010.03o,
kour3010.03o, qaq13010.03o kour
asc1
qaq1
ankr
kour
asc1
Questions:
• Why can we associate the sudden increase of TEC seen in the
plots with a Solar Flare?
• What is the STEC variation rate due to the Solar Flare?
• Can all solar flares be seen in this way?
Using these files, plot the STEC for all satellites in view and discuss
the range of such variations. Analyse, in particular, the satellite
PRN 04 and calculate the maximum rate of STEC variation in
mm=s of L1 delay. Add the elevation of satellite PRN 04 in the plot.
The associated broadcast navigation files are brdc3010.03n,
brdc3020.03n, brdc3030.03n, brdc3040.03n, brdc3050.03n,
brdc3060.03n.
Questions:
• What is the maximum STEC
variation rate seen in the plots?
• How could we explain the
shape of the STECs seen for
satellites PRN28 and PRN29?
2.- Merge files and refer all the data to 0h of October 28th: Doy0301:
cat garl30?0.03.meas |gawk '{d=($3-301)*86400;$4=$4+d; print $6, $4/3600, $15-$13, $7}' > PI.txt
gAGE/UPC @ J.
J. Sanz
San
nz & J.M.
J.M
M. Juan
Jua
Jua
uan 37
Research group of Astronomy & Geomatics
Technical University of Catalonia
Questions:
• What is the maximum STEC seen before and after the storm?
And during the storm?
• The STEC of satellite PRN04 shows a flat pattern after time 74
hours which does not change with the elevation. Try to explain
this phenomenon.
Note: The gLAB GUI or the command line sentences can also be used .
A “notepad” with the command line sentence is provided to facilitate the
sentence writing: just “copy” and “paste” from notepad to the working terminal
2
By default, the output
file name is gLAB.out
1 3
2
Disable Ionospheric
Change output file
corrections
name to gLAB1.out
1 3
Equivalent command line sentence:
gLAB_linux -input:cfg gLAB_p1_NoIono.cfg
gAGE/UPC -input:obs amc3030.03o
@ J. Sanz & J.M. Juan 42
Research group of Astronomy &-input:nav
R Geomatics brdc3030.03n
Technical University
Technical y of Catalonia
University Catalonia
Ex. 3.4: Processing with PCÎ gLAB2.out
1 2
Disable Ionospheric
corrections and P1- Select Dual Frequency
P2 corrections
Change output
Equivalent command line sentence:
gLAB_linux -input:cfg gLAB_p1_IFree.cfg
3 file name to
gLAB2.out
graph.py -f gLAB1.out -x19 -y18 -so -c '($1=="OUTPUT")' --l "No Iono." --cl r
-f gLAB.out -x19 -y18 -so -c '($1=="OUTPUT")' --l "Full mod" --cl b
--xl "East error (m)" --yl "North error (m)"
--xn -40 --xx 40 --yn -40 --yx 40
-t "Horizontal pos. error [SPP]"
P2-P1 shifted +4 m
gLAB.out
gLAB.out
2-freq.:
Iono-free amc2 station location
Questions:
• Discuss the results seen in the previous plots. Is the Klobuchar
model able to remove the ionospheric error during the storm?
What was the level of the error?
• What is the position domain error level for single frequency
users?
• And for dual frequency users navigating with the ionosphere-free
combination?
• Discuss pros and cons of using the ionosphere-free combination
against the single-frequency code with Klobuchar (consider
nominal conditions and perturbed conditions).
OVERVIEW
Introduction: gLAB processing in command line.
Test cases on Atmospheric Propagation Effects:
Troposphere, Ionosphere.
¾ Test cases on Measurement Noise and Multipath: C1,
Ionosphere-free and Melbourne Wübbena combinations.
Test cases on Carrier Smoothed Code: Code-carrier
divergence.
Test cases on Broadcast Orbits and Clocks Accuracy
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 50
Exercise 4. Code multipath
The code multipath can be seen by plotting the difference of code and carrier
ionosphere-free combinations (PC-LC). The evolution of this difference can be
followed with a sampling rate of 1 Hz. Due to its geometric nature, the effect
of multipath repeats with the receiver-satellite geometry.
Using gLAB, read the RINEX files, plot the combination PC-LC and identify
the effect of multipath. Analyse the measurements of satellites PRN20 and
PRN25 in the time interval 67000 < t < 68000s. Include the satellite's
elevation in the plots.
2. Verify the following field contents in the generated file upc3360.meas and
others:
[Id YY Doy sec GPS PRN el Az N. list C1C L1C C1P L1P C2P L2P]
1 2 3 4 5 6 x x 9 10 11 xx 13 14 15 16 ]
- Repeat the same plots, but shift the plot of the second day by 3m 56s = 236s
and the third day by 2x(3m 56s) = 472s.
graph.py -f upc3360.LcPc -c '($1==20)' -x2 -y3 -s- -l "DoY 360"
-f upc3361.LcPc -c '($1==20)' -x'($2+236)' -y3 -s- -l "DoY 361"
-f upc3362.LcPc -c '($1==20)' -x'($2+472)' -y3 -s- -l "DoY 362"
-f upc3360.LcPc -c '($1==20)' -x2 -y4 -l "Elev (deg.)"
• What is the reason for the observed 3m 56s displacement between the
graphs for two consecutive days?
• Repeat the previous plot for the satellite PRN25 and compare results.
a) Generate the “meas” file: [Id YY Doy sec GPS PRN el Az N. list C1C L1C C1P L1P C2P L2P]
Select, for instance, PRN03 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ]
1 n 1
Pˆ (k ) P(k ) P(k 1) L(k ) L(k 1) Carrier Phase L (ambiguous but precise)
n n
L(k ) P L ( k )
where 1 n 1 1
PL (k )
n
P (k ) L(k )
n
PL ( k 1)
n
¦ P (k ) L(k )
U (k ) I1 (k ) 2 I1 I (k )
(k ) 1 Pˆ1 U I1 biasI X1
biasI
where X1 is the noise term after
where, being the ambiguity term B1 a constant bias, thence
smoothing
B1 B1 , and cancels in the previous expression
• Let assume a simple model where the STEC vary linearly with time:
where W is the Hatch filter smoothing time constant (i.e.,W N in previous eq.).
Exercise:
Prove the previous statement.
Solution:
Let be f (t ) { I (t ) and y (t ) { I (t )
. The averaging in the Hatch filter can be implemented as:
W 'T 'T y (t 'T ) y (t ) 1 1 1 1
y (t 'T ) y (t ) f (t 'T ) y (t ) f (t 'T ) o y ' y f (t )
W W 'T W W 'T o 0
W W
Thence:
I1 (t ) I10 I1c t I1 (t )
I1 (t ) W I1c 1 e t /W biasI
2 I1 (t )
I1 (t )
t of
o 2W I1c
ÎIFree smoothed code is not affected by either spatial or temporal gradients, f12 L1 f12 L2
LC
but is 3-times noisier than the DFree, or the in the Single Freq. smoothed code. f12 f 22
[Id YY Doy sec GPS PRN el Az N. list C1C L1C C1P L1P C2P L2P]
a) Generate the “meas” file for PRN03: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ]
CIFree { PC ; LIFree { LC J ¨ ¸
J 1 J 1 © 60 ¹
C1 C1 C1
STEC
Questions:
• Discuss a possible source of the large oscillations seen in the plots.
• Using the expressions of slide #65, estimate the expected accumulated
ionospheric bias with smoothing time constant T=3600s.
• Is the Divergence-Free smoothing immune to ionospheric temporal
gradients? And to spatial gradients? Why?
• Is the Ionosphere-Free smoothing immune to temporal gradients? And to
spatial gradients?
OVERVIEW
Introduction: gLAB processing in command line.
Test cases on Atmospheric Propagation Effects:
Troposphere, Ionosphere.
Test cases on Measurement Noise and Multipath: C1,
Ionosphere-free and Melbourne Wübbena combinations.
Test cases on Carrier Smoothed Code: Code-carrier
divergence.
¾ Test cases on Broadcast Orbits and Clocks Accuracy
Satellite
Mass
Center
(MC) Satellite MC to APC:
The satellite MC to APC
eccentricity vector depends on
Broadcast orbits are the satellite. The APC values
referred to the antenna used in the IGS orbits and
phase center, but IGS clocks products are referred to
precise orbits are referred the iono-free combination (LC,
PC) . They are given in the IGS
to the satellite mass center. ANTEX files (e.g., igs05.atx).
gAGE/UPC
Research group of Astronomy & Geomatics
@ J. Sanz & J.M. Juan 76
Technical University of Catalonia
Ex.6.: Broadcast orbits and clocks accuracy assessment using the IGS
precise products as the accurate reference (i.e. the truth).
Ex.6.: Broadcast orbits and clocks accuracy assessment using the IGS
precise products as the accurate reference (i.e. the truth).
Comments
• Meter level errors are found on broadcast
orbits and clocks.
• The bias seen in the radial component is
due to the different APC’s used by the
GPS ground segment (i.e, in broadcast
orbits) and by IGS (precise products).
• This bias is compensated by a similar
shift in clocks.
• For the Signal-In-Space-Range-Error
(SISRE), please see the plot below.
Comments
The previous computations have been
repeated, but using the ANTEX file
gps_brd.atx, instead of igs05_1402.atx.
This new ANTEX file contains the GPS
antenna phase center offsets used by the
GPS ground segment, not the IGS ones.
• Notice that the biases in the radial
component have disappeared.
Ex.6.: Broadcast orbit and clock accuracy assessment using the IGS
precise products as the accurate reference (i.e. the truth).
Questions:
• What is the level of error of the broadcast orbits and clocks?
• Why do the results improve using the gps_brd.atx, instead of
igs05_1402.atx ANTEX file?
• Is there any correlation between radial orbit errors and clock errors?
• Which orbit errors are expected to affect the differential positioning more (radial,
cross track, along track)?
Bibliography
R-1: J. Sanz-Subirana, J.M. Jaun-Zoroza, M. Hernández-Pajares. GNSS Data processing.
Volume-I and Volume-II. ESA Publications Division, 2012.
R-2: J. Sanz-Subirana, J.M. Jaun-Zoroza, M. Hernández-Pajares. Tutorial on GNSS Data
Processing Laboratory Exercises. ESAInternational Summer School on GNSS, 2010.
R-3: Hernández-Pajares M., J.M. Juan, J. Sanz, "EGNOS Test Bed Ionospheric
Corrections Under the October and November 2003 Storms", IEEE Transactions on
Geoscience and Remote Sensing, Vol.43(10), pp.2283-2293, 2005.
Contact: [email protected]
Web site: http://www.gage.upc.edu
Slides associated to
gLAB version 2.0.0
All software tools (including gLAB) and associated files for the laboratory session are
included in the CD-ROM or USB stick associated with this tutorial.
A “notepad”
with the
command
line sentence
is provided to
facilitate the
sentence
writing: just
“copy” and
“ paste”
Console to execute
from
“command line” notepad to
sentences the working
terminal.
gLAB_linux -messages
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 6
OVERVIEW
Introduction: gLAB processing in command line
MATA GARR
Barcelona
GARR-MATA: 51 km
EBRE-CREU: 288 km
Note: the receivers were not moving (static receivers) during the
data collection.
gAGE/UPC 10
Research group of Astronomy & Geomatics Data files and receiver coordinates @ J. Sanz & J.M. Juan
OVERVIEW
Introduction: gLAB processing in command line
• Generate the navigation equations system for absolute positioning for each
receiver and compute the user solution (see next two slides).
ª ρˆ 1 T 1º
ª Pref º 1
« » time [Pref] [ Los_k 1]
« 2» « ˆ2 T »
« ρ
------ ------------------------
« Pref » 1»
dx 30.00 -3.3762 0.3398 -0.1028 0.0714 1
« » « »
« 30.00 -7.1131 0.1725 0.5972 0.0691 1
n» « »
¬ Pref ¼ « ρˆ n T 1»¼
30.00 4.3881 -0.6374 0.0227 0.2725 1
¬
gAGE/UPC ρˆ k { > cos( Elk )sin( Azk ), cos( Elk ) cos( Azk ), sin( Elk ) @ @ J. Sanz & J.M. Juan 13
Research group of Astronomy & Geomatics
Technical University of Catalonia
A.1. Differential positioning of EBRE-CREU receivers
(Long baseline: 288 km)
Questions:
•What is the expected accuracy of the computed coordinates (in absolute positioning)?
•Why are the patterns seen for the receivers EBRE and CREU are so similar?
ª ρˆ 1 T 1º
ª DPref º 1
« creu
» time [DPref] [ Los_k 1]
« 2» « ˆ2 T »
« ρ creu
------ ------------------------
« DPref » 1»
dx 30.00 -3.3762 0.3398 -0.1028 0.0714 1
« » « »
« 30.00 -7.1131 0.1725 0.5972 0.0691 1
n» « »
¬ DPref ¼ « ρˆ n T 1»¼
30.00 4.3881 -0.6374 0.0227 0.2725 1
¬ creu
gAGE/UPC ρˆ k { > cos( Elk )sin( Azk ), cos( Elk ) cos( Azk ), sin( Elk ) @ @ J. Sanz & J.M. Juan 20
Research group of Astronomy & Geomatics
Technical University of Catalonia
Using the files EBRE.obs and CREU.obs, follow the next steps:
1. Compute the single differences of measurements and model
components.
2. Build the navigation equations system for the differential
positioning of CREU receiver (user) relative to EBRE
(reference station).
3. Compute the user solution in kinematic mode and in static
mode.
4. Plot the results and discuss the positioning error found.
cp kalman.nml_ct kalman.nml
Static:
cat D_EBRE_CREU.mod | kalman > EBRE_CREU.posS
- Static mode:
graph.py -f EBRE_CREU.posS -x1 -y2 -s. -l "North error"
-f EBRE_CREU.posS -x1 -y3 -s. -l "East error"
-f EBRE_CREU.posS -x1 -y4 -s. -l "UP error"
--xl "time (s)" --yl "error (m)" --yn -8 --yx 8
-t "CREU-EBRE: 288 km: Differential Positioning"
Questions:
•Looking at these results, justify intuitively why the errors are reduced in differential positioning.
•Why is the error lower in static than in kinematic mode?
Question:
Justify the pattern seen in the
nominal (Klobuchar) ionospheric
corrections.
cp kalman.nml_ct kalman.nml
Static:
cat D_EBRE_CREU.mod | kalman > EBRE_CREU.posS
Question:
Taking into account the previous plot of the differential ionospheric corrections (slide #26),
discuss the effect seen on the position domain.
Question:
Discuss the pattern seen in the figure. Why is the effect of the differential ionospheric
error is higher in these static positioning results?
Question:
Justify the pattern seen in the
nominal tropospheric corrections.
cp kalman.nml_ct kalman.nml
Static:
cat D_EBRE_CREU.mod | kalman > EBRE_CREU.posS
Questions:
• Which error source has the higher impact on the position domain higher the
ionosphere or the troposphere?
• Which is easier to model?
Question:
• Compare the results with those of the previous case, when not considering
the ionospheric error.
OVERVIEW
Introduction: gLAB processing in command line
Repeat the previous exercise, but using the permanent receivers GARR and MATA,
with only 51 km of baseline.
• Generate the navigation equations system for absolute positioning for each
receiver and compute the user solution (see next two slides).
Questions:
• Compare the results with the previous case with a baseline of 280 km.
• Are the patterns even more similar now? Why?
Using the files GARR.obs and MATA.obs, follow the next steps:
1. Compute the single differences of measurements and model
components.
2. Build the navigation equations system for the differential
positioning of MATA receiver (user) relative to GARR
(reference station).
3. Compute the user solution in kinematic mode and in static
mode.
4. Plot the results and discuss the positioning error found.
cp kalman.nml_ct kalman.nml
Static:
cat D_GARR_MATA.mod | kalman > GARR_MATA.posS
- Static mode:
graph.py -f GARR_MATA.posS -x1 -y2 -s. -l "North error"
-f GARR_MATA.posS -x1 -y3 -s. -l "East error"
-f GARR_MATA.posS -x1 -y4 -s. -l "UP error"
--xl "time (s)" --yl "error (m)" --yn -8 --yx 8
-t "GARR_MATA: 51 km: Differential Positioning"
Questions:
• Compare the results with the previous case with a baseline of 280 km.
• Are we reaching a similar level of accuracy? Why?
Question:
Justify the pattern seen in the
nominal (Klobuchar) ionospheric
corrections.
Compare the plot with that of the
280km baseline (slide #26). Do the
results perform as expected?
cp kalman.nml_ct kalman.nml
Static:
cat D_GARR_MATA.mod | kalman > GARR_MATA.posS
Question:
• Do the results confirm the expected effect of neglecting the ionospheric
corrections for this baseline (using code measurements ) at the user level?
Question:
• Do the results confirm the expected effect of neglecting the ionospheric
corrections for this baseline (using code measurements ) at the user level?
Question:
Justify the pattern seen in the
nominal tropospheric corrections.
Compare the plot with that of the
280km baseline (slide #31). Do the
results perform as expected?
cp kalman.nml_ct kalman.nml
Static:
cat D_GARR_MATA.mod | kalman > GARR_MATA.posS
Question:
• Do the results confirm the expected effect of neglecting the tropospheric
corrections for this baseline (using code measurements ) at the user level?
Question:
• Discuss the error found at the user level for the 50 Km of baseline.
• Is the error level similar to the error seen with the 280km of baseline (slide 34#)?
• Should the tropospheric corrections still be applied for these baselines?
OVERVIEW
Introduction: gLAB processing in command line
Differential positioning
Orbit errors
The user positioning error using the original and the corrupted orbits
will be compared for absolute and differential positioning, with the
receivers and baselines used in the previous session.
Position from
Satellite location broadcast Differential range error
error ephemeris due to satellite obit error
True position
H ε
ρuser
Uuser ρuser ρref
GU ε ε
ρ ref
Uuser Uref
ε
U ref
Uuser
b sin I b
GU ε T uˆ ε T sin I uˆ
U U
b Where: b = b bˆ
Uref ε T I ρˆ ρˆ T
U is the baseline vector
A conservative bound: b
GU H
User
with a baseline b 20km
U
Reference Station 20 1
GU H H
20000 1000
1
where a
2
b cos I u
ρˆ u bˆ u ρˆ
bˆ ρˆ T ρˆ - ρˆ ρˆ T bˆ
I is NOT the elevation of ray.
Note: in this 3D problem
I bˆ ρˆ ρˆ T bˆ I ρˆ ρˆ bˆ
T
Note: u sin I uˆ
Differential range error GU produced by an
orbit error H parallel to vector û Note: being uˆ a vector orthogonal
Let GH { H to the LoS ρˆ , thence, H ε T uˆ
Thence:
gAGE/UPC
GU { G ( U B U A ) 2G a
b sin I b
wa wa wI wI GU ε T uˆ ε T sin I uˆ
2
wH
GH 2
wI wH
GH b sin I
wH
GH U U
b
b sin I
1
GH ε T I ρˆ ρˆ T Where: b = b bˆ
U
Master of Science in GNSS
Note: ε A ρ G
GH U GI U is the baseline
J. Sanz Subirana, JM. Juan Zornoza, M. Hernández-Pajares, vector
OVERVIEW
Introduction: gLAB processing in command line
Repeat the computation of the absolute positioning of receivers EBRE and CREU, but
using the corrupted ephemeris file brdc0770.10nERR.
• Run this script for EBRE and CREU receivers. Rename as STA.obsERR the
output files ObsFile1.scr EBRE0770.10o brdc0770.10nERR
mv EBRE.obs EBRE.obsERR
ObsFile1.scr CREU0770.10o brdc0770.10nERR
mv EBRE.obs EBRE.obsERR
• Generate the navigation equations system for absolute positioning for each
receiver and compute the user solution (see the next two slides).
Question:
• Is the impact on user positioning error similar for both receivers?
• From these plots, what is the expected level of error in differential positioning?
Analyse the effect of the 2000m orbit error on the differential positioning of
CREU receiver relative to EBRE, with 280km of baseline.
Question:
• Assuming an orbit error
of 2000m (see slide #87),
compute a threshold for
the differential error.
OVERVIEW
Introduction: gLAB processing in command line
Repeat the computation of the absolute positioning of receivers GARR and MATA, but
using the corrupted ephemeris file brdc0770.10nERR.
• Run this script for GARR and MATA receivers. Rename as STA.obsERR the
output files ObsFile1.scr GARR0770.10o brdc0770.10nERR
mv GARR.obs GARR.obsERR
ObsFile1.scr MATA0770.10o brdc0770.10nERR
mv MATA.obs MATA.obsERR
• Generate the navigation equations system for absolute positioning for each
receiver and compute the user solution (see next two slides).
Question:
• Is the impact on user positioning error similar for both receivers?
• From these plots, what is the expected level of error in differential positioning?
Analyse the effect of the 2000m orbit error on the differential positioning of
MATA receiver relative to GARR, with 51km of baseline.
cp kalman.nml_wn kalman.nml
Kinematic:
cat D_GARR_MATA.modERR| kalman > GARR_MATA.posKERR
Question:
• Assuming an orbit error
of 2000m (see slide #87),
compute a threshold for
the differential error.
OVERVIEW
Introduction: gLAB processing in command line
B.3.2.- Absolute Range error computation for satellite PRN17 from EBRE:
gAGE/UPC B.3.2. Absolute Range Orbit error: @ J. Sanz & J.M. Juan 81
Research group of Astronomy & Geomatics EBRE
Technical University of Catalonia
B3. Orbit error: Differential positioning
Range Domain Orbit Error
gAGE/UPC B.3.2. Absolute Range Orbit error: @ J. Sanz & J.M. Juan 82
Research group of Astronomy & Geomatics EBRE
Technical University of Catalonia
gAGE/UPC B.3.2. Absolute Range Orbit error: @ J. Sanz & J.M. Juan 83
Research group of Astronomy & Geomatics EBRE
Technical University of Catalonia
B3. Orbit error: Differential positioning
Range Domain Orbit Error
gAGE/UPC B.3.2. Absolute Range Orbit error: @ J. Sanz & J.M. Juan 84
Research group of Astronomy & Geomatics EBRE
Technical University of Catalonia
b) Compare in the same plot the results for EBRE and CREU
gAGE/UPC B.3.2. Absolute Range Orbit error: @ J. Sanz & J.M. Juan 85
Research group of Astronomy & Geomatics CREU
Technical University of Catalonia
B3. Orbit error: Differential positioning
Range Domain Orbit Error
gAGE/UPC B.3.2. Absolute Range Orbit error: @ J. Sanz & J.M. Juan 86
Research group of Astronomy & Geomatics EBRE
Technical University of Catalonia
gAGE/UPC B.3.2. Absolute Range Orbit error: @ J. Sanz & J.M. Juan 87
Research group of Astronomy & Geomatics EBRE and CREU
Technical University of Catalonia
B3. Orbit error: Differential positioning
Range Domain Orbit Error
gAGE/UPC B.3.3. Differential Range Orbit error: @ J. Sanz & J.M. Juan 88
Research group of Astronomy & Geomatics EBRE-CREU
Technical University of Catalonia
gAGE/UPC B.3.3. Differential Range Orbit error: @ J. Sanz & J.M. Juan 89
Research group of Astronomy & Geomatics EBRE-CREU
Technical University of Catalonia
B3. Orbit error: Differential positioning
Range Domain Orbit Error
Results comparison
gAGE/UPC B.3.3. Differential Range Orbit error: @ J. Sanz & J.M. Juan 90
Research group of Astronomy & Geomatics EBRE-CREU
Technical University of Catalonia
Baseline vector
b
b b rB - rA
rA
rB
rA [4833520.1197, 41537.2015, 4147461.6263]
[4833
A: EBRE B: CREU rB [4715420.3054, 273177.8809, 4271946.7957]
[4715
Receiver Receiver
(ref station) (user)
gAGE/UPC B.3.4. Differential Range Orbit error: @ J. Sanz & J.M. Juan 91
Research group of Astronomy & Geomatics Prediction
Technical University of Catalonia
B3. Orbit error: Differential positioning
Range Domain Orbit Error
2.- From previous results, generate a file err.dat with the orbit error (H) vector
and the Line-Of-Sight (U) from CREU receiver (with coordinates [4715420.3054,
273177.8809, 4271946.7957]), according to format: err.dat=[sec Hx Hy Hz Ux Uy Uz]
gAGE/UPC B.3.4. Differential Range Orbit error: @ J. Sanz & J.M. Juan 92
Research group of Astronomy & Geomatics Prediction
Technical University of Catalonia
gAGE/UPC B.3.4. Differential Range Orbit error: @ J. Sanz & J.M. Juan 93
Research group of Astronomy & Geomatics Prediction
Technical University of Catalonia
B4. Orbit error: Differential positioning
Range Domain Orbit Error
Plot the results and compare with the result found in the previous
exercise B.3.3 (i.e. with those of file ddrang.creu_ebre):
graph.py -f ddrang.creu_ebre -x1 -y2 -so --cl r -l "Observed"
-f rang.err -x1 -y2 -l "Predicted"
--xl "time (s)" --yl "error (m)"
-t"PRN17: 2000m AT orbit error PRN17: EBRE-CREU: Diff Range Error"
--yn -10 --yx 35
gAGE/UPC B.3.4. Differential Range Orbit error: @ J. Sanz & J.M. Juan 94
Research group of Astronomy & Geomatics Prediction
Technical University of Catalonia
gAGE/UPC B.3.4. Differential Range Orbit error: @ J. Sanz & J.M. Juan 95
Research group of Astronomy & Geomatics Prediction
Technical University of Catalonia
Thanks for your
attention
Acknowledgements
The ESA/UPC GNSS-Lab Tool suite (gLAB) has been developed under the
ESA Education Office contract N. P1081434.
Contact: [email protected]
Web site: http://www.gage.upc.edu
Slides associated to
gLAB version 2.0.0
This study includes ambiguity fixing using the “cascade method” (i.e., fixing one at
a time) and with the LAMBDA method.
The effect of synchronization errors between the reference station and the user is
and its effect on the navigation and ambiguity fixing is also analysed
All software tools (including gLAB) and associated files for the laboratory session
are included in the CD-ROM or USB stick associated with this tutorial.
OVERVIEW
¾ Introduction: gLAB processing in command line.
Preliminary computations: Data files.
Session A: Fixing DD ambiguities one at a time: UPC1-UPC2.
A “notepad”
with the
command
line sentence
is provided to
facilitate the
sentence
writing: just
“copy” and
“ paste”
Console to execute
from
“command line” notepad to
sentences the working
terminal.
gLAB_linux -messages
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 7
OVERVIEW
Introduction: gLAB processing in command line.
¾ Preliminary computations: Data files.
Previous
Preliminary Computations
These data files will include the code and carrier measurements and the model
components: geometric range, nominal troposphere and ionosphere corrections,
satellite elevation and azimuth from each receiver…
This data processing will be done with gLAB for each individual receiver.
This preliminary processing will provide the baseline data files to perform
computations easily using basic tools (such as awk for data files handling, to
compute Double Differences of measurements) or using octave (MATLAB) scripts
for the LAMBDA method implementation.
Detailed guidelines for self learning students are provided in this tutorial and in
its associated notepad text file.
P. Preliminary computations
P1. Model Components computation
• The script "ObsFile.scr" generates a data file with the following content
1 2 3 4 5 6 7 8 9 10 11 12 13
[sta sat DoY sec P1 L1 P2 L2 Rho Trop Ion elev azim]
P. Preliminary computations
Selecting measurements: Time interval [18000:19900]
• Select the satellites in the time interval [18000:19900] with elevation over 10º
cat ObsFile.dat|gawk '{if ($4>=18000 && $4<=19900 && $12>10) print $0}' >
obs.dat
Confirm that the satellite PRN06 is the satellite with the highest elevation
(this satellite will be used as the reference satellite)
obs.dat Î
1 2 3 4 5 6 7 8 9 10 11 12 13
[sta sat DoY sec P1 L1 P2 L2 Rho Trop Ion elev azim]
Where the elevation (EL) and azimuth (AZ) are taken from station #2.
and where (EL1, AZ1) are for satellite #1 and (EL1, AZ1) are for satellite #2.
P. Preliminary computations
Compute the double differences between receivers UPC1 (reference) and
UPC2 and satellites PRN06 (reference) and [PRN 03, 07,16, 18, 19, 21,
22, 24]
DDobs.scr obs.dat UPC1 UPC2 06 03
DDobs.scr obs.dat UPC1 UPC2 06 07
DDobs.scr obs.dat UPC1 UPC2 06 16
DDobs.scr obs.dat UPC1 UPC2 06 18
DDobs.scr obs.dat UPC1 UPC2 06 19
DDobs.scr obs.dat UPC1 UPC2 06 21
DDobs.scr obs.dat UPC1 UPC2 06 22
DDobs.scr obs.dat UPC1 UPC2 06 24
In the first part, we are going to assess this approach for a single
frequency receiver, trying to fix DDN1 and DDN2 independently.
In the second part, we are going to assess this approach for dual
frequency receivers, fixing first the wide-lane ambiguity DDNw and
afterwards DDN1 and DDN2.
The results (i.e. the DDN1 and DDN2 ambiguities) will be assessed
in the next “Session B” by computing the navigation solution using
the carrier phases repaired with the fixed DDN1 and DDN2 ambig.
Finally, in Session C, the LAMBDA method will be applied for
comparison.
gAGE/UPC @ J. Sanz & J.M. Juan 17
Research group of Astronomy & Geomatics
Technical University of Catalonia
gAGE
Resolving ambiguities one at a Time: single Freq.
A simple trial would be (for instance using L1 and P1):
research group of Astronomy and Geomatics
P1 jk U jk Q Pjk ª L1jk P1 jk º
1 o L1jk P1 jk O1 N1jk Q Pjk o Nˆ 1jk « »
L1jk U jk O1 N1jk Q Ljk
1
¬ O1 ¼ roundoff
1
O1 20 cm
V P | 1m 1
1
jk
V Nˆ VP | 5
O1
jk jk
V L | 1cm
jk
1 1
1
N 1
Fail To much error (5 wavelengths)!
N 1/ 2 Note that, assuming a Gaussian
Good
distribution of errors, V Nˆ jk 1/ 2
N
guarantee only the 68% of success
1
N 1/ 2
N 1 As the ambiguity is constant (between cycle-
slips), we would try to reduce uncertainty by
gAGE/UPC
where:
O; DDN2=[DDL2 -DDP2]/O
DDN1=[DDL1 -DDP1]/O
gAGE/UPC A1. DDN1 and DDN2 in single frequency @ J. Sanz & J.M. Juan 20
Research group of Astronomy & Geomatics
Technical University of Catalonia
b) Plot DDN1 and DDN2 for the different satellites and discuss if the ambiguity
DDN1 and DDN2 can be fixed: 1 2 3 4 5 6
[PRN sec DDN1 DDN2 nint(DDN1) nint(DDN2)]
graph.py -f DDN1N2.dat -x2 -y3 -c '($1==16)' -s. -f DDN1N2.dat -x2 -y4 -c '($1==16)'
-sx --cl r --yn -4 --yx 10 --xl "time (s)" --yl "cycles L1" -t "DDN1 ambiguity: PRN16"
gAGE/UPC A1. DDN1 and DDN2 in single frequency @ J. Sanz & J.M. Juan 21
Research group of Astronomy & Geomatics
Technical University of Catalonia
A1 Trying to fix ambiguities in Single frequency
Questions:
1.- Explain what is the meaning
of this plot.
2.- Is it possible to identify the
integer ambiguity?
3.- How reliability can be
improved?
gAGE/UPC A1. DDN1 and DDN2 in single frequency @ J. Sanz & J.M. Juan 22
Research group of Astronomy & Geomatics
Technical University of Catalonia
Questions:
1.- Explain what is the meaning
of this plot.
2.- Is it possible to identify the
integer ambiguity?
3.- How reliability can be
improved?
gAGE/UPC A1. DDN1 and DDN2 in single frequency @ J. Sanz & J.M. Juan 23
Research group of Astronomy & Geomatics
Technical University of Catalonia
A1 Trying to fix ambiguities in Single frequency
gAGE/UPC A1. DDN1 and DDN2 in single frequency @ J. Sanz & J.M. Juan 24
Research group of Astronomy & Geomatics
Technical University of Catalonia
Questions:
gAGE/UPC A1. DDN1 and DDN2 in single frequency @ J. Sanz & J.M. Juan 25
Research group of Astronomy & Geomatics
Technical University of Catalonia
A1 Trying to fix ambiguities in Single frequency
Questions:
gAGE/UPC A1. DDN1 and DDN2 in single frequency @ J. Sanz & J.M. Juan 26
Research group of Astronomy & Geomatics
Technical University of Catalonia
gAGE/UPC A1. DDN1 and DDN2 in single frequency @ J. Sanz & J.M. Juan 27
Research group of Astronomy & Geomatics
Technical University of Catalonia
A1 Trying to fix ambiguities in Single frequency
Questions:
gAGE/UPC A1. DDN1 and DDN2 in single frequency @ J. Sanz & J.M. Juan 28
Research group of Astronomy & Geomatics
Technical University of Catalonia
Questions:
gAGE/UPC A1. DDN1 and DDN2 in single frequency @ J. Sanz & J.M. Juan 29
Research group of Astronomy & Geomatics
Technical University of Catalonia
gAGE
Resolving ambiguities one at a Time: Dual Freq.
Dual frequency measurements: wide-laning with the Melbourne-Wübbena
research group of Astronomy and Geomatics
combination
NW N1 N 2
P1 jk U jk Q Pjk f1 P1 jk f 2 P2 jk OW
c
86.2 cm
1
PNjk U jk Q Pjk f1 f 2
P2 jk
U jk
Q jk
P2
f1 f 2 N
U O1 N Q LWjk
jk jk jk jk N 1
L 1 1 L1
f1 f 2 W
V L | 6 V L | 6 cm
jk jk
1
U O2 N Q
W
jk jk jk jk
L 2 2 L2
p
LWjk PNjk OW NWjk Q Pjk o ª LWjk PNjk º
Nˆ Wjk « »
¬ OW
N
¼ roundoff
Fixing N1 (after fixing NW)
1 71cm
V Nˆ | VP 0.8
L L
jk
1
jk
2 O1 N 1
jk
O2 N 2
jk
Q jk
L1 L2
jk
W OW N
jk
86 2cm
86.2
O1 O2 N1jk O2 NWjk Q Ljk L 1 2
Now, with uncorrelated
O1 19.0 cm
ª L1jk L2jk O2 Nˆ Wjk º measurements from 10
gAGE/UPC
1 1.4cm
1
V Nˆ | 2V jk 1/ 4
Nˆ Nˆ Nˆ O1 O2
jk
jk jk jk 1 L1 5 4cm
5.4
2 of Science
Master 1 in GNSS W @ J. Sanz & J.M. Juan
30
Note:
E L1 L2 E P1 P2 f1 154 c
LW ; PN ; E ; OW 86.2cm
E 1 E 1 f2 120 f1 f 2
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 31
Research group of Astronomy & Geomatics
Technical University of Catalonia
A2 Dual Frequency Ambiguity Fixing
a) From file DD_UPC1_UPC2_06_ALL.dat, generate the file DDNw.dat with the following
content: 1 2 3 4 where: DDNw=[DDLW-DDPN]/O OW
[PRN sec DDNw nint(DDNw)]
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 32
Research group of Astronomy & Geomatics
Technical University of Catalonia
b) Plot DDNw for the different satellites and discuss if the ambiguity DDNw
can be fixed: 1 2 3 4
[PRN sec DDNw nint(DDNw)]
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 33
Research group of Astronomy & Geomatics
Technical University of Catalonia
A2 Dual Frequency Ambiguity Fixing
graph.py -f DDNw.dat -x2 -y3 -c '($1==03)' -s. -f DDNw.dat -x2 -y4 -c '($1==03)'
-sx --cl r --yn -1 --yx 7 --xl "time (s)" --yl "cycles Lw" -t "DDNw ambiguity: PRN03"
PRN03 plot:
Î DDNw= 3 ?
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 34
Research group of Astronomy & Geomatics
Technical University of Catalonia
graph.py -f DDNw.dat -x2 -y3 -c '($1==07)' -s. -f DDNw.dat -x2 -y4 -c '($1==07)'
-sx --cl r --yn -4 --yx 4 --xl "time (s)" --yl "cycles Lw" -t "DDNw ambiguity: PRN07"
PRN07 plot:
Î DDNw= 0 ?
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 35
Research group of Astronomy & Geomatics
Technical University of Catalonia
A2 Dual Frequency Ambiguity Fixing
graph.py -f DDNw.dat -x2 -y3 -c '($1==18)' -s. -f DDNw.dat -x2 -y4 -c '($1==18)'
-sx --cl r --yn -7 --yx 1 --xl "time (s)" --yl "cycles Lw" -t "DDNw ambiguity: PRN18"
graph.py -f DDNw.dat -x2 -y3 -c '($1==19)' -s. -f DDNw.dat -x2 -y4 -c '($1==19)'
-sx --cl r --yn -2 --yx 6 --xl "time (s)" --yl "cycles Lw" -t "DDNw ambiguity: PRN19"
graph.py -f DDNw.dat -x2 -y3 -c '($1==21)' -s. -f DDNw.dat -x2 -y4 -c '($1==21)'
-sx --cl r --yn 4 --yx 12 --xl "time (s)" --yl "cycles Lw" -t "DDNw ambiguity: PRN21"
graph.py -f DDNw.dat -x2 -y3 -c '($1==22)' -s. -f DDNw.dat -x2 -y4 -c '($1==22)'
-sx --cl r --yn -4 --yx 4 --xl "time (s)" --yl "cycles Lw" -t "DDNw ambiguity: PRN22"
graph.py -f DDNw.dat -x2 -y3 -c '($1==24)' -s. -f DDNw.dat -x2 -y4 -c '($1==24)'
-sx --cl r --yn 0 --yx 8 --xl "time (s)" --yl "cycles Lw" -t "DDNw ambiguity: PRN24"
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 36
Research group of Astronomy & Geomatics
Technical University of Catalonia
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 37
Research group of Astronomy & Geomatics
Technical University of Catalonia
A2 Dual Frequency Ambiguity Fixing
Estimate again the ambiguity from the raw DDNw and smoothed DDNws:
cat DDNws.tmp | gawk '{sign3=$3/sqrt($3*$3);sign4=$4/sqrt($4*$4);
print $1,$2,$3,$4,int($3+0.5*sign3),int($4+0.5*sign4)}' > DDNws.dat
gAGE/UPC A2. 2 Fixing Wide-lane ambiguity DDNw after smoothing @ J. Sanz & J.M. Juan 38
Research group of Astronomy & Geomatics
Technical University of Catalonia
b) Plot DDNw and DDNws for the different satellites and discuss if the
ambiguity DDNw can be fixed: 1 2 3 4 5 6
[PRN sec DDNw DDNws nint(DDNw) nint(DDNws)]
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 39
Research group of Astronomy & Geomatics
Technical University of Catalonia
A2 Dual Frequency Ambiguity Fixing
PRN03 plot:
Î DDNw=3
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 40
Research group of Astronomy & Geomatics
Technical University of Catalonia
PRN07 plot:
Î DDNw=0
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 41
Research group of Astronomy & Geomatics
Technical University of Catalonia
A2 Dual Frequency Ambiguity Fixing
PRN16 plot:
Î DDNw=3
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 42
Research group of Astronomy & Geomatics
Technical University of Catalonia
PRN18 plot:
Î DDNw=-3
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 43
Research group of Astronomy & Geomatics
Technical University of Catalonia
A2 Dual Frequency Ambiguity Fixing
PRN19 plot:
Î DDNw=2
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 44
Research group of Astronomy & Geomatics
Technical University of Catalonia
PRN21 plot:
Î DDNw=8
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 45
Research group of Astronomy & Geomatics
Technical University of Catalonia
A2 Dual Frequency Ambiguity Fixing
PRN22 plot:
Î DDNw=0
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 46
Research group of Astronomy & Geomatics
Technical University of Catalonia
PRN24 plot:
Î DDNw=4
gAGE/UPC A2. 1 Fixing Wide-lane ambiguity DDNw @ J. Sanz & J.M. Juan 47
Research group of Astronomy & Geomatics
Technical University of Catalonia
A2 Dual Frequency Ambiguity Fixing
PRN = [ 03 07 16 18 19 21 22 24]
DDNw= [ 3 0 3 -3 2 8 0 4]
gAGE/UPC A2. 2 Fixing DDN1 after fixing DDNw @ J. Sanz & J.M. Juan 48
Research group of Astronomy & Geomatics
Technical University of Catalonia
From file DD_UPC1_UPC2_06_ALL.dat, and using the fixed DDNw, generate the
file DDN1.dat with the following content: 1 2 3 4
[PRN sec DDN1 nint(DDN1)]
where:
DDN1=(DDL1 DDL2 O2 DDNw)/(O1 O2)
gAGE/UPC A2. 2 Fixing DDN1 after fixing DDNw @ J. Sanz & J.M. Juan 49
Research group of Astronomy & Geomatics
Technical University of Catalonia
A2 Dual Frequency Ambiguity Fixing
PRN24 plot:
Î DDN1=4
gAGE/UPC A2. 2 Fixing DDN1 after fixing DDNw @ J. Sanz & J.M. Juan 50
Research group of Astronomy & Geomatics
Technical University of Catalonia
From file DD_UPC1_UPC2_06_ALL.dat, and using the fixed DDNw, generate the
file DDN1.dat with the following content: 1 2 3 4
[PRN sec DDN1 nint(DDN1)]
Other possibility is to execute the following sentence to generate the file for all satellites:
gawk 'BEGIN{for (i=0;i<100;i++) {getline <"sat.ambNw";Nw[$1*1]=$2}}
{c=299792458;f0=10.23e+6;f1=154*f0;f2=120*f0;l1=c/f1;l2=c/f2}
{amb=($8-$10-l2*Nw[$4*1])/(l1-l2);if (amb!=0){sign=amb/sqrt(amb*amb)} else{sign=0};
print $4,$6,amb,int(amb+0.5*sign)}' DD_UPC1_UPC2_06_ALL.dat > DDN1.dat
03 3
07 0
Where sat.ambNw is a file containing 16 3
the DDNw ambiguities: 18 -3
19 2
21 8
gAGE/UPC A2. 2 Fixing DDN1 after fixing DDNw
22 0
51
Research group of Astronomy & Geomatics
24 4 @ J. Sanz & J.M. Juan
PRN03 plot:
Î DDN1=2
gAGE/UPC A2. 2 Fixing DDN1 after fixing DDNw @ J. Sanz & J.M. Juan 52
Research group of Astronomy & Geomatics
Technical University of Catalonia
PRN07 plot:
Î DDN1=1
gAGE/UPC A2. 2 Fixing DDN1 after fixing DDNw @ J. Sanz & J.M. Juan 53
Research group of Astronomy & Geomatics
Technical University of Catalonia
A2 Dual Frequency Ambiguity Fixing
gAGE/UPC A2. 2 Fixing DDN1 after fixing DDNw @ J. Sanz & J.M. Juan 54
Research group of Astronomy & Geomatics
Technical University of Catalonia
PRN = [ 03 07 16 18 19 21 22 24]
DDNw= [ 3 0 3 -3 2 8 0 4]
DDN1= [ 2 1 2 -1 4 7 1 4]
Then:
DDN2= [-1 1 -1 2 2 -1 1 0]
gAGE/UPC A2. 3 Fixing DDN2 after fixing DDNw and DDN1 @ J. Sanz & J.M. Juan 55
Research group of Astronomy & Geomatics
Technical University of Catalonia
OVERVIEW
Introduction: gLAB processing in command line.
Preliminary computations: Data files.
Session A: Fixing DD ambiguities one at a time: UPC1-UPC2.
¾ Session B: Assessing the fixed ambiguities in navigation:
Differential positioning of UPC1-UPC2 receivers.
Session B
gAGE/UPC B1. Repairing DDL1 and DDL2 carriers @ J. Sanz & J.M. Juan 58
Research group of Astronomy & Geomatics
Technical University of Catalonia
B1. Repair the DDL1 and DDL2 carrier measurements with the DDN1 and
DDN2 ambiguities FIXED and plot results to analyze the data.
03 2 -1
07 1 1
Write in it the DDN1 and DDN2 ambiguities 16 2 -1
18 -1 2
fixed in previous exercise in file N1N2.dat Î 19 4 2
21 7 -1
22 1 1
24 4 0
Note: This file is identical to file "DD_UPC1_UPC2_06_ALL.dat", but with the ambiguities added in the
last fields #18 and #19.
gAGE/UPC B1. Repairing DDL1 and DDL2 carriers @ J. Sanz & J.M. Juan 60
Research group of Astronomy & Geomatics
Technical University of Catalonia
a) From previous file, generate a the file "sat.ambL1L2" with the following
content: 1 2 3 4 5
[PRN DDN1 DDN2 ODDN1 ODDN2]
gawk 'BEGIN{c=299792458;f0=10.23e+6;l1=c/(154*f0);l2=c/(120*f0)}
{printf "%02i %3i %3i %14.4f %14.4f \n", $1,$2,$3,$2*l1,$3*l2}' N1N2.dat >
sat.ambL1L2
cat DD_UPC1_UPC2_06_ALL.dat|
gawk 'BEGIN{for (i=1;i<1000;i++) {getline <"sat.ambL1L2";A1[$1]=$4;A2[$1]=$5}}
{printf "%s %02i %02i %s %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f
%14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f\n",
$1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,A1[$4], A2[$5]}' >
DD_UPC1_UPC2_06_ALL.fixL1L2
gAGE/UPC B1. Repairing DDL1 and DDL2 carriers @ J. Sanz & J.M. Juan 61
Research group of Astronomy & Geomatics
Technical University of Catalonia
B. Repairing the DDL1 and DDL2 with the ambiguities fixed
gAGE/UPC B1. Plotting the repaired DDL1 @ J. Sanz & J.M. Juan 62
Research group of Astronomy & Geomatics
Technical University of Catalonia
graph.py -f DD_UPC1_UPC2_06_ALL.fixL1
-x6 -y'($8-$18-$11)'
-so --yn -0.06 --yx 0.06
-l "(DDL1-O DDN1)-DDrho"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC B1. Plotting the repaired DDL1 @ J. Sanz & J.M. Juan 63
Research group of Astronomy & Geomatics
Technical University of Catalonia
B. Repairing the DDL1 and DDL2 with the ambiguities fixed
graph.py -f DD_UPC1_UPC2_06_ALL.fixL1
-x6 -y'($8-$11)'
-so --yn -5 --yx 5
-l "DDL1-DDrho"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC B1. Plotting the repaired DDL1 @ J. Sanz & J.M. Juan 64
Research group of Astronomy & Geomatics
Technical University of Catalonia
graph.py -f DD_UPC1_UPC2_06_ALL.fixL1
-x6 -y'($8-$18)'
-so --yn -20 --yx 20
-l "(DDL1-O DDN1)"
--xl "time (s)" --yl "m"
Questions:
1.- Explain what is the meaning
of this plot.
2.- Why a trend and a
discontinuity appears?
gAGE/UPC B1. Plotting the repaired DDL1 @ J. Sanz & J.M. Juan 65
Research group of Astronomy & Geomatics
Technical University of Catalonia
B. Repairing the DDL1 and DDL2 with the ambiguities fixed
gAGE/UPC B1. Plotting the repaired DDL2 @ J. Sanz & J.M. Juan 66
Research group of Astronomy & Geomatics
Technical University of Catalonia
graph.py -f DD_UPC1_UPC2_06_ALL.fixL1
-x6 -y'($9-$19-$11)'
-so --yn -0.06 --yx 0.06
-l "(DDL2-O DDN2)-DDrho"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC B1. Plotting the repaired DDL2 @ J. Sanz & J.M. Juan 67
Research group of Astronomy & Geomatics
Technical University of Catalonia
B. Repairing the DDL1 and DDL2 with the ambiguities fixed
graph.py -f DD_UPC1_UPC2_06_ALL.fixL1
-x6 -y'($9-$11)'
-so --yn -5 --yx 5
-l "DDL2-DDrho"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC B1. Plotting the repaired DDL2 @ J. Sanz & J.M. Juan 68
Research group of Astronomy & Geomatics
Technical University of Catalonia
graph.py -f DD_UPC1_UPC2_06_ALL.fixL1
-x6 -y'($9-$198)'
-so --yn -20 --yx 20
-l "(DDL2-O DDN2)"
--xl "time (s)" --yl "m"
Questions:
1.- Explain what is the meaning
of this plot.
2.- Why a trend and a
discontinuity appears?
gAGE/UPC B1. Plotting the repaired DDL2 @ J. Sanz & J.M. Juan 69
Research group of Astronomy & Geomatics
Technical University of Catalonia
B2 Assessing the fixed ambiguities in navigation
Indeed, once the integer ambiguities are known, the carrier phase
measurements become like “unambiguous pseudoranges”, accurate at the
centimetre level or better.
Of course, the knowledge of the reference receiver location would allow the user to
compute its absolute coordinates.
This is a simple approach, where synchronism delays between the time tag
measurements of the reference station and the user must be taken into account for
real-time positioning.
Data file
----------------------------- DD_UPC1_UPC2_06_ALL.fixL1L2 -------------------------------------
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
[UPC1 UPC2 06 PRN DoY sec DDP1 DDL1 DDP2 DDL2 DDRho DDTrop DDIon El1 Az1 El2 Az2 O DDN1 O DDN2]
<---- UPC2 ---->
------------------------------------------------------------------------------------------------
PRN06 (ref)
Where the elevation (EL) and azimuth (AZ) PRNXX
are taken from station UPC2 (the user)
gAGE/UPC B2.1 Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 73
Research group of Astronomy & Geomatics
Technical University of Catalonia
(single epoch LS, whole interval)
B2.1 UPC1-UPC2 Baseline vector estimation with DDL1 carrier
(using the time-tagged reference station measurements)
Notation
r { Baseline vector
ª ρˆ 3 ρˆ 6 T º
ª DDL16,03 O1 DDN16,03 º « » DDL1k j { DDL1(involving satellites j and k )
« 6,07 » « ˆ7 ˆ6 »
« ρ ρ » r
T
« DDL1 O1 DDN1 »
6,07
gAGE/UPC B2.1 Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 74
Research group of Astronomy & Geomatics
Technical University of Catalonia
(single epoch LS, whole interval)
Using the DDL1 carrier with the ambiguities FIXED, compute the LS single epoch
solution for the whole interval 180000< t <199000 with the program LS.f
Note: The program LS.f computes the Least Square solution for each
measurement epoch of the input file (see the FORTRAN code LS.f)
where:
Time= seconds of day
DDL1- ODDN1= Prefit residulas (i.e., "y" values in program LS.f)
Los_k-Los_06 = The three components of the geometry matrix
(i.e., matrix "a" in program LS.f)
gAGE/UPC B2.1 Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 75
Research group of Astronomy & Geomatics
Technical University of Catalonia
(single epoch LS, whole interval)
B2.1 UPC1-UPC2 Baseline vector estimation with DDL1 carrier
(using the time-tagged reference station measurements)
Justify that the next sentence builds the navigation equations system
See file content
in slide #31
[DDL1- O DDN1]=[Los_k - Los_06]*[baseline]
ª ρˆ 3 ρˆ 6 T º
ª DDL O1 DDN º
6,03 6,03
« » [DDL1- O DDN1] [ Los_k - Los_06]
1 1
« » « ˆ7 ˆ6 »
« ρ ρ » r
T ------------ --------------------
« DDL O1 DDN »
6,07 6,07
1 1
-3.3762 0.3398 -0.1028 0.0714
« » « »
« -7.1131 0.1725 0.5972 0.0691
6,24 » « »
«¬ DDL1 O1 DDN1 »¼
6, 24
« ρˆ 24 ρˆ 6 T » 4.3881 -0.6374 0.0227 0.2725
¬ ¼
gAGE/UPC ρˆ k { > cos( Elk )sin( Azk ), cos( Elk ) cos( Azk ), sin( Elk ) @ @ J. Sanz & J.M. Juan 76
Research group of Astronomy & Geomatics
Technical University of Catalonia
gAGE/UPC B2.1 Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 77
Research group of Astronomy & Geomatics
Technical University of Catalonia
(single epoch LS, whole interval)
B2.1 UPC1-UPC2 Baseline vector estimation with DDL1 carrier
(using the time-tagged reference station measurements)
gAGE/UPC B2.1 Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 78
Research group of Astronomy & Geomatics
Technical University of Catalonia
(single epoch LS, whole interval)
L1 Baseline
estimation error
after fixing
ambiguities
Questions:
1.- What is the expected
accuracy when positioning
with carrier after fixing
ambiguities?
2.- Discuss why a trend and a
discontinuity appears?
gAGE/UPC B2.1 Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 79
Research group of Astronomy & Geomatics
Technical University of Catalonia
(single epoch LS, whole interval)
B2.2. UPC1-UPC2 differential positioning with DDL1 carrier
(using the computed differential corrections)
gAGE/UPC B2.2. Differential positioning with DDL1 @ J. Sanz & J.M. Juan 80
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using computed dif. corrections)
Notation
dr rIND3 - r0, IND3
ª ρˆ 3 ρˆ º
6 T
ª DDL16,03 DD U 6,03 O1 DDN1 º « » DDL1k j { DDL1(involving satellites j and k )
« » « ˆ7 ˆ6 T »
« DDL1 DD U O1 DDN1 » « ρ ρ » dr
6,07 6,07
gAGE/UPC B2.2. Differential positioning with DDL1 @ J. Sanz & J.M. Juan 81
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using computed dif. corrections)
B2.2. UPC1-UPC2 differential positioning with DDL1 carrier
(using the computed differential corrections)
gAGE/UPC B2.2. Differential positioning with DDL1 @ J. Sanz & J.M. Juan 82
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using computed dif. corrections)
ª ρˆ 3 ρˆ 6 T º
ª DDL DD U O1 DDN1 º
6,03
1
6,03
« »
« » « ˆ7 ˆ6 T »
« DDL DD U O1 DDN1 » « ρ ρ » dr
6,07
6,07
1
« » « »
« » « » ρ̂ 6 ρˆ j
«¬ DDL1 DD U O1 DDN1 »¼
6,24 6,30
« ρˆ 24 ρˆ 6 T »
¬ ¼
dr rUPC2 - r0,UPC2
ρˆ j { ª¬cos( El j )sin( Az j ), cos( El j ) cos( Az j ), sin( El j ) º¼
UPC1(ref)
IND2 (ref) UPC2
IND3 (user)
(user)
gAGE/UPC B2.2. Differential positioning with DDL1 @ J. Sanz & J.M. Juan 83
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using computed dif. corrections)
B2.2. UPC1-UPC2 differential positioning with DDL1 carrier
(using the computed differential corrections)
Justify that the next sentence builds the navigation equations system
See file content
in slide #43
[DDL1- DDRho- O DDN1]=[Los_k - Los_06]*[dr]
gAGE/UPC ρˆ k { > cos( Elk )sin( Azk ), cos( Elk ) cos( Azk ), sin( Elk ) @ @ J. Sanz & J.M. Juan 84
Research group of Astronomy & Geomatics
Technical University of Catalonia
gAGE/UPC B2.2. Differential positioning with DDL1 @ J. Sanz & J.M. Juan 85
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using computed dif. corrections)
B2.2. UPC1-UPC2 differential positioning with DDL1 carrier
(using the computed differential corrections)
gAGE/UPC B2.2. Differential positioning with DDL1 @ J. Sanz & J.M. Juan 86
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using computed dif. corrections)
L1 Differential
positioning after
fixing ambiguities
Questions:
Discuss why the results
have improved,
achieving centimetre
level navigation.
gAGE/UPC B2.2. Differential positioning with DDL1 @ J. Sanz & J.M. Juan 87
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using computed dif. corrections)
B2.3. UPC1-UPC2 differential positioning with DDL2 carrier
(using the computed differential corrections)
gAGE/UPC B2.3. Differential positioning with DDL2 @ J. Sanz & J.M. Juan 88
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using computed dif. corrections)
gAGE/UPC B2.3. Differential positioning with DDL2 @ J. Sanz & J.M. Juan 89
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using computed dif. corrections)
B2.3. UPC1-UPC2 differential positioning with DDL2 carrier
(using the computed differential corrections)
L2 Differential
positioning after
fixing ambiguities
Questions:
Compare the results with
the previous ones
computed from DDL1.
gAGE/UPC B2.3. Differential positioning with DDL2 @ J. Sanz & J.M. Juan 90
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using computed dif. corrections)
Analyze the effect of a wrong ambiguity fix over a single satellite (e.g. PRN07)
Simulate an error of 1 cycle in DDN1 for satellite PRN07 and compute the
navigation solution: 1 cycle is added to the
DDN1 of satellite PRN07
The following sentence can be used
cat DD_UPC1_UPC2_06_ALL.fixL1L2 | gawk 'BEGIN{g2r=atan2(1,1)/45;
{if ($4==07){$18=$18+0.19029};}
{e1=$14*g2r;a1=$15*g2r;e2=$16*g2r;a2=$17*g2r;printf "%s %14.4f
%8.4f %8.4f %8.4f \n",$6,$8-$11-$18,-cos(e2)*sin(a2)+cos(e1)*sin(a1),
-cos(e2)*cos(a2)+cos(e1)*cos(a1),-sin(e2)+sin(e1)}' > L1model.dat
gAGE/UPC B2.4. Differential positioning with DDL1 @ J. Sanz & J.M. Juan 91
Research group of Astronomy & Geomatics
Technical University of Catalonia
Effect of wrong ambiguity fix.
B2.4. UPC1-UPC2 differential positioning with DDL1 carrier
(using the computed differential corrections)
gAGE/UPC B2.4. Differential positioning with DDL1 @ J. Sanz & J.M. Juan 92
Research group of Astronomy & Geomatics
Technical University of Catalonia
Effect of wrong ambiguity fix.
L1 Differential
positioning with a
wrong ambiguity
fix on a single
satellite
Questions:
Discuss the results.
What is the effect of the
wrong fix?
gAGE/UPC B2.4. Differential positioning with DDL1 @ J. Sanz & J.M. Juan 93
Research group of Astronomy & Geomatics
Technical University of Catalonia
Effect of wrong ambiguity fix.
OVERVIEW
Introduction: gLAB processing in command line.
Preliminary computations: Data files.
Session A: Fixing DD ambiguities one at a time: UPC1-UPC2.
Session C
Note:
To avoid the synchronization issues, consider the Differential Positioning using
the computed differential corrections, instead of the time-tagged measurements.
That is, we are going to solve the following navigation equations systems:
gAGE/UPC C. Fixing DDN1 and DDN2 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 96
Research group of Astronomy & Geomatics
Technical University of Catalonia
Consider again the previous problem of estimating 'r , a 3-vector of real numbers ,
gAGE
and N a (K-1)-vector of integers, which are solution of
y G 'r O A N ν
research group of Astronomy and Geomatics
gAGE/UPC C1. Fixing DDN1 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 98
Research group of Astronomy & Geomatics
Technical University of Catalonia
Notation
ª ρˆ 3 ρˆ 6 T º y=Gx
ª DDL DD U º
6,03
1
6,03
« » ª1 0 0 º ª O1 DDN º
1
6,03
« 6,07 » «0 1 « »
« ˆ7 ˆ6 » 0 »» « O1 DDN » Where the vector of
« ρ ρ » dr «
T
« DDL DD U »
6,07 6,07
1 1
« » « » « »« »
« 6,24 » « » « »« » unknowns x includes
¬« DDL1 DD U ¼» 1 ¼ ¬« O1 DDN16,24 ¼» the user coordinates
6, 24
« ρˆ 24 ρˆ 6 T » ¬0 0 0
¬ ¼ and ambiguities
gAGE/UPC C1. Fixing DDN1 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 99
Research group of Astronomy & Geomatics
Technical University of Catalonia
C1 Fixing the DDN1 ambiguities with LAMBDA Method
The receiver was not moving (static) during the data collection.
Thence, for each epoch we have the equations system:
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL16,03 (t1 ) DD U 6,03 (t1 ) º « 1 1
» ª1 0 0 º ª O1 DDN16,03 º
«
« DDL1 (t1 ) DD U (t1 ) »
6,07 6,07 » « ˆ7 6 T » «
« ρ (t1 ) ρˆ (t1 ) » dr «
0 1
«
0 »» « O1 DDN16,07 »
»
y1 = G1 x
« » « » « »« »
« » « » « »« »
¬« DDL1 (t1 ) DD U (t1 ) ¼» 1 ¼ ¬« O1 DDN16,24 ¼»
6, 24 6,24
« ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0
y1:=y[t1]
¬ 1 1 ¼
G1:=G[t1]
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL16,03 (t2 ) DD U 6,03 (t2 ) º « 2 2
» ª1 0 0 º ª O1 DDN16,03 º
«
« DDL1 (t2 ) DD U (t2 ) »
«
6,07 6,07 »
»
« ˆ7
«
6 T »
»
«0 1
« ρ (t2 ) ρˆ (t2 ) » dr «
« »«
« »
0 »» «O1 DDN16,07 »
»
y2 = G2 x
« » « » « »« 6,24 »
¬« DDL1 (t2 ) DD U (t2 ) ¼» 1 ¼ ¬« O1 DDN1 ¼»
6, 24 6,24
« ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0
¬ 2 2 ¼ y2:=y[t2]
G2:=G[t2]
gAGE/UPC
[DDL1-DDRho]=[Los_k - Los_06]*[dr] + [ A ]*[lambda1*DDN1] 100 @ J. Sanz & J.M. Juan
Research group of Astronomy & Geomatics
Technical University of Catalonia
b) Given the measurement vectors (y) and Geometry matrices (G) for two epochs
y1:=y[t1] ; G1:=G[t1] ; Py
y2:=y[t2] ; G2:=G[t2] ; Py
show that the user solution and covariance matrix can be computed as:
P=inv(G1'*W*G1+G2'*W*G2);
y = G x; W = Py-1 where: W=inv(Py)
x=P*(G1'*W*y1+G2'*W*y2) ;
T -1 T
x = (G WG) G Wy
(G T WG)-1
P = gAGE/UPC
C1. Fixing DDN1 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 101
Research group of Astronomy & Geomatics
Technical University of Catalonia
C1 Fixing the DDN1 ambiguities with LAMBDA Method
for the two epochs required t1=18000 and t2=18015, using the input
file DD_UPC1_UPC2_06_ALL.dat generated before.
Execute:
MakeL1DifMat.scr DD_UPC1_UPC2_06_ALL.dat 18000 18015
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC C1. Fixing DDN1 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 102
Research group of Astronomy & Geomatics
Technical University of Catalonia
octave
load M1.dat
load M2.dat P=inv(G1'*W*G1+G2'*W*G2);
x=P*(G1'*W*y1+G2'*W*y2);
y1=M1(:,1);
G1=M1(:,2:12);
Solution
y2=M2(:,1);
G2=M2(:,2:12); x(1:3)'
Py=(diag(ones(1,8))+ones(8))*2e-4; 1.4216 -0.6058 0.4035
W=inv(Py);
gAGE/UPC C1. Fixing DDN1 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 103
Research group of Astronomy & Geomatics
Technical University of Catalonia
C1 Fixing the DDN1 ambiguities with LAMBDA Method
gAGE/UPC C1. Fixing DDN1 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 104
Research group of Astronomy & Geomatics
Technical University of Catalonia
Questions:
1. Can the ambiguities be well fixed?
2. Is the test resolutive?
3. Compare the fixed ambiguities with those obtained
in the previous exercises when fixing the ambiguities
one at a time. Are the same results found?
4. What is the elapsed time to needed fix the
ambiguities? And in the previous exercise when
fixing the ambiguities one at a time?
5. The values found for the ambiguities are the same
than in the previous case?
gAGE/UPC C1. Fixing DDN1 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 105
Research group of Astronomy & Geomatics
Technical University of Catalonia
C2 Checking the Z-transform matrix
imagesc(Q) imagesc(Qz)
gAGE/UPC C2. Checking the Z-transform Matrix @ J. Sanz & J.M. Juan 106
Research group of Astronomy & Geomatics
Technical University of Catalonia
Note: The previous routines computes its transpose (Zt). Then: Z=Zt'.
Z =Zt’
3 -5 -4 -5 6 7 4 -2
3 2 -7 -6 -5 -4 9 3
-4 -0 -5 8 3 -4 1 -3
1 -5 1 -8 4 -1 1 8
-0 1 2 7 -1 -8 -4 3
8 -3 -1 4 2 -6 -1 4
-5 -1 1 -6 1 0 1 4
-5 -3 -0 -0 5 -2 -1 3
gAGE/UPC C2. Checking the Z-transform Matrix @ J. Sanz & J.M. Juan 107
Research group of Astronomy & Geomatics
Technical University of Catalonia
C2 Checking the Z-transform matrix
Z * Q * Z'
gAGE/UPC C2. Checking the Z-transform Matrix @ J. Sanz & J.M. Juan 108
Research group of Astronomy & Geomatics
Technical University of Catalonia
inv(Z)*Nz
2.00000 1.00000 2.00000 -1.00000
4.00000 7.00000 1.00000 4.00000
g. - Compare the previous results with the direct rounding of initial ambiguities “a”:
round(a)
0 -6 6 6 -1 12 8 9
gAGE/UPC C2. Checking the Z-transform Matrix @ J. Sanz & J.M. Juan 109
Research group of Astronomy & Geomatics
Technical University of Catalonia
C Fixing the DDN1 and DDN2 ambiguities with LAMBDA Method
gAGE/UPC C3. Fixing DDN2 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 110
Research group of Astronomy & Geomatics
Technical University of Catalonia
Notation
ª ρˆ 3 ρˆ 6 T º y=Gx
ª DDL DD U º
6,03
2
6,03
« » ª1 0 0 º ª O2 DDN º
6,03
2
« 6,07 » «0 1 « »
« ˆ7 ˆ6 » 0 »» «O2 DDN » Where the vector of
« ρ ρ » dr «
T
« DDL DD U »
6,07 6,07
2 2
« » « » « »« »
« 6,24 » « » « »« » unknowns x includes
¬« DDL2 DD U ¼» 1 ¼ ¬« O2 DDN 26,24 ¼» the user coordinates
6, 24
« ρˆ 24 ρˆ 6 T » ¬0 0 0
¬ ¼ and ambiguities
gAGE/UPC C3. Fixing DDN2 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 111
Research group of Astronomy & Geomatics
Technical University of Catalonia
C3 Fixing the DDN2 ambiguities with LAMBDA Method
The receiver was not moving (static) during the data collection.
Thence, for each epoch we have the equations system:
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL6,03 (t1 ) DD U 6,03 (t1 ) º « 1 1
» ª1 0 0 º ª O2 DDN 26,03 º
y1 = G1 x
2
« » «0 1 « »
« ˆ7 0 »» « O2 DDN 26,07 »
T »
« DDL2 (t1 ) DD U (t1 ) » « ρ (t1 ) ρˆ (t1 ) » dr «
6,07 6,07 6
« » « » « »« »
« » « » « »« »
¬« DDL2 (t1 ) DD U (t1 ) ¼» 1 ¼ ¬« O2 DDN 26,24 ¼»
6, 24 6,24
« ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0
y1:=y[t1]
¬ 1 1 ¼
G1:=G[t1]
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL6,03
2 (t2 ) DD U 6,03 (t2 ) º « 2 2
» ª1 0 0 º ª O2 DDN 26,03 º
«
« DDL2 (t2 ) DD U (t2 ) »
«
6,07 6,07 »
»
« ˆ7
«
6 T »
»
«0 1
« ρ (t2 ) ρˆ (t2 ) » dr «
« »«
« »
0 »» «O2 DDN 26,07 »
»
y2 = G2 x
« » « » « »« 6,24 »
¬« DDL2 (t2 ) DD U (t2 ) ¼» 1 ¼ ¬« O2 DDN 2 ¼»
6, 24 6,24
« ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0
¬ 2 2 ¼ y2:=y[t2]
G2:=G[t2]
gAGE/UPC
[DDL2-DDRho]=[Los_k - Los_06]*[dr] + [ A ]*[lambda2*DDN2] 112 @ J. Sanz & J.M. Juan
Research group of Astronomy & Geomatics
Technical University of Catalonia
In the previous sessions A and B we have not taken into account the
correlations between the double differences of measurements. This
ª2 1 1º
matrix will be used now, as the LAMBDA method will be applied to «
FIX the carrier ambiguities. 2 «1 2 1 »»
P 2V
y
« »
a) Show that the covariance matrix of DDL2 is given by Py « »
¬1 1 1 2¼
b) Given the measurement vectors (y) and Geometry matrices (G) for two epochs
y1:=y[t1] ; G1:=G[t1] ; Py
y2:=y[t2] ; G2:=G[t2] ; Py
show that the user solution and covariance matrix can be computed as:
P=inv(G1'*W*G1+G2'*W*G2);
y = G x; W = Py-1 where: W=inv(Py)
x=P*(G1'*W*y1+G2'*W*y2) ;
T -1 T
x = (G WG) G Wy
(G T WG)-1
P = gAGE/UPC
C3. Fixing DDN2 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 113
Research group of Astronomy & Geomatics
Technical University of Catalonia
C3 Fixing the DDN2 ambiguities with LAMBDA Method
for the two epochs required t1=18000 and t2=18015, using the input
file DD_UPC1_UPC2_06_ALL.dat generated before.
Execute:
MakeL2DifMat.scr DD_UPC1_UPC2_06_ALL.dat 18000 18015
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC C3. Fixing DDN2 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 114
Research group of Astronomy & Geomatics
Technical University of Catalonia
octave
load M1.dat
load M2.dat P=inv(G1'*W*G1+G2'*W*G2);
x=P*(G1'*W*y1+G2'*W*y2);
y1=M1(:,1);
G1=M1(:,2:12);
Solution
y2=M2(:,1);
G2=M2(:,2:12); x(1:3)'
Py=(diag(ones(1,8))+ones(8))*2e-4; 0.1442 -0.5154 0.5568
W=inv(Py);
gAGE/UPC C3. Fixing DDN2 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 115
Research group of Astronomy & Geomatics
Technical University of Catalonia
C3 Fixing the DDN2 ambiguities with LAMBDA Method
gAGE/UPC C3. Fixing DDN2 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 116
Research group of Astronomy & Geomatics
Technical University of Catalonia
Questions:
1. Can the ambiguities be well fixed?
2. Is the test resolutive?
3. Compare the fixed ambiguities with those obtained
in the previous exercises when fixing the ambiguities
one at a time. Are the same results found?
4. What is the elapsed time to needed fix the
ambiguities? And in the previous exercise when
fixing the ambiguities one at a time?
5. The values found for the ambiguities are the same
than in the previous case?
gAGE/UPC C3. Fixing DDN2 ambiguities with LAMBDA @ J. Sanz & J.M. Juan 117
Research group of Astronomy & Geomatics
Technical University of Catalonia
C4. UPC1-UPC2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
C4. Estimate the baseline vector between UPC1 and UPC2 receivers using
the L1 carrier measurements of file (DD_UPC1_UPC2_06_ALL.dat).
Consider only the two epochs used in the previous exercise: t1=14500 and t2=14515
gAGE/UPC C4. Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 118
Research group of Astronomy & Geomatics
Technical University of Catalonia
C4.1 Estimate the baseline vector between UPC1 and UPC2 receivers using the
L1 carrier measurements of file (DD_UPC1_UPC2_06_ALL.dat).
« » « « « »
1
»
« DDL » « ρˆ ρˆ » r «0 1
6,07 7 6 T
0 »» « O1 DDN »6,07
1 Where the vector of
« » « » « »« » unknowns x includes
« 6, 24 » « » « »« » the user coordinates
¬« DDL1 ¼» « ρˆ ρˆ »
24 6 T ¬0 0 0 1 ¼ ¬« O1 DDN16,24 ¼»
¬ ¼ and ambiguities
gAGE/UPC C4. Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 119
Research group of Astronomy & Geomatics
Technical University of Catalonia
C4. UPC1-UPC2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
The receiver was not moving (static) during the data collection.
Therefore, for each epoch we have the equations system:
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL (t1 ) º
6,03
1 « 1 1
» ª1 0 0 º ª O1 DDN16,03 º
« » «0 1 « »
« ˆ7 0 »» « O1 DDN16,07 »
T »
« ρ (t1 ) ρˆ (t1 ) » r « y1 = G1 x
6,07 6
« DDL (t1 ) »
1
« » « » « »« »
« » « » « »« »
6, 24
«¬ DDL1 (t1 ) »¼ « ρˆ 24 (t ) ρˆ 6 (t ) T » ¬0 0 0 1 ¼ «¬ O1 DDN16,24 »¼ y1:=y[t1]
¬ 1 1 ¼
G1:=G[t1]
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL (t2 ) º
6,03
1 « 2 2
» ª1 0 0 º ª O1 DDN16,03 º
« » « »
6,07
« DDL (t2 ) »
1
« ˆ7 6 T »
« ρ (t2 ) ρˆ (t2 ) » r «
« 0 1 0 »» « O1 DDN16,07 » y2 = G2 x
« » « » « »« »
« » « » « »« »
6, 24
¬« DDL1 (t2 ) ¼» « ρˆ 24 (t ) ρˆ 6 (t ) T » ¬0 0 0 1 ¼ ¬« O1 DDN16,24 ¼» y2:=y[t2]
¬ 2 2 ¼
G2:=G[t2]
gAGE/UPC
[DDL1]=[Los_k - Los_06]*[baseline] + [ A ]*[lambda1*DDN1] 120 @ J. Sanz & J.M. Juan
Research group of Astronomy & Geomatics
Technical University of Catalonia
In the previous sessions A and B we have not taken into account the
correlations between the double differences of measurements. This
ª2 1 1º
matrix will be used now, as the LAMBDA method will be applied to «
FIX the carrier ambiguities. 2 «1 2 1 »»
P 2V
y
« »
a) Show that the covariance matrix of DDL1 is given by Py « »
¬1 1 1 2¼
b) Given the measurement vectors (y) and Geometry matrices (G) for two epochs
y1:=y[t1] ; G1:=G[t1] ; Py
y2:=y[t2] ; G2:=G[t2] ; Py
show that the user solution and covariance matrix can be computed as:
P=inv(G1'*W*G1+G2'*W*G2);
y = G x; W = Py-1 where: W=inv(Py)
x=P*(G1'*W*y1+G2'*W*y2) ;
T -1 T
x = (G WG) G Wy
(G T WG)-1
P = gAGE/UPC
C4. Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 121
Research group of Astronomy & Geomatics
Technical University of Catalonia
C4. UPC1-UPC2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
for the two epochs required t1=18000 and t2=18015, using the input
file DD_UPC1_UPC2_06_ALL.dat generated before.
Execute:
MakeL1BslMat.scr DD_UPC1_UPC2_06_ALL.dat 18000 18015
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC C4. Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 122
Research group of Astronomy & Geomatics
Technical University of Catalonia
octave
P=inv(G1'*W*G1+G2'*W*G2);
load M1.dat x=P*(G1'*W*y1+G2'*W*y2);
load M2.dat
x(1:3)'
y1=M1(:,1);
-24.5735 -27.1121 3.0021
G1=M1(:,2:12);
bsl_enu =[-27.4170 -26.2341 -0.0304]
y2=M2(:,1);
G2=M2(:,2:12); x(1:3)'-bsl_enu
Py=(diag(ones(1,8))+ones(8))*2e-4; ans= 2.84348 -0.87798 3.03248
W=inv(Py);
gAGE/UPC C4. Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 123
Research group of Astronomy & Geomatics
Technical University of Catalonia
C4. UPC1-UPC2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
gAGE/UPC C4. Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 124
Research group of Astronomy & Geomatics
Technical University of Catalonia
Questions:
1. Can the ambiguities be well fixed?
2. Is the test resolutive?
3. Compare the fixed ambiguities with those obtained
in the previous exercises when fixing the ambiguities
one at a time. Are the same results found?
4. What is the elapsed time to needed fix the
ambiguities? And in the previous exercise when
fixing the ambiguities one at a time?
5. The values found for the ambiguities are the same
than in the previous case?
gAGE/UPC C4. Baseline vector estimation with DDL1 @ J. Sanz & J.M. Juan 125
Research group of Astronomy & Geomatics
Technical University of Catalonia
C5. UPC1-UPC2 Baseline vector estimation with L2 carrier
(using the time-tagged reference station measurements)
C5. Estimate the baseline vector between UPC1 and UPC2 receivers using
the L2 carrier measurements of file (DD_UPC1_UPC2_06_ALL.dat).
Consider only the two epochs used in the previous exercise: t1=14500 and t2=14515
gAGE/UPC C5. Baseline vector estimation with DDL2 @ J. Sanz & J.M. Juan 126
Research group of Astronomy & Geomatics
Technical University of Catalonia
C5.1 Estimate the baseline vector between UPC1 and UPC2 receivers using the
L2 carrier measurements of file (DD_UPC1_UPC2_06_ALL.dat).
gAGE/UPC C5. Baseline vector estimation with DDL2 @ J. Sanz & J.M. Juan 127
Research group of Astronomy & Geomatics
Technical University of Catalonia
C5. UPC1-UPC2 Baseline vector estimation with L2 carrier
(using the time-tagged reference station measurements)
The receiver was not moving (static) during the data collection.
Therefore, for each epoch we have the equations system:
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL (t1 ) º
6,03
2 « 1 1
» ª1 0 0 º ª O2 DDN 26,03 º
« » « « »
« ˆ7 0 »» « O2 DDN 26,07 »
T »
« ρ (t1 ) ρˆ (t1 ) » r « y1 = G1 x
6,07
« DDL (t1 ) »
2
6
0 1
« » « » « »« »
« » « » « »« »
6, 24
«¬ DDL2 (t1 ) »¼ « ρˆ 24 (t ) ρˆ 6 (t ) T » ¬0 0 0 1 ¼ «¬ O2 DDN 26,24 »¼ y1:=y[t1]
¬ 1 1 ¼
G1:=G[t1]
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL (t2 ) º
6,03
2 « 2 2
» ª1 0 0 º ª O2 DDN 26,03 º
« » « »
6,07
« DDL (t2 ) »
2
« ˆ7 6 T »
« ρ (t2 ) ρˆ (t2 ) » r «
« 0 1 0 »» «O2 DDN 26,07 » y2 = G2 x
« » « » « »« »
« » « » « »« »
6, 24
¬« DDL2 (t2 ) ¼» « ρˆ 24 (t ) ρˆ 6 (t ) T » ¬0 0 0 1 ¼ ¬« O2 DDN 26,24 ¼» y2:=y[t2]
¬ 2 2 ¼
G2:=G[t2]
gAGE/UPC
[DDL2]=[Los_k - Los_06]*[baseline] + [ A ]*[lambda2*DDN2] 128 @ J. Sanz & J.M. Juan
Research group of Astronomy & Geomatics
Technical University of Catalonia
In the previous sessions A and B we have not taken into account the
correlations between the double differences of measurements. This
ª2 1 1º
matrix will be used now, as the LAMBDA method will be applied to «
FIX the carrier ambiguities. 2 «1 2 1 »»
P 2V
y
« »
a) Show that the covariance matrix of DDL2 is given by Py « »
¬1 1 1 2¼
b) Given the measurement vectors (y) and Geometry matrices (G) for two epochs
y1:=y[t1] ; G1:=G[t1] ; Py
y2:=y[t2] ; G2:=G[t2] ; Py
show that the user solution and covariance matrix can be computed as:
P=inv(G1'*W*G1+G2'*W*G2);
y = G x; W = Py-1 where: W=inv(Py)
x=P*(G1'*W*y1+G2'*W*y2) ;
T -1 T
x = (G WG) G Wy
(G T WG)-1
P = gAGE/UPC
C5. Baseline vector estimation with DDL2 @ J. Sanz & J.M. Juan 129
Research group of Astronomy & Geomatics
Technical University of Catalonia
C5. UPC1-UPC2 Baseline vector estimation with L2 carrier
(using the time-tagged reference station measurements)
for the two epochs required t1=18000 and t2=18015, using the input
file DD_UPC1_UPC2_06_ALL.dat generated before.
Execute:
MakeL2BslMat.scr DD_UPC1_UPC2_06_ALL.dat 18000 18015
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC C5. Baseline vector estimation with DDL2 @ J. Sanz & J.M. Juan 130
Research group of Astronomy & Geomatics
Technical University of Catalonia
octave
P=inv(G1'*W*G1+G2'*W*G2);
load M1.dat x=P*(G1'*W*y1+G2'*W*y2);
load M2.dat
x(1:3)'
y1=M1(:,1);
-25.85097 -27.02162 3.15538
G1=M1(:,2:12);
bsl_enu =[-27.4170 -26.2341 -0.0304]
y2=M2(:,1);
G2=M2(:,2:12); x(1:3)'-bsl_enu
Py=(diag(ones(1,8))+ones(8))*2e-4; ans= 1.5660 -0.7875 3.18578
W=inv(Py);
gAGE/UPC C5. Baseline vector estimation with DDL2 @ J. Sanz & J.M. Juan 131
Research group of Astronomy & Geomatics
Technical University of Catalonia
C5 Fixing the DDN2 ambiguities with LAMBDA Method
gAGE/UPC C5. Baseline vector estimation with DDL2 @ J. Sanz & J.M. Juan 132
Research group of Astronomy & Geomatics
Technical University of Catalonia
Questions:
1. Can the ambiguities be well fixed?
2. Is the test resolutive?
3. Compare the fixed ambiguities with those obtained
in the previous exercises when fixing the ambiguities
one at a time. Are the same results found?
4. What is the elapsed time to needed fix the
ambiguities? And in the previous exercise when
fixing the ambiguities one at a time?
5. The values found for the ambiguities are the same
than in the previous case?
gAGE/UPC C5. Baseline vector estimation with DDL2 @ J. Sanz & J.M. Juan 133
Research group of Astronomy & Geomatics
Technical University of Catalonia
Thanks for your
attention
Acknowledgements
The ESA/UPC GNSS-Lab Tool suite (gLAB) has been developed under the
ESA Education Office contract N. P1081434.
Slides associated to
gLAB version 2.0.0
Authorship statement
The authorship of this material and the Intellectual Property Rights are owned by
J. Sanz Subirana and J.M. Juan Zornoza.
This authorship statement must be kept intact and unchanged at all times.
Introduction
This tutorial is devoted to analysing and assessing different issues associated with GNSS
signal propagation effects in the atmosphere.
The laboratory exercises will be developed with actual GPS measurements, and processed
with the ESA/UPC GNSS-Lab Tool suite (gLAB), which is an interactive software package
for GNSS data processing and analysis.
All software tools (including gLAB) and associated files for the laboratory session are
included in the USB stick delivered to those who attend the lecture.
The laboratory session will consist of a set of exercises organized in three different levels
of difficulty (Basic, Medium and Advanced). A set of introductory examples range from a first
glance assessment of the ionosphere effects on single frequency positioning, and Zenith
Tropospheric Delays estimate to showing different perturbation effects in the ionosphere
(Solar Flair, Halloween storm, TIDs). Electron density profiles (Ne) retrieval, bending effects
analysis (phase excess rate depicture), as well as in-depth analysis of the code-carrier
ionosphere divergence on single-frequency smoothed codes and the second order
ionospheric effects are analysed in detail in four Laboratory Work Projects. Other topics are
given as homework.
The target is to provide the participants with a wide range of selected exercises to
choose from, according their interests and their level of knowledge of these topics.
Professionals/Experts:
• Powerful tool with High Accuracy Positioning capability.
• Fast to configure and use: Templates and carefully chosen defaults.
• Can be executed in command-line and included in batch processing.
gAGE/UPC
gA @ J. Sanz & J.M. Juan 8
Research
h group o
of Astronomy & Geomatics
Technical University of Catalonia
The gLAB Tool suite
Read files capability: Modelling module:
• RINEX observation v2.11 & v3.00
• RINEX navigation message. • Fully configurable model.
• SP3 precise satellite clocks and orbits files • Satellite positions.
• ANTEX Antenna information files.
• Constellation status. • Satellite clock error correction.
• DCBs files. • Satellite movement during signal flight
• GPS_Receiver_Type files. time.
• SINEX position files. • Earth rotation during signal flight time.
• Satellite phase center correction.
Pre-processing module:
• Carrier-phase pre-alignment.
• Receiver phase center correction.
• Carrier-phase / pseudo-range consistency
(frequency dependent).
check. • Relativistic clock correction.
• Cycle-slip detection (customizable parameters) • Relativistic path range correction.
- Melbourne-Wübbena. • Ionospheric correction (Klobuchar).
- Geometry-free CP combination.
- L1-C1 difference (single frequency). • Tropospheric correction
• Pseudo-range smoothing. - Simple and Niell mappings.
• Decimation capability. - Simple and UNB-3 nominals.
• On demand satellite enable/disable. • Differential Code Bias corrections.
• Elevation mask. • Wind up correction.
• Frequency selection.
• Discard eclipsed satellites.
• Solid tides correction (up to 2nd
degree).
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 9
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 10
GNSS learning material package
Includes three different parts, allowing participants to
follow either a guided or a self-learning GNSS course:
• GNSS Book: Complete book with theory, practical GPS Data Processing: Code and Phase
Algorithms, Techniques and Recipes
• gLAB tool suite: Source code and binary software Image courtesy of USAF Research Laboratory
OVERVIEW
Introduction
The gLAB tool suite
¾ Examples of GNSS processing using gLAB
Laboratory session organization
LABORATORY Session
Starting up your laptop
Basic: Introductory lab exercises: Iono & Posit, SF, storm,TIDs
Medium: Laboratory Work Projects: LWP1 to LWP4
Advanced: Homework
May 4, 2000
2 4
1 3 5
gLAB.out
North East Up
-f gLAB.out -x4 -y19 -s.- -c '($1=="OUTPUT")' -l "East error"
-f gLAB.out -x4 -y20 -s.- -c '($1=="OUTPUT")' -l "UP error“
--yn -20 --yx 50 --xl "time (s)" --yl "error (m)"
-t "NEU positioning error [SPP]: Full model"
gAGE/UPC @ J. Sanz & J.M. Juan 16
Research group of Astronomy & Geomatics
Technical University of Catalonia
Example 1. gLAB Modeling panel
The different model terms can
be analyzed with gLAB:
•Using the previous data file,
the impact of neglecting the
ionospheric correction is
evaluated in the Range and
Position domains.
The modeling
options set in this •This is a baseline example of
this analysis procedure. The
panel are applied same scheme must be
by default to the applied for all model terms
SPP solution. (troposphere, relativistic
correction...). A full analysis
of the different model
components can be found in
[R-2].)
2.Save as gLAB1.out
In the Default
the associated output file. 2 Set output file
Notice that the gLAB.out
configuration the file contains the processing as
output file was results with the FULL gLAB1.out
gLAB.out model, as was set in the
default configuration. 3
gAGE/UPC
C Equivalent command line sentence:
gLAB_linux -input:cfg gLAB_p1_NoIono.cfg
@ J. Sanzz & J.M. Juan 18
Research group of Astronomy & Geomatics
ics
Technical University of Catalonia -input:obs ramo1250.00o -input:nav brdc1250.00n
Example 1. NEU Position Error plot from gLAB1.out
No Iono. correction
North East Up
-f gLAB1.out -x4 -y19 -s.- -c '($1=="OUTPUT")' -l "East error"
-f gLAB1.out -x4 -y20 -s.- -c '($1=="OUTPUT")' -l "UP error“
--yn -20 --yx 50 --xl "time (s)" --yl "error (m)"
-t "NEU positioning error [SPP]: No Iono. Corr."
gAGE/UPC @ J. Sanz & J.M. Juan 19
Research group of Astronomy & Geomatics
Technical University of Catalonia
Click Clear to
1 restart plots
Y-min, Y-max
2 3
gLAB1.out
gLAB.out Time (sec) Vertical
Click Clear to
1 restart plots
2 3
gLAB1.out East: 19
gLAB.out North: 18
Code
delay
Carrier
advance
P2-P1=STEC+Krec+Ksat
Y-min=0
Y-max=40
gLAB.out
gAGE/UPC @ J.
J. Sanz
San
nz & J.M.
J.M. Juan
Jua
J an 23
Research group of Astronomy & Geomatics
Technical University of Catalonia
gLAB1.out gLAB1.out
gLAB.out
gLAB.out
1 2-frequencies
Disable
Iono correct.
and
Iono-free (PC)
2
(P1-P2) TGDs
3
After running gLAB, plot results as in previous cases
gAGE/UPC Equivalent command line sentence:
gLAB_linux -input:cfg gLAB_pc_IFree.cfg@ J. Sanz & J.M. Juan 25
Research group of Astronomy & Geomatics
Technical University of Catalonia -input:obs ramo1250.00o -input:nav brdc1250.00n
1-freq.[SPS]:
with Klobuchar
Plot gLAB2.out
results as in
gLAB.out previous cases
gLAB.out
2-freq.:
Iono-free ramo station location
gLAB2.out gLAB2.out
May 4, 2000
gAGE/UPC @ J. Sanz & J.M. Juan 26
Research group of Astronomy & Geomatics
Technical University of Catalonia
Example 1: Iono effects on single freq. Posit.
Ionospheric delay
The ionosphere extends from about 60 km over the Earth’s
surface until more than 2000 km, with a sharp electron density
maximum at around 350 km. The ionospheric refraction depends,
among other things, on the location, local time and solar cycle (11
years).
• First order (~99.9%) ionospheric delay I1 depends I1
40.3
STEC
on the inverse of squared frequency: f2
where STEC is the number of electrons per area unit
along ray path (STEC: Slant Total Electron Content). STEC ³ N dse
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 27
Annex:
gLAB processing in command line
graph.py -f gLAB1.out -x19 -y18 -so -c '($1=="OUTPUT")' --l "No Iono." --cl r
-f gLAB.out -x19 -y18 -so -c '($1=="OUTPUT")' --l "Full mod" --cl b
--xl "East error (m)" --yl "North error (m)"
--xn -20 --xx 20 --yn -20 --yx 20
-t "Horizontal pos. error [SPP]"
gAGE/UPC @ J.
J. Sanz
San
S
Sa
an
anz & J.M.
J.M
M. Juan
Ju
Jua
Ju
ua
an 29
29 29
Research group of Astronomy & Geomatics
Technical University of Catalonia
A “notepad”
with the
command
line sentence
is provided to
facilitate the
sentence
writing: just
“copy” and
“ paste”
Console to execute
from
“command line” notepad to
sentences the working
terminal.
gLAB_linux -messages
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 31
PI { P2 P1 I K 21
LI { L1 L2 I Ambiguity
P1 L1 2D1 I ambiguity1
Ambiguity= P L
P2 L2 2D 2 I ambiguity 2
1
D1 1.546 ; D 2 1 D1
Carrier Phase L1-L2 (ambiguous but precise) J 21 1
f1 / f2
2
J 21 (154 / 120) 2
U Refers to all non dispersive terms: geometric range, clocks, tropo. delay… (see [R-1]).
Ionospheric delay
STEC is in TECUs
sat
40.3 f12 f 22
STEC ³
rec
N e dl ,
I 2 2
1016 STEC ; ( I is in m of L1 L2 delay) 1 TECU 1016 e / m 2 0.10m of L1- L 2 delay
f f
1 2
Interfrequency bias As the satellite clocks are referred to the ionosphere-free combination
of codes (PC), the K 21sat cancels in such combination. f12 P1 f 22 P2
K 21 K 21,rec K 21sat Note: TGD D1 K 21sat is broadcast in GPS nav. Message. C
P
f12 f 22
Carrier ambiguities
Bi Oi N i bi Ni is an integer number. bi is a real number (fractional part of ambiguity)
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 34
Example 2: Ionospheric delay analysis
1.- Read RINEX file with gLAB and generate a “measurements file” in
a columnar format (the easiest to manipulate and plot content):
Æ Using the configuration file meas.cfg, READ the RINEX and generate the MEAS file:
gLAB_linux -input:cfg meas.cfg -input:obs coco0090.97o -input:nav brdc0090.97n > coco.meas
Compute different ionospheric combination of codes and carriers, and generate the
obs.txt file containing the fields: [PRN,sec, P2-P1, (P2-L2)/5.09, (P1-L1)/3.09, L1-L2, Elev/10]
Show in the same plot the following iono. delays for satellite PRN01:
P2-P1, (P2-L2)/5.09, (P1-L1)/3.09, L1-L2, Elev./10
PI { P2 P1 I K 21
LI { L1 L2 I Ambiguity
P1 L1 2D1 I ambiguity1
1
D1 1.546 ; D 2 1 D1
J 21 1
f1 / f2
2
J 21 (154 / 120) 2
)=40º
)=90º
Sky plots at
)=0º different
coco
latitudes
PRN01
gAGE/UPC @ J. Sanz & J.M. Juan 39
Research group of Astronomy & Geomatics
Technical University of Catalonia
The troposphere is
estimated as a Random
Walk process in the Kalman
Filter. A process noise of
1cm/sqrt(h) has been taken.
1 2
ftp://cddis.gsfc.nasa.gov/pub/gps/products/troposphere/new/2009/181/roap1810.09zpd.gz
The ZTD in this file is given in mm of delay. Thus, it is converted to m to compare with gLAB results
grep ROAP roap1810.09zpd | gawk -F\: '{print $3} ' | gawk '{print $1,$2/1000}' > roap_igs.trp
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 43
OVERVIEW
Introduction
The gLAB tool suite
Examples of GNSS processing using gLAB
¾ Laboratory session organization
LABORATORY Session
Starting up your laptop
Basic: Introductory lab exercises: Iono & Posit, SF, storm,TIDs
Medium: Laboratory Work Projects: LWP1 to LWP4
Advanced: Homework
a
G P Ne a
GP
a
U
U
is desirable for
7257c sat 7427cB0 cos T
3 ³rec
these homework I 2 L1 N e B cos T ds STEC
exercises. 2 f1 2 f13
OVERVIEW
Introduction
The gLAB tool suite
Examples of GNSS processing using gLAB
Laboratory session organization
LABORATORY Session
¾ Starting up your laptop
Basic: Introductory lab exercises: Iono & Posit, SF, storm,TIDs
Medium: Laboratory Work Projects: LWP1 to LWP4
Advanced: Homework
gAGE/UPC
gA @ J. Sanz & J.M. Juan 51
Research
h group o
of Astronomy & Geomatics
Technical University of Catalonia
Now, the
system is
ready to
start
working!
Console to execute
“command line”
sentences
Copy and
paste the
sentences
from
notepad
Console to execute to console
“command line”
sentences
2
By default, the output
file name is gLAB.out
1 3
2
Disable Ionospheric
Change output file
corrections
name to gLAB1.out
1 3
Equivalent command line sentence:
gLAB_linux -input:cfg gLAB_p1_NoIono.cfg
gAGE/UPC -input:obs amc3030.03o
@ J. Sanz & J.M. Juan 59
Research group of Astronomy &-input:nav
R Geomatics brdc3030.03n
Techn ca University
Technical
ec ical U
Unive s y of
ersity of Catalonia
Ca a onia
Catalo
Catal a
1 2
Disable Ionospheric
corrections and P1- Select Dual Frequency
P2 corrections
Change output
Equivalent command line sentence:
gLAB_linux -input:cfg gLAB_p1_IFree.cfg
3 file name to
gLAB2.out
graph.py -f gLAB1.out -x19 -y18 -so -c '($1=="OUTPUT")' --l "No Iono." --cl r
-f gLAB.out -x19 -y18 -so -c '($1=="OUTPUT")' --l "Full mod" --cl b
--xl "East error (m)" --yl "North error (m)"
--xn -40 --xx 40 --yn -40 --yx 40
-t "Horizontal pos. error [SPP]"
P2-P1 shifted +4 m
gLAB1.out gLAB1.out
gLAB.out
gLAB.out
Ionospheric correction
1-freq.[SPS]:
with Klobuchar
(broadcast Klobuchar )
•The ionosphere-free combination
(PC) of P1 and P2 codes is immune
to the ionospheric storm.
• Although PC is three-times noisier
than P1 or P2, it provides positioning
accurate at the level of a few meters
during the storm. f 2P f 2P
1 1 2 2
PC
f12 f 22
2-freq.:
Iono-free amc2 station location
• Three instruments:
GPS receiver. 4 antennas: 2 for POD, 2 for RO.
TIP, Tri-band beacon
• Weather + Space Weather data.
Global observations of:
Pressure, Temperature, Humidity 㻯㼛㼡㼞㼠㼑㼟㼥㻌㼛㼒㻌㼁㻯㻭㻾㻌
Refractivity 㻯㼛㼡㼞㼠㼑㼟㼥㻌㼛㼒㻌㼁㻯㻭㻾㻌
Ionospheric Electron Density
Ionospheric Scintillation
• Demonstrate quasi-operational GPS limb
sounding with global coverage in near-real time
• Climate Monitoring
Information available at www.cosmic.ucar.edu
Plot the L1-L2 measurement in function of time to depict the variation of STEC
along the occultation:
Select for instance : PRN=02 and “CODE=l241”, that corresponds
p to LEO=4 and Antenna 1
- Ploting L1-L2
graph.py -f ro.dat --xl "time (H)"
--yl "meters of L1-L2" -t"RO: L1-L2: COSMIC #4 Antenna #1"
gAGE/UPC 66
Research group of Astronomy & Geomatics
66
@ J. Sanz & J.M. Juan
G P Ne
a
a
G P
a
U
U
Exercise: Analyze the effect of the Solar Flare on the Slant Total
Electron Content (STEC) measurements of four permanent IGS
receivers ankr, asc1, kour and qaq1, covering a wide range of
longitude and latitude.
qaq1
Data sets:
ankr
ankr3010.03o, asc13010.03o,
kour3010.03o, qaq13010.03o kour
asc1
qaq1
ankr
kour
asc1
Using these files, plot the STEC for all satellites in view and discuss
the range of such variations. Analyse, in particular, the satellite
PRN 04 and calculate the maximum rate of STEC variation in
mm=s of L1 delay. Add the elevation of satellite PRN 04 in the plot.
The associated broadcast navigation les are brdc3010.03n,
brdc3020.03n, brdc3030.03n, brdc3040.03n, brdc3050.03n,
brdc3060.03n.
• Using such “text” file, the STEC pattern for the different
satellites in view during the storm is depicted from the
geometry-free combination of codes P2-P1.
Note:
P2 P1 I K 21
2.- Merge files and refer all the data to 0h of October 28th: Doy0301:
cat garl30?0.03.meas |gawk '{d=($3-301)*86400;$4=$4+d; print $6, $4/3600, $15-$13, $7}' > PI.txt
gAGE/UPC @ J.
J. Sanz
San
nz & J.M.
J.M
M. Juan
Jua
Jua
uan 79
Research group of Astronomy & Geomatics
Technical University of Catalonia
monb
mhcb
gAGE/UPC
gAGE/UPC sodb
@ J. Sanz & J.M. Juan 85
Research group off Astronomy
A t & Geomatics
Technical University of Catalonia
OVERVIEW
Introduction
The gLAB tool suite
Examples of GNSS processing using gLAB
Laboratory session organization
LABORATORY Session
Starting up your laptop
Basic: Introductory lab exercises: Iono & Posit, SF, storm,TIDs
¾ Medium: Laboratory Work Projects: LWP1 to LWP4
Advanced: Homework
gAGE/UPC 89
Research group of Astronomy & Geomatics
89
@ J. Sanz & J.M. Juan
1.- Using the file RO.obs, select the measurements with negative elevations for GPS
satellite PRN02, the LEO #4 and antenna #1, and generate the input file
[p(n),L1-L2(n)] for program “abel.perl”
- Selecting: CODE=l241 and PRN=02 and negative elevations (ocult)
grep l241 RO.obs|gawk '{if ($5==02 && $6<0) print $0}'> ro.tmp
- Generating the input file
gawk '{printf "%9.5f %7.5f \n",$7*cos($6*3.14/180),$15}' ro.tmp > abl.tmp
- Sort the file by impact parameter:
sort –nr –k+1 abl.tmp > abl.dat
2. Calculate the height where a signal with frequency f=4 MHz will be reflected,
according to the previous plot of Ne profile.
Answer:
Ne ( f / 8.98) 2 (4 106 / 8.98) 2 1.98 1011 150 km
A simple procedure will be given to depict the phase excess rate due to
the troposphere and ionosphere over L1, L2 and LC measurements.
L1 U * cdtrec
sat
B1 ; U * U T D1 I a
G P
a
U Bending
U
being U the Euclidean distance between GPS and LEO
Ref.
and B a constant bias along continuous phase arc LEO
'U * 'L j Note: LEO and GPS orbits are known at the level
DD DD of few cm (~5cm), thus the Euclidean range can be
't 't calculated accurately and, thus, the range rate 'U
't
DD C DD z0 Carrier Excess
't 't 't 't Rate
That is:
'U occult
*
'L j 'cdtrec
sat ½
; j 1, 2 °
° 'U occult 'U occult 'L j
* :
't 't 't 'LC
¾ ; j 1, 2
'U occult
:
'LC 'cdtrecsat
° 't 't 't 't
°¿
't 't 't
Notice that the Euclidian range rate is not needed to subtract as in the previous case,
because it is cancelled when taking the difference between L1 (or L2) and Lc. Other delays
can also be cancelled...
In the following exercises, we will plot the previous combinations and discuss the
different contribution of the ionosphere and troposphere to the phase excess rate.
GPS
No bending
The results are computed for the RO between GPS PRN02 a
G P
Ref.
The aim of this exercise is to analyse the phase excess rate LEO
Note: the results are provided for the occultation associate to PRN=02 and
“CODE=l241”, that corresponds to LEO=4 and Antenna 1.
This is hard code in the program, but can be changed, as well.
graph.py -f bending.dat -x'($14-$11)' -y4 --xn -0.1 --xx 0.3 --xl "m_Lc/s"
--yl "p (km)" -t"DDdLc-DDdRho: COSMIC #4 Antenna #1, PRN02"
D
GP
a
N 'U occult
( v GPS v LEO ) IJ
DGPS LEO 't
PSW
VvLEO
NGP
GPS TGPS LLEO
EO 'U occult
*
: TLEO W
rLEO
O 'f v GPS k GPS IJ Y LEO N LEO IJ
nGPS rGPS sin(D GPS TGPS ) nLEO rLEO sin(D LEO T LEO ) a The Bending Angle D ( a ) can be derived
iteratively from this equations system (see, [R-7])
D D GPS D LEO
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 106
LWP2: Atmospheric Bending in RO
Comments:
From phase excess rate measurements the bending angle can be estimated.
From the bending angle, the variations of the refractivity can be computed, and
from these one can then derive atmospheric quantities such as Pressure,
Temperature and the partial pressure of water vapor, and electron density, among
others.
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 107
1 n 1
Pˆ (k ) P(k ) P(k 1) L(k ) L(k 1) Carrier Phase L (ambiguous but precise)
n n
L(k ) P L ( k )
where 1 n 1 1
PL (k )
n
P (k ) L(k )
n
PL ( k 1)
n
¦ P (k ) L(k )
U (k ) I1 (k ) 2 I1 I (k )
(k ) 1 Pˆ1 U I1 biasI X1
biasI
where X1 is the noise term after
where, being the ambiguity term B1 a constant bias, thence
smoothing
B1 B1 , and cancels in the previous expression
• Let assume a simple model where the STEC vary linearly with time:
where W is the Hatch filter smoothing time constant (i.e.,W N in previous eq.).
Exercise:
Proof the previous statement.
Solution:
Let be f (t ) { I (t ) and y (t ) { I (t )
. The averaging in the Hatch filter can be implemented as:
W 'T 'T y (t 'T ) y (t ) 1 1 1 1
y (t 'T ) y (t ) f (t 'T ) y (t ) f (t 'T ) o y ' y f (t )
W W 'T W W 'T o 0
W W
Thence:
I1 (t ) I10 I1c t I1 (t )
I1 (t ) W I1c 1 e t /W biasI
2 I1 (t )
I1 (t )
t of
o 2W I1c
ÎIFree smoothed code is not affected by either spatial or temporal gradients, f12 L1 f12 L2
LC
but is 3-times noisier than the DFree, or the in the Single Freq. smoothed code. f12 f 22
[Id YY Doy sec GPS PRN el Az N. list C1C L1C C1P L1P C2P L2P]
a) Generate the “meas” file for PRN03: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ]
D 1.545 ; J
L1DFree L1 2D ( L1 L2 ) U I1 B ] f12 f 22 J 1
¨ ¸
© 60 ¹
CIFree { PC ; LIFree { LC J ¨ ¸
J 1 J 1 © 60 ¹
C1 C1 C1
STEC
Its effect on code and carrier is equal but with opposed sign: I1carr I1code
Note:
The first equation cancels all non-frequency dependent effects (geometric range, clocks, troposphere…)
The second equation cancels all effects that depends of inverse squared frequency (1st-order: ionosphere and
instrumental delays).
The last equation is to normalize the coefficients giving the combination in delay units at frequencyf i .
Thence, the combination is: LI2 { 6.287 L1 34.084 L2 27.797 L5 (in delay units at f1 frequency).
On the other hand, assuming the carriers Li uncorrelated and with the same V L , the noise
associated to this combination is given by: V LI2 44.4V L
1
Note: As I 2code I 2carr , the combination of codes is given by:
2
PI2 { 3.144C1 17.042C2 13.899C5 ; V PI2 22.2V C
1. Using the configuration file meas.cfg, READ the RINEX and generate the MEAS file with content:
[MEAS YY Doy sec GPS PRN el Az N. list C1C L1C C1P L1P C2C L2C C2P L2P C5X L5X ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
[*] Note, although the elevation is not needed for this exercise (and thence the broadcast orbit file
l5dt1260.09n, it is computed because it will be useful for a further study).
Discussion:
1. What is the order of magnitude of the second
order ionospheric effect?
2. Is the pattern seen in the figure due to the
2nd order ionospheric effect or it is related to
other phenomena?
Hint:
Add the elevation in the previous plot and explore
if the pattern could be related to the antenna
phase centers of the different signals.
Note:
The figure is shifted (by 5133m) to align
with the x-axis.
This bias is due to the carrier ambiguity
(see HW1).
1.- Using previous file l5dt.meas, generate a file content: [sec LI2corr elev]
1 2 3
OVERVIEW
Introduction
The gLAB tool suite
Examples of GNSS processing using gLAB
Laboratory session organization
LABORATORY Session
Starting up your laptop
Basic: Introductory lab exercises: Iono & Posit, SF, storm,TIDs
Medium: Laboratory Work Projects: LWP1 to LWP4
¾ Advanced: Homework
Different complementary
questions (theoretical and
experimental) related to the
LW4 are asked in this
homework section.
The assessment will be based
The aim is to analyze in depth in actual GPS measurements
the combinations of three at frequencies L1, L2 and L5,
frequency signals. as well as Galileo at E1, E5
and E5b frequencies
' kUP
k
U APC correction term
Note:gAGE/UPC
the satellite APC is not considered as the deviation angle @ J. Sanz & J.M. Juan 132
from the direction pointing to the Earth centre is less than 14º.
Research group of Astronomy & Geomatics
Technical University of Catalonia
HW1: APC effect on the LI2 combination.
The APC of L5 signal, together with the carrier ambiguity (bias), can be estimated from
carrier measurements along a continuous data arch (for the three carriers) as follows:
¦D L
k
k k ' kUP sin H bias
y (t )
y A
Applying the values a1 6.287, a2 34.084, a3 27.797, '1UP 0.09002, ' 2UP 0.11989
to previous equation, it follows:
6.287 L1 (t ) 34.084 L2 (t ) 27.797 L5 (t ) 43.505sin H (t ) bias > 27.797 sin H (t ) @ ' 5UP
y (t )
y A
Using the L1, L2, L5 values of file l5dt1260.09o in the time interval 30000<t <49000 sec.
(see details in the notepad).
1.- Using previous file l5dt.meas, generate a file content: [sec LI2corr elev]
1 2 3
This HP2 is an extension of previous LWP2 and it is devoted to analysing the three
different combinations of three frequency signals (see [R-1]):
The target is to analyze the suitability (or not) of such combinations to provide:
• [LC2, PC2]: A measurement free from 1st and 2nd order ionospheric effects.
• [LI1, PI1]: A direct measurement of the 1st order ionosphere (free from 2nd order).
• [LI2, PI2]: A direct measurement of the 2nd order ionospheric effect.
The last case, i.e. LI2, PI2, has been already studied in the previous LWP2 for the
GPS signals L1,L2,L5. This study will be extended here to the Galileo signals.
Li U I1i I 2i
f / fj
2
°° with J ij
U J ij I1i J ij 3/2 I 2i
i
®Lj
°
°̄ Lk U J ik I1i J ij 3/2 I 2i
being LC2 l U ; LI1 l I1i ; LI2 l I 2i . The carriers Li are assumed uncorrelated and with the same V L
Hint:
Let y A x the previous equations system, where y [ Li , L j , Lk ] , x [ U , I1i , I 2i ] and A is the
T T
associated matrix, evaluated at the given frequencies. Thence, the coefficients of [LC2, LI1, LI2]
are given by A -1 . The sigmas are the square-root of diagonal elements of matrix ( AT A )-1 .
The same question for GPS codes (C1, C2, C5). Show that:
The same question for Galileo carriers (E1, E7, E8) and codes (C1, C7, C8). Show that:
Note:
f1 { f E1 154 f 0 , f 7 { f E 5b 118 f 0 , f8 { f E 5 116.5 f 0 .
J ij Li Lj J ij2 1
LC[ij ] V LC [ij ] VL
J ij 1 J ij 1
1. Using the configuration file meas.cfg, READ the RINEX and generate the MEAS message
with content:
[MEAS YY Doy sec GAL PRN el Az N. list C1B L1B C1C L1C C7Q L7Q C8Q L8Q]
Execute: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
2. From gien327.09.meas file, generate a file with the following content: [sec PC-LC PC2-LC2]
(select the Galileo satellite PRN16, as well): 1 2 3
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 144
HW2: Combinations of three-frequency measur.
Resolution:
1. Using the configuration file meas.cfg, READ the RINEX and generate the MEAS file with content:
[MEAS YY Doy sec GPS PRN el Az N. list C1C L1C C1P L1P C2C L2C C2P L2P C5X L5X ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Note:
The theoretical noise values found are:
V PC [12] 2.98V C ; V PC2[125] 33.7V C
2. Using files gien327sw.09o and orb15591.sp3, make a plot to compare the code
noise of the geometry-free combination of Galileo signals [E1,E7] and the
geometry-free and first-order ionosphere-free combination of signals [E1,E7,E8].
3. The same questions using files l5dt1260.09o, l5dt1260.09n for the GPS
signals L1, L2, L5.
PI[ij ] Pj Pi V PI [ ij ] 2V P V PI 2V C V PI [12 ]
2V C
[17 ]
Codes Carriers
Codes Carriers
2. The same question for GPS carrier phase measurements [L1,L2,L5]. Use the
files l5dt1260.09o, l5dt1260.09n (and satellite PRN01).
Carriers
Carriiers Carriers
Carrie
ers
Hint:
Consider the next expression where a single thin ionospheric layer approximation has been taken for
the second term: 7257c sat 7427cB0 cos T
3 ³rec
I 2 L1 N e B cos T ds STEC
2 f1 2 f13
Where c is the light speed, B is the module of the earth magnetic field and o is the angle between B
and the propagation direction. Units are in the International System (SI).
5
The value B0 4 10 Tesla can be taken for magnetic field module at the pierce point of the satellite-
receiver ray with the ionospheric layer, the Ionospheric Pierce Point (IPP), (assumed at about 400 km in
height).
Note: f1 1575.420 106 Hz; c 2.99792458 108 m / s, 1 TECU 1016 e / m 2
Assuming that the STEC can be estimated from smoothed code PI, after
removing the DCBs [1], with an accuracy better than 5 TECUs, and assuming
a negligible error in the magnetic field B value [2], show that the second
order I2 effect can be calculated from the expression given in previous
question 1 with an error less than 1 millimetre of delay in the L1 carrier.
Note:
[1] The DCBs can be obtained from the IONEX files available at the IGS site
ftp://cddis.gsfc.nasa.gov/gps/products/ionex/
[2] The subroutines International Geomagnetic Reference Field (IGRF) could be used as well to
compute the magnetic field.
Question 3:
Taking into account the previous results of HW2 and HW3, and thinking of
high accuracy geodetic positioning, discuss what is more suitable to remove
this effect on the (first-order) ionosphere-free combination LC: To use a
model or to remove this effect from a linear combination of three frequency
signals?
Question 4:
The previous expressions give the I2 effect in L1 delay units. Show the
following relation between the I2 delay in the L1 carrier and in the (first order)
ionosphere-free combination LC[12] : I 2 LC J 12
I 2 L1
1 J 12
f / fj
[12 ]
2
J ij i
Acknowledgements
The ESA/UPC GNSS-Lab Tool suite (gLAB) has been developed under the ESA
Education Office contract N. P1081434.
The other data files used in this study were acquired as part of NASA's Earth Science
Data Systems and archived and distributed by the Crustal Dynamics Data Information
System (CDDIS). To the NSPO/UCAR Agency for the FORMOSAT-3/COSMIC data.
To Adrià Rovira-Garcia for his contribution to the editing of this material and gLAB
updating and integrating this learning material into the GLUE.
Slides associated to
gLAB version 2.0.0
Authorship statement
The authorship of this material and the Intellectual Property Rights are owned by
J. Sanz Subirana and J.M. Juan Zornoza.
This authorship statement must be kept intact and unchanged at all times.
5 March 2017
This study includes ambiguity fixing with the LAMBDA method and the analysis of
different effects such as the geometry diversity and atmospheric propagation errors
(troposphere and ionosphere).
OVERVIEW
Introduction: gLAB processing in command line
Preliminary computations: data files & reference values
Session A: Differential positioning of IND2-IND3 receivers
(baseline: 18 metres)
A “notepad”
with the
command
line sentence
is provided to
facilitate the
sentence
writing: just
“copy” and
“ paste”
Console to execute
from
“command line” notepad to
sentences the working
terminal.
gLAB_linux -messages
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 7
OVERVIEW
Introduction: gLAB processing in command line
¾ Preliminary computations: data files & reference values
Session A: Differential positioning of IND2-IND3 receivers
(baseline: 18 metres)
Preliminary Computations
P. Preliminary computations
This section is devoted to computing the reference values (receivers coordinates)
and to preparing the data files to be used in the exercises.
These data files will include the code and carrier measurements and the model
components: geometric range, nominal troposphere and ionosphere corrections,
satellite elevation and azimuth from each receiver…
This data processing will be done with gLAB for each individual receiver.
This preliminary processing will provide the baseline data files to perform
computations easily using basic tools (such as awk for data files handling, to
compute Double Differences of measurements) or using octave (MATLAB) scripts
for the LAMBDA method implementation.
Detailed guidelines for self learning students are provided in this tutorial and in
its associated notepad text file.
• Computation example:
gLAB_linux -input:cfg gLAB_2files_APC.cfg -input:obs PLAN0540.13O
-input:orb igs17286.sp3 -input:clk igs17286.clk -input:ant igs08_1719.atx
P. Preliminary computations
Toulouse
GARR
INDx
PLAN
Barcelona
IND1
P. Preliminary computations
P.1. Computation of reference values of receiver coordinates
Plotting results:
more sta.pos
Question:
What is the expected accuracy of
the computed coordinates?
• Computation example:
octave Results:
P. Preliminary computations
P.2. Model Components computation
• The script "ObsFile.scr" generates a data file with the following content
1 2 3 4 5 6 7 8 9 10 11 12 13
[sta sat DoY sec P1 L1 P2 L2 Rho Trop Ion elev azim]
P. Preliminary computations
Selecting measurements: Time interval [14500:16500]
• Select the satellites with elevation over 10º in the time interval [14500:16500]
cat ObsFile.dat|gawk '{if ($4>=14500 && $4<=16500 && $12>10) print $0}' >
obs.dat
Confirm that the satellite PRN06 is the satellite with the highest elevation
(this satellite will be used as the reference satellite)
obs.dat Î
1 2 3 4 5 6 7 8 9 10 11 12 13
[sta sat DoY sec P1 L1 P2 L2 Rho Trop Ion elev azim]
Session A
Differential positioning of
IND2- IND3 receivers
(baseline: 18 metres)
Where the elevation (EL) and azimuth (AZ) are taken from station #2.
and where (EL1, AZ1) are for satellite #1 and (EL1, AZ1) are for satellite #2.
IND3-IND2
ans= 10.5337 -9.7056 -11.5180 (XYZ)
gAGE/UPC
Research group of Astronomy & Geomatics
Technical University of Catalonia
Backup @ J. Sanz & J.M. Juan 27
A.2.1 Estimate the baseline vector between IND2 and IND3 receivers
using the code measurements of file (DD_IND2_IND3_06_ALL.dat).
Note: Use the entire file (i.e. time interval [14500:16500]).
[DDP1]=[Los_k - Los_06]*[baseline]
Notation
r { Baseline vector
ª ρˆ 3 ρˆ 6 T º
ª DDP163 º « »
« 67 » « ˆ7 ˆ6 » DDP1 k j { DDP1(involving satellites j and k )
« ρ ρ » r
T
« DDP1 »
« » « » ρˆ k { Line-Of-Sight unit vector to satelite k
« 630 » « »
«¬ DDP1 »¼ « ρˆ 30 ρˆ 6 » ρˆ { >cos( Elk )sin( Azk ), cos( Elk ) cos( Azk ), sin( Elk )@
T k
¬ ¼
gAGE/UPC A.2.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 28
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (using with all epochs)
A.2. IND2-IND3 Baseline vector estimation with P1 code
(using the time-tagged reference station measurements)
A.2.1 Estimate the baseline vector between IND2 and IND3 receivers
using the code measurements of file (DD_IND2_IND3_06_ALL.dat).
Note: Use the entire file (i.e. time interval [14500:16500]).
[DDP1]=[Los_k - Los_06]*[baseline]
gAGE/UPC A.2.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 29
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (using with all epochs)
A.2.1 Estimate the baseline vector between IND2 and IND3 receivers
using the code measurements of file (DD_IND2_IND3_06_ALL.dat).
Note: Use the entire file (i.e. time interval [14500:16500]).
[DDP1]=[Los_k-Los_06]*[baseline]
PRN06 (ref) PRN j
ª ρˆ 3 ρˆ 6 T º
ª DDP163 º « »
« 67 » « ˆ7 ˆ6 »
« ρ ρ » r
T
« DDP1 »
« » « » ρ̂ 6 ρˆ j
« 630 » « »
«¬ DDP1 »¼ « ρˆ ρˆ »
30 6 T r
¬ ¼
ρˆ j { ª¬cos( El j )sin( Az j ), cos( El j ) cos( Az j ), sin( El j ) º¼
IND2 (ref) IND3 (user)
gAGE/UPC A.2.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 30
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (using with all epochs)
A.2. IND2-IND3 Baseline vector estimation with P1 code
(using the time-tagged reference station measurements)
Justify that the next sentence builds the navigation equations system
See file content
in slide #21
[DDP1]=[Los_k - Los_06]*[baseline]
ª ρˆ 3 ρˆ 6 T º
ª DDP º 1
63
« » [DDP1] [ Los_k - Los_06]
« » « ˆ7 ˆ6 »
« ρ ρ » r
67 T ------ --------------------
« DDP » 1
-3.3762 0.3398 -0.1028 0.0714
« » « »
« -7.1131 0.1725 0.5972 0.0691
630 » « »
«¬ DDP1 »¼ « ρˆ 30 ρˆ 6 T » 4.3881 -0.6374 0.0227 0.2725
¬ ¼
gAGE/UPC ρˆ k { > cos( Elk )sin( Azk ), cos( Elk ) cos( Azk ), sin( Elk ) @ @ J. Sanz & J.M. Juan 31
Research group of Astronomy & Geomatics
Technical University of Catalonia
The receiver was not moving (static) during the data collection.
Thence, we can merge all the epochs in a single system to compute the static
LS solution: T
ª ρˆ 3 (t ) ρˆ 6 (t ) º
« 1 1
»
ª DDP16,3 (t1 ) º « T »
« ρˆ (t1 ) ρˆ (t1 ) »
7 6
« 6,7 »
« DDP1 (t1 ) » « »
« » « »
« 6,30
» « ρˆ 30 (t ) ρˆ 6 (t ) T »
« DDP1 (t1 ) » « 1 1
»
« » « » r
« » « »
y=Gx
« DDP16,3 (tn ) » « ρˆ 3 (tn ) ρˆ 6 (tn ) »
T
« » « »
6,7
« DDP1 (tn ) » Least Squares Solution
« ρˆ 7 (t ) ρˆ 6 (t ) T »
« » « n n
»
« 6,30
» « » x = (G TG)-1 G T y
«¬ DDP1 (tn ) »¼ « »
« ρˆ 30 (tn ) ρˆ 6 (tn ) »
T
¬ ¼ P = (G TG)-1
octave
gAGE/UPC A.2.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 33
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (using all epochs)
A.2.2. Repeat the previous computation, but using just the two
epochs: t1=14500 and t2=14515.
• Selecting the two epochs:
cat DD_IND2_IND3_06_ALL.dat|gawk '{if ($6==14500||$6==14515) print $0}‘ >tmp.dat
gAGE/UPC A.2.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 34
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (using all epochs)
A.2. IND2-IND3 Baseline vector estimation with P1 code
(using the time-tagged reference station measurements)
load M.dat
bsl_enu =[-10.1017 -15.3551 -0.0008]
y=M(:,1);
G=M(:,2:4);
x(1:3)-bsl_enu'
-0.850763748698302
x=inv(G'*G)*G'*y
0.618803236835673
x(1:3)'
-1.777167174810606
-10.9525 -14.7363 -1.7780
Questions:
1.- What is the level of accuracy?
2.- Why does the solution degrade when taking only two epochs?
gAGE/UPC A.2.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 35
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (using with all epochs)
A.3.1 Estimate the baseline vector between IND2 and IND3 receivers using the
L1 carrier measurements of file (DD_IND2_IND3_06_ALL.dat).
Consider only the two epochs used in the previous exercise: t1=14500 and t2=14515
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 36
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.3. IND2-IND3 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
A.3.1 Estimate the baseline vector between IND2 and IND3 receivers using the
L1 carrier measurements of file (DD_IND2_IND3_06_ALL.dat).
« » « «0 1 « »
« DDL » « ˆ
ρ
6,7
ˆ
ρ » 7 6 T
0 »» « O1 DDN » 6,7
Where the vector of
1 »r « 1
« » « » « »« » unknowns x includes
« 6,30 » « » « »« » the user coordinates
¬« DDL1 ¼» « ρˆ ρˆ »
30 6 T ¬0 0 0 1 ¼ ¬« O1 DDN16,30 ¼»
¬ ¼ and ambiguities
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 37
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
The receiver was not moving (static) during the data collection.
Therefore, for each epoch we have the equations system:
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL (t1 ) º
6,3
1 « 1 1
» ª1 0 0 º ª O1 DDN16,3 º
« » « « »
« ˆ7 0 »» « O1 DDN16,7 »
T »
« ρ (t1 ) ρˆ (t1 ) » r « y1 = G1 x
6,7
« DDL (t1 ) »
1
6
0 1
« » « » « »« »
« » « » « »« 6,30 »
6,30
«¬ DDL1 (t1 ) »¼ « ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0 1 ¼ «¬ O1 DDN1 »¼ y1:=y[t1]
¬ 1 1 ¼
G1:=G[t1]
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL (t2 ) º
6,3
1 « 2 2
» ª1 0 0 º ª O1 DDN16,3 º
« » « »
6,7
« DDL (t2 ) »
1
« ˆ7 T »
« ρ (t2 ) ρˆ (t2 ) » r «
6 «0 1 0 »» « O1 DDN16,7 » y2 = G2 x
« » « » « »« »
« » « » « »« »
6,30
«¬ DDL1 (t2 ) »¼ « ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0 1 ¼ «¬ O1 DDN16,30 »¼ y2:=y[t2]
¬ 2 2 ¼
G2:=G[t2]
gAGE/UPC
[DDL1]=[Los_k - Los_06]*[baseline] + [ A ]*[lambda1*DDN1] @ J. Sanz & J.M. Juan 38
Research group of Astronomy & Geomatics
Technical University of Catalonia
A.3. IND2-IND3 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
b) Given the measurement vectors (y) and Geometry matrices (G) for two epochs
y1:=y[t1] ; G1:=G[t1] ; Py
y2:=y[t2] ; G2:=G[t2] ; Py
show that the user solution and covariance matrix can be computed as:
P=inv(G1'*W*G1+G2'*W*G2);
y = G x; W = Py-1 where: W=inv(Py)
x=P*(G1'*W*y1+G2'*W*y2) ;
T -1 T
x = (G WG) G Wy
(G T WG)-1
P = gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 39
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
for the two epochs required t1=14500 and t2=14515, using the input
file DD_IND2_IND3_06_ALL.dat generated before.
Execute:
MakeL1BslMat.scr DD_IND2_IND3_06_ALL.dat 14500 14515
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 40
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.3. IND2-IND3 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
octave
P=inv(G1'*W*G1+G2'*W*G2);
load M1.dat x=P*(G1'*W*y1+G2'*W*y2);
load M2.dat
x(1:3)'
y1=M1(:,1);
-8.9463 -15.9102 -0.78636
G1=M1(:,2:11);
y2=M2(:,1); bsl_enu =[-10.1017 -15.3551 -0.0008]
G2=M2(:,2:11);
Py=(diag(ones(1,7))+ones(7))*2e-4; x(1:3)'-bsl_enu
W=inv(Py); ans= 1.1554 -0.555 -0.78556
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 41
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
Rounding directly the floated solution Rounding the decorrelated floated solution
round(a)' afix=iZ*round(az);
-10 21 -4 -11 -4 5 -3 -8 20 -9 -8 -10 0 -8
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 42
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.3. IND2-IND3 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
3. Repair the DDL1 carrier measurements with the DDN1 FIXED ambiguities
and plot results to analyze the data.
octave
amb=lambda1*afixed(:,1);
save ambL1.dat amb
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 43
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
a) Generate a file with the satellite PRN number and the ambiguities:
cat DD_IND2_IND3_06_ALL.dat|
gawk 'BEGIN{for (i=1;i<1000;i++) {getline <"sat.ambL1";A[$1]=$3}}
{printf "%s %02i %02i %s %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f
%14.4f %14.4f %14.4f %14.4f %14.4f %14.4f \n",
$1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,A[$4]}' >
DD_IND2_IND3_06_ALL.fixL1
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 44
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.3. IND2-IND3 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 45
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
graph.py -f DD_IND2_IND3_06_ALL.fixL1
-x6 -y'($8-$18-$11)'
-so --yn -0.06 --yx 0.06
-l "(DDL1-O
DDN1)-DDrho"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 46
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.3. IND2-IND3 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
graph.py -f DD_IND2_IND3_06_ALL.fixL1
-x6 -y'($8-$11)'
-so --yn -5 --yx 5
-l "DDL1-DDrho"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 47
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
graph.py -f DD_IND2_IND3_06_ALL.fixL1
-x6 -y'($8-$18)'
-so --yn -20 --yx 20
-l "(DDL1-O
DDN1)"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 48
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.3. IND2-IND3 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
[DDL1-lambda1*DDN1]=[Los_k - Los_06]*[baseline]
Note: it is the same system as with the code DDP1, but using
“DDL1-lambda1*DDN1” instead of “DDP1”
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 49
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
octave
gAGE/UPC A.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 50
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.3. IND2-IND3 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
A.3.2. Using the DDL1 carrier with the ambiguities FIXED, compute the LS single
epoch solution for the whole interval 145000< t <165000 with the program LS.f
Note: The program LS.f computes the Least Square solution for each
measurement epoch of the input file (see the FORTRAN code LS.f)
where:
Time= seconds of day
DDL1-lambda1*DDN1= Prefit residulas (i.e., "y" values in program LS.f)
Los_k-Los_06 = The three components of the geometry matrix
(i.e., matrix "a" in program LS.f)
gAGE/UPC A.3.2. Baseline vector estimation with @ J. Sanz & J.M. Juan 51
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
gAGE/UPC A.3.2. Baseline vector estimation with @ J. Sanz & J.M. Juan 52
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
A.3. IND2-IND3 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
Note:
bsl_enu =[-10.1017 -15.3551 -0.0008]
gAGE/UPC A.3.2. Baseline vector estimation with @ J. Sanz & J.M. Juan 53
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
Baseline
estimation error
after fixing
ambiguities
gAGE/UPC A.3.2. Baseline vector estimation with @ J. Sanz & J.M. Juan 54
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
A.3. IND2-IND3 Baseline vector estimation
(using the time-tagged reference station measurements)
A.3.3. Repeat previous computations, but using the Unsmoothed code P1.
i.e., compute the LS single epoch solution for the whole interval
145000< t <165000 with the program LS.f
The same procedure as in previous case can be applied, but using the code
DDP1 instead of the carrier “DDL1-lambda1*DDN1”
a) generate a file with the following content;
where:
Time= seconds of day
DDP1= Prefit residulas (i.e., "y" values in program lms1)
Los_k-Los_06 = The three components of the geometry matrix
(i.e., matrix "a" in program LS.f)
gAGE/UPC A.3.3. Baseline vector estimation with @ J. Sanz & J.M. Juan 55
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (single epoch LS, whole interval)
gAGE/UPC A.3.3. Baseline vector estimation with @ J. Sanz & J.M. Juan 56
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (single epoch LS, whole interval)
A.3. IND2-IND3 Baseline vector estimation
(using the time-tagged reference station measurements)
Baseline
estimation error
with the
unsmoothed
code
Questions:
1.- Discuss the results by
comparing them with
the previous ones with
DDL1 carrier.
2.- Discuss the pattern
seen in the plot.
gAGE/UPC A.3.3. Baseline vector estimation with @ J. Sanz & J.M. Juan 57
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (single epoch LS, whole interval)
Repeat the previous computations A.3., but using two epochs more
distant in time : t1=14500 and t2=14600 (instead of t2=14515).
Execute:
MakeL1BslMat.scr DD_IND2_IND3_06_ALL.dat 14500 14600
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
load M1.dat
load M2.dat
bsl_enu =[-10.1017 -15.3551 -0.0008]
y1=M1(:,1);
G1=M1(:,2:11); x(1:3)-bsl_enu'
0.3316932664829917
y2=M2(:,1);
G2=M2(:,2:11); 0.1688471989256399
-0.0813273504816880
W=inv(diag(ones(1,7))+ones(7))*2*1e-4;
P=inv(G1'*W*G1+G2'*W*G2);
x=P*(G1'*W*y1+G2'*W*y2);
10.9525 -14.7363 -1.7780
Rounding directly the floated solution Rounding the decorrelated floated solution
round(a)' afix=iZ*round(az);
-8 19 -8 -9 -8 0 -9 -8 20 -9 -8 -10 0 -8
Optional:
Repeat the computation taking t1=14500 and t2=15000
Questions:
1.- Has the accuracy improved?
2.- Are the ambiguities well fixed?
3.- Has the reliability improved? Why?
[DDP1-DDRho]=[Los_k - Los_06]*[dr]
Notation
dr rIND3 - r0, IND3
ª ρˆ 3 ρˆ 6 T º
ª DDP16,3 DD U 6,3 º « » DDP1 k j { DDP1(involving satellites j and k )
« 6,7 » « ˆ7 ˆ6 T »
« DDP1 DD U » « ρ ρ » dr
6,7
ρˆ k { Line-Of-Sight unit vector to satelite k
« » « »
« 6,30 » « »
«¬ DDP1 DD U »¼
6,30
« ρˆ ρˆ »
30 6 T
ρˆ k { > cos( Elk )sin( Azk ) cos( Elk ) cos( Azk ) sin( Elk ) @
¬ ¼
[DDP1-DDRho]=[Los_k - Los_06]*[dr]
ª ρˆ 3 ρˆ 6 T º
DDP1 k j DD U k j D P1,kusrj Uusr k j
D P1,krefj Urefk j
ª DDP DD U º
6,3 6,3
« »
1
« 6,7 » « ˆ7 ˆ6 T » ª P1,jusr Uusrj P1,kusr Uusr º ª P1,jref Urefj P1,kref Urefk º
« » dr
k
« DDP DD U » ¬ ¼ ¬ ¼
6,7
1 ρ ρ
« » « »
« 6,30 » « » Computed corrections
«¬ DDP1 DD U »¼
6,30
« ρˆ 30 ρˆ 6 T »
¬ ¼ PRC1 { P1,ref U ref broadcast by the
j j j
reference station.
ª ρˆ 3 ρˆ 6 T º
ª DDP DD U º1
6,3 6,3
« »
« 6,7 » « ˆ7 ˆ6 »
« ρ ρ » dr
T
« DDP DD U »
6,7
1
« » « »
« 6,30 » « » ρ̂ 6 ρˆ j
¬« DDP1 DD U ¼»
6,30
« ρˆ 30 ρˆ 6 T »
¬ ¼
dr rIND3 - r0,IND3
ρˆ j { ª¬cos( El j )sin( Az j ), cos( El j ) cos( Az j ), sin( El j ) º¼
IND2 (ref) IND3 (user)
Justify that the next sentence builds the navigation equations system
See file content
in slide #21
[DDP1-DDRho]=[Los_k - Los_06]*[dr]
ª ρˆ 3 ρˆ 6 T º
ª DDP DD U º
1
6,3 6,3
« » [DDP1-DDRho] [Los_k - Los_REF]
« 6,7 » « ˆ7 ˆ6 T »
« ρ ρ » dr
------ --------------------
« DDP DD U »
6,7
1
-3.3762 0.3398 -0.1028 0.0714
« » « »
« -7.1131 0.1725 0.5972 0.0691
6,30 » « »
¬« DDP1 DD U ¼»
6,30
« ρˆ 30 ρˆ 6 T » 4.3881 -0.6374 0.0227 0.2725
¬ ¼
gAGE/UPC ρˆ k { > cos( Elk )sin( Azk ) cos( Elk ) cos( Azk ) sin( Elk ) @ @ J. Sanz & J.M. Juan 67
Research group of Astronomy & Geomatics
Technical University of Catalonia
The receiver was not moving (static) during the data collection.
Therefore, we can merge all the epochs in a single system to compute the static
LS solution:
T
ª ρˆ 3 (t ) ρˆ 6 (t ) º
« 1 1
»
ª DDP16,3 (t1 ) DD U 6,3 (t1 ) º « T »
« ρˆ (t1 ) ρˆ (t1 ) »
7 6
« »
« DDP1 (t1 ) DD U (t1 ) »
6,7 6,7
« »
« » « »
« » « ρˆ 30 (t ) ρˆ 6 (t ) T »
« DDP1 (t1 ) DD U (t1 ) »
6,30 6,30
« 1 1
»
« » « » dr
« » « »
y=Gx
« DDP16,3 (tn ) DD U 6,3 (t1 ) » « ρˆ 3 (tn ) ρˆ 6 (tn ) »
T
« » « »
« DDP1 (tn ) DD U (t1 ) »
6,7 6,7
« ρˆ 7 (t ) ρˆ 6 (t ) T »
Least Squares Solution
« » « n n
»
« » « » x = (G TG)-1 G T y
«¬ DDP1 (tn ) DD U (t1 ) »¼
6,30 6,30
« »
« ρˆ 30 (tn ) ρˆ 6 (tn ) »
T
¬ ¼ P = (G TG)-1
Note: as we have used the true coordinates of IND3 as the ”a priori” to linerize the
model, the vector x provides the estimation error directly.
A.5.2. Repeat the previous computation, but using just the two
epochs: t1=14500 and t2=14515.
• Selecting the two epochs:
cat DD_IND2_IND3_06_ALL.dat|gawk '{if ($6==14500||$6==14515) print $0}‘ >tmp.dat
gAGE/UPC A.5.2. Estimate baseline vector with @ J. Sanz & J.M. Juan 70
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (using only two epochs)
A.5. IND2-IND3 differential positioning with P1 code
(using the computed differential corrections)
Questions:
What is the level of accuracy?
Why does the solution degrade when taking only two epochs?
gAGE/UPC A.6.1. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 72
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.6. IND2-IND3 differential positioning with L1 carrier
(using the computed differential corrections)
Notation
ª ρˆ 3 ρˆ 6 T º y=Gx
ª DDL DD U º
6,3
1
6,3
« » ª1 0 0 º ª O1 DDN º 1
6,3
« 6,7 » «0 1 « »
« ˆ7 ˆ6 » 0 »» « O1 DDN » Where the vector of
« ρ ρ » dr «
T
« DDL 1
6,7
DD U »
6,7
1
« » « » « »« »
« 6,30 » « » « »« » unknowns x includes
¬« DDL1 DD U ¼» 1 ¼ ¬« O1 DDN16,30 ¼» the user coordinates
6,30
« ρˆ ρˆ »
30 6 T ¬0 0 0
¬ ¼ and ambiguities
gAGE/UPC A.6.1. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 73
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
The receiver was not moving (static) during the data collection.
Thence, for each epoch we have the equations system:
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL16,3 (t1 ) DD U 6,3 (t1 ) º « 1 1
» ª1 0 0 º ª O1 DDN16,3 º
«
« DDL1 (t1 ) DD U (t1 ) »
6,7 6,7 » « ˆ7 6 T » «0 1
« ρ (t1 ) ρˆ (t1 ) » dr «
« »
0 »» « O1 DDN16 ,7 » y1 = G1 x
« » « » « »« »
« » « » « »« 6,30 »
¬« DDL1 (t1 ) DD U (t1 ) ¼» 1 ¼ ¬« O1 DDN1 ¼»
6,30 6,30
« ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0
y1:=y[t1]
¬ 1 1 ¼
G1:=G[t1]
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL16,3 (t2 ) DD U 6,3 (t2 ) º « 2 2
» ª1 0 0 º ª O1 DDN16,3 º
«
« DDL1 (t2 ) DD U (t2 ) »
«
6,7 6,7 »
»
« ˆ7
«
6 T »
»
«0 1
« ρ (t2 ) ρˆ (t2 ) » dr «
« »«
« »
0 »» « O1 DDN16 ,7 »
»
y2 = G2 x
« » « » « »« 6,30 »
¬« DDL1 (t2 ) DD U (t2 ) ¼» 1 ¼ ¬« O1 DDN1 ¼»
6,30 6,30
« ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0
¬ 2 2 ¼ y2:=y[t2]
G2:=G[t2]
gAGE/UPC
[DDL1-DDRho]=[Los_k - Los_06]*[dr] + [ A ]*[lambda1*DDN1] @ J. Sanz & J.M. Juan 74
Research group of Astronomy & Geomatics
Technical University of Catalonia
A.6. IND2-IND3 differential positioning with L1 carrier
(using the computed differential corrections)
b) Given the measurement vectors (y) and Geometry matrices (G) for two epochs
y1:=y[t1] ; G1:=G[t1] ; Py
y2:=y[t2] ; G2:=G[t2] ; Py
show that the user solution and covariance matrix can be computed as:
P=inv(G1'*W*G1+G2'*W*G2);
y = G x; W = Py-1 where: W=inv(Py)
x=P*(G1'*W*y1+G2'*W*y2) ;
T -1 T
x = (G WG) G Wy
(G T WG)-1
P = gAGE/UPC A.6.1. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 75
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
for the two epochs required t1=14500 and t2=14515, using the input
file DD_IND2_IND3_06_ALL.dat generated before.
Execute:
MakeL1DifMat.scr DD_IND2_IND3_06_ALL.dat 14500 14515
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC A.6.1. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 76
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.6. IND2-IND3 differential positioning with L1 carrier
(using the computed differential corrections)
gAGE/UPC A.6.1. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 77
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
Rounding directly the floated solution Rounding the decorrelated floated solution
round(a)' afix=iZ*round(az);
-10 20 -4 -10 -5 4 -4 -8 20 -9 -8 -10 0 -8
gAGE/UPC A.6.1. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 78
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.6. IND2-IND3 differential positioning with L1 carrier
(using the computed differential corrections)
Questions:
1. - Can the ambiguities be well fixed?
2. - Has the reliability improved? Why?
3. - The values found for the ambiguities are
the same than in the previous case?
gAGE/UPC A.6.1. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 79
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
3. Repair the DDL1 carrier measurements with the DDN1 FIXED ambiguities
and plot results to analyze the data.
octave
amb=lambda1*afixed(:,1);
save ambL1.dat amb
gAGE/UPC A.6.1. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 80
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.6. IND2-IND3 differential positioning with L1 carrier
(using the computed differential corrections)
a) Generate a file with the satellite PRN number and the ambiguities:
cat DD_IND2_IND3_06_ALL.dat|
gawk 'BEGIN{for (i=1;i<1000;i++) {getline <"sat.ambL1";A[$1]=$3}}
{printf "%s %02i %02i %s %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f
%14.4f %14.4f %14.4f %14.4f %14.4f %14.4f \n",
$1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,A[$4]}' >
DD_IND2_IND3_06_ALL.fixL1
gAGE/UPC A.6.1. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 81
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
[DDL1-DDRho-lambda1*DDN1]=[Los_k - Los_06]*[dr]
Note: this is the same system as with the code DDP1, but using
“DDL1-DDRho-lambda1*DDN1” instead of “DDP1”
gAGE/UPC A.6.1. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 82
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.6. IND2-IND3 differential positioning with L1 carrier
(using the computed differential corrections)
gAGE/UPC A.6.1. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 83
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
A.6.2. Using the DDL1 carrier with the ambiguities FIXED, compute the LS single
epoch solution for the whole interval 145000< t <165000 with the program LS.f
Note: The program "LS.f" computes the Least Square solution for each
measurement epoch of the input file (see the FORTRAN code "LS.f")
where:
Time= seconds of day
DDL1-DDRho-lambda1*DDN1= Prefit residulas (i.e., "y" values in program LS.f)
Los_k-Los_06 = The three components of the geometry matrix
(i.e., matrix "a" in program LS.f)
gAGE/UPC A.6.2. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 84
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
A.6. IND2-IND3 differential positioning with L1 carrier
(using the computed differential corrections)
gAGE/UPC A.6.2. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 85
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
gAGE/UPC A.6.2. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 86
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
A.6. IND2-IND3 differential positioning with L1 carrier
(using the computed differential corrections)
Differential
Positioning error
after fixing
ambiguities
Question:
compare this plot with
that obtained previously
when estimating the
baseline from the time-
tagged measurements.
Are the errors similar?
gAGE/UPC A.6.2. Estimate IND3 coordinates with @ J. Sanz & J.M. Juan 87
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
OVERVIEW
Introduction: gLAB processing in command line
Preliminary computations: data files & reference values
Session A: Differential positioning of IND2-IND3 receivers
(baseline: 18 metres)
¾ Session B: Differential positioning of IND1-IND2 receivers
(baseline: 7 metres, but synchronization errors)
Differential positioning of
IND1- IND2 receivers
(baseline 7 metres and
not synchronised receivers)
The same exercises as in previous session will be repeated here for IND1 and
IND2 receivers.
These receivers are located in the same environment as IND2 and IND3 and
the baseline is even shorter (7 metres, instead of 18 metres).
The main difference in the receiver clock offset: IND1
• The receivers IND2 and IND3 apply clock
steering and have a very short clock offset IND2
(just a tenth of nanoseconds), while the
receiver IND1 has a large clock offset drift,
accumulating up to 1 ms.
• The effect of the synchronization errors on
the two different implementations of IND3 90
90
differential positioning used in the previous
session is one of the targets of this IND1-IND2: 7.197 m
laboratory session. IND2-IND3: 18.380 m
Where the elevation (EL) and azimuth (AZ) are taken from station #2.
and where (EL1, AZ1) are for satellite #1 and (EL1, AZ1) are for satellite #2.
IND2-IND1
ans= 0.8313 -7.1216 -0.6223 (XYZ)
B.3.1 Estimate the baseline vector between IND1 and IND2 receivers using the
L1 carrier measurements of file (DD_IND1_IND2_06_ALL.dat).
Consider only the two epochs used in the previous exercise: t1=14500 and t2=14515
gAGE/UPC B.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 95
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.3.1 Estimate the baseline vector between IND1 and IND2 receivers using the
L1 carrier measurements of file (DD_IND1_IND2_06_ALL.dat).
Notation
ª ρˆ 3 ρˆ 6 T º y=Gx
ª DDL º 6,3
1 « » ª1 0 0 º ª O1 DDN º 1
6,3
« » «0 1 « »
« ˆ7 ˆ6 »
0 »» « O1 DDN »
T
« DDL »
6,7
1 « ρ ρ »r «
6,7
1 Where the vector of
« » « » « »« » unknowns x includes
« 6,30 » « » « »« » the user coordinates
¬« DDL1 ¼» « ρˆ ρˆ »
30 6 T ¬0 0 0 1 ¼ ¬« O1 DDN16,30 ¼»
¬ ¼ and ambiguities
gAGE/UPC B.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 96
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.3. IND1-IND2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
The receiver was not moving (static) during the data collection.
Therefore, for each epoch we have the equations system:
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL (t1 ) º
6,3
1 « 1 1
» ª1 0 0 º ª O1 DDN16,3 º
« » « « »
« ˆ7 0 »» « O1 DDN16,7 »
T »
« ρ (t1 ) ρˆ (t1 ) » r « y1 = G1 x
6,7
« DDL (t1 ) »
1
6
0 1
« » « » « »« »
« » « » « »« »
6,30
«¬ DDL1 (t1 ) »¼ « ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0 1 ¼ «¬ O1 DDN16,30 »¼ y1:=y[t1]
¬ 1 1 ¼
G1:=G[t1]
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL (t2 ) º
6,3
1 « 2 2
» ª1 0 0 º ª O1 DDN16,3 º
« » « »
6,7
« DDL (t2 ) »
1
« ˆ7 »
« ρ (t2 ) ρˆ (t2 ) » r «
6 T «0 1 0 »» « O1 DDN16,7 » y2 = G2 x
« » « » « »« »
« » « » « »« »
6,30
¬« DDL1 (t2 ) ¼» « ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0 1 ¼ ¬« O1 DDN16,30 ¼» y2:=y[t2]
¬ 2 2 ¼
G2:=G[t2]
gAGE/UPC
[DDL1]=[Los_k - Los_06]*[baseline] + [ A ]*[lambda1*DDN1] @ J. Sanz & J.M. Juan 97
Research group of Astronomy & Geomatics
Technical University of Catalonia
b) Given the measurement vectors (y) and Geometry matrices (G) for two epochs
y1:=y[t1] ; G1:=G[t1] ; Py
y2:=y[t2] ; G2:=G[t2] ; Py
show that the user solution and covariance matrix can be computed as:
P=inv(G1'*W*G1+G2'*W*G2);
y = G x; W = Py-1 where: W=inv(Py)
x=P*(G1'*W*y1+G2'*W*y2) ;
T -1 T
x = (G WG) G Wy
(G T WG)-1
P = gAGE/UPC B.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 98
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.3. IND1-IND2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
for the two epochs required t1=14500 and t2=14515, using the input
file DD_IND1_IND2_06_ALL.dat generated before.
Execute:
MakeL1BslMat.scr DD_IND1_IND2_06_ALL.dat 14500 14515
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC B.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 99
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
octave
P=inv(G1'*W*G1+G2'*W*G2);
load M1.dat x=P*(G1'*W*y1+G2'*W*y2);
load M2.dat
x(1:3)'
y1=M1(:,1);
-8.8883 -2.2187 2.4998
G1=M1(:,2:11);
bsl_enu =[-7.1482 -0.8359 0.0070]
y2=M2(:,1);
G2=M2(:,2:11); x(1:3)'-bsl_enu
Py=(diag(ones(1,7))+ones(7))*2e-4; ans= -1.7401 -1.3828 2.4928
W=inv(Py);
gAGE/UPC B.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 100
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.3. IND1-IND2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
Rounding directly the floated solution Rounding the decorrelated floated solution
round(a)' afix=iZ*round(az);
10 -11 13 -10 -8 7 10 7 -22 16 -18 -3 1 -8
gAGE/UPC B.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 101
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
Questions:
1. - Can the ambiguities be fixed?
2. - Give a possible explanation about why the
ambiguities cannot be fixed
gAGE/UPC B.3.1. Baseline vector estimation with @ J. Sanz & J.M. Juan 102
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.3. IND1-IND2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
gAGE/UPC B.3.2. Baseline vector estimation with @ J. Sanz & J.M. Juan 103
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using t=14500, 15530)
for the two epochs required t1=14500 and t2=15530, using the input
file DD_IND1_IND2_06_ALL.dat generated before.
Execute:
MakeL1BslMat.scr DD_IND1_IND2_06_ALL.dat 14500 15530
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC B.3.2. Baseline vector estimation with @ J. Sanz & J.M. Juan 104
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using t=14500, 15530)
B.3. IND1-IND2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
octave
P=inv(G1'*W*G1+G2'*W*G2);
load M1.dat x=P*(G1'*W*y1+G2'*W*y2);
load M2.dat
x(1:3)'
y1=M1(:,1);
-6.78678 -0.7794 -0.2434
G1=M1(:,2:11);
bsl_enu =[-7.1482 -0.8359 0.0070]
y2=M2(:,1);
G2=M2(:,2:11); x(1:3)'-bsl_enu
Py=(diag(ones(1,7))+ones(7))*2e-4; ans= 0.3614 0.0565 -0.2504
W=inv(Py);
gAGE/UPC B.3.2. Baseline vector estimation with @ J. Sanz & J.M. Juan 105
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using t=14500, 15530)
Rounding directly the floated solution Rounding the decorrelated floated solution
round(a)' afix=iZ*round(az);
8 -17 24 -12 9 10 9 8 -17 24 -12 9 10 8
gAGE/UPC B.3.2. Baseline vector estimation with @ J. Sanz & J.M. Juan 106
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using t=14500, 15530)
B.3. IND1-IND2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
Questions:
1. - Can the ambiguities be fixed?
2. - Give a possible explanation about why the
ambiguities cannot be fixed
gAGE/UPC B.3.2. Baseline vector estimation with @ J. Sanz & J.M. Juan 107
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using t=14500, 15530)
gAGE/UPC B.3.3. Baseline vector estimation with @ J. Sanz & J.M. Juan 108
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using t=14500, 15000)
B.3. IND1-IND2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
for the two epochs required t1=14500 and t2=15000, using the input
file DD_IND1_IND2_06_ALL.dat generated before.
Execute:
MakeL1BslMat.scr DD_IND1_IND2_06_ALL.dat 14500 15000
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC B.3.3. Baseline vector estimation with @ J. Sanz & J.M. Juan 109
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using t=14500, 15000)
octave
P=inv(G1'*W*G1+G2'*W*G2);
load M1.dat x=P*(G1'*W*y1+G2'*W*y2);
load M2.dat
x(1:3)'
y1=M1(:,1);
-6.7640 -0.7441 -0.2256
G1=M1(:,2:11);
y2=M2(:,1); bsl_enu =[-7.1482 -0.8359 0.0070]
G2=M2(:,2:11);
Py=(diag(ones(1,7))+ones(7))*2e-4; x(1:3)'-bsl_enu
W=inv(Py); ans= 0.3842 0.0918 -0.2326
gAGE/UPC B.3.3. Baseline vector estimation with @ J. Sanz & J.M. Juan 110
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using t=14500, 15000)
B.3. IND1-IND2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
Rounding directly the floated solution Rounding the decorrelated floated solution
round(a)' afix=iZ*round(az);
8 -17 24 -12 9 10 9 7 -18 26 -14 12 11 8
gAGE/UPC B.3.3. Baseline vector estimation with @ J. Sanz & J.M. Juan 111
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using t=14500, 15000)
OPTIONAL:
Repeat taking t1=14500 and t2=17000
Questions:
1. - Have the results improved?
2. - Has the reliability improved?
3. - Why it is not possible to fix the ambiguities?
gAGE/UPC B.3.3. Baseline vector estimation with @ J. Sanz & J.M. Juan 112
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 .
B.3. IND1-IND2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
Hint:
For instance, use the following sentence to compute the receiver clocks of IND1,
IND2 and IND3 receivers with gLAB (the last field is the receiver clock offset):
Questions:
Discuss how the relative receiver clock offset can
affect the baseline estimation.
gAGE/UPC B.3.3. Baseline vector estimation with @ J. Sanz & J.M. Juan 113
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 .
ρ̂ 6 ρˆ j ρ̂ 6 ρˆ j
r
dr rIND3 - r0,IND3
IND1(ref)
IND2 (ref) IND2(user)
IND3 (user) IND1(ref)
IND2 (ref) IND3 (user)
IND2(user)
Computed corrections
L j
1, ref
Time-tagged measurements PRC { L
1
j j
1, ref U j
ref
broadcast by the
broadcast by reference station reference station.
gAGE/UPC B.3.3. Baseline vector estimation with @ J. Sanz & J.M. Juan 114
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 .
B.3. IND1-IND2 Baseline vector estimation with L1 carrier
(using the time-tagged reference station measurements)
Next we are going to repeat the differential positioning, but using the
computed differential corrections. In this case, as the corrections vary
slowly, the synchronization errors will not be an issue.
ρ̂ 6 ρˆ j ρ̂ 6 ρˆ j
r
dr rIND3 - r0,IND3
Computed corrections
L j
1, ref
Time-tagged measurements PRC { L
1
j j
1, ref U j
ref
broadcast by the
broadcast by reference station reference station.
gAGE/UPC B.3.3. Baseline vector estimation with @ J. Sanz & J.M. Juan 115
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 .
gAGE/UPC A.6.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 116
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.4. IND2-IND3 differential positioning with L1 carrier
(using the computed differential corrections)
B.4.1 Estimate the coordinates of receiver IND2 taking IND1 as the reference
receiver, using the L1 carrier measurements of file (DD_IND1_IND2_06_ALL.dat)
Notation
ª ρˆ 3 ρˆ 6 T º y=Gx
ª DDL DD U º
6,3
1
6,3
« » ª1 0 0 º ª O1 DDN º 1
6,3
« 6,7 » «0 1 « »
« ˆ7 ˆ6 » 0 »» « O1 DDN » Where the vector of
« ρ ρ » dr «
T
« DDL 1
6,7
DD U »
6,7
1
« » « » « »« »
« 6,30 » « » « »« » unknowns x includes
¬« DDL1 DD U ¼» 1 ¼ ¬« O1 DDN16,30 ¼» the user coordinates
6,30
« ρˆ ρˆ »
30 6 T ¬0 0 0
¬ ¼ and ambiguities
gAGE/UPC B.4.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 117
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
The receiver was not moving (static) during the data collection.
Therefore, for each epoch we have the equations system:
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL16,3 (t1 ) DD U 6,3 (t1 ) º « 1 1
» ª1 0 0 º ª O1 DDN16,3 º
«
« DDL1 (t1 ) DD U (t1 ) »
6,7 6,7 » « ˆ7 6 T » «0 1
« ρ (t1 ) ρˆ (t1 ) » dr «
« »
0 »» « O1 DDN16 ,7 » y1 = G1 x
« » « » « »« »
« » « » « »« 6,30 »
¬« DDL1 (t1 ) DD U (t1 ) ¼» 1 ¼ ¬« O1 DDN1 ¼»
6,30 6,30
« ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0
y1:=y[t1]
¬ 1 1 ¼
G1:=G[t1]
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL16,3 (t2 ) DD U 6,3 (t2 ) º « 2 2
» ª1 0 0 º ª O1 DDN16,3 º
«
« DDL1 (t2 ) DD U (t2 ) »
«
6,7 6,7 »
»
« ˆ7
«
6 T »
»
«0 1
« ρ (t2 ) ρˆ (t2 ) » dr «
« »«
« »
0 »» « O1 DDN16 ,7 »
»
y2 = G2 x
« » « » « »« 6,30 »
¬« DDL1 (t2 ) DD U (t2 ) ¼» 1 ¼ ¬« O1 DDN1 ¼»
6,30 6,30
« ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0
¬ 2 2 ¼ y2:=y[t2]
G2:=G[t2]
gAGE/UPC
[DDL1-DDRho]=[Los_k - Los_06]*[dr] + [ A ]*[lambda1*DDN1] 118 @ J. Sanz & J.M. Juan
Research group of Astronomy & Geomatics
Technical University of Catalonia
B.4. IND1-IND2 differential positioning with L1 carrier
(using the computed differential corrections)
b) Given the measurement vectors (y) and Geometry matrices (G) for two epochs
y1:=y[t1] ; G1:=G[t1] ; Py
y2:=y[t2] ; G2:=G[t2] ; Py
show that the user solution and covariance matrix can be computed as:
P=inv(G1'*W*G1+G2'*W*G2);
y = G x; W = Py-1 where: W=inv(Py)
x=P*(G1'*W*y1+G2'*W*y2) ;
T -1 T
x = (G WG) G Wy
(G T WG)-1
P = gAGE/UPC B.4.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 119
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
for the two epochs required t1=14500 and t2=14530, using the input
file DD_IND1_IND2_06_ALL.dat generated before.
Execute:
MakeL1DifMat.scr DD_IND1_IND2_06_ALL.dat 14500 14530
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC B.41. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 120
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.4. IND1-IND2 differential positioning with L1 carrier
(using the computed differential corrections)
P=inv(G1'*W*G1+G2'*W*G2);
octave x=P*(G1'*W*y1+G2'*W*y2);
load M1.dat
x(1:3)'
load M2.dat
0.3132 -0.2648 0.6237
y1=M1(:,1); Taking into account that the ”a priori” coordinates
G1=M1(:,2:11); of IND2 are: IND2=[4787678.9809
183402.5915 4196171.6833]
y2=M2(:,1);
G2=M2(:,2:11); Therefore the estimated absolute coordinates of
Py=(diag(ones(1,7))+ones(7))*2e-4; IND3 are:
W=inv(Py); IND2+ x(1:3)'
4787679.2940 183402.3267 4196172.3070
gAGE/UPC B.4.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 121
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
Rounding directly the floated solution Rounding the decorrelated floated solution
round(a)' afix=iZ*round(az);
8 -17 22 -12 5 11 7 9 -17 22 -10 6 10 7
gAGE/UPC A.6.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 122
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.4. IND1-IND2 differential positioning with L1 carrier
(using the computed differential corrections)
Questions:
gAGE/UPC B.4.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 123
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
3. Repair the DDL1 carrier measurements with the DDN1 FIXED ambiguities
and plot results to analyze the data.
octave
amb=lambda1*afixed(:,1);
save ambL1.dat amb
gAGE/UPC B.4.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 124
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.4. IND1-IND2 differential positioning with L1 carrier
(using the computed differential corrections)
a) Generate a file with the satellite PRN number and the ambiguities:
cat DD_IND1_IND2_06_ALL.dat|
gawk 'BEGIN{for (i=1;i<1000;i++) {getline <"sat.ambL1";A[$1]=$3}}
{printf "%s %02i %02i %s %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f
%14.4f %14.4f %14.4f %14.4f %14.4f %14.4f \n",
$1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,A[$4]}' >
DD_IND1_IND2_06_ALL.fixL1
gAGE/UPC A.4.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 125
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
gAGE/UPC B.4.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 126
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.4. IND1-IND2 differential positioning with L1 carrier
(using the computed differential corrections)
graph.py -f DD_IND1_IND2_06_ALL.fixL1
-x6 -y'($8-$18-$11)'
-so --yn -0.06 --yx 0.06
-l "(DDL1-O
DDN1)-DDrho"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC B.4.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 127
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
graph.py -f DD_IND1_IND2_06_ALL.fixL1
-x6 -y'($8-$11)'
-so --yn -5 --yx 5
-l ”(DDL1-DDrho)"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC B.4.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 128
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.4. IND1-IND2 differential positioning with L1 carrier
(using the computed differential corrections)
graph.py -f DD_IND1_IND2_06_ALL.fixL1
-x6 -y'($8-$18)'
-so --yn -10 --yx 10
-l "(DDL1-O
DDN1)"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC B.4.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 129
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
[DDL1-DDRho-lambda1*DDN1]=[Los_k - Los_06]*[dr]
gAGE/UPC B.4.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 130
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.4. IND1-IND2 differential positioning with L1 carrier
(using the computed differential corrections)
gAGE/UPC B.4.1. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 131
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
B.4.2. Using the DDL1 carrier with the ambiguities FIXED, compute the LS single
epoch solution for the whole interval 14500< t <16500 with the program LS.f
Note: The program "LS.f" computes the Least Square solution for each
measurement epoch of the input file (see the FORTRAN code "LS.f")
where:
Time= seconds of day
DDL1 - DDRho-lambda1*DDN1= Prefit residulas (i.e., "y" values in program LS.f)
Los_k - Los_06 = The three components of the geometry matrix
(i.e., matrix "a" in program LS.f)
gAGE/UPC B.4.2. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 132
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
B.4. IND1-IND2 differential positioning with L1 carrier
(using the computed differential corrections)
gAGE/UPC B.4.2. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 133
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
gAGE/UPC B.4.2. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 134
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
B.4. IND1-IND2 differential positioning with L1 carrier
(using the computed differential corrections)
Differential
Positioning error
after fixing
ambiguities
Question:
Discuss the accuracy
achieved and the
possible error sources
that could affect this
result (e.g. Antenna
Phase Centres…)
gAGE/UPC B.4.2. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 135
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
B.4.3. Repeat previous computations, but using the Unsmoothed code P1.
i.e., compute the LS single epoch solution for the whole interval
14500< t <16500 with the program LS.f
The same procedure as in previous case can be applied, but using the code
DDP1 instead of the carrier “DDL1-lambda1*DDN1”
a) generate a file with the following content;
where:
Time= seconds of day
DDP1 - DDrho= Prefit residuals (i.e., "y" values in program lms1)
Los_k - Los_06 = The three components of the geometry matrix
(i.e., matrix "a" in program LS.f)
gAGE/UPC B.4.3. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 136
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (single epoch LS, whole interval)
B.4. IND1-IND2 differential positioning with L1 carrier
(using the computed differential corrections)
gAGE/UPC B.4.3. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 137
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (single epoch LS, whole interval)
Positioning error
with the P1 code
Question:
Discuss the results by
comparing them with the
previous ones with DDL1
carrier in the relative
positioning implementation.
gAGE/UPC B.4.3. Estimate IND2 coordinates with @ J. Sanz & J.M. Juan 138
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDP1 (single epoch LS, whole interval)
B.4. IND1-IND2 differential positioning with L1 carrier
B.4.4. Repeat the previous computations, but for the baseline vector
estimation and using the time-tagged measurements of the reference
station, instead of the differential corrections.
That is, compute the LS single epoch solution for the whole interval
14500< t <16500 with the program LS.f
where:
Time= seconds of day
DDL1= Prefit residulas (i.e., "y" values in program lms1)
Los_k - Los_06 = The three components of the geometry matrix
(i.e., matrix "a" in program LS.f)
gAGE/UPC B.4.4. Baseline vector estimation with @ J. Sanz & J.M. Juan 139
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
gAGE/UPC B.4.4. Baseline vector estimation with @ J. Sanz & J.M. Juan 140
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
B.4. IND1-IND2 differential positioning with L1 carrier
Note:
bsl_enu =[-7.1482 -0.8359 0.0070]
gAGE/UPC B.4.4. Baseline vector estimation with @ J. Sanz & J.M. Juan 141
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
Baseline
estimation error
after fixing
ambiguities
Question:
Discuss why does the
accuracy degrades
respect to the previous
case. Why this large
error appears?
gAGE/UPC B.4.4. Baseline vector estimation with @ J. Sanz & J.M. Juan 142
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (single epoch LS, whole interval)
OVERVIEW
Introduction: gLAB processing in command line
Preliminary computations: data files & reference values
Session A: Differential positioning of IND2-IND3 receivers
(baseline: 18 metres)
Session C
Differential positioning of
PLAN- GARR receivers
(baseline: 15 km. Night time)
Analysis of differential tropospheric error effects
Where the elevation (EL) and azimuth (AZ) are taken from station #2.
and where (EL1, AZ1) are for satellite #1 and (EL1, AZ1) are for satellite #2.
gAGE/UPC C.1. Double Differences computation @ J. Sanz & J.M. Juan 146
Research group of Astronomy & Geomatics
Technical University of Catalonia
C. PLAN- GARR Differential positioning
Compute the double differences between receivers PLAN (reference) and
GARR and satellites PRN06 (reference) and [PRN 03, 07,11, 16, 18, 19,
21, 22, 30]
DDobs.scr obs.dat PLAN-GARR 06 03
DDobs.scr obs.dat PLAN-GARR 06 07
DDobs.scr obs.dat PLAN-GARR 06 11
DDobs.scr obs.dat PLAN-GARR 06 16
DDobs.scr obs.dat PLAN-GARR 06 18
DDobs.scr obs.dat PLAN-GARR 06 19
DDobs.scr obs.dat PLAN-GARR 06 21
DDobs.scr obs.dat PLAN-GARR 06 22
DDobs.scr obs.dat PLAN-GARR 06 30
gAGE/UPC C.1. Double Differences computation @ J. Sanz & J.M. Juan 147
Research group of Astronomy & Geomatics
Technical University of Catalonia
gAGE/UPC C.2.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 148
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
C.2. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections)
C.2.1 Estimate the coordinates of receiver GARR taking PLAN as the reference
receiver, using the L1 carrier measurements of file (DD_PLAN_GARR_06_ALL.dat)
Notation
ª ρˆ 3 ρˆ 6 T º y=Gx
ª DDL DD U º
6,3
1
6,3
« » ª1 0 0 º ª O1 DDN º 1
6,3
« 6,7 » «0 1 « »
« ˆ7 ˆ6 » 0 »» « O1 DDN » Where the vector of
« ρ ρ » dr «
T
« DDL 1
6,7
DD U »
6,7
1
« » « » « »« »
« 6,30 » « » « »« » unknowns x includes
¬« DDL1 DD U ¼» 1 ¼ ¬« O1 DDN16,30 ¼» the user coordinates
6,30
« ρˆ ρˆ »
30 6 T ¬0 0 0
¬ ¼ and ambiguities
gAGE/UPC C.2.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 149
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
The receiver was not moving (static) during the data collection.
Therefore for each epoch we have the equations system:
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL16,3 (t1 ) DD U 6,3 (t1 ) º « 1 1
» ª1 0 0 º ª O1 DDN16,3 º
«
« DDL1 (t1 ) DD U (t1 ) »
6,7 6,7 » « ˆ7 6 T » «0 1
« ρ (t1 ) ρˆ (t1 ) » dr «
« »
0 »» « O1 DDN16 ,7 » y1 = G1 x
« » « » « »« »
« » « » « »« 6,30 »
¬« DDL1 (t1 ) DD U (t1 ) ¼» 1 ¼ ¬« O1 DDN1 ¼»
6,30 6,30
« ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0
y1:=y[t1]
¬ 1 1 ¼
G1:=G[t1]
ª ρˆ 3 (t ) ρˆ 6 (t ) T º
ª DDL16,3 (t2 ) DD U 6,3 (t2 ) º « 2 2
» ª1 0 0 º ª O1 DDN16,3 º
«
« DDL1 (t2 ) DD U (t2 ) »
«
6,7 6,7 »
»
« ˆ7
«
6 T »
»
«0 1
« ρ (t2 ) ρˆ (t2 ) » dr «
« »«
« »
0 »» « O1 DDN16 ,7 »
»
y2 = G2 x
« » « » « »« 6,30 »
¬« DDL1 (t2 ) DD U (t2 ) ¼» 1 ¼ ¬« O1 DDN1 ¼»
6,30 6,30
« ρˆ 30 (t ) ρˆ 6 (t ) T » ¬0 0 0
¬ 2 2 ¼ y2:=y[t2]
G2:=G[t2]
gAGE/UPC
[DDL1-DDRho]=[Los_k - Los_06]*[dr] + [ A ]*[lambda1*DDN1] 150 @ J. Sanz & J.M. Juan
Research group of Astronomy & Geomatics
Technical University of Catalonia
C.2. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections)
b) Given the measurement vectors (y) and Geometry matrices (G) for two epochs
y1:=y[t1] ; G1:=G[t1] ; Py
y2:=y[t2] ; G2:=G[t2] ; Py
show that the user solution and covariance matrix can be computed as:
P=inv(G1'*W*G1+G2'*W*G2);
y = G x; W = Py-1 where: W=inv(Py)
x=P*(G1'*W*y1+G2'*W*y2) ;
T -1 T
x = (G WG) G Wy
(G T WG)-1
P = gAGE/UPC C.2.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 151
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
for the two epochs required t1=14500 and t2=14590, using the input
file DD_PLAN_GARR_06_ALL.dat generated before.
Execute:
MakeL1DifMat.scr DD_PLAN_GARR_06_ALL.dat 14500 14590
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC C.2.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 152
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
C.2. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections)
gAGE/UPC C.2.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 153
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
Rounding the floated solution directly Rounding the decorrelated floated solution
round(a)' -19337 130765326 -1759092 afix=iZ*round(az);
-1498083 130765325 130765316 130765339 -19337 130765326 -1759092 -1498083 130765325
122888034 130765336 130765316 130765339 122888034 130765336
gAGE/UPC C.2.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 154
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
C.2. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections)
Questions:
gAGE/UPC C.2.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 155
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
Hint:
Plot the differential Tropospheric and Ionospheric delays (from the gLAB model) and
discuss their potential impact on the ambiguity fixing.
gAGE/UPC C.2.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 156
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
C.2. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections)
gAGE/UPC C.2.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 157
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 159
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
for the two epochs required t1=14500 and t2=14590, using the input
file DD_PLAN_GARR_06_ALL.dat generated before.
Execute:
MakeL1DifTrpMat.scr DD_PLAN_GARR_06_ALL.dat 14500 14590
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 160
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
C.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 161
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
Rounding the floated solution directly Rounding the decorrelated floated solution
round(a)' -19334 130765336 -1759081 afix=iZ*round(az)
-1498083 130765320 130765323 -19333 130765338 -1759080 -1498083 130765319
130765334 122888029 130765334 130765324 130765334 122888028 130765333
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 162
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
C.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections)
Questions:
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 163
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using only two epochs)
3. Repair the DDL1 carrier measurements with the DDN1 FIXED ambiguities
and plot results to analyze the data.
octave
amb=lambda1*afixed(:,1);
save ambL1.dat amb
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 164
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
C.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
a) Generate a file with the satellite PRN number and the ambiguities:
cat DD_PLAN_GARR_06_ALL.dat|
gawk 'BEGIN{for (i=1;i<1000;i++) {getline <"sat.ambL1";A[$1]=$3}}
{printf "%s %02i %02i %s %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f
%14.4f %14.4f %14.4f %14.4f %14.4f %14.4f \n",
$1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,A[$4]}' >
DD_PLAN_GARR_06_ALL.fixL1
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 165
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 166
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
C.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
graph.py -f DD_PLAN_GARR_06_ALL.fixL1
-x6 -y'($8-$18-$11)'
-so --yn -0.6 --yx 0.6
-l "(DDL1-O
DDN1)-DDRho"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 167
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
graph.py -f DD_PLAN_GARR_06_ALL.fixL1
-x6 -y'($8-$18-$11-$12)'
-so --yn -0.6 --yx 0.6
-l "(DDL1-O
DDN1)-DDRho-DDTrp"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 168
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
C.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
graph.py -f DD_PLAN_GARR_06_ALL.fixL1
-x6 -y'($8-$18-$11-$12)'
-so --yn -0.06 --yx 0.06
-l "(DDL1-O
DDN1)-DDRho-DDTrp"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 169
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
graph.py -f DD_PLAN_GARR_06_ALL.fixL1
-x6 -y'($8-$18)'
-so --yn -15000 --yx 15000
-l "(DDL1-O
DDN1)"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 170
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
C.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
[DDL1-DDRho-DDTrp-lambda1*DDN1]=[Los_k - Los_06]*[dr]
gAGE/UPC C.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 171
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
gAGE/UPC C.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 172
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
C.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
C.3.2. Using the DDL1 carrier with the ambiguities FIXED, compute the LS single
epoch solution for the whole interval 14500< t <16500 with the program LS.f
Note: The program LS.f computes the Least Square solution for each
measurement epoch of the input file (see the FORTRAN code "LS.f")
where:
Time= seconds of day
DDL1 – DDRho –DDTrp – lambda1*DDN1= Prefit residulas (i.e., "y" values in program LS.f)
Los_k – Los_06 = The three components of the geometry matrix (i.e., matrix "a" in program
LS.f)
gAGE/UPC C.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 173
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
gAGE/UPC C.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 174
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
C.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
gAGE/UPC C.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 175
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
Differential
Positioning error
after fixing
ambiguities
Question:
Discuss the possible
sources of the bias found
in the vertical component.
gAGE/UPC C.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 176
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
C.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
gAGE/UPC C.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 177
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (APC error effect)
Solution:
GARR: PLAN:
dL1=5.591 cm dL1=6.673 cm
dL2=5.800 cm dL2=5.769 cm
dLC=1/(g-1)*(g*dL1-dL2)=5.3cm dLC=1/(g-1)*(g*dL1-dL2)=8.1cm
Then: Then:
dL1=dLC+0.3 cm dL1=dLC-1.4 cm
gAGE/UPC C.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 178
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (APC error effect)
C.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
Repeat the positioning error plot, but correcting for the relative
Antenna Phase Centres (APCs):
gAGE/UPC C.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 179
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (APC error effect)
Differential
Positioning error
after fixing
ambiguities
Question:
Discuss on the remaining
error sources which could
explain the error bias found
in the vertical component.
gAGE/UPC C.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 180
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (APC error effect)
C.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
C.3.3. Repeat the previous computations, but using the Unsmoothed code P1.
i.e., compute the LS single epoch solution for the whole interval
145000< t <165000 with the program LS.f
The same procedure as in previous case can be applied, but using the code
DDP1 instead of the carrier “DDL1 – lambda1*DDN1”
a) generate a file with the following content;
where:
Time= seconds of day
DDP1 – DDRho-DDTrp= Prefit residulas (i.e., "y" values in program lms1)
Los_k – Los_06 = The three components of the geometry matrix
(i.e., matrix "a" in program LS.f)
gAGE/UPC C.3.3. Estimate GARR coordinates @ J. Sanz & J.M. Juan 181
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using tropospheric corrections)
gAGE/UPC C.3.3. Estimate GARR coordinates @ J. Sanz & J.M. Juan 182
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using tropospheric corrections)
C.3. PLAN-GARR differential positioning
(using the computed differential corrections including troposphere)
Positioning error
with the
unsmoothed
code
Question:
Discuss the results by
comparing them with the
previous ones with DDL1
carrier.
gAGE/UPC C.3.3. Estimate GARR coordinates @ J. Sanz & J.M. Juan 183
Research group of Astronomy & Geomatics
Technical University of Catalonia
(using tropospheric corrections)
OVERVIEW
Introduction: gLAB processing in command line
Preliminary computations: data files & reference values
Session A: Differential positioning of IND2-IND3 receivers
(baseline: 18 metres)
cat ObsFile.dat|gawk '{if ($4>=39000 && $4<=41300 && $2!=01 && $2!=31)
print $0}' > obs.dat
obs.dat Î
1 2 3 4 5 6 7 8 9 10 11 12 13
[sta sat DoY sec P1 L1 P2 L2 Rho Trop Ion elev azim]
gAGE/UPC D.1 Model components computation @ J. Sanz & J.M. Juan 187
Research group of Astronomy & Geomatics
Technical University of Catalonia
gAGE/UPC D.2. Double Differences computation @ J. Sanz & J.M. Juan 188
Research group of Astronomy & Geomatics
Technical University of Catalonia
D.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
gAGE/UPC D.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 189
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
for the two epochs required t1=39000 and t2=40500, using the input
file DD_PLAN_GARR_13_ALL.dat generated before.
Execute:
MakeL1DifTrpMat.scr DD_PLAN_GARR_13_ALL.dat 39000 40500
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC D.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 190
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
D.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
gAGE/UPC D.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 191
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
Rounding the floated solution directly Rounding the decorrelated floated solution
round(a)' afix=iZ*round(az)
-1372640 1731967 2313786 592317 -1372641 1731966 2313787 592316
-878241 -401401 -475027 1855923 -878242 -401400 -475026 1855925
gAGE/UPC D.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 192
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
D.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
3. Repair the DDL1 carrier measurements with the DDN1 FIXED ambiguities
and plot results to analyze the data.
octave
amb=lambda1*afixed(:,1);
save ambL1.dat amb
gAGE/UPC D.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 193
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
a) Generate a file with the satellite PRN number and the ambiguities:
cat DD_PLAN_GARR_13_ALL.dat|
gawk 'BEGIN{for (i=1;i<1000;i++) {getline <"sat.ambL1";A[$1]=$3}}
{printf "%s %02i %02i %s %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f
%14.4f %14.4f %14.4f %14.4f %14.4f %14.4f \n",
$1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,A[$4]}' >
DD_PLAN_GARR_13_ALL.fixL1
gAGE/UPC D.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 194
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
D.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
gAGE/UPC D.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 195
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
graph.py -f DD_PLAN_GARR_13_ALL.fixL1
-x6 -y'($8-$18-$11)'
-so --yn -0.6 --yx 0.6
-l "(DDL1-O
DDN1)-DDRho"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC D.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 196
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
D.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
graph.py -f DD_PLAN_GARR_13_ALL.fixL1
-x6 -y'($8-$18-$11-$12)'
-so --yn -0.6 --yx 0.6
-l "(DDL1-O
DDN1)-DDRho-DDTrp"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC D.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 197
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
graph.py -f DD_PLAN_GARR_13_ALL.fixL1
-x6 -y'($8-$18-$11-$12)'
-so --yn -0.06 --yx 0.16
-l "(DDL1-O
DDN1)-DDRho-DDTrp"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC D.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 198
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
D.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
graph.py -f DD_PLAN_GARR_13_ALL.fixL1
-x6 -y'($8-$18)'
-so --yn -15000 --yx 15000
-l "(DDL1-O
DDN1)"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC D.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 199
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
[DDL1-DDRho-DDTrp-lambda1*DDN1]=[Los_k - Los_13]*[dr]
gAGE/UPC D.3.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 200
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
D.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
gAGE/UPC D.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 201
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
D.3.2. Using the DDL1 carrier with the ambiguities FIXED, compute the LS single
epoch solution for the whole interval 39000< t <41300 with the program LS.f
Note: The program LS.f computes the Least Square solution for each
measurement epoch of the input file (see the FORTRAN code "LS.f")
where:
Time= seconds of day
DDL1 – DDRho –DDTrp – lambda1*DDN1= Prefit residulas (i.e., "y" values in program LS.f)
Los_k – Los_13 = The three components of the geometry matrix (i.e., matrix "a" in program
LS.f)
gAGE/UPC D.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 202
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
D.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
gAGE/UPC D.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 203
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
gAGE/UPC D.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 204
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
D.3. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
Differential
Positioning error
after fixing
ambiguities
Question:
Discuss on the remaining
error sources which could
explain the error found in
the North, East and
Vertical components.
gAGE/UPC D.3.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 205
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 207
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
for the two epochs required t1=39000 and t2=40500, using the input
file DD_PLAN_GARR_13_ALL.dat generated before.
Execute:
MakeL2DifTrpMat.scr DD_PLAN_GARR_13_ALL.dat 39000 40500
The OUTPUT
are the files M1.dat and M2.dat associated with each epoch.
Where:
the columns of files M.dat are the vector y (first column) and Matrix G (next columns)
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 208
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
D.4. PLAN-GARR differential positioning with L2 carrier
(using the computed differential corrections including troposphere)
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 209
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
Rounding the floated solution directly Rounding the decorrelated floated solution
round(a)' afix=iZ*round(az)
-1075654 1343161 938718 468182 -1075655 1343160 938718 468181
-675592 -313617 -356299 1439835 -675593 -313616 -356299 1439836
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 210
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
D.4. PLAN-GARR differential positioning with L2 carrier
(using the computed differential corrections including troposphere)
3. Repair the DDL2 carrier measurements with the DDN2 FIXED ambiguities
and plot results to analyze the data.
octave
amb=lambda2*afixed(:,1);
save ambL2.dat amb
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 211
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
a) Generate a file with the satellite PRN number and the ambiguities:
cat DD_PLAN_GARR_13_ALL.fixL1|
gawk 'BEGIN{for (i=1;i<1000;i++) {getline <"sat.ambL2";A[$1]=$3}}
{printf "%s %02i %02i %s %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f
%14.4f %14.4f %14.4f %14.4f %14.4f %14.4f %14.4f \n",
$1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18,A[$4]}' >
DD_PLAN_GARR_13_ALL.fixL1L2
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 212
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
D.4. PLAN-GARR differential positioning with L2 carrier
(using the computed differential corrections including troposphere)
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 213
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
graph.py -f DD_PLAN_GARR_13_ALL.fixL1L2
-x6 -y'($10-$19-$11)'
-so --yn -0.6 --yx 0.6
-l "(DDL2-O
DDN2)-DDRho"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 214
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
D.4. PLAN-GARR differential positioning with L2 carrier
(using the computed differential corrections including troposphere)
graph.py -f DD_PLAN_GARR_13_ALL.fixL1L2
-x6 -y'($10-$19-$11-$12)'
-so --yn -0.6 --yx 0.6
-l "(DDL2-O
DDN2)-DDRho-DDTrp"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 215
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
graph.py -f DD_PLAN_GARR_13_ALL.fixL1L2
-x6 -y'($10-$19-$11-$12)'
-so --yn -0.06 --yx 0.16
-l "(DDL2-O
DDN2)-DDRho-DDTrp"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 216
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
D.4. PLAN-GARR differential positioning with L1 carrier
(using the computed differential corrections including troposphere)
graph.py -f DD_PLAN_GARR_13_ALL.fixL1L2
-x6 -y'($10-$19)'
-so --yn -15000 --yx 15000
-l "(DDL2-O
DDN2)"
--xl "time (s)" --yl "m"
Questions:
Explain what is the meaning of
this plot.
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 217
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropospheric corrections)
[DDL2-DDRho-DDTrp-lambda2*DDN2]=[Los_k - Los_06]*[dr]
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 218
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
D.4. PLAN-GARR differential positioning with L2 carrier
(using the computed differential corrections including troposphere)
gAGE/UPC D.4.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 219
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
D.4.2. Using the DDL2 carrier with the ambiguities FIXED, compute the LS single
epoch solution for the whole interval 39000< t <41300 with the program LS.f
Note: The program LS.f computes the Least Square solution for each
measurement epoch of the input file (see the FORTRAN code "LS.f")
where:
Time= seconds of day
DDL2 – DDRho –DDTrp – lambda2*DDN2= Prefit residulas (i.e., "y" values in program LS.f)
Los_k – Los_13 = The three components of the geometry matrix (i.e., matrix "a" in program
LS.f)
gAGE/UPC D.4.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 220
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
D.4. PLAN-GARR differential positioning with L2 carrier
(using the computed differential corrections including troposphere)
gAGE/UPC D.4.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 221
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL4 (using tropospheric corrections)
gAGE/UPC D.4.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 222
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
D.4. PLAN-GARR differential positioning with L2 carrier
(using the computed differential corrections including troposphere)
Differential
Positioning error
after fixing
ambiguities
Question:
Discuss the possible
sources of the bias found
in the vertical component.
gAGE/UPC D.4.2. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 223
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL2 (using tropospheric corrections)
Plot the unambiguous DDSTEC as a function of time and elevation, using Klobuchar
model (it corresponds to the field #13 of file DD_PLAN_GARR_13_ALL.fixL1L2).
Execute:
graph.py -f DD_PLAN_GARR_13_ALL.fixL1L2 -x6 –y13
-so -l "DDIon (Klobuchar Iono Model)" --xl "time (s)"
--yl "(m L1 delay)" --yn -.1 --yx .1 -t "PLAN-GARR: 15.2 km: DDSTEC"
gAGE/UPC D.5.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 224
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & Iono Klobuchar)
D.5.1 PLAN-GARR differential positioning with L1 carrier
(with ambiguity fixed and correcting from tropo. and Klobuchar iono.)
Modelled DDIono
(Klobuchar)
as a function of
time
Question:
Discuss this plot
gAGE/UPC D.5.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 225
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & Iono Klobuchar)
Modelled DDIono
(Klobuchar) as a
function of elevation
Question:
Why a larger
dispersion is found
at a low elevation?
gAGE/UPC D.5.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 226
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & Iono Klobuchar)
D.5.1 PLAN-GARR differential positioning with L1 carrier
(with ambiguity fixed and correcting from tropo. and Klobuchar iono.)
----------------------------- DD_PLAN_GARR_13_ALL.fixL1L2 -----------------------------------
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
PLAN GARR 13 PRN DoY sec DDP1 DDL1 DDP2 DDL2 DDRho DDTrop DDIon El1 Az1 El2 Az2 O
DDN1 O
DDN2
<---- GARR ---->
----------------------------------------------------------------------------------------------
graph.py -f DD_PLAN_GARR_13_ALL.fixL1L2
-x6 -y'$8-$11-$18-$12+$13'
-so -l "Prefit DDL1" --xl "time (s)"
--yl "metres" --yn -.1 --yx .1
-t "PLAN-GARR: 15.2 km: DDL1-DDRho-DDTropo+DDIon-Lambda1*DDN1"
gAGE/UPC D.5.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 227
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & Iono Klobuchar)
DDL1 Pre-fit
residuals as a
function of time.
Question:
Discuss the noise seen
in the plot.
gAGE/UPC D.5.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 228
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & Iono Klobuchar)
D.5.1 PLAN-GARR differential positioning with L1 carrier
(with ambiguity fixed and correcting from tropo. and Klobuchar iono.)
D.5.1. Using the DDL1 carrier with the ambiguities FIXED, and correcting from
both troposphere and Klobuchar ionosphere (DDSTEC), compute the LS single
epoch solution for the whole interval 39000< t <41300 with the program LS.f.
gAGE/UPC D.5.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 229
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & Iono Klobuchar)
gAGE/UPC D.5.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 230
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & Iono Klobuchar)
D.5.1 PLAN-GARR differential positioning with L1 carrier
(with ambiguity fixed and correcting from tropo. and Klobuchar iono.)
gAGE/UPC D.5.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 231
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & Iono Klobuchar)
Differential
Positioning error
with L1,
ambiguities fixed
and troposphere
with ionosphere
(from Klobuchar)
corrections
Question:
Discuss the results.
gAGE/UPC D.5.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 232
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & Iono Klobuchar)
D.6. Unambiguous DDSTEC determination
Using DDL1, DDL2 and the fixed ambiguities DDN1 and DDN2
obtained before, compute and plot the unambiguous DDSTEC as a
function of time and elevation. Execute:
graph.py -f DD_PLAN_GARR_13_ALL.fixL1L2 -x6 -y'($8-$18-$10+$19)*1.546'
-so -l "DDL1-Amb1-(DDL2-Amb2)" --xl "time (s)"
--yl "(m L1 delay)" --yn -.1 --yx .1 -t "PLAN-GARR: 15.2 km: DDSTEC"
gAGE/UPC D.6. Unambiguous DDSTEC determination @ J. Sanz & J.M. Juan 233
Research group of Astronomy & Geomatics
Technical University of Catalonia
Unambiguous
DDSTEC
as a function of
time
Question:
Discuss the noise seen
in the plot.
gAGE/UPC D.6. Unambiguous DDSTEC determination @ J. Sanz & J.M. Juan 234
Research group of Astronomy & Geomatics
Technical University of Catalonia
D.6. Unambiguous DDSTEC determination
Unambiguous
DDSTEC
as a function
elevation
Question:
Why do we have an
elevation-dependent
pattern?
gAGE/UPC D.6. Unambiguous DDSTEC determination @ J. Sanz & J.M. Juan 235
Research group of Astronomy & Geomatics
Technical University of Catalonia
gAGE/UPC D.6. Unambiguous DDSTEC determination @ J. Sanz & J.M. Juan 236
Research group of Astronomy & Geomatics
Technical University of Catalonia
D.6. Unambiguous DDSTEC determination
DDL1 Pre-fit
residuals as a
function of time.
Question:
Discuss the noise seen
in the plot.
gAGE/UPC D.6. Unambiguous DDSTEC determination @ J. Sanz & J.M. Juan 237
Research group of Astronomy & Geomatics
Technical University of Catalonia
graph.py -f DD_PLAN_GARR_13_ALL.fixL1L2
-x16 -y'$8-$11-$18-$12+1.546*($8-$18-$10+$19)'
-so -l "Prefit DDL1" --xl "elevation (deg.)"
--yl “metres" --yn -.15 --yx .15
-t "PLAN-GARR: 15.2 km: DL1-DDRho-Lambda1*DDN1-DDTropo+alpha1*STEC"
gAGE/UPC D.6. Unambiguous DDSTEC determination @ J. Sanz & J.M. Juan 238
Research group of Astronomy & Geomatics
Technical University of Catalonia
D.6. Unambiguous DDSTEC determination
DDL1 Pre-fit
residuals as a
function of
elevation.
Question:
Why do we have an
elevation-dependent
pattern?
gAGE/UPC D.6. Unambiguous DDSTEC determination @ J. Sanz & J.M. Juan 239
Research group of Astronomy & Geomatics
Technical University of Catalonia
D.6.1. Using the DDL1 carrier with the ambiguities FIXED, and correcting from
both troposphere and ionosphere (DDSTEC), compute the LS single epoch
solution for the whole interval 39000< t <41300 with the program LS.f
where:
Time= seconds of day
DDL1 – DDRho –DDTrp + D1*DDSTEC– lambda1*DDN1= Prefit residulas
(i.e., "y" values in program LS.f)
Los_k – Los_13 = The three components of the geometry matrix (i.e., matrix "a" in program
LS.f)
gAGE/UPC D.6.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 240
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & actual Iono.)
D.6. PLAN-GARR differential positioning with L1 carrier
(with ambiguity fixed and correcting from tropo. and DDSTEC)
gAGE/UPC D.6.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 241
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & DDSTEC corrections)
gAGE/UPC D.6.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 242
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & DDSTEC corrections)
D.6. PLAN-GARR differential positioning with L1 carrier
(with ambiguity fixed and correcting from tropo. and DDSTEC)
Differential
Positioning error
with L1,
ambiguities fixed
with Tropo and
DDSTEC removed.
Question:
Is any bias expected due to
the L1-LC APCs, when
removing the ionosphere
using the unambiguous
DDSTEC?
gAGE/UPC D.6.1. Estimate GARR coordinates with @ J. Sanz & J.M. Juan 243
Research group of Astronomy & Geomatics
Technical University of Catalonia
DDL1 (using tropo & DDSTEC corrections)
Repeat the previous exercise, but using the ionosphere free combination of
carriers DDLC, with the ambiguities fixed.
where:
Time= seconds of day
DD(LC-Amb) – DDRho –DDTrp = Prefit residulas
(i.e., "y" values in program LS.f)
Los_k – Los_13 = The three components of the geometry matrix (i.e., matrix "a" in program
LS.f)
gAGE/UPC D.7. Estimate GARR coordinates @ J. Sanz & J.M. Juan 244
Research group of Astronomy & Geomatics
Technical University of Catalonia
with DDLC FIXED (using tropo)
D.7. PLAN-GARR differential positioning with LC carrier
(with ambiguities fixed and correcting troposphere)
gAGE/UPC D.7. Estimate GARR coordinates @ J. Sanz & J.M. Juan 245
Research group of Astronomy & Geomatics
Technical University of Catalonia
with DDLC FIXED (using tropo)
gAGE/UPC D.7. Estimate GARR coordinates @ J. Sanz & J.M. Juan 246
Research group of Astronomy & Geomatics
Technical University of Catalonia
with DDLC FIXED (using tropo)
D.7. PLAN-GARR differential positioning with LC carrier
(with ambiguities fixed and correcting troposphere)
Differential
Positioning error
with DDLC,
ambiguities fixed.
Question:
Compare this iono-free
solution with that obtained
with DDL1, removing the
troposphere and ionosphere
using the unambiguous
DDSTEC.
Are the results the same?
Why?
gAGE/UPC D.7. Estimate GARR coordinates @ J. Sanz & J.M. Juan 247
Research group of Astronomy & Geomatics
Technical University of Catalonia
with DDLC FIXED (using tropo)
The ESA/UPC GNSS-Lab Tool suite (gLAB) has been developed under the
ESA Education Office contract N. P1081434.
List of Acronyms
A/S Anti-Spoofing
C/A Coarse/Acquisition
CS Cycle Slip
319
TM-23/2
LS Least Squares
320
List of Acronyms
MM Monument Marker
MW Melbourne–Wübbena
OS Operating System
RO Radio Occultation
321
TM-23/2
SU Soviet Union
SV Space Vehicle
322