Skip to content

Commit 0f83ba4

Browse files
authored
calculate DSG field (#6)
Signed-off-by: Guillaume W. Bres <[email protected]>
1 parent 141b446 commit 0f83ba4

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

cggtts/src/track/scheduler.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ impl SVTracker {
110110

111111
let (elev, azi) = match elev {
112112
Some(elev) => {
113-
// UTC epoch directly given
113+
// UTC epoch exists
114114
let azi = self
115115
.buffer
116116
.iter()
@@ -121,6 +121,7 @@ impl SVTracker {
121121
(elev.1.elevation, azi)
122122
},
123123
None => {
124+
/* linear interpolation */
124125
let elev: Vec<_> = self.buffer.iter().map(|(_, fit)| fit.elevation).collect();
125126
let (a, b) = linear_reg_2d(
126127
(t_xs[t_mid_index], elev[t_mid_index]),
@@ -136,7 +137,6 @@ impl SVTracker {
136137
);
137138

138139
let azi = a * t_mid_s + b;
139-
140140
(elev, azi)
141141
},
142142
};
@@ -171,6 +171,14 @@ impl SVTracker {
171171
let (srsys, srsys_b) = (fit[1], fit[0]);
172172
let refsys = srsys * t_mid_s + srsys_b;
173173

174+
let refsys_fit: Vec<_> = t_xs.iter().map(|t_s| srsys * t_s + srsys_b).collect();
175+
176+
let mut dsg = 0.0_f64;
177+
for refsys_fit in refsys_fit {
178+
dsg += (refsys_fit - refsys).powi(2);
179+
}
180+
dsg = dsg.sqrt();
181+
174182
let fit = polyfit(
175183
&t_xs,
176184
&self
@@ -216,14 +224,6 @@ impl SVTracker {
216224
let (smsi, smsi_b) = (fit[1], fit[0]);
217225
let msio = smsi * t_mid_s + smsi_b;
218226

219-
//let dsg = 0.0_f64;
220-
//// let mut dsg = t_xs
221-
//// .iter()
222-
//// .fold(0.0_f64, |acc, t_xs| acc + (srsys * t_xs + srsys_b).powi(2));
223-
//// dsg /= t_xs.len() as f64;
224-
//// dsg = dsg.sqrt();
225-
let dsg = 0.0_f64;
226-
227227
let trk_data = TrackData {
228228
refsv,
229229
srsv,

0 commit comments

Comments
 (0)