|
19 | 19 | from cssrlib.rtcm import rtcm |
20 | 20 | from cssrlib.pppssr import pppos |
21 | 21 | from cssrlib.rinex import rnxdec |
| 22 | +from cssrlib.cssrlib import sCType |
22 | 23 |
|
23 | 24 |
|
24 | 25 | # Select test case |
25 | 26 | # |
26 | | -icase = 2 |
| 27 | +icase = 3 |
27 | 28 |
|
28 | 29 | # Start epoch and number of epochs |
29 | 30 | # |
|
36 | 37 | xyz_ref = [4186704.2262, 834903.7677, 4723664.9337] |
37 | 38 | file_rtcm = '../data/doy2023-229/idd2023229c.rtc' |
38 | 39 | file_rtcm_log = '../data/doy2023-229/idd2023229c.log' |
| 40 | + gnss = "GE" |
| 41 | + cs_mask = 1 << sCType.CLOCK | 1 << sCType.ORBIT | 1 << sCType.CBIAS |
39 | 42 |
|
40 | 43 | elif icase == 2: # JPL GDGPS Mosaic-X5 |
41 | 44 |
|
|
46 | 49 | xyz_ref = [-3962108.7007, 3381309.5532, 3668678.6648] |
47 | 50 | file_rtcm = '../data/doy2024-043/JPL32T2043h.rtcm3' |
48 | 51 | file_rtcm_log = '../data/doy2024-043/JPL32T2043h.log' |
| 52 | + gnss = "GE" |
| 53 | + cs_mask = 1 << sCType.CLOCK | 1 << sCType.ORBIT | 1 << sCType.CBIAS |
| 54 | + |
| 55 | +elif icase == 3: # JPL GDGPS (w/o code bias) JAVAD DELTA-3S |
| 56 | + |
| 57 | + ep = [2025, 6, 27, 0, 0, 0] |
| 58 | + navfile = '../data/doy2025-178/178a_rnx.nav' |
| 59 | + # navfile = '../data/doy2025-178/BRD400DLR_S_20251780000_01D_MN.rnx' |
| 60 | + obsfile = '../data/doy2025-178/178a_rnx.obs' |
| 61 | + xyz_ref = [-3962108.6836, 3381309.5672, 3668678.6720] |
| 62 | + # SSRA11JPL0 GPS+GAL orbit+clock corrs |
| 63 | + file_rtcm = '../data/doy2025-178/JPL11178a.rtcm3' |
| 64 | + file_rtcm_log = '../data/doy2025-178/JPL32T178a.log' |
| 65 | + gnss = "GE" |
| 66 | + cs_mask = 1 << sCType.CLOCK | 1 << sCType.ORBIT |
49 | 67 |
|
50 | 68 | time = epoch2time(ep) |
51 | 69 | year = ep[0] |
52 | 70 | doy = int(time2doy(time)) |
53 | 71 |
|
54 | 72 | nep = 900*4 |
| 73 | +# nep = 300 |
55 | 74 |
|
56 | 75 |
|
57 | 76 | # Set user reference position |
|
61 | 80 | # Define signals to be processed |
62 | 81 | # |
63 | 82 |
|
64 | | -if icase == 1: |
| 83 | +sigs = [] |
| 84 | + |
| 85 | +if icase in [1, 2]: |
65 | 86 |
|
66 | | - gnss = "GE" |
67 | | - sigs = [] |
68 | 87 | if 'G' in gnss: |
69 | 88 | sigs.extend([rSigRnx("GC1C"), rSigRnx("GC2W"), |
70 | 89 | rSigRnx("GL1C"), rSigRnx("GL2W"), |
|
74 | 93 | rSigRnx("EL1C"), rSigRnx("EL7Q"), |
75 | 94 | rSigRnx("ES1C"), rSigRnx("ES7Q")]) |
76 | 95 |
|
77 | | -elif icase == 2: |
| 96 | +elif icase == 3: |
78 | 97 |
|
79 | | - gnss = "GE" |
80 | | - sigs = [] |
81 | 98 | if 'G' in gnss: |
82 | | - sigs.extend([rSigRnx("GC1C"), rSigRnx("GC2W"), |
83 | | - rSigRnx("GL1C"), rSigRnx("GL2W"), |
84 | | - rSigRnx("GS1C"), rSigRnx("GS2W")]) |
| 99 | + sigs.extend([rSigRnx("GC1W"), rSigRnx("GC2W"), |
| 100 | + rSigRnx("GL1W"), rSigRnx("GL2W"), |
| 101 | + rSigRnx("GS1W"), rSigRnx("GS2W")]) |
85 | 102 | if 'E' in gnss: |
86 | 103 | sigs.extend([rSigRnx("EC1C"), rSigRnx("EC7Q"), |
87 | 104 | rSigRnx("EL1C"), rSigRnx("EL7Q"), |
88 | 105 | rSigRnx("ES1C"), rSigRnx("ES7Q")]) |
89 | 106 |
|
90 | | - |
91 | 107 | rnx = rnxdec() |
92 | 108 | rnx.setSignals(sigs) |
93 | 109 |
|
|
107 | 123 | cs.cssrmode = sCSSRTYPE.RTCM3_SSR |
108 | 124 | cs.inet = 0 |
109 | 125 |
|
110 | | -if icase == 2: # mask phase-bias for JPL GDGPS |
| 126 | +if icase in [2, 3]: # mask phase-bias for JPL GDGPS |
111 | 127 | cs.mask_pbias = True |
112 | 128 |
|
113 | 129 | if True: |
|
245 | 261 |
|
246 | 262 | # Call PPP module with HAS corrections |
247 | 263 | # |
248 | | - if (cs.lc[0].cstat & 0xe) == 0xe: |
| 264 | + if (cs.lc[0].cstat & cs_mask) == cs_mask: |
249 | 265 | ppp.process(obs, cs=cs) |
250 | 266 |
|
251 | 267 | # Save output |
|
0 commit comments