Newton Hills Treadmill Program

I was training for the Boston Marathon which of course is in April. I live in Western New York, and the weather leading up to the Boston Marathon sucks for running outside. The roads are often covered with snow, ice, or slush. And temperatures can be well below freezing. Basically it’s not much fun training outside during the winter, and can be downright dangerous at times. Often the shoulders of the road are piled with snow, forcing you to run in the road. Then you really have to worry about cars.
I was curious if anyone had developed a simulation of the Newton Hills from the Boston Marathon course for the treadmill. I did a search and found some different ones. I like one by Ryan Hall, though he had you running like 12 miles before you even got to the hills. I was trying to put together something I could do for an hour workout. So instead of running the 12 miles before hand, I start off running on a 0% grade for a mile, then go straight into the hills. When the winter weather kept me from running outside, I would do this workout. Usually two or three times a week. When I ran it, I worked to keep my heart rate between 75% and 80% of my maximum heart rate. I didn’t normally do a warm up, but I would stretch sometimes. I found that over the weeks and months I did it, I got faster and faster. When I ran the Boston Marathon last week, the Newton Hills were no big deal. I felt like I had run them dozens of times.

Here is the Newton Hills simulation I did on my treadmill:

Miles 0-1 @ 0% grade
Miles 1-1.7 @ 3% grade
Miles 1.7-2.7 @ 1% grade
Miles 2.7-3.0 @ 6% grade
Miles 3.0-4.4 @ 1% grade
Miles 4.4-4.8 @ 4% grade
Miles 4.8-5.4 @ 1% grade
Miles 5.4-5.8 @ 6% grade
Miles 5.8- @ 0% grade

I have a little printout of this program taped to my treadmill. Then I watch the distance readout on the treadmill display and adjust the grade. I also adjust the speed since as the grade goes up, I need to reduce the speed to keep my heart rate in the 75-80% range. I would love to program my treadmill to do this workout, but the user defined programs on my treadmill, go by time, and not distance. So I just do it manually.