Swift analysis


Data

The SSR data is logged using BNC on pp1oc for the four JPL streams, and one CNES stream coming from igs-ip.products.net. There was an issue with the ASCII output for all streams, where the timetags of the first few minutes were incorrect. I deleted those epochs.

TBD for later: compare the decoded BNC ASCII data to the data dumped by Larry. They should match, as I had previously compared the ASCII-based orbits and clocks to SP3/CLK from CNES, but new versions of BNC might have unexpected behavior.

The observation data is taken from CDDIS: 30 second daily data in RINEX 3 format.

The navigation data is downloaded from BKG. It should be based on real-time data.

Processing

The processing is performed with the York-PPP client. The client natively accepts the BNC ASCII format as input for SSR data.

For now, the processing has been limited to GPS+Galileo, as there are suspicions of issues with the BeiDou processing.

L1 and L2 are processed for GPS, and E1 and E5b are processed for Galileo

For the CNES stream, the orbits are assumed to be at the L1/E1 APC, while they are assumed to be at the iono-free L1/L2 and E1/E5b for the JPL streams

The date for the data is August 4th, 2024

Float and fixed ambiguities

Based on the GPS (1C/2W) and GAL (1C/7Q) solution below

One figure is generated per satellite, with one column per frequency.

The top subfigures show the float and fixed ambiguities. A fixed ambiguity of zero on a certain epoch means that the ambiguity is not fixed on that epoch.

The middle subfigures show the difference between float and fixed ambiguities. The difference is ignoring epochs where there is no fixing

The bottom subfigures show the sqrt of the covariance of the float ambiguity (y-label incorrect).

Wind-ups

Wind-up comparison - 1) York modelled vs 2) rtgx

Wind-up comparison - 1) York modelled vs 2) York yaw input

Wind-up comparison - 1) rtgx vs 2) York yaw input

Comparing York-modelled wind-up to rtgx wind-up

Comparing yaw-based wind-up wind-up to rtgx wind-up

Figures and analysis

The reference positions are taken from the ITRF2020 JPL station database.

The numbers in the bottom subplots of the position figures represent the number of satellites. They have to be multiplied by two to obtain the number of ambiguities.

The "difference" time series are plotted for the uncombined ambiguities. In the York processing, each signal is processed independently (no ionosphere-free combination), and so each GPS satellite for example comes with an L1 ambiguity, and and L2 ambiguity. These uncombined ambiguities from all satellites, along with their covariances, are fed into the LAMBDA method, which returns a set of integers ambiguities. The figure here represents the difference between the float input ambiguity and the fixed integer ambiguity from LAMBDA.

The histogram figures show the same data as the time series, except that differences that are larger than one cycle in absolute value are not plotted. (I can wrap the larger values between +/- 1 cycle if that's preferred). Each bin in the histograms represents 0.01 cycle.

For reference, in the histograms, the wide-lane distribution is plotted as well. These widelanes are computed by simply taking the difference of the ambiguities from both frequencies (N1-N2) and are only plotted for reference. The fixin in the client is done in uncombined ("single-frequency") mode.

Name Corresponding area in Larry's dump Path
datd1oc_20981 JPL02dn_pp1la/ssr1 pp1la:10901 -> datd1oc:20981 (JPL02)
datd2dn_20935 JPL02dn_pp1la/ssr2/ pp1la:10902 -> datd2dn:20935 (JPL15)
datd2oc_20982 JPL02oc_dev10oc/ssr1/ dev10oc:10901 -> datd2oc:20982 (JPL02)
datd2dn_20936 JPL02oc_dev10oc/ssr2/ dev10oc:10902 -> datd2dn:20936 (JPL16)

Results 1C/2W 1C/7Q (JPLM)

Stream name Position error Difference between float and fixed ambiguities Histogram of the difference
SSRA00CNE0
datd1oc_20981
datd2dn_20935
datd2oc_20982
datd2dn_20936

Results 1W/2W 1C/7Q (JPLM)

Stream name Position error Difference between float and fixed ambiguities Histogram of the difference
SSRA00CNE0
datd1oc_20981
datd2dn_20935
datd2oc_20982
datd2dn_20936

Results GPS-only 1C/2W (JPLM)

Stream name Position error Difference between float and fixed ambiguities Histogram of the difference
SSRA00CNE0
datd1oc_20981
datd2dn_20935
datd2oc_20982
datd2dn_20936

Results Galileo-only 1C/7Q (JPLM)

Stream name Position error Difference between float and fixed ambiguities Histogram of the difference
SSRA00CNE0
datd1oc_20981
datd2dn_20935
datd2oc_20982
datd2dn_20936

Results GPS+GAL 1C/2W, with yaw input (JPLM)

Stream name Position error Difference between float and fixed ambiguities Histogram of the difference
SSRA00CNE0
datd1oc_20981
datd2dn_20935
datd2oc_20982
datd2dn_20936