Wednesday, February 22, 2012

Grabbed My Coat And Grabbed My Hat

No morning weigh-in today: I overslept and was in "run through the house with my hair on fire" mode, trying to get out the door this morning, so there was no time for the niceties like coffee, breakfast or the scale. It was all for naught though, since there was an accident on Jugtown Mountain, the highway was a parking lot, and I was a half hour late to work anyway. Oh well, I'll make up the difference tonight...
No ride last night -- and there will apparently be no ride tonight either, since I forgot to charge my lights -- but I did have some success with the elevation profiles I was playing with. I haven't quite figured out how to use all of Gnuplot from octave, but I output my data to a file, which I used inside Gnuplot to make the exact plot I wanted. I then made a quick plot of my map, and combined the two for a really decent mockup. I'll post it here tonight.
After that it was Miller time, or at least, Brew Works Type A and fastnachts time... I met Anne and the crew (Donna, Erin, Brian, Jen, Nick, and later Matt and a friend of his) down there, pleasant evening.
Not sure what tonight will bring, maybe some laundry and some bike TLC -- the Turner and the Surly both need cleaning and lubing at the very least.

UPDATE Here's that map/profile:

Tuesday, February 21, 2012

Back To The Plotting Table

Morning weigh-in: 187.5#
Happy Phat Fastnacht!
So how did I spend last night, the first evening of my first rest week? Plotting more elevation profiles, of course! Part of what I want to do is use the more powerful Gnuplot features, and I also wanted to use octave to do any post-GRASS processing -- conveniently enough, octave uses Gnuplot to do its plotting, so that's two birds with one stone. (I also refined my method of getting the data out of GRASS and into a more standard CSV file, basically by piping it through an awk one-liner. In the end I might just use a simple awk script to do all the post-processing on the fly, and just pipe that output to Gnuplot. We'll see.)
Meanwhile, back at the ranch... On Sunday I chose Trex after all, and it was good but in some ways it may have been a mistake: despite the "Trex is never wet" hype, big sections of the place were a muddy mess, the trails were too short, and too steep, for the real "long slow distance" I needed. It was fun though, and I ran into a few other guys riding, as well as a kid on a unicycle, and Andrew, the guy building the trails. Beautiful day too.
Tonight is maybe a short recovery ride, or maybe more plotting fun, then it's Taco Night at the Brew Works.

Monday, February 20, 2012

February Recap

Morning weigh-in: 187# (not good)
Today starts the first rest week in my training program, so I thought I'd do a quick recap of where things stand:
Week        Workouts    Hours     Distance   Calories
1/23-1/29         4           5:02         52.0         3413
1/30-2/05         3           4:30         53.1         3412
2/06-2/12         4           8:14         81.6         6645
2/13-2/19         4           7:34         78.0         5531
(There are four weeks in there instead of three, because I started my first "week" early to make up for training time lost to a business trip.)
Not too shabby, though I notice two things:
1. I seem to max out at four rides a week (my plan currently calls for 5-6 rides a week). This may be because it's not the best time of year for riding right now, with weather, daylight and other outside conditions putting a damper on my available ride time, or it be just how my schedule works out -- I have plenty of time on my days off, but not so much during the week. I suspect that both of those come into play, but at bottom it's a motivation issue. We'll see what happens as the weather gets nicer.
2. Right now I should be putting in my biggest weekly hours in the saddle, with lots and lots of low-intensity riding to get me ready for the tougher stuff coming (which will be shorter, harder, and need more rest days). My target is about 500 hours for the year, but if these are my "above average" weeks in terms of hours, I'm in serious trouble.
Well, things might not be as good as I'd want -- especially considering that this kind of training is less effective, in fact it might even be counterproductive, at lower training volumes -- but here's a look at my February stats going back a few years (to when I first started using the Garmin):
Year     Workouts      Hours       Distance    Calories
2009         12             13:37          127.6         8894
2010           5              6:21            88.8         6462
2011           6              6:44            54.4         3075
2012         11             20:26          212.7       15588
So in terms of volume, I'm pretty much on target right now to double my best distance/hours/calories from the past few years...

Sunday, February 19, 2012

Funny How Things Work Out

Morning weigh-in (Friday): 186.5# (oops!)
Morning weigh-in (Sunday): 186#
So Thursday night I had an itch to scratch, and ended up playing with the computer instead of riding. Oh well, but at least I managed to get some results, as well as managing to break Topofusion...
Our Story So Far: What I want to do is take a GPS track and create an elevation profile of it, sort of what you see here or here or here. For the geekier cyclist, it's now normal to ride with GPS and upload the ride's data to some website, where you can see the data analyzed (ie graphs of elevation, heart rate, speed, etc), maybe even compare it -- read: compete -- against the rides of others. That's all good in its way, but what if you want to create your own standalone graph, maybe for use in some other project, and screen captures just won't do?

There are a few options. One of the best programs around, for playing with maps and cycling data, is a thing called TopoFusion. It can read ride data from a variety of formats, draw routes, and analyze either one in terms of elevation, distance etc. Unfortunately, it's a Windows program, and though I got it to work on my Linux laptop, recent upgrades caused it to become pretty flaky -- and then my attempts to fix the problem caused TopoFusion to stop working altogether.

(There is another problem with TopoFusion: GPS tracks consist of a bunch of individual points, and TF finds the elevation for each of those points and then makes a "staircase" graph of those individual data samples. When there are enough data points, like the GPS track of an actual ride, it's not noticeable, but with only a few data points the profile looks like a staircase. Worse, if you define a track by two points, say miles apart, with a mountain and valley between them, you will not get any of that profile, just the elevation at the first and second points.)

My next plan was to use an open-source program called Quantum GIS, which is supposed to be pretty good, with all sorts of functionality that can be added via plug-in modules. Unfortunately, it had no direct way to generate a profile, and the plug-ins I could find to make profiles refused to run without more added software, usually versions of stuff not easily available to my Ubuntu distribution -- for a variety of reasons I am deliberately behind the times with my upgrades, and this is one of the few times it worked against me.
Anyway, I finally punted, and went with the thing I initially had a lot of resistance to: GRASS. It took me a long time to get the hang of GRASS, and I still think that the interface is a pain, but it's big, and flexible, and programmable, and though it never "just works," when you do things right it can be very powerful.

I did some Googling and found some people dealing with similar problems, and I eventually found a way to do what I needed. It involved some indirect steps (convert the track into a series of points, adding extra points to fill in the spacing as needed when my original points were too far apart, then interpolate Shuttle Radar elevation data to convert the 2d points to 3d points), then I had to dump the results of that into something else for the actual graphing -- the example I followed used the statistical program R, which worked fine but wasn't very pretty, so I eventually switched to a spreadsheet. It was exactly, or almost exactly, what I need, though I may use GNU Plot to do any final graphing. It was strange to me that the clunky workhorse that I'd tried to avoid was just the thing that got my job done. Another life lesson I suppose...

Anyway, that took up a chunk of Thursday night, and the other half was taken up with a trip to Brew Works. Anne had gone up there to see Deb and Donna, first time in while that the old crew was together, and it was raining out, and I hadn't seen Deb in a while either... and there you have Friday morning's weight.

Friday night I hopped on the bike as soon as I got home, and did a moderately long towpath ride, then we went down to Black & Blue for dinner with Donna again, plus a few friends from out of town. Turns out it was Kelly-Jo's birthday, and they had cake and cupcakes, and we sang, and it was good. Yesterday I got up early, did some chores and hit the towpath again, this time doing about 34 miles of mixed towpath (Lehigh and some Delaware, though it was in bad shape) and bike path.

Right now I'm tending the bread oven's fire ( I just put some more wood on, and I can see the fire from the living room window), and debating what ride to do today. My choices revolve around doing more towpath (blech, but probably the smartest and best choice), a road ride (meh) or a real MTB ride, maybe at the relatively bomb-prof Trex. Tomorrow starts my first rest week, and I'm stuck between going out with a bang, or going out with more of what I'm supposed to be doing.