12.540 Principles of the Global Positioning System Lecture 04

Download Report

Transcript 12.540 Principles of the Global Positioning System Lecture 04

GLOBK
Thomas Herring
Room 54-611; 617-253-5941
[email protected]
http://geoweb.mit.edu
Summary
• Applications of globk (why do we need it).
• Structure of how globk works and philosophy
• GLOBK Command file:
– Use of process noise models
– Main commands that are encountered.
• GLORG command file:
– Coordinate system definition module (or frame stabilization)
– Pos_org and rate_org commands
09/23/08
Unavco Globk
2
Function of GLOBK
• The number of parameters in GPS phase analysis are dominated
by bias and atmospheric delay parameters. The bias parameters
increase as the number of stations times the numbers of
satellites. It is not practical to include large numbers of stations
in an analysis without some method of eliminating these bias and
atmospheric delay parameters: Globk provides one way of
eliminating these parameters.
• Phase analysis is CPU time intensive and another benefit of the
Globk approach is that decisions on parameter constraints (such
as site coordinates, Earth orientation parameters, orbits) can be
done (quickly) at the Globk level.
• Principle is to carry forward solution and variance-covariance
matrix for “global” parameters.
09/23/08
Unavco Globk
3
Introduction to Kalman filtering
• Estimation method in which parameters can be stochastic
processes (i.e. parameters are not fixed, deterministic quantities
but rather they vary with time according to statistical noise
processes).
• Examples: polar motion and UT1, radiation pressure effects on
satellites, possible transient events, monument instability noise.
• Nearly all parameters in globk can be stochastic or deterministic
• Statistical character of parameters are set with commands of the
form apr_XXX (specifies the apriori uncertainty of a parameter)
and mar_XXX (specifies the stochastic nature of the parameter)
• The parameters that are estimated in Globk are based on those
that are given apriori uncertainties (special method used to put
zero apriori constraint on parameter, i.e., fix the parameter value).
09/23/08
Unavco Globk
4
Stochastic processes
• Stochastic models in globk are random walks.
Random walks are the sums of white noise; they are a
special case of a first order Gauss-Markov process
with infinite correlation time.
• The variance of the change in a random walk over a
time interval is proportional to the time interval.
(Strictly, a random walk is not a stationary process).
• Globk uses random walks because process can be
represented with a single parameter.
• If process noise is zero, then classed as deterministic
09/23/08
Unavco Globk
5
Common applications of Globk
• Combine sessions to get average position over an observing
campaign
– Allows connection between sites that were not simultaneously
observed
• When large numbers of stations need to be processed, network
can be broken into manageable sub-networks (e.g., 40-50
stations each) and the sub-networks combined with Globk.
(Special case is combination of regional networks and global
network for orbit determination).
• Combine averaged files together to estimate velocities
– Other parameters can also estimated such as earthquake offsets,
possible scale variations for long duration combinations.
• Analysis of individual sessions and combined files for
repeatability
09/23/08
Unavco Globk
6
Things Globk can not do
• Non-linear effects in aproiri models can not be
removed. In some campaign processing, this can be
a problem. Rough rule of thumb: 100-1000:1
convergence rate (e.g., a 1 meter error in an apriori
coordinate could result in 1-10 mm error in final
position). Gamit detects and corrects (by default) this
problem.
• Fix errors in original analysis such as cycle slips or
antenna phase center models
– Sites can be deleted which often stops effect on other stations
– Ambiguities can not be resolved in Globk (would make files
too large)
– (Antenna height errors can be corrected in Globk: hfupd)
09/23/08
Unavco Globk
7
GLOBK Command file
• Example given in gg/example/gsoln/globk_comb.cmd
• Basic features of command files (also common to
other input files used by globk)
– Character in column 1 denotes comment
– only minimum redundant part of command needed
– In many cases, not all arguments need be given
09/23/08
Unavco Globk
8
Preparing globk
• sh_glred automates standard runs with globk and can
be used as a starting point.
– Assumes internet access but can be run without
• Globk needs:
– Binary h-files (htoglb): These are the input files “quasi-data”
files used by Globk. They contain parameter estimates,
covariance matrices and ancillary information (such as
receiver and antenna information).
– Command file to tell it what to do. File is read through a
series of command lines. There are a few restrictions on
order of commands. Each command acts on results from
previous commands.
– Optional apriori information files such as site coordinates and
velocities, polar motion/UT1 information. (Much of this
information can be carried from h-files themselves)
09/23/08
Unavco Globk
9
Binary h-files
• There are number of methods and sources of binary hfiles:
• From Gamit, they can be generated with htoglb from the
h<expt>a.<yy><doy> files in processing day directories
• Other major source: Solution Independent Exchange Format files
(SINEX). Available for GPS, VLBI, SLR and DORIS.
• Older formats from VLBI, SLR and GPS can be read but now
replaced by SINEX. (JPL stacov files can be read but very poor
meta data in these files).
• Program detects which type of file is given.
• De-constraining options are available for SINEX and should be
used.
• Globk itself can write binary h-files
• Generally: Globk assumes h-files are loosely constrained.
09/23/08
Unavco Globk
10
HTOGLB
• Running htoglb
• Runstring:
– htoglb <dir> <ephemeris file> [options] <list of ascii files>
– dir is directory where binary files will be written
– ephemeris file is satellite orbit file (not used any more,
make_svs). This file also contains the aproiri coordinates of
the sites in the hfiles.
– options allow control of file names, and de-constraints:
• -d options allows rotation and translation covariances to be
added. Needed for IGS sinex and PBO frame SINEX files.
• -n allows name format to be changed.
– list of ascii files, usually with UNIX wild cards.
• If no arguments are given; help is printed.
09/23/08
Unavco Globk
11
Module sequence
• The sequence of modules are:
– globk -- Main controlling program that calls other modules
– glinit -- Initialization program, reads the headers of all the
binary h-files to determine their contents. (Allows wild cards in
names etc.)
– glfor -- Forward kalman filter
– glbak -- Backards running filter and smoother. Only invoked
when temporal variations in stochastic parameters is needed.
For deterministic parameters such as positions and velocities,
only forward solution is needed.
– glsave -- Saves combined binary h-files
– glout -- basic output program
– glorg -- origin definition program plus post analysis constraints
(e.g., setting velocities of close sites to be equal)
09/23/08
Unavco Globk
12
Stand-alone programs
• glsave and glorg are often run as separate programs
• Commands can be put in the globk command that will
run these modules
• Sometimes these commands are not included in the
globk command file and in most cases they can be run
after the globk program completes running (explicit
name must given for the com_file for post-globk runs.)
• Caution: Internal files used by globk may be replaced
with subsequent runs of globk so there needs to be
some caution with multiple globk runs. Solution is to
use wild-card names for com_file, srt_file and sol_file.
(names are derived from gdl file name).
09/23/08
Unavco Globk
13
Associated programs
• Other program associated with globk
– glist -- lists the contents of a series of h-files
– glbtosnx -- Generates SINEX files from binary h-files
– hfupd -- Updates binary h-files for changes in station.info or
sinex header file (distributed by IGS)
– glred -- Convenient way of running globk multiple times. This
program is commonly used for repeatability analyses which
are in turn used to set the process noise statistics in globk.
– ensum, enfit -- time series analysis (batch)
• Matlab derived programs (interactive):
– velview -- displays and analyzes velocity fields
– tsview -- displays and analyzse time series.
– Both these programs are available as executables for Linux
and Mac OSX.
09/23/08
Unavco Globk
14
Running globk
• Typing globk will list the help: Runstring:
– globk <crt> <print file> <log file> <gdl file> <command file>
<OPT>
– where <crt> = 6 (screen output)
– <print file> -- Print file name (can be 6 for screen)
– <log file> -- log file name (can be 6)
– <gdl file> -- file containing list of hfiles to be processed.
Options can be added at the ends of line to re-weight files
– <globk command file> -- command file name
– <OPT> is a string (case sensitive) such that lines which start
with this string will be interpreted as commands. This allows
one command files to be for different purposes such as a
velocity and repeatability runs.
09/23/08
Unavco Globk
15
globk files
• The gdl file is generated normally with an 'ls' of the
directory containing the binary hfiles
• command file is created with an editor (can be based
on gg/example templates version of file)
• print and log files are written by globk. When glorg in
invoked inside globk, the .prt extent from the print file
name is replaced with .org and this file is written also.
Depending on options, files may not be output at all or
may be erased before output (default is to append to
files).
09/23/08
Unavco Globk
16
Main globk commands
• Commands commonly used:
• Globk uses three "scratch" files which can be explicilty
named
• com_file -- Common file contains information about run
• srt_file -- binary file with time-sorted list of hfiles
• sol_file -- binary file with solution and covariance matrix
• To use glorg stand-alone, com_file command must be
used
09/23/08
Unavco Globk
17
Estimation commands rules
• For a parameter to estimated in globk, apr_xxx
command must be used where xxx is a parameter
type (e.g., NEU, SVS, WOB, UT1, ATM)
• If zero given as aprori sigma, then parameter is not
estimated (effectively left unconstrained)
• To force a parameter to apriori value, F is used as the
apriori sigma
• eg, apr_neu SITE 10 10 10 F F F
would force the velocity to apriori value
• When glorg is used to define reference frame,
apr_neu, apr_wob and apr_ut1 should be kept loosely
constained (equivalent of 1-10 meters)
09/23/08
Unavco Globk
18
Estimation commands
• Site position estimation
– apr_neu <site> <sigN> <sigE> <sigU> <sigVN> <sigVE> <sigVU>
– site is site name; maybe ALL to apply to all stations. Wild card @ at
end of line can be used to apply to multiple sites (e.g., AOA1_@
would apply to AOA1_GNR and AOA1_GHT if these both were in
solution).
– <sigN> <sigE> <sigU> aprior sigma on position (m)
– <sigVN> <sigVE> <sigVU> apriori sigma on velocities (m/yr)
• Stochastic noise process
– mar_neu <site> <RWN> <RWE> <RWU> <RWVN> <RWVE>
<RWVU>
– site name, may be all
– <RWN> <RWE> <RWU> Random walk positions (m2/yr)
– <RWVN> <RWVE> <RWVU> Random walk velocities ((m/yr)2/yr)
[Normally 0 0 0 used]
09/23/08
Unavco Globk
19
Earth Orientation Parameters (EOP)
• Apriori uncertainties
–

–
–
–
apr_wob <X> <Y> <Xdot> <Ydot>
X, Y pole position apriori sigma (mas)
Xdot Ydot apriori sigma for rate of change (mas/day)
apr_ut1 <ut1> <lod>
< ut1 > in mas, < lod > in (mas/day)
• Process noise has same form
– mar_wob <RWX> <RWY> <RWXd> <RWYd>
– units are (mas2)/yr and (mas/day)2/yr
– mar_ut1 <RW UT1> <RW lod>
• Nominally EOP are well known today (0.1 mas typically),
however in many analyses we like to keep these parameter loose
to allow common-mode local rotation (for IGS runs still needed)
09/23/08
Unavco Globk
22
EOP statistics
• Normally used in two forms:
–
–
–
–
Global network of stations
apr_wob 10 10 1 1
apr_ut1 10 1
Regional network (constrained). When constrained this way
system is not free to rotate (see pos_org in glorg).
– apr_wob 0.2 0.2 0.02 0.02
– apr_ut1 0.2 0.02
• In many analyses, the global form is used even for
local networks. (Care is needed if local network is not
not surrounded by stations with well defined motions).
09/23/08
Unavco Globk
23
UT1 issues
• Some care needs to be used with UT1 because it
cannot be separated from the nodes of the satellites
orbits
• UT1 tables and orbits must have used the same frame
for constraints on UT1 to applied.
• If local processing, then should be OK
• If orbits were determined with different EOP tables,
then UT1 should be loosened. (More of a problem with
older analyses -- mid 1990’s and earlier)
09/23/08
Unavco Globk
24
Frame estimation commands
• apr_tran <X YZ> <Vx Vy Vz> -- estimate translation of coordinate
system
• apr_scale <ppb> <ppb/yr> -- estimate scale and scale rate
• mar_tran and mar_scale specify the process noise
• Normally only used in global networks but can be help full in
regional networks to allow for common mode errors. (Generally,
small networks can translate easily and so explicit translation not
needed).
• apr_scale MUST be used if scale allowed in glorg frame
definition.
• When combining data, pre- and post-absolute phase center
models (Week 1400, Nov 2006), apr_scale should be used.
09/23/08
Unavco Globk
25
File commands
• A number of commands are used control the files
used by globk
• apr_file <name> lets a new apriori coordinate file be
used
• Format is:
•
•
•
•
•
09/23/08
Site_name X Y Z Vx Vy Vz epoch
Site names are 8 characters, for GPS ABCD_GPS
X Y Z are geocenter Cartesian (m)
Velocities are m/yr
Epoch is deciminal years
Unavco Globk
26
Apriori position files
• apr_files commands can be issued multiple times with
the latest values taken
• If not specified, GAMIT apriori's are used (no
velocities)
• EXTENDED option allows more complex behaviors
(see globk.hlp)
– Allows for jumps in positions and velocities
– Periodic signals
– Logarithmic and exponential decay after earthquakes.
09/23/08
Unavco Globk
27
Earthquake files
• It is possible to automatically account for displacement
caused by earthquakes with the earthquake file
• To main functions:
– Earthquakes specified by 2-char code
– renames of sites either due to wrong names in gamit
processing or problem with position change after equipment
change.
• Rename command:
• Rename <old> <new> [HFile code] [Epoch ranges]
[Position shift]
– Changing positions with rename commands no longer
recommended.
09/23/08
Unavco Globk
30
Earthquakes in eq_file
• For earthquake:
• eq_def <code> Lat Long Radius Depth Epoch
• eq_cosei <code> <Static Variance> <distance dependent
variances>
• eq_post <code> <dur> <Static RW> <distance dependent
RW>
• eq_rename <code>
• eq_log <code> <tau (days)> <static NEU sigma (m)>
<Spatial sigma NEU>
• The rename option cause site to renamed from
xxxx_GPS to xxxx_G[Code]
09/23/08
Unavco Globk
31
GLORG
• Glorg allows coordinates systems to be defined by
applying explicitly rotations and translations rather
than tightly constraining some stations
• Allows post applications of constraints (e.g. equating
velocities at near by sites)
• If loose constraints on site positions and velocities,
apriori coordinates and velocities can be changed.
• It can be run as a separate program or during the
globk run itself
09/23/08
Unavco Globk
32
Glorg commands imbedded in globk
command file
• The globk command file imbedded glorg commands
are:
• org_cmd <glorg command file name>
• org_opt <Options for output>
• org_out <output file name>
• If org_out is not given then the extent on the print file
name is replaced with .org
09/23/08
Unavco Globk
33
Miscellaneous commands
• max_chi <max chi**2 Increment> <max prefit
difference> <max rotation>
• allows automatic deleting of bad h-files and bad
coordinates
• app_ptid allows applying the pole tide correction if not
included in gamit run.
• (Careful with SINEX files, since these don't specify if
correction has been applied)
09/23/08
Unavco Globk
34
Miscellaneous commands
• crt_opt, prt_opt, org_opt specify output options for screen, print
and org files
• glorg help gives all options, main ones are:
–
–
–
–
–
–
–
–
–
–
–
–
ERAS -- erase file before writing (normally files appended)
NOPR -- Do not write output
BLEN -- Baseline lengths
BRAT -- baseline rates when velocities estimated
RNRP -- generates reports on differences in parameter estimates
after renames.
FIXA -- makes apriori coordinates and velocities consistent when
equates are used in glorg (can sometimes fail in complicated rename
scenarios--best apriori files are consistent)
VSUM -- Lat/long summary of velocity (needed to plot velocities)
PSUM -- Lat/long position summary
GDLF --Include list of hfiles and chi**2 increments from run
CMDS -- Echos globk command file into output file
MIDP -- Refer positions to mid-point of data span
PBOP -- Output PBO formatted time series and velocities
09/23/08
Unavco Globk
35
USING PBO products
• PBO sinex files can be downloaded from Unavco and
used in globk analyses.
• Two types of sinex files are made available:
– Loose : Loosely constrained files. These can be converted to
binary hfiles with normal htoglb run.
– Frame : Frame defined files. There are two choices here. A
standard htoglb run will generate solution with coordinates
well determined in the PBO reference frame. To use these
binary hfiles to generate results in another reference frame,
the apr_rot and apr_tran commands should be used to allow
the solutions to rotate and translate. An alternative approach
is to use the -d=tr option in htoglb which add rotational and
translational covariances to the binary hfiles.
• The orbits are fixed to IGS orbits in the PBO sinex
files.
09/23/08
Unavco Globk
40
Summary
•
•
•
•
Basics of Kalman filtering
Inputs to globk
Control of globk
Glorg applications (discussed in more detail in
reference frame section)
• Basic programs in the globk suite
09/23/08
Unavco Globk
41