diff options
Diffstat (limited to 'lib/postrunner/HRV_Analyzer.rb')
-rw-r--r-- | lib/postrunner/HRV_Analyzer.rb | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/postrunner/HRV_Analyzer.rb b/lib/postrunner/HRV_Analyzer.rb index 664f7c9..116561b 100644 --- a/lib/postrunner/HRV_Analyzer.rb +++ b/lib/postrunner/HRV_Analyzer.rb @@ -170,6 +170,16 @@ module PostRunner predictor.insert(dt) end end + + # The accumulated R-R intervals tend to be slightly larger than the + # total timer time measured by the device. It's unclear why this is the + # case, but I assume it's an accumulated measuring error. We calculate a + # correction factor and time-warp all timestamps so the total time + # aligns with the other data of the FIT file. We also correct the R-R + # intervals times accordingly. + time_warp_factor = @fit_file.total_timer_time / @timestamps.last + @timestamps.map! { |t| t * time_warp_factor } + @rr_intervals.map! { |t| t ? t * time_warp_factor : nil } end end |