Silly questions probably, but I won't know that until I ask...
Given a GPS track, with 1 track point per second, including latitude, longitude and elevation:
1) When you parse the track, what does qualify as a grade/gradient/hill? Are 2 consecutive track points with an increased elevation a hill?
If you have 10 consecutive track points with an increased elevation, followed by 5 track points with no increase in elevation, followed by 10 track points with an increase in elevation, does that qualify as a hill?
2) Once you are done scanning a track, and you have identified a set of segments that qualify as hills, how do you generalize that to define the average grade of the entire track?
3) What about downhill segments? How do they influence the average grade of the track?
Sorry again for asking such trivial questions...