@@ -13,28 +13,28 @@ use crate::plot::{
13
13
} ;
14
14
15
15
pub fn single_clock ( cggtts : & CGGTTS , ctx : & mut PlotContext ) {
16
- let sv: Vec < _ > = cggtts. tracks_iter ( ) . map ( |trk| trk. sv ) . unique ( ) . collect ( ) ;
16
+ let sv: Vec < _ > = cggtts. tracks ( ) . map ( |trk| trk. sv ) . unique ( ) . collect ( ) ;
17
17
let codes: Vec < _ > = cggtts
18
- . tracks_iter ( )
18
+ . tracks ( )
19
19
. map ( |trk| trk. frc . clone ( ) )
20
20
. unique ( )
21
21
. collect ( ) ;
22
22
23
23
//REFSV/SRSV analysis
24
24
ctx. add_timedomain_2y_plot (
25
- & format ! ( "{} REFSV/SRSV" , cggtts. header . station) ,
25
+ & format ! ( "{} REFSV/SRSV" , cggtts. station) ,
26
26
"REFSV [s]" ,
27
27
"SRSV [s/s]" ,
28
28
) ;
29
29
for sv in & sv {
30
30
for code in & codes {
31
31
let epochs: Vec < _ > = cggtts
32
- . tracks_iter ( )
32
+ . tracks ( )
33
33
. filter_map ( |trk| if trk. sv == * sv { Some ( trk. epoch ) } else { None } )
34
34
. collect ( ) ;
35
35
36
36
let refsv: Vec < _ > = cggtts
37
- . tracks_iter ( )
37
+ . tracks ( )
38
38
. filter_map ( |trk| {
39
39
if trk. sv == * sv {
40
40
Some ( trk. data . refsv )
@@ -45,7 +45,7 @@ pub fn single_clock(cggtts: &CGGTTS, ctx: &mut PlotContext) {
45
45
. collect ( ) ;
46
46
47
47
let srsv: Vec < _ > = cggtts
48
- . tracks_iter ( )
48
+ . tracks ( )
49
49
. filter_map ( |trk| {
50
50
if trk. sv == * sv {
51
51
Some ( trk. data . srsv )
@@ -76,19 +76,19 @@ pub fn single_clock(cggtts: &CGGTTS, ctx: &mut PlotContext) {
76
76
77
77
//REFSYS/SRSYS analysis
78
78
ctx. add_timedomain_2y_plot (
79
- & format ! ( "{} REFSYS/SRSYS" , cggtts. header . station) ,
79
+ & format ! ( "{} REFSYS/SRSYS" , cggtts. station) ,
80
80
"REFSYS [s]" ,
81
81
"SRSYS [s/s]" ,
82
82
) ;
83
83
for sv in & sv {
84
84
for code in & codes {
85
85
let epochs: Vec < _ > = cggtts
86
- . tracks_iter ( )
86
+ . tracks ( )
87
87
. filter_map ( |trk| if trk. sv == * sv { Some ( trk. epoch ) } else { None } )
88
88
. collect ( ) ;
89
89
90
90
let refsys: Vec < _ > = cggtts
91
- . tracks_iter ( )
91
+ . tracks ( )
92
92
. filter_map ( |trk| {
93
93
if trk. sv == * sv {
94
94
Some ( trk. data . refsys )
@@ -99,7 +99,7 @@ pub fn single_clock(cggtts: &CGGTTS, ctx: &mut PlotContext) {
99
99
. collect ( ) ;
100
100
101
101
let srsys: Vec < _ > = cggtts
102
- . tracks_iter ( )
102
+ . tracks ( )
103
103
. filter_map ( |trk| {
104
104
if trk. sv == * sv {
105
105
Some ( trk. data . srsys )
@@ -130,19 +130,19 @@ pub fn single_clock(cggtts: &CGGTTS, ctx: &mut PlotContext) {
130
130
131
131
//TROPO
132
132
ctx. add_timedomain_2y_plot (
133
- & format ! ( "{} MDTR/SMDT" , cggtts. header . station) ,
133
+ & format ! ( "{} MDTR/SMDT" , cggtts. station) ,
134
134
"MDTR [s]" ,
135
135
"SMDT [s/s]" ,
136
136
) ;
137
137
for sv in & sv {
138
138
for code in & codes {
139
139
let epochs: Vec < _ > = cggtts
140
- . tracks_iter ( )
140
+ . tracks ( )
141
141
. filter_map ( |trk| if trk. sv == * sv { Some ( trk. epoch ) } else { None } )
142
142
. collect ( ) ;
143
143
144
144
let mdtr: Vec < _ > = cggtts
145
- . tracks_iter ( )
145
+ . tracks ( )
146
146
. filter_map ( |trk| {
147
147
if trk. sv == * sv {
148
148
Some ( trk. data . mdtr )
@@ -153,7 +153,7 @@ pub fn single_clock(cggtts: &CGGTTS, ctx: &mut PlotContext) {
153
153
. collect ( ) ;
154
154
155
155
let smdt: Vec < _ > = cggtts
156
- . tracks_iter ( )
156
+ . tracks ( )
157
157
. filter_map ( |trk| {
158
158
if trk. sv == * sv {
159
159
Some ( trk. data . smdt )
@@ -185,28 +185,28 @@ pub fn single_clock(cggtts: &CGGTTS, ctx: &mut PlotContext) {
185
185
186
186
pub fn clock_comparison ( workspace : & Path , pool : & Vec < CGGTTS > , ctx : & mut PlotContext ) {
187
187
let ref_clock = & pool[ 0 ] ;
188
- info ! ( "{} is considered reference clock" , ref_clock. header . station) ;
188
+ info ! ( "{} is considered reference clock" , ref_clock. station) ;
189
189
190
- let ref_sv: Vec < _ > = ref_clock. tracks_iter ( ) . map ( |trk| trk. sv ) . unique ( ) . collect ( ) ;
190
+ let ref_sv: Vec < _ > = ref_clock. tracks ( ) . map ( |trk| trk. sv ) . unique ( ) . collect ( ) ;
191
191
let ref_codes: Vec < _ > = ref_clock
192
- . tracks_iter ( )
192
+ . tracks ( )
193
193
. map ( |trk| trk. frc . clone ( ) )
194
194
. unique ( )
195
195
. collect ( ) ;
196
196
let refsys: HashMap < Epoch , f64 > = ref_clock
197
- . tracks_iter ( )
197
+ . tracks ( )
198
198
. map ( |trk| ( trk. epoch , trk. data . refsys ) )
199
199
. collect ( ) ;
200
200
201
201
for i in 1 ..pool. len ( ) {
202
202
ctx. add_timedomain_plot (
203
- & format ! ( "{}-{}" , ref_clock. header . station, pool[ i] . header . station) ,
203
+ & format ! ( "{}-{}" , ref_clock. station, pool[ i] . station) ,
204
204
"Delta [s]" ,
205
205
) ;
206
206
for sv in & ref_sv {
207
207
for code in & ref_codes {
208
208
let x_err: Vec < _ > = ref_clock
209
- . tracks_iter ( )
209
+ . tracks ( )
210
210
. filter_map ( |trk| {
211
211
if trk. sv == * sv && & trk. frc == code {
212
212
if refsys. get ( & trk. epoch ) . is_some ( ) {
@@ -220,7 +220,7 @@ pub fn clock_comparison(workspace: &Path, pool: &Vec<CGGTTS>, ctx: &mut PlotCont
220
220
} )
221
221
. collect ( ) ;
222
222
let t_err: Vec < _ > = ref_clock
223
- . tracks_iter ( )
223
+ . tracks ( )
224
224
. filter_map ( |trk| {
225
225
if trk. sv == * sv && & trk. frc == code {
226
226
refsys
@@ -243,31 +243,31 @@ pub fn clock_comparison(workspace: &Path, pool: &Vec<CGGTTS>, ctx: &mut PlotCont
243
243
}
244
244
}
245
245
246
- let mut fd = File :: create ( workspace. join ( & pool[ 0 ] . header . station ) )
246
+ let mut fd = File :: create ( workspace. join ( & pool[ 0 ] . station ) )
247
247
. expect ( "failed to create textfile: permission denied" ) ;
248
248
249
249
writeln ! ( fd, "t, CLOCK(A), CLOCK(B), SV, (elev[°], azi[°]) @REF, (elev[°], azi[°]) @CLOCK, SIGNAL, CLOCK(A) - CLOCK(B) [s]" )
250
250
. expect ( "failed to generate textfile" ) ;
251
251
252
- for trk in ref_clock. tracks_iter ( ) {
252
+ for trk in ref_clock. tracks ( ) {
253
253
let ref_t = trk. epoch ;
254
254
let ref_sv = trk. sv ;
255
- let ( ref_elev, ref_azim) = ( trk. elevation_deg , trk. azimuth_deg ) ;
255
+ let ( ref_elev, ref_azim) = ( trk. elevation , trk. azimuth ) ;
256
256
let ref_frc = & trk. frc ;
257
257
for i in 1 ..pool. len ( ) {
258
258
let track = pool[ i]
259
- . tracks_iter ( )
259
+ . tracks ( )
260
260
. filter ( |trk| trk. epoch == ref_t && trk. sv == ref_sv && trk. frc == * ref_frc)
261
261
. reduce ( |trk, _| trk) ;
262
262
if let Some ( b_trk) = track {
263
- let ( b_elev, b_azim) = ( b_trk. elevation_deg , b_trk. azimuth_deg ) ;
263
+ let ( b_elev, b_azim) = ( b_trk. elevation , b_trk. azimuth ) ;
264
264
let dt = b_trk. data . refsys - trk. data . refsys ;
265
265
writeln ! (
266
266
fd,
267
267
"{:?}, {}, {}, {}, ({:.2E}, {:.2E}), ({:.2E}, {:.2E}), {}, {:.3E}" ,
268
268
ref_t,
269
- pool[ i] . header . station,
270
- pool[ 0 ] . header . station,
269
+ pool[ i] . station,
270
+ pool[ 0 ] . station,
271
271
ref_sv,
272
272
ref_elev,
273
273
ref_azim,
0 commit comments