Muscle-driven simulations of human and animal motion are widely used to complement physical experiments for studying movement dynamics. Musculotendon models are an essential component of muscle-driven simulations, yet neither the computational speed nor the biological accuracy of the simulated forces has been adequately evaluated. Here we compare the speed and accuracy of three musculotendon models: two with an elastic tendon (an equilibrium model and a damped equilibrium model) and one with a rigid tendon. Our simulation benchmarks demonstrate that the equilibrium and damped equilibrium models produce similar force profiles, but have different computational speeds. At low activation, the damped equilibrium model is 29 times faster than the equilibrium model when using an explicit integrator, and 3 times faster when using an implicit integrator; at high activation, the two models have similar simulation speeds. In the special case of simulating a muscle with a short tendon, the rigid-tendon model produces forces that match those generated by the elastic-tendon models, but simulates 2--54 times faster when an explicit integrator is used, and 6--31 times faster when an implicit integrator is used. The equilibrium, damped equilibrium, and rigid-tendon models reproduce forces generated by maximally-activated biological muscle with mean absolute errors less than 8.9%, 8.9%, and 20.9% of the maximum isometric muscle force, respectively. When compared to forces generated by submaximally-activated biological muscle, the forces produced by the equilibrium, damped equilibrium, and rigid-tendon models have mean absolute errors less than 16.2%, 16.4%, and 18.5%, respectively. To encourage further development of musculotendon models, we provide implementations of each of these models in OpenSim version 3.1 and benchmark data at simtk.org, enabling others to reproduce our results and test their models of musculotendon dynamics.
To provide the software required to benchmark models of musculotendon dynamics for computational speed and physiological accuracy. Code and benchmark simulations available for download.
This project provides source code and data for a journal paper that derives and benchmarks several muscle models in OpenSim to compare computational speed and physiological accuracy of the muscle models. Source code to replicate the benchmark simulations is provided along with experimental data used in the paper.
For those involved in teaching muscle modelling, we have also provided a Matlab implementation of the Millard2012EquilibriumMuscle model. This implementation is a bit easier for students to work with than the C++ implementation. The Matlab port can be found here:
1. benchmark_1_0b.zip contains all of the necessary c++ files and matlab scripts required to execute and plot the results of the computational and biological benchmarks described in the accompanying paper.See all Downloads