| |







|
 |
SIMM and OpenSim 5.0
SIMM is a widely used software system for modeling the musculoskeletal system. OpenSim, a free application with complementary capabilities, has recently been introduced. Together, these two software systems offer biomechanics researchers unsurpassed capabilities for modeling and simulation of the musculoskeletal system. The purpose of this technical note is to clarify the complementary nature of SIMM and OpenSim.
SIMM
SIMM was introduced in the early 1990s and has become adopted by the biomechanics community. This software is now used by hundreds of biomechanics researchers to create computer models of musculoskeletal structures and to simulate movements such as walking, cycling, running, and stair climbing. Using SIMM, models of the lower and upper extremities were developed to examine the biomechanical consequences of surgical procedures including tendon surgeries, osteotomies and total joint replacements. A lower-extremity model was used to estimate muscle-tendon lengths, velocities, moment arms, and induced accelerations during normal and pathologic gait. Studies have been conducted to investigate the treatment of individuals with spinal cord injury, to analyze joint mechanics in subjects with patellofemoral pain, to calculate forces at the knee during running and cutting, and to investigate causes of abnormal gait. SIMM has helped bring simulation to biologists who have created computational models of the frog, tyrannosaur, cockroach, and other animals. The articles that describe SIMM and SIMM models [1-3] have been cited hundreds of times in the scientific literature. Version 5.0 of SIMM was released in February 2010, and includes new features designed to aid clinical gait analysis, such as batch-processing capabilities, calculation of heel strike and toe off events, averaging of multiple trials, and AVI movie output. Although SIMM helps formulate models of the musculoskeletal system and create dynamic simulations of movement, it has relatively limited tools for computing muscle excitations that produce coordinated movement and for analyzing the results of dynamic simulations. These complementary capabilities are provided by OpenSim.
OpenSim
OpenSim is an open-source software system that lets users create and analyze dynamic simulations of movement [4]. It is being developed at Simbios, a NIH center at Stanford University for physics-based simulation of biological structures. The underlying software is written in ANSI C++, and the graphical user interface is written in Java. Version 1.0 was released on August 22, 2007. Since then the software has been downloaded over 3,800 times. It contains modules that scale a generic musculoskeletal model to fit a specific subject, fit the model to recorded marker data (inverse kinematics), perform inverse dynamics, and generate muscle-driven forward simulations from recorded gait data. OpenSim can import and export most SIMM models. It contains a muscle editor, model viewer, coordinate viewer, and plotting tool, but no other model editing tools (e.g., there is no joint editor, body editor, wrap editor, marker editor, deform editor, or constraint editor). Version 2.0 was released in January 2010, and includes contact modeling, static optimization to estimate muscle and joint forces, and an application programmer’s interface (API) that enables software developers to call OpenSim functions from their own programs or MATLAB.
Using OpenSim and SIMM together
Because OpenSim can import and export SIMM models, users can easily take advantage of features in each package. They can import their SIMM models and motion data into OpenSim, perform residual reduction and computed muscle control analyses, and export the results back to SIMM. Here is the recommended process for importing data into OpenSim to create subject-specific, muscle-driven simulations of gait data:
- Develop the generic (unscaled) musculoskeletal model in SIMM, or modify or use an existing SIMM model
- Convert motion data into the OpenSim format using SIMM’s Motion Module, C3D Module, or the OpenSMAC utility program
- Import the generic SIMM model into OpenSim
- Load the motion data into OpenSim, for use by the scaling and IK tools
- Run the residual reduction algorithm (RRA)
- Run the computed muscle control analysis (CMC)
If users want to modify muscle properties and run additional simulations, they can do this in OpenSim. If they want to make other changes to the model, they should load their model into SIMM for editing, then re-import it into OpenSim.
OpenSim Benefits
The main benefits of OpenSim 2.0 over SIMM 5.0 are that it:
- has a more full-featured model scaling utility (e.g., can require that left and right sides be of equal size)
- has a more full-featured inverse kinematics utility (e.g., can explicitly specify some joint angles while using markers to track others)
- contains "residual reduction algorithm" to make recorded motion data more dynamically consistent with recorded ground reaction forces, resulting in more accurate inverse dynamics results
- can generate muscle-driven forward dynamic simulations that reproduce recorded gait data (using computed muscle control algorithm)
- can perform dynamic simulations without SD/FAST or a C compiler
- has more extensive analysis features for dynamic simulations
- provides an API so OpenSim functions can be called from MATLAB and user-developed software
- is free
OpenSim Limitations
Some of the limitations of OpenSim 2.0 compared to SIMM 5.0:
- Does not connect to Motion Analysis motion capture systems for real-time data visualization and musculoskeletal analysis
- Contains fewer model editing tools
- Importing motion data in C3D files requires MATLAB (or SIMM) to process analog data, resample it at the video frequency, and synchronize it with the marker data
- Does not model bony deformities
- Does not provide gait analysis features such as calculation of heel strike and toe off events, and averaging and normalizing of multiple gait trials
- Has no batch processing capabilities
- Does not provide access to source code for dynamic simulations
OpenSim for Teaching
There has been significant interest in using OpenSim for teaching, where motion data does not need to be imported. Students could learn about and experiment with musculoskeletal models and run dynamic simulations to investigate muscle function. Each student could install OpenSim onto his or her laptop, obviating the need for a lab of computers with SIMM dongles, SD/FAST licenses, and C compilers. However, course instructors are advised to create their musculoskeletal models in SIMM and then export them to OpenSim, since OpenSim does not contain many model editing capabilities.
Creating a Musculoskeletal Model
OpenSim 2.0 does not contain a graphical interface for modifying a model’s bodies, joints, degrees of freedom, or wrap objects (it does have a muscle editing tool). There are three methods of creating an OpenSim model:
- Find an existing OpenSim (.osim) or SIMM (.jnt) model that has the appropriate components (bodies, joints, degrees of freedom, muscles, etc.)
- Use SIMM to create or modify a model, then import it into OpenSim
- Use a text editor to create or modify a .osim (or .jnt file then import it into OpenSim)
Importing Motion Data
There are three methods of importing recorded motion data (3D marker locations, ground-reaction forces, EMG) into OpenSim:
- Use OpenSMAC to convert Motion Analysis data (.trb, .trc, .anb, .anc) to the OpenSim format
- Use SIMM’s Motion Module or C3D Module to import the motion data (.trb, .trc, .anb, .anc, .c3d), then save it as a .mot file, which can be loaded into OpenSim
- Use customized MATLAB scripts to import .trc, .anc, or .c3d files
References
- Delp, S.L., J.P. Loan, M.G. Hoy, F.E. Zajac, E.L. Topp, and J.M. Rosen, An interactive graphics-based model of the lower extremity to study orthopaedic surgical procedures. IEEE Transactions on Biomedical Engineering, Vol. 37, pp. 757-767, 1990.
- Delp, S.L. and J.P. Loan, A graphics-based software system to develop and analyze models of musculoskeletal structures. Computers in Biology and Medicine, vol. 25, pp. 21-34, 1995.
- Delp, S.L. and J.P. Loan, A computational framework for simulating and analyzing human and animal movement. IEEE Computing in Science and Engineering, vol. 2, pp. 46-55, 2000.
- Delp, S.L., Anderson, F.C., Arnold, A. S., Loan, P., Habib, A., John, C., Thelen, D.G. OpenSim: Open-source software to create and analyze dynamic simulations of movement. IEEE Transactions on Biomedical Engineering, vol. 54, pp. 1940-1950, 2007.
SIMM is available for Windows®
(95, 98, NT, XP, Vista, Windows 7)
Minimum Configuration
1 GHz Pentium® (or compatible) CPU
1 GB RAM
200 MB disk space
25 pin parallel port or USB 2.0 port
1024 x 768 screen resolution
16 MB video RAM
|
Recommended Configuration
3 GHz Pentium® 4 (or compatible) CPU
4 GB RAM
10 GB disk space
25 pin parallel port or USB 2.0 port
1600 x 1200 screen resolution
64 MB video RAM
OpenGL Installable Client Driver (ICD)
Hardware support for 3D calculations
|
Graphics Cards: Many of the cards in the GeForce and Quadro FX series have been tested
successfully with SIMM, including the GeForce 8800, the GeForce 9800,
the GeForce GTX 275, the Quadro FX 500, and the Quadro FX 1500."
Register with us to receive a trial copy of SIMM.
Research Publications using SIMM
SIMM (PDF, 269KB)
PDF Brochures page
|
| |
Home
About MGI
Products
Gallery
Customer Service
Contact Us
Site Map
Entire contents ©1999-2010. MusculoGraphics, Inc, a division of Motion Analysis Corporation. All rights reserved.
Please read our policy on privacy and confidentiality.
| |