Triggered by the interesting discussions (https://forum.rowinginmotion.com/) and the availability of measured data, I have recently spent some time on updating my model.
It was never my intention to make a super detailed model that would be able to reproduce each and every speed and acceleration peak and valley from a measurement on a real rower. Instead, I wanted to make it just realistic enough to be able to play with the parameters and see how they effect rowing efficiency, in order to trigger some discussions about rowing technique and rowing style.
Here is the algorithm flow of my original model (see https://sanderroosendaal.wordpress.com/2010/07/13/calculating-a-single-stroke/):
The flaw was that the boat speed made a jump from finish to catch because in my model,
- the rower center of mass velocity at the finish was zero
- the rower center of mass velocity at the catch was dictated by the handle speed to generate the correct handle force
What happens in reality of course is that one places the blade a fraction of a second after one reverses the body CM velocity. There were two ways to improve this. First, I added some “generic” recovery profiles which would be able to simulate that fraction of a second as part of the recovery phase of the stroke.
Nothing wrong with that approach, except that it was difficult to calculate a recovery profile which generated the right “catch CM speed”, with the right stroke length and everything. I still have provisions for this in my software, so once I have some time I can start using this route.
For now, I have patched the algorithm on the “stroke” side. I added a “catch” phase at the beginning of it. Here is the revised algorithm:
What I do is the following. During the catch phase I make 2 calculations:
- Accelerate rower Center of Mass without placing the blade, and calculate subsequent boat, crew velocities, oar angle, and some other parameters
- Calculate what the rower Center of Mass would be if he/she placed the blade at this moment in time
The blade is “placed” at the moment that these two velocities are equal (or, to be precise, at the moment that the velocity before placing the blade starts to exceed the velocity if the blade had been placed).
In rowing terms this moment of placing the blade would generate a beautiful V-shaped splash. Too early, you have a front splash and are stopping the boat. Too late and you are missing water and have a back splash.
The picture shows a typical stroke. So now I have continuous velocity profiles. I still have jumps in acceleration, where in a real system also the acceleration change would be smooth, but for the moment I consider it not necessary to make my model that realistic.
Of course I was interested to know if this improvement would invalidate any of my previous published results, so I reran all simulations of previous blog posts (and some more). I am happy to report that everything still holds.