We strive to share our research and methods with the broader community. Through open source development, we hope we can accelerate real-world impact of our research. Please share any feedback, updates, or applications that you develop using these resources. Enjoy!
OpenSim: Simulation Resources
OpenSim is an open source software system for biomechanical modeling, simulation and analysis. Its purpose is to provide free and widely accessible tools for conducting biomechanics research and motor control science. We use OpenSim as a tool to evaluate altered musculoskeletal dynamics and neuromuscular control after neurologic injury. Simulation provides a platform to ask “what-if” questions and quantify parameters that cannot be easily evaluated experimentally. If you are new to musculoskeletal modeling and simulation, we highly recommend the introductory tutorials and excellent series of webinars on the OpenSim website.
Working with Gillette Children’s Specialty Healthcare, we have developed a series of simulations of children with cerebral palsy. These simulations have been used to evaluate muscle contributions to pathologic gait, impacts of muscle weakness, changes in knee contact forces, and potential benefits of ankle foot orthoses. The simulations include:
- Mild Crouch Gait Simulations: Simulations of 10 children with mild crouch gait. For each child, the set-up files, model files, and results are provided for one trial of left and right single-limb stance.
- Crouch Severity Simulations: Simulations of mild, moderate, and severe crouch gait for three children in each group. For each child, the set-up files, model files, and results are provided for one gait cycle.
- Ankle Foot Orthosis Simulations: Simulated effects of walking with and without different ankle foot orthosis designs in children with crouch gait and typically-developing children. The datasets and files provided includ simulations of unassisted walking and walking with powered and passive AFOs.
The Synergy Optimization plug-in was developed to enable synergy-based control in OpenSim. It extends Static Optimization to let users specify a matrix of synergies to constrain and couple muscle activations. Beyond synergies, this plug-in can also be used to (1) provide varying weights to different actuators in static optimization or (2) require specific actuators to be activated together. This plug-in was initially developed to evaluate the accuracy of algorithms used to calculate synergies. Please also see the webinar for more information.
Muscle synergies provide a method to quantify the complex patterns of muscle recruitment and coordination we use to move our bodies. Neuroscience has used synergy analyses for decades to evaluate muscle coordination and central pattern generators in animals and humans. Our lab has adopted synergy analysis as a method to quantify changes in neuromuscular control after neurologic injury during dynamic tasks. If you want to learn more about synergy analysis, we highly recommend Lena Ting’s introductory tutorial and Matlab examples.
Synergies are calculated using matrix factorization algorithms, such as nonnegative matrix factorization. While these algorithms are available and relatively straight-forward to implement in software platforms such as Matlab & Python, we realize that many of our clinical collaborators do not have easy access to this software or programming experience. To help address this need, Claire Mitchell an undergraduate researcher in our lab, created a tool to calculate synergies from raw electromyography data. This web-based tools allows users to upload data from their lab or clinic, calculate synergies, view the results, and download the results for further analysis.
Electromyography (EMG) recordings provide a window into how we use our muscles to move. We use EMG data routinely in our lab to quantify control, evaluate musculoskeletal simulations, and provide feedback for ubiquitous rehabilitation.
Tests such as the Jebsen Taylor Hand Function Test and the Chedoke Arm and Hand Assessment Inventory are commonly used in the clinic to evaluate hand function after neurologic injury. These tests include a variety of tasks of daily living that help clinicians evaluate function and guide treatment. To help understand how unimpaired individuals recruit and coordinate their muscles to execute these tasks, Keshia Peters evaluated EMG recordings for 20 individuals during these tasks. The Tableau interactive graphic lets you dive into the data and see how we use the complexities of the ultimate machine to perform everyday tasks. Please see our journal article for full details on this study.
Orthoses or exoskeletons are assistive devices that can be used to improve human performance. Advances in fabrication methods, such as 3D-printing and scanning, have increased our ability to customize these devices to individual users. Providing open source designs for orthoses can accelerate design and innovation.
Wrist-driven orthoses have been used for decades by people with cervical spinal cord injuries. These simple mechanical devices allow a person to flex and extend their wrist to open and close their hand. However, fabrication of these devices has been challenging and required extensive time to customize the device for each individual. Alexandra Portnova, an undergraduate researcher in our lab, led the development and testing of an open source 3D-printed WDO. We tested the device with three individuals with spinal cord injury and made the design, including a detailed instruction manual, available for others to use and build upon.
Hwan Choi designed a 3D-printed adjustable-stiffness that can be tuned with different sizes of elastic polymer bands. This AFO was used for evaluating how different dorsiflexion resistance impacts musculotendon function and walking pattern using ultrasound, musculoskeletal modeling (OpenSim) and a motion capture system.