440 likes | 451 Views
GLOBK Theory and Solution Types. Kalman filtering Stochastic processes Applications. Summary of Use of GLOBK. GAMIT output is an “h-” file of loosely constrained estimates and covariances, used as input (quasi-) observations to GLOBK
E N D
GLOBK Theory and Solution Types Kalman filtering Stochastic processes Applications
Summary of Use of GLOBK • GAMIT output is an “h-” file of loosely constrained estimates and covariances, used as input (quasi-) observations to GLOBK • GAMIT ascii h-files converted to binary h-files for input to GLOBK • GLOBK combines h-files from several networks for a single day and h-files from multiple epochs to estimate positions in a time series or average velocities GAMIT/GLOBK Tutorial 7
Motivation • GLOBK is quicker than GAMIT • Typically perform many GLOBK runs to test different hypotheses and correct problems in original GAMIT analyses with out re-running GAMIT. • Ultimately once all is understood, GAMIT is rerun and the process repeated for the final results GAMIT/GLOBK Tutorial 7
Kalman Filtering • Estimation method in which parameters can be random processes • Examples: • polar motion and UT1 • radiation pressure effects on satellites • coordinates after EQ • Nearly all parameters in GLOBK can be stochastic or deterministic • Statistical character set by commands • apr_XXX • mar_XXX GAMIT/GLOBK Tutorial 7
Stochastic processes • Stochastic models in globk are random walks characterized by variance of change in process over an interval of time • Variance grows linearly with time (standard deviation grows as square root of time) • If process noise is zero, then classed as deterministic GAMIT/GLOBK Tutorial 7
Common applications of GLOBK • Repeatability analysis (glred) • individual sessions • combined files • Combine sessions to get average position over experiment • connects sites observed separately • Combine averaged files together to estimate velocities • and/or earthquake offsets GAMIT/GLOBK Tutorial 7
Things GLOBK cannot do • Remove non-linear effects • GLOBK assumes a linear model • Repair mistakes in original analysis • cycle slips • wrong antenna phase center models • resolve ambiguities • (would make files too large) • But GLOBK can delete sites • can help avoid contaminating solution GAMIT/GLOBK Tutorial 7
Preparing to run GLOBK • Shell script sh_glred • automates standard runs with globk • useful to start • assumes internet access • but can be run without internet • Globk needs: • Binary h-files • written by htoglb from solve’s output • A command file to tell it what to do • e.g., globk.cmd GAMIT/GLOBK Tutorial 7
Binary h-files • Generated with htoglb • from the h<expt>a.<yy><doy> files • solve writes these in day dir • or from SINEX files • available from IGS • and soon for IVS for VLBI and ILS for SLR results • Program detects file type • Or written by globk itself GAMIT/GLOBK Tutorial 7
running htoglb • htoglb dir ephfile[options] file_list • dir is directory where binary files will be written • ephfile is satellite orbit file • not used any more, because of make_svs command • options are optional options • file_list a list of ascii files • usually with UNIX wild cards • or generated from ls GAMIT/GLOBK Tutorial 7
running htoglb • htoglb glbf glbf/india.svs ????_???/hgps?a.* • run this from processing directory • converts all ascii hfiles for our runs • puts the binary H-files in directory glbf • Some options: • -n sets name format • -m allocates more memory • (only needed for very large SINEX files) • -c replaces SINEX constraints GAMIT/GLOBK Tutorial 7
GLOBK command files • Example in ~/gg/templates/globk_comb.cmd • Basic features of command files • These are also common to other input files used by globk • Any non-blank character in column 1 denotes comment • Only minimum redundant part of command needed • In many cases, not all arguments need be given • Examine the command file from templates GAMIT/GLOBK Tutorial 7
Defining a coordinate system in GLOBK • To define a coordinate system need • origin (3 parameters) • Theoretically, origin is defined but mis-modeled perturbation on satellite orbits can cause shift in origin • orientation (3 parameters) • scale (1 parameter) • Theoretically, scale should be defined but systematic errors in the position of the phase center of satellites can cause a scale error GAMIT/GLOBK Tutorial 7
Defining a coordinate system with glorg • The glorg module of GLOBK applies rotation, translation, and scale to best align estimated coordinates with prior values for a selected set of stations • this process is called “stabilization” (pos_org) • subset of stations is the “stabilization list” (use_site) • User chooses which parameters are free (estimated) • translation xrot yrot zrot • rotation xtran ytran ztran • scale • If scale is used, it should be explicitly estimated in globk GAMIT/GLOBK Tutorial 7
Velocity origin • Same approach can be applied to site velocities, i.e. rates of • translation • rotation • scale • Use rate_org command with same key words • This will align the estimated station velocities with prior values for (the same) set of selected sites • No specific station coordinates are tightly constrained • We call this “velocity stabilization” in jargon. • In papers we write, “velocities with respect to a set of stations on stable North America” GAMIT/GLOBK Tutorial 7
Structure of GLOBK • GLOBK is a suite of modules • can be run end-to-end as the globk module • or run individually, e.g., • glred (reduce one day at a time) • glorg (origin) GAMIT/GLOBK Tutorial 7
Program sequence • globk Main controlling program that calls other modules • glinit Initialization program • reads the headers of all the binary h-files • to determine their contents • glfor Forward kalman filter • glbak Backards running filter and smoother • glsave Saves combined binary h-files • glout writes output to files and/or screen • glorg defines origin and coordinate system GAMIT/GLOBK Tutorial 7
Stand-alone programs • glorg (and sometimes glsave) can be run as separate programs, typically after globk has finished • or they can be run via globk by placing their commands globk.cmd file GAMIT/GLOBK Tutorial 7
Associated programs • glist lists the contents of a series of H-files • useful to check input before solution • glbtosnx generates SINEX files from binary H-files • only way to view header of binary H-files • hfupd updates binary h-files for changes in station info or SINEX header file • (distributed by IGS) • glred runs globk multiple times GAMIT/GLOBK Tutorial 7
Running globk • globk crt print_file log_file gdl_file cmd_file • crt = 6 for screen output • print_file output print file name (can be 6) • log_file output log file name (can be 6) • gdl_file input file listing H-file names to process • cmd_file input command file name • If you can’t remember this order, just type “globk” to get the help message. GAMIT/GLOBK Tutorial 7
globk files • .gdl • lists all H-file names to include in solution • run 'ls' on the directory containing the binary H-files • .cmd • contains commands • user modifies with a text editor • based on template • .prt and .log • print and log files written by globk GAMIT/GLOBK Tutorial 7
Main globk commands • globk uses three "scratch" files which can be explicitly 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 as stand-alone module, the same com_file command must appear in both the command file for globk and the command file for the (subsequent) glorg run GAMIT/GLOBK Tutorial 7
apr_xxx • This command will free (estimate) a parameter. • If this command is absent, the corresponding parameter will be held fixed to its apriori value • If zero is given as apriori sigma, then parameter is not estimated (effectively left unconstrained) • To force a parameter to its apriori value, use F as sigma GAMIT/GLOBK Tutorial 7
Site position estimationapr_neu • apr_neu site sigN sigE sigU sigVN sigVE sigVU • site is site name; may be all to apply to all stations • sigN sigE sigU apriori sigmas on position in meters • sigVN sigVE sigVU apriori velocity sigmas in m/yr • apr_neu SITE 10 10 10 F 0.1 0 • set prior sigma for N, E, U positions to 10 meters each • force the north velocity to its apriori value • set the prior sigma for the east velocity to 0.1 m/yr • do not estimate a vertical velocity GAMIT/GLOBK Tutorial 7
Estimating site position stochastically mar_neu • Markov random walk process • mar_neu site rwN rwE rwU rwVN rwVE rwVU • site station name, may be all • rwN rwE rwU random walk for positions (m^2/yr) • rwVN rwVE rwVU random walk for velocities • in (m/yr)^2/yr • usually use 0 0 0 GAMIT/GLOBK Tutorial 7
Estimating satellite orbit parameters apr_svs • Set apriori sigma for space vehicle parameters • apr_svs PRN X Y Z Vx Vy Vz rad_parms • PRN satellite identification PRN_nn or ALL • X Y Z Position sigma (3 values) (m) • Vx Vy Vz Velocity sigma (3 values) (mm/s) • rad_parms Radiation parameter sigmas • up to 11 values • fraction 0-1 GAMIT/GLOBK Tutorial 7
Satellite orbit estimationapr_svs (continued) • Have global GPS sites to constrain orbits • apr_svs all 100 100 100 10 10 10 1R • Local data only, constrain orbit to apriori value • apr_svs all 0.1 0.1 0.1 0.01 0.01 0.01 0.01R • R at end of line means remaining radiation parameters GAMIT/GLOBK Tutorial 7
EOP parameters • Apriori uncertainties • apr_wob <X> <Y> <Xdot> <Ydot> • X Y pole position (mas) • Xdot Ydot rate of change (mas/day) • apr_ut1 <ut1> <ut1 dot> • <ut1> in mas, <ut1 dot> in (mas/day) • Process noise has same form • mar_wob <RWX> <RWY> <RWXd> <RWYd> • units are (mas2)/yr and (mas/day)2/yr GAMIT/GLOBK Tutorial 7
EOP parameters (continued) • mar_ut1 for for ut1 (mas2) and (mas/day)2/yr • Normally used in two forms: • Global network of stations • apr_wob 10 10 1 1 • apr_ut1 10 1 • Regional network (constrained) • apr_wob 0.2 0.2 0.02 0.02 • apr_ut1 0.2 0.02 GAMIT/GLOBK Tutorial 7
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 if constraints on UT1 are applied. • If local processing, then should be OK • If orbits were determined with different EOP tables, then UT1 should be loosened GAMIT/GLOBK Tutorial 7
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 GAMIT/GLOBK Tutorial 7
File commands • A number of commands are used to control the files read by globk • apr_file <name> lets a new apriori coordinate file be used • Format is: • 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 decimal years GAMIT/GLOBK Tutorial 7
Apriori position files • apr_files commands can be issued multiple times with the latest values taken • If not specified, GAMIT apriori coordinates are used (no velocities) • EXTENDED option allows more complex behaviors (see globk.hlp) GAMIT/GLOBK Tutorial 7
Orbit files • When single days are processed, orbits from GAMIT solution will be used by default • For multiple days, with globk, the make_svs command is needed to generate an orbit file. • Form: • make_svs <file name> • <file name> will be overwritten • Command must be near top of command file. GAMIT/GLOBK Tutorial 7
EOP files • GAMIT EOP are used by default, but can be changed with in_pmu command • Form: • in_pmu <file name> • Format of file is • yy mm dd hr min Xpole +- Ypole +- UT1-AT +- • Must be uniformly spaced • Pole in arc-seconds, UT1 in time-seconds GAMIT/GLOBK Tutorial 7
Earthquake files • It is possible to automatically account for displacement caused by earthquakes with the earthquake file • Main functions: • specify earthquakes with 2-char code • rename sites • Rename command: • Rename <old> <new> [HFile code] [Epoch ranges] [Position shift] GAMIT/GLOBK Tutorial 7
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> • The rename option cause site to renamed from xxxx_GPS to xxxx_G[Code] GAMIT/GLOBK Tutorial 7
GLORG • Glorg allows coordinate systems to be defined by applying explicitly rotations and translations rather than tightly constraining some stations • It can be run as a separate program or during the globk run itself GAMIT/GLOBK Tutorial 7
Glorg imbedded commands • 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 • Next lecture discussed glorg GAMIT/GLOBK Tutorial 7
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) GAMIT/GLOBK Tutorial 7
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 GAMIT/GLOBK Tutorial 7
PRT_OPT, ORG_OPT options • 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 -- Echo globk command file into output file • Main use of these options is to keep output files small GAMIT/GLOBK Tutorial 7
Command file layout • In general, the commands in globk can appear in any order • They can be repeated with later version replacing earlier ones • e.g. apr_neu all 10 10 10 0 0 0 • apr_neu iisc_gps 0.01 0.01 0.01 0 0 0 • would use 10 m constraints on all sites, except IISC which would be 10 mm • The following commands must appear before others: com_file, srt_file, make_svs, eq_file GAMIT/GLOBK Tutorial 7
Summary • Basics of Kalman filtering • Inputs to globk • Control of globk • Basic programs in the globk suite GAMIT/GLOBK Tutorial 7