[teqc] helpful tip of week 1902

Lou Estey lou at unavco.org
Tue Jun 21 08:50:00 MDT 2016


This week's tip:  a "qc" 'full' involving navigation messages depends on
the navigation messages being used

Sounds obvious, right?  But too many times when there is a mystery qc result, this
major detail seems to be overlooked.  Just last week I was sent an hourly qc result
from an experienced teqc user which showed lots of good data in the ASCII time plot:

SV+|-----------|-----------|-----------|-----------|-----------|-----------+ SV
  20|                    coo 2 2cooIooIocooIIoooooo   ooooooooooooooooooooooo| 20
   7|                                                                       c|  7
  29|                                          ooo  cooooo Moooooo1oooooooooo| 29
  15|                                                          oooooooooooooo| 15
  30|                                                           o Ioooooooooo| 30
R 6|************************************************************************|R 6
R22|************************************************************************|R22
R 5|****************************************************:                   |R 5
R20|************************************************************************|R20
R19|********::I*I                                                           |R19
R21|***********************************************************************?|R21
R 7|************************************************************************|R 7
R 8|                                         *******************************|R 8
   5|oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo|  5
   6|oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo|  6
  25|ooooooooooo        c  M c       MIoooooooooooMoo5oc  2ooo Z MII        o| 25
   9|oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo|  9
  13|oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo| 13
  19|oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo| 19
E26|ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss|E26
  17|oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo| 17
S27|sssssssssssssssssssssssssssssssssssssssssssssIsIssssssssssIssssssssssss5|S27
E14|ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss|E14
  12|oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo| 12
   2|oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo|  2
S28|ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss|S28
S29|cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc|S29
E20|cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc|E20
S37|cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc|S37
S40|cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc|S40

but:

Poss. # of obs epochs   :    120
Epochs w/ observations  :    120
Epochs repeated         :      0  (0.00%)
Possible obs >   0.0 deg:      5
Possible obs >  10.0 deg:      3
Complete obs >  10.0 deg:      0
  Deleted obs >  10.0 deg:      0
   Masked obs <  10.0 deg:      0
...
        first epoch    last epoch    hrs   dt  #expt  #have   %   mp1   mp2  o/slps
SUM 16  6 15 13:00 16  6 15 13:59 1.000   30      3      0   0  0.35  0.32      0

Only five observations total (above the horizon), only three expected 3 observations (above
10 degrees = the elevation cutoff mask), zero observations, 0%.  Very strange.

The major clues as to what happened are here in the long qc report:

   SV  #+hor <ele> #+mask <ele> #reprt #compl    L1     L2     P1     P2     C1     C2     L5     C5
--- ------ ----- ------ ----- ------ ------ ------ ------ ------ ------ ------ ------ ------ ------
G20      1 15.58      1 15.58      0      0      0      0      0      0      0      0      0      0
G07      1  8.33      0 90.00      0      0      0      0      0      0      0      0      0      0
G29      1 14.19      1 14.19      0      0      0      0      0      0      0      0      0      0
G15      1  9.63      0 90.00      0      0      0      0      0      0      0      0      0      0
G30      1 10.80      1 10.80      0      0      0      0      0      0      0      0      0      0
R06      0 90.00      0 90.00      0      0      0      0      0      0      0      0      0      0
R22      0 90.00      0 90.00      0      0      0      0      0      0      0      0      0      0
R05      0 90.00      0 90.00      0      0      0      0      0      0      0      0      0      0
R20      0 90.00      0 90.00      0      0      0      0      0      0      0      0      0      0
R19      0 90.00      0 90.00      0      0      0      0      0      0      0      0      0      0
R21      0 90.00      0 90.00      0      0      0      0      0      0      0      0      0      0
R07      0 90.00      0 90.00      0      0      0      0      0      0      0      0      0      0
R08      0 90.00      0 90.00      0      0      0      0      0      0      0      0      0      0
G05*     0  0.00      0  0.00    120    120    120    120    120    120    120      0      0      0
G06*     0  0.00      0  0.00    120    120    120    120    120    120    120      0    120    120
G25*     0  0.00      0  0.00     64     59     64     57     57     57     64      0     59     59
G09*     0  0.00      0  0.00    120    120    120    120    120    120    120      0    120    120
G13*     0  0.00      0  0.00    120    120    120    120    120    120    120      0      0      0
G19*     0  0.00      0  0.00    120    120    120    120    120    120    120      0      0      0
E26*     0  0.00      0  0.00    120    120    120      0      0      0    120      0    120    120
G17*     0  0.00      0  0.00    120    120    120    120    120    120    120      0      0      0
S27*     0  0.00      0  0.00    120    120    120      0      0      0    120      0    120    120
E14*     0  0.00      0  0.00    120    120    120      0      0      0    120      0    120    120
G12*     0  0.00      0  0.00    120    120    120    120    120    120    120      0      0      0
G02*     0  0.00      0  0.00    120    120    120    120    120    120    120      0      0      0
S28*     0  0.00      0  0.00    120    120    120      0      0      0    120      0    120    120
S29*     0  0.00      0  0.00    120    120    120      0      0      0    120      0      0      0
E20*     0  0.00      0  0.00    120      0    120      0      0      0    120      0      0      0
S37*     0  0.00      0  0.00    120    120    120      0      0      0    120      0      0      0
S40*     0  0.00      0  0.00    120    120    120      0      0      0    120      0      0      0
     * = SV with no NAV info (or not being used)

So the two RINEX nav files that were used, one for GPS and the other for GLONASS,
I guess were from the site's receiver, but these files did not contain navigation
messages for the SVs with most of the observation data.  Only a few SVs with
observational data had navigation messages (i.e. G20, G07, G29, G15, and G30).
These were used to compute the antenna position (which is probably suspect given
so few SVs and so few epochs) and from all that teqc's computation found only
3 observations (from G20, G29, and G30) above the elevation cutoff mask.

To prove that the RINEX navigation files used were the problem, I instead used
the combined broadcast RINEX nav files for GPS and GLONASS from CDDIS for that day,
and then:

Poss. # of obs epochs   :    120
Epochs w/ observations  :    120
Epochs repeated         :      0  (0.00%)
Possible obs >   0.0 deg:   2415
Possible obs >  10.0 deg:   1698
Complete obs >  10.0 deg:   1692
  Deleted obs >  10.0 deg:      0
   Masked obs <  10.0 deg:      5
...
        first epoch    last epoch    hrs   dt  #expt  #have   %   mp1   mp2 o/slps
SUM 16  6 15 13:00 16  6 15 13:59 1.000  30   1698   1692 100  0.32  0.32   1692

and in the full qc report:

   SV  #+hor <ele> #+mask <ele> #reprt #compl    L1     L2     P1     P2     C1     C2     L5     C5
--- ------ ----- ------ ----- ------ ------ ------ ------ ------ ------ ------ ------ ------ ------
G02    120 52.56    120 52.56    120    120    120    120    120    120    120      0      0      0
G05    120 48.84    120 48.84    120    120    120    120    120    120    120      0      0      0
G07    120  4.53      0 90.00      0      0      0      0      0      0      0      0      0      0
G09    120 19.10    114 19.61    114    114    114    114    114    114    114      0    114    114
G12    120 21.74    120 21.74    120    120    120    120    120    120    120      0      0      0
G13    120 24.88    120 24.88    120    120    120    120    120    120    120      0      0      0
G15     51  4.81      0 90.00      0      0      0      0      0      0      0      0      0      0
G19    120 48.00    120 48.00    120    120    120    120    120    120    120      0      0      0
G20    120  8.17     46 12.87     41     41     41     41     41     41     41      0      0      0
G25    120  8.80      0 90.00      0      0      0      0      0      0      0      0      0      0
G29     77  7.15     23 12.15     22     22     22     22     22     22     22      0      0      0
G06    120 44.94    120 44.94    120    120    120    120    120    120    120      0    120    120
G17    120 21.97    116 22.40    116    116    116    116    116    116    116      0      0      0
G30    120  5.48     10 10.40     10     10     10     10     10     10     10      0     10     10
R05    120 12.33     70 17.53     70     70     70     70     70     70     70      0      0      0
R06    120 62.68    120 62.68    120    120    120    120    120    120    120      0      0      0
R07    120 49.18    120 49.18    120    120    120    120    120    120    120      0      0      0
R08     78  7.12     23 12.03     23     23     23     23     23     23     23      0      0      0
R19     49  4.46      0 90.00      0      0      0      0      0      0      0      0      0      0
R20    120 45.86    120 45.86    120    120    120    120    120    120    120      0      0      0
R21    120 66.19    120 66.19    120    120    120    120    120    120    120      0      0      0
R22    120 17.91     96 20.50     96     96     96     96     96     96     96      0      0      0
E26*     0  0.00      0  0.00    120    120    120      0      0      0    120      0    120    120
S27*     0  0.00      0  0.00    120    120    120      0      0      0    120      0    120    120
E14*     0  0.00      0  0.00    120    120    120      0      0      0    120      0    120    120
S28*     0  0.00      0  0.00    120    120    120      0      0      0    120      0    120    120
S29*     0  0.00      0  0.00    120    120    120      0      0      0    120      0      0      0
E20*     0  0.00      0  0.00    120      0    120      0      0      0    120      0      0      0
S37*     0  0.00      0  0.00    120    120    120      0      0      0    120      0      0      0
S40*     0  0.00      0  0.00    120    120    120      0      0      0    120      0      0      0
     * = SV with no NAV info (or not being used)

Were the original RINEX navigation files that were used corrupt?  No.  As standalone
RINEX nav files, they were fine.  Aok.  Perfect.  They were just pretty useless to use
on this set of observation data.

Similarly, a few weeks ago another teqc user sent a qc report that was showing
a very strange antenna position ... or "positions", because teqc was reporting
that the position was jumping around a lot.  A quick look showed that the user
was tracking not only an "unhealthy" GPS SV, but this one (G10) had even been
decommissioned a month or so earlier.  The health status of an SV is in the
navigation message (and is in the RINEX nav equivalent).  The default behaviour
of teqc is to use all supplied SVs, healthy or not:

[3085] teqc +help | grep health
                  +unhealthy               allow use of unhealthy navigation messages if found (default)
                  -unhealthy               don't allow use of unhealthy navigation messages if found

However, using unhealthy SVs (esp. ones that have been decommissioned) is risky.
To filter out GPS PRN 10, one can include '-G10'.  Or one can filter out all unhealthy
SVs with the '-unhealthy' option.  And, keep in mind that if you are going to track
both healthy and unhealthy SVs, then you might (and probably will) end up with one
or two problems at some point.

I've also seen RINEX navigation messages that had a very wrong value in one
of the key orbital parameters for an SV.  (This will also send teqc's position
solution into a tail spin.)  Be on the lookout for a single SV's harmful influence
on the position solution.

I could find plenty more examples of problematic navigation messages if I dug
around in the emails sent to me over the years by users; the two above are just
recent examples.  The upshot is that when you are doing a full qc -- using
navigation messages for orbit computation -- weird problems might not be due
to the observation data.  The problems might very well be with the navigation
messages you are using:

- Try a qc "lite" (without navigation messages).  Does the qc "lite" look good?

- Look for unhealthy SVs; if any are found, try filtering them out.

- Try using the combined broadcast RINEX nav files from CDDIS or another center
(and filter out unhealthy SVs).

Happy teqc-ing!

cheers,
--lou

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Louis H. Estey, Ph.D.              office:  [+001] 303-381-7456
UNAVCO, 6350 Nautilus Drive           FAX:  [+001] 303-381-7451
Boulder, CO  80301-5554            e-mail:  lou  unavco.org
      WWW:  http://www.unavco.org   http://jules.unavco.org

"If the universe is the answer, what is the question?"
                                                -- Leon Lederman
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Past helpful tips:

week 1894: using teqc config files - http://postal.unavco.org/pipermail/teqc/2016/002067.html
week 1895: qc of high-rate data - http://postal.unavco.org/pipermail/teqc/2016/002071.html
week 1896: UNIX/Linux shells for Windows - http://postal.unavco.org/pipermail/teqc/2016/002072.html
week 1897: '-' vs. '+' teqc options - http://postal.unavco.org/pipermail/teqc/2016/002076.html
week 1898: auto-identification of formats - http://postal.unavco.org/pipermail/teqc/2016/002092.html
week 1899: auto-identification vs. format flags - http://postal.unavco.org/pipermail/teqc/2016/002096.html
week 1900: square brackets in options - http://postal.unavco.org/pipermail/teqc/2016/002105.html
week 1901: using option '+mds' - http://postal.unavco.org/pipermail/teqc/2016/002108.html




More information about the teqc mailing list