Guide: Software


We write software in the lab and strive to make it open source to facilitate reuse and collaboration. It is ideal if lab members 1) use the software we write, 2) report bugs and issues, and 3) contribute back to the software. The more we do all three points the more universally useful and easy to use the software becomes for future use both by us and others outside the lab. This page highlights the software that we have designed to be more easily reusable and that we continuously maintain. It takes a collective effort from all lab members to keep these tools useful to all of us.

I Need To...

  • find the body segment parameters (mass, inertia) of a person: yeadon
  • estimate the inertia of a bicycle: BicycleParameters
  • estimate dynamics model parameters from measured data: opty

BicycleParameters

Generation and manipulation of bicycle physical parameters. If you measure the geometry, mass, inertia of a bicycle and/or rider you can use this package to process the measurements. It also has generic parameter sets and models that can be used to do dynamics analysis of bicycles. Lastly, it has a web application for exploring the linear Carvallo-Whipple model's properties.

Languages: Python, HTML, CSS

opty

opty is our general toolbox for solving optimal control problems (trajectory optimization & parameter identification) using the direct collocation + nonlinear programming method.

Languages: Python, Cython, C
Examples of use in the lab:

yeadon

Takes geometrical measurements of a person and generates body segment parameters (mass, inertia) following Fred Yeadon's model.

Languages: Python