Climb detection and categorization

Hi!

First of all, thanks for your effort for developing this tool, what an amazing work! Congratulations!

It would be nice that the tool could detect and categorize climbs (HC, 1, 2, 3, 4, 5) automatically, in a similar way to Runalyze which uses the FIETS index in order to estimate the climb ranking by means of the length and gradient of the climb.

Thanks!

1 Like

I have added a custom interval field for that. Click “Fields” under the ride timeline chart and search for it:

Hopefully I got the calculation right:

{
  let h = interval.max_altitude - interval.min_altitude
  console.log("h " + h + " max " + interval.max_altitude + " min " + interval.min_altitude)
  let d = interval.distance
  let t = (interval.max_altitude - 1000) / 1000
  console.log("h " + h + " d " + d + " t " + t);
  v = (h * h) / (d * 10) + (t > 0 ? t : 0)
  v
}
3 Likes

I added another one “Strava Climb Category” based on these references:

{
  let d = interval.distance
  let h = interval.max_altitude - interval.min_altitude
  let grade = Math.floor(h * 100 / d)
  let score = grade * d
  console.log("grade " + grade + " d " + d + " score " + score)
  let v = " "
  if (d >= 300 && grade >= 3) {
    if (score > 80000) v = "HC"
    else if (score > 64000) v = "Cat 1"
    else if (score > 32000) v = "Cat 2"
    else if (score > 16000) v = "Cat 3"
    else if (score > 8000) v = "Cat 4"
  }
  v
}

1 Like