Timo Stienstra successfully defended "BRiM: A Modular Bicycle-Rider Modeling Framework". Timo developed a multibody dynamics modeling tool that makes it much easier to build and change bicycle-rider models. It nicely allows you to modularly construct these models from components yet still have a minimal coordinate formulation of the dynamics that precisely evaluates the equations of motion of the system. We plan to use Timo's work as a basis for our bicycle-rider models, which we use in most of the lab's projects. Timo also made significant contributions to SymPy during his Google Summer of Code internship and during his thesis project. He improved the joints module by making important corrections, adding new joint types, and including high quality figures in the documentation. You can read about the GSoC work on his blog and you can see how the joints are used to model a four-bar linkage in the SymPy documentation. Timo also developed new load components and new system object and demystified a long standing bug associated with solving linear systems symbolically among a whole host of other fixes to SymPy mechanics. Timo created a matplotlib-based 3D plotting and animation tool for SymPy mechanics objects called symmeplot that simplifies visualizing your models. With all of these tools he brought his bicycle-rider simulations to life with BRiM. Here are some example animations of his simulations:
Timo was co-supervised by Sam Brockie (TU Delft) and Jason K. Moore (TU Delft). Everyone at the bicycle lab is very proud of Timo and wishes him the best in his next adventures.