Doing power-data analysis in the Clojure programming language

A light bike doesn't replace good fitness.

Moderator: Moderator Team

Post Reply
helldiver
Posts: 85
Joined: Sat Dec 20, 2014 5:46 pm
Location: Slovakia
Contact:

by helldiver

If anybody here is interested in doing power-data analysis the geeky way, here is a tool I put together: https://github.com/janherich/fit-to-edn.
You can query for maximum power, speed, cadence, hr, etc. of any interval in the directory containing your .fit files, interval could be instantaneous (1s peak value) or any other length including the whole ride, you can specify arithmetic average, or normalized-interval (NP as developed by the Dr. Andrew Coggan).
You can also specify if you want to process only power (or any other metrics) recorded while moving, or skip records with zero-power (coasting).

The tool uses standard FitSDK under the hood and should also correctly work with any devices creating .fit files (tested with garmin edge520 and bryton310, golden-cheetah for example incorrectly processes .fit files created by bryton devices).

There are more features on the roadmap, including:

1. More weighted-average algorithms, including x-power (used by golden-cheetah and strava) and personalised one, where you can specify your lactate curve and the weighted average algorithm will leverage it, something which neither NP, nor X-power does.

2. Filtering input .fit files by date and date-ranges, so you can specify something like "query only among files from last season", or "query only among files less then 3 months old"

3. Implementing virtual-elevation profile for Cda estimation by Robert Chung method, this will include some graphic output for comparing virtual-elevation and real-elevation profiles.
I'm also thinking about more advanced stuff, like estimating atmospheric pressure from the altitude records (which are very often created by barometric altimeter sensors) and using that in the equation, so it will be more accurate when that value changed during the ride (or your test loop included significant altitude difference).

Let me know if you find this interesting, or need any help in using the tool, I'm more then happy to help you!

by Weenie


Visit starbike.com Online Retailer for HighEnd cycling components
Great Prices ✓    Broad Selection ✓    Worldwide Delivery ✓

www.starbike.com



Post Reply