Skip to content

Instantly share code, notes, and snippets.

@joedougherty
Last active August 25, 2016 15:06
Show Gist options
  • Save joedougherty/c83540cdc518d2858c5fd9320fe27957 to your computer and use it in GitHub Desktop.
Save joedougherty/c83540cdc518d2858c5fd9320fe27957 to your computer and use it in GitHub Desktop.
How do different river sprints affect overall avg mph?
def avg_speed(distance_in_miles, time_in_minutes):
time_in_hrs = time_in_minutes/60.0
return float(distance_in_miles)/float(time_in_hrs)
def river_sprint(avg_mph, river_distance=4.5):
"""
Return the time it would take (in minutes) to
sprint the river at speed given by avg_mph.
"""
return (float(river_distance)/float(avg_mph))*60
def model_a_river_sprint(pre_river_distance, pre_river_time_in_minutes, river_sprint_proposed_avg_mph, river_distance=4.5):
pre_river_sprint = avg_speed(pre_river_distance, pre_river_time_in_minutes)
complete_ride_distance = pre_river_distance + river_distance
complete_ride_time = pre_river_time_in_minutes + river_sprint(river_sprint_proposed_avg_mph, river_distance)
new_average = avg_speed(complete_ride_distance, complete_ride_time)
print("Average ride speed (pre-river): \t{}".format(pre_river_sprint))
print("Proposed river sprint avg speed: \t{}".format(river_sprint_proposed_avg_mph))
print("Average speed including river sprint: \t{}".format(new_average))
print("+/- difference post river sprint: \t{}".format(new_average-pre_river_sprint))
print("-----------------------------------------\n")
ride_dist = 20 # This sounds just about right for 2 hills up to Falls Bridge
time_ridden_before_river = 75 # in minutes!
for speed in range(20, 26):
model_a_river_sprint(ride_dist, time_ridden_before_river, speed)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment