MusculoGraphics, Inc.


GaitSIMM (Software for Interactive Musculoskeletal Modeling) is a powerful tool kit that facilitates the modeling, animation, and analysis of 3D musculoskeletal systems. In SIMM, a musculoskeletal model consists of representations of bones, muscles, ligaments, and other structures. Muscles span the joints and develop force, thus generating moments about the joints. SIMM enables an analysis of a musculoskeletal model by calculating the joint moments that each muscle can generate at any body position. By manipulating a model using the graphical interface, the user can quickly explore the effects of changing musculoskeletal geometry and other model parameters on muscle forces and joint moments. SIMM is used by hundreds of biomechanics researchers to create computer models of musculoskeletal structures and to simulate movements such as walking, cycling, running, jumping, weight lifting, reaching, and throwing.

Using SIMM, researchers have created models of the upper and lower extremities to examine the biomechanical consequences of surgical procedures including tendon transfers, osteotomies, and total joint replacements. A lower-extremity model was used to estimate musculotendon 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 also helped bring simulation to biologists who have created computational models of the frog, tyrannosaur, cockroach, cheetah, and other animals.

HamstringLeading sports performance and clinical gait analysis centers use SIMM to visualize the relationships between external forces, muscle activity, and the resulting body motion. Using SIMM, our movement analysis customers display 3D animations and help determine ways to improve an individual’s performance. SIMM is also being used to analyze and improve the performance of various internal and external prosthetics, as well as exoskeletons and other robotic assistive devices.

The dynamics module in SIMM allows users to perform forward and inverse dynamic simulations on musculoskeletal models. A forward simulation can calculate the motion and contact forces resulting from the specified muscle excitations, and an inverse simulation can calculate the muscle activations and forces required to generate the specified motion. These simulations can lend considerable insight into the causes of movement abnormalities, the expected effects of possible treatments, and the design of corrective devices. Industrial designers have used dynamic simulations in SIMM to improve the design of knee implants and to analyze muscle fatigue during repetitive tasks.


Motion Capture Importer. SIMM can import motion capture files (C3D, TRB, TRC) for playback and detailed musculoskeletal analysis. It can also import data in real-time from a Motion Analysis system and animate a 3D model while the data is being captured.
Gait Reporting. The Motion Reporter tool creates reports of sets of motions. The reports contain averages, standard deviations, and comparison to normal data, and include formatted Excel graphs for easy analysis. For gait reports, the tool calculates gait events and automatically divides recorded motions into left and right strides.
Scripting. The Scripting tool executes scripts with commands to load models and motion data, perform dynamic simulations, and create plots and reports. Scripts can also be used to save various SIMM tool settings so that they are restored the next time you start SIMM or load a particular model.
Model Scaling. The scaling utility automatically scales a generic model to match any size individual, based on measurements it makes from a static motion capture trial. All model components, including muscle paths, are scaled with the body segments (scaling of muscle force-generating parameters is optional).
Dynamic Simulation. With the dynamics module, you can perform forward and inverse dynamic simulations on any SIMM model. Simulations can be controlled from within the SIMM GUI, or as stand-alone programs. The dynamics module contains many sophisticated algorithms for detecting contact between bodies and for optimizing muscle activations, but it is also extensible. All of the source code for dynamic simulations is accessible to the user, so it can be modified or enhanced as needed.
Muscle Wrapping. You can interactively define spheres, ellipsoids, cylinders, and torii for muscle-tendon actuators to wrap over. SIMM automatically calculates muscle paths over these wrapping objects. Muscle lengths, forces, and moment arms are all calculated correctly for the wrapped muscle.
Live Plots. A live plot curve is a plot of a muscle property that is updated automatically whenever any property of the muscle changes. Live plot curves are very useful when creating and modifying muscles because you can instantly observe the effects of moving an attachment point or a wrap object (or changing any other property) on the length, moment arm, and force of the muscle.
Bone Deformations. A deformation tool allows you to warp bones into new shapes to model various bony deformities. Deformations such as tibial torsion and femoral anteversion are straightforward to model and can be implemented with a range of severity of deformation. Movie import/export. You can import videos associated with motion data and play them on a virtual screen in the model window during the motion animation. This makes it easy to do a side-by-side comparison of the model animation and the live video. You can also export movies of the model window to an AVI file.
Skins. In SIMM, a skin is any 3D polygonal surface that is linked to one or more body segments. By linking different regions of a skin to different segments, the skin can be made to deform when the joints move. Skins can be used to represent anatomical skin, muscle surfaces, fascia, ligaments, or any other deformable surface. They can also be rendered with texture maps to enhance the realism of the display. GUI tools. Many new user interface elements make it easy to interact with a model and to change the display properties of the bones, muscles, and other model components. Full support for “drag and drop” has been added for all SIMM file types, so it is easier than ever to load models and motion data into SIMM, as well as perform functions such as adding a new bone or running a script.


Increased understanding of motion capture data through the intuitive integration of kinematics, forces, EMG, and gait events Improved surgical outcomes because multiple procedures can be simulated in advance Easy creation of comprehensive gait reports, including graphs of muscle lengths and forces Provides immediate feedback to, and helps educate, patients and colleagues Real-time visualization of muscle lengths and forces helps with analysis and improvement of athletic activities

Connection to OpenSIM

SIMM has powerful tools for creating musculoskeletal models and performing isometric and dynamic analyses. OpenSim extends these capabilities by providing additional dynamics features such as residual reduction and computed muscle control. Together, SIMM and OpenSim offer biomechanics researchers unsurpassed capabilities for modeling and simulation of the musculoskeletal system. OpenSim is an open-source software system that lets users create and analyze dynamic simulations of movement. It is being developed at Simbios, a NIH center at Stanford University for physics-based simulation of biological structures. 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 for further analysis and model development.