Not being a terrific programmer means that I make many errors in my programming. But being a pretty-darn-good programmer means that the errors I make can’t be found easily. In engineering research, often it’s difficult to know whether the errors are with the (1) mathematical models, (2) the application of the mathematical methods, or (3) the testing procedure, or (4) a combination of (1), (2) and (3).
I’ve been struggling with one such problem where it was nearly impossible to tell what was wrong. My Thanksgiving trip gave me a chance to sort out some issues, while sitting atop the Lions Lookout in Huntsville, ON. I worked out a lot of math, and invented another test procedure to test my previous test procedure, which in turn, found an error in my original mathematical model: I mistakenly transposed a series of 5×5 matrices inside my my large matrix during my original derivation.
Most of my problems seem to have gone away after fixing this, and right now, the supercomputer at my lab is busy double checking my results, which gives me time to write. I still have one decision to make for tonight: (a) take the evening off, put on a nice dress and go dancing, or (b) set up the test procedure for the next step. I think I’ll do both: wear my dress to the university library, and do some work until late night. If all works out, I’ll dance right there in the hallway…
This post is also available in: Chinese (Traditional)