|
7 | 7 | from sys import stdout |
8 | 8 |
|
9 | 9 | from cssrlib.rinex import rnxdec |
10 | | -from cssrlib.gnss import ecef2pos, timediff, ecef2enu |
11 | | -from cssrlib.gnss import rSigRnx, epoch2time, Nav, time2str |
| 10 | +from cssrlib.gnss import Nav, rSigRnx, ecef2pos, ecef2enu |
| 11 | +from cssrlib.gnss import epoch2time, time2doy, time2str, timediff |
12 | 12 | from cssrlib.pntpos import stdpos |
13 | 13 |
|
14 | | -if False: |
15 | | - xyz_ref = [-3962108.673, 3381309.574, 3668678.638] |
16 | | - navfile = '../data/doy2021-078/SEPT078M.21P' |
17 | | - obsfile = '../data/doy2021-078/SEPT078M.21O' |
| 14 | +# Start epoch and number of epochs |
| 15 | +# |
| 16 | +dataset = 3 |
| 17 | + |
| 18 | +if dataset == 0: # SETP078M.21O |
18 | 19 | ep = [2021, 3, 19, 12, 0, 0] |
19 | | -else: |
20 | | - xyz_ref = [-3962108.6726, 3381309.4719, 3668678.6264] |
| 20 | + xyz_ref = [-3962108.6617, 3381309.5232, 3668678.6410] |
| 21 | +elif dataset == 1: # SETP1890.23O |
| 22 | + ep = [2023, 7, 8, 4, 0, 0] |
| 23 | + xyz_ref = [-3962108.7063, 3381309.5703, 3668678.6690] |
| 24 | +elif dataset == 2: # SETP223Z.23O |
21 | 25 | ep = [2023, 8, 11, 21, 0, 0] |
22 | | - navfile = '../data/brdc/BRD400DLR_S_20232230000_01D_MN.rnx' |
23 | | - # navfile = '../data/brdc/BRDC00IGS_R_20232230000_01D_MN.rnx' |
24 | | - # navfile = '../data/doy2023-223/NAV223.23p' |
25 | | - # obsfile = '../data/doy2023-223/SEPT223Z.23O' # MOSAIC-CLAS |
26 | | - obsfile = '../data/doy2023-223/SEPT223Y.23O' # PolaRX5 |
27 | | - |
28 | | -pos_ref = ecef2pos(xyz_ref) |
29 | | -nep = 360 |
| 26 | + xyz_ref = [-3962108.7063, 3381309.5703, 3668678.6690] |
| 27 | +elif dataset == 3: # 046r_rnx.obs |
| 28 | + ep = [2025, 2, 15, 17, 0, 0] |
| 29 | + xyz_ref = [-3962108.6819, 3381309.5707, 3668678.6750] |
| 30 | +else: |
| 31 | + print("ERROR: no RINEX data set selected!") |
| 32 | + exit(1) |
30 | 33 |
|
31 | 34 | time = epoch2time(ep) |
| 35 | +year = ep[0] |
| 36 | +doy = int(time2doy(time)) |
| 37 | + |
| 38 | +nep = 900*4 |
| 39 | + |
| 40 | +bdir = '../data/doy{:04d}-{:03d}/'.format(year, doy) |
| 41 | + |
| 42 | +if dataset == 0: |
| 43 | + let = chr(ord('A')+ep[3]) |
| 44 | + navfile = bdir+'SEPT{:03d}{}.{:02d}P'.format(doy, let, year % 2000) |
| 45 | + obsfile = bdir+'SEPT{:03d}{}.{:02d}O'.format(doy, let, year % 2000) |
| 46 | +if dataset == 1: |
| 47 | + let = '0' |
| 48 | + navfile = bdir+'SEPT{:03d}{}.{:02d}P'.format(doy, let, year % 2000) |
| 49 | + obsfile = bdir+'SEPT{:03d}{}.{:02d}O'.format(doy, let, year % 2000) |
| 50 | +elif dataset == 2: |
| 51 | + # let = 'Z' # MOSAIC-CLAS |
| 52 | + let = 'Y' # PolaRX5 |
| 53 | + navfile = '../data/brdc/' + \ |
| 54 | + 'BRD400DLR_S_{:04d}{:03d}0000_01D_MN.rnx'.format(year, doy) |
| 55 | + obsfile = bdir+'SEPT{:03d}{}.{:02d}O'.format(doy, let, year % 2000) |
| 56 | +else: |
| 57 | + let = chr(ord('a')+ep[3]) |
| 58 | + navfile = bdir+'{:03d}{}_rnx.nav'.format(doy, let) |
| 59 | + obsfile = bdir+'{:03d}{}_rnx.obs'.format(doy, let) |
| 60 | + |
| 61 | +pos_ref = ecef2pos(xyz_ref) |
32 | 62 |
|
33 | 63 | # Define signals to be processed |
34 | 64 | # |
35 | | -sigs = [rSigRnx("GC1C"), rSigRnx("EC1C"), rSigRnx("JC1C"), |
36 | | - rSigRnx("GL1C"), rSigRnx("EL1C"), rSigRnx("JL1C"), |
37 | | - rSigRnx("GS1C"), rSigRnx("ES1C"), rSigRnx("JS1C")] |
38 | | - |
39 | | -# sigs = [rSigRnx("GC1C"), rSigRnx("GL1C"), rSigRnx("GS1C")] |
| 65 | +gnss = "GEJ" |
| 66 | +sigs = [] |
| 67 | +if 'G' in gnss: |
| 68 | + sigs.extend([rSigRnx("GC1C"), rSigRnx("GL1C"), rSigRnx("GS1C")]) |
| 69 | +if 'E' in gnss: |
| 70 | + sigs.extend([rSigRnx("EC1C"), rSigRnx("EL1C"), rSigRnx("ES1C")]) |
| 71 | +if 'C' in gnss: |
| 72 | + sigs.extend([rSigRnx("CC2I"), rSigRnx("CL2I"), rSigRnx("CS2I")]) |
| 73 | +if 'J' in gnss: |
| 74 | + sigs.extend([rSigRnx("JC1C"), rSigRnx("JL1C"), rSigRnx("JS1C")]) |
40 | 75 |
|
41 | 76 | rnx = rnxdec() |
42 | 77 | rnx.setSignals(sigs) |
|
108 | 143 | if obs.t.time == 0: |
109 | 144 | break |
110 | 145 |
|
| 146 | + # Send line-break to stdout |
| 147 | + # |
| 148 | + stdout.write('\n') |
| 149 | + |
| 150 | + # Close RINEX observation file |
| 151 | + # |
111 | 152 | rnx.fobs.close() |
112 | 153 |
|
| 154 | + # Close output file |
| 155 | + # |
| 156 | + if nav.fout is not None: |
| 157 | + nav.fout.close() |
| 158 | + |
113 | 159 |
|
114 | 160 | fig_type = 1 |
115 | 161 | ylim_h = 2.0 |
|
0 commit comments