Download as pdf or txt
Download as pdf or txt
You are on page 1of 396

LifeMOD Tutorials

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine

Tutorials
The tutorials presented in this section together touch on almost every feature of
LifeMOD to give the user exposure the the modeling methods and procedures used to
create model with a wide range of complexity and application.
By selecting the TUTORIAL button on the LifeMOD panel, a special tutorial control panel
is displayed. Figure 1 displays the function of the control panel. The option menu displays
the selection of the specific example problem. The description button displays information
of the specific example, application, and features addressed. The arrow buttons allow for
stepping through the tutorial. The control panel brings up and fills in the various panels
used to create the model.
Each step of the tutorial is documented in this section. The LifeMOD self-training
method consists of stepping through each example problem while reviewing the
background information for the specific example in this technical manual.

Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement

Figure 1: The automated tutorial control panel

Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash
Model Development

Create a human model from the model library


Create a human model from anthropometric library

x
x

x
x x

x x x x x
x x

x x

x x x x

Develop a partial body model

Build non-base segments

file:///E|/manjunath/LifeMOD%20Tutorials.html[06-Jun-15 12:48:59 PM]

x
x x

x x

Modify anthropometric measurement table

Manipulate the posture

x x

x x
x x x x

LifeMOD Tutorials
x

Multiple human models

Joints
x

Use the Hybrid III crash dummy strength library


Create passive/recording joints

x x x x

x x x

x x x

x x

Create detailed force-based joints


x x

Create force-based mechanical joint replacements

Build non-base joints

x x

Soft Tissues
x

Create recording muscles

x x x x x

x
x

Create Hill-based muscles


Build individual non-base tissues

x x

Create ligament stabilizers

Create tendons
x

Modify the base tissue attachment locations

Reassign tissue attachment points

x x

Implement soft tissue contact-based wrapping

x
x x

Implement soft tissue slide points


Model Training
Train the model by applying Motion Capture data via
motion agents
Apply motion agents to a mechanical system (not the
body)
Use motion agents to adjust model starting
configuration
Use motion agents with motion relative to a moving
reference frame
Train model by applying individual motion agents

x x x

x
x

x
x
x

x x x

Train model using a mechanical system as a driver

Environment
Import external mechanical system from model library

x x

x x

x x

x x

Import internal mechanical system from model library


Build environments/systems w/ADAMS/View commands

Create body/environment interface forces

x x

x x x x

Develop foot/floor ground reaction forces

x x x

x x x

Analysis
x

Apply initial conditions to the model


Train joints via inverse dynamics

Train muscles via inverse dynamics


Use trained joints in a forward dynamics simulation

Equilibrate the model

x x x

x x x x x
x

x x

Run a passive simulation

Perform a parameter variation study

x x

Compare human reactions to multiple cases of motion


data
Run a hybrid (passive/active) simulation

x x x x x

Use trained muscles in forward dynamics simulation

x
x x x

x x x

x x x

x x

x x

x
x

x
x

Results
Animate the model with joint/muscle graphics scaling

x x

Plot joint reactions, muscle forces, interface forces, etc.

x x x x x x x x x x x x x

file:///E|/manjunath/LifeMOD%20Tutorials.html[06-Jun-15 12:48:59 PM]

x x x x x

x x

x x x
x x x x x x

LifeMOD Tutorials

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials.html[06-Jun-15 12:48:59 PM]

LifeMOD Tutorials | Ground Reaction Forces

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine
Tennis

Clinical Application - Twisting with Ground Reaction


This demonstration portrays a human model performing a twisting
motion on the ground. The model will be driven using motion
capture data and ground reaction forces.
The ground reaction force is gathered data from a force plate and
delivers a force to the bottom of the foot to get a highly accurate
representation of the interaction between the foot and floor.
The model will be put through a training procedure, being driven by
the motion agents. The joints will then be trained and will drive the
model in conjuction will the ground reaction force.
Key skills exercised in this tutorial include:
Creating a model, joints, posture and motion from the model
library
Importing a ground reaction force
Training the joints to produce the necessary torques to drive
the human model
Running inverse/forward dynamics simulation with ground
reaction forces
Gather data from a ground reaction force

Sections
Generating the Body Segments, Joints, Posture and Motion
Running the Equilibrium Analysis
Adding the Ground Reaction Force
Running the Inverse-Dynamics Simulation
Preparing the Model for the Forward-Dynamics Simulation
Running the Forward-Dynamics Simulation
Interrogating the Results
Further

Walking
NeckSIM:Whiplash

Generating of the Body Segments, Joints, Posture and Motion


In this phase, the SLF file is used to create the human body model from measurements, joints from
joint data, posture from posture data and motion from recorded motion data. The body segments are
created using the parameters stored in the SLF file.
This file contains information on the subject name, gender, age, height and weight. LifeMOD uses this
information to extract body segment measurements and mass properties from the internal
anthropometric database.
Passive joints are created for the inverse-dynamics phase of the simulation process referred to as the
"training" phase. For this model passive joints will be created for the inverse-dynamics simulation. The
passive joint consists of a tri-axis hinge joint (3 DOF) which includes angulation stops, stiffness and
damping torques. This type of joint is used primarily to stabilize the body during the inverse-dynamics

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ground%20Reaction%20Forces.html[06-Jun-15 12:50:04 PM]

LifeMOD Tutorials | Ground Reaction Forces

simulation. They are later removed and replaced with Servo-type torque generators for the "trained"
phase. The parameters of the passive joints are included in the SLF file
After the joints are created on the model the posture of the model may be adjusted, and the model
moved into place. The posture data and the model location are also included in the SLF file.
Finally, the motion data (MOCAP) for the twisting motion e is imported into the model and used to drive
the motion agents created on the model. There are two components to the motion agent. A yellow
sphere designates the location of the data point and the red sphere designates the marker location on
the human model. The yellow sphere is attached to the red sphere via a bushing element with
properties designated below. During the inverse dynamic simulation, the yellow sphere will move
according to the MOCAP data, while influencing the motion of the red sphere attached to the body. It is
during this analysis that muscle contraction histories will be recorded. The motion agent stiffness
properties are entered in the panel in Figure 1. The motion trajectory data is included in the SLF file.

Figure 1: Building the human model via SLF file

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ground%20Reaction%20Forces.html[06-Jun-15 12:50:04 PM]

LifeMOD Tutorials | Ground Reaction Forces

Figure 2: The resulting model with the joints, posture and motion data installed.

Step 1: Bring up the import panel


Launch the LifeMOD software. Select CREATE NEW MODEL to start a new modeling session. Select
XCHANGE from the main-menu and IMPORT SLF MODEL FILE.
Step 2: Import thebody, joints, posture from the model library
Select "Model Library" on the top of the panel (see figure 1) and select "Full Body Twisting with Ground
Reaction Force" for the Model Library SLF File. The Body Data, Model Units, and Motion Data panels will
then display the current information in the SLF file. Select Body, Joints, Posture and Motion Agents as
the data to be built, uncheck Ground Reaction Force, this will imported later. Select APPLY to create the
model displayed in figure 2.

Running the Equilibrium Analysis


In order to fit the model to the data positions, an equilibrium analysis must be performed. This is a
dynamics analysis which holds the positions of the data-driven motion agents (yellow balls) fixed, while
finding the minimum energy configuration in the springs of the motion agents. The motion agents with
the higher weights will have more influence on the model and the initial configuration.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ground%20Reaction%20Forces.html[06-Jun-15 12:50:04 PM]

LifeMOD Tutorials | Ground Reaction Forces

Figure 3: Model after equilibruim simulation and motion agents sychronized

Step 3: Bring up analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu. Make sure that "Freeze Motion
Agents for Equilibrium Analysis" is checked so the motion agents do not move during the equilibration
analysis.
Step 4: Run the equilibrium simulation
Specify the end time of the simulation for 2 seconds with 100 time steps using the "Robust" integrator
settings. Select ANALYZE.
Step 5: Update the model configuration with static results
Select "Update the Model Posture with Equilibruim Results" to change the position of the body to match
the last frame in the simulation.
Step 6: Align the body markers with data
After the configuration is updated there will still be a discrepancy between the yellow spheres and the
red spheres due to differences between the body geometry and the test subject and differences
between the positioning of the markers in the model and the subject. Select "Synchronize Body Marker
Locations with Data Locations" button.

Adding the Ground Reaction Force


First a reference marker must be create to place the ground reaction force. The ground reaction force in
then imported from the same file SLF the body was create from. The ground reaction force is data
collected from a force plate, usually done in conjuction with the recording of motion agents. The ground
reaction force controlls the feet to achieve the proper reaction between the feet and ground.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ground%20Reaction%20Forces.html[06-Jun-15 12:50:04 PM]

LifeMOD Tutorials | Ground Reaction Forces

Figure 4: Importing of the ground reaction forces from the original SLF filet

Figure 5: Bushings connecting the club to the hands

Step 7: Create a data reference marker


Create a reference marker for the ground reaction force. Create a marker named
.World.ground.ForcePlateRef at (0,0,0) with an orientation of (90,180,0).
Step 8: Bring up import panel
Select XCHANGE in the main menu and IMPORT SLF MODEL FILE from the sub-menu. Select "Model
Library" and select "Full Body Twisting with Ground Reaction Force" as the SLF file.
Step 9: Import the ground reaction forces and create the elements
Check Left Foot and Right Foot under the Ground Reaction Force panel, and set the Reference Marker
to .World.ground.ForcePlateRef. Check only the Ground Reaction Force to build and select APPLY.

Running the Inverse-Dynamics Simulation


With the model in the proper position, the motion capture data read in, the motion agents installed and
the ground reaction force imported, an inverse-dynamics or "training" simulation may be performed.
This simulation is performed to record the joint angulation histories for motion. When the joints are
fully trained to reproduce the motion, a subsequent forward-dynamics simulation will be performed. The
trained joints will be using PD-servo controllers based on the recorded angulations from the training
phase.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ground%20Reaction%20Forces.html[06-Jun-15 12:50:04 PM]

LifeMOD Tutorials | Ground Reaction Forces

Figure 9: Analyze panel for the inverse-dynamics simulation

Figure 14: Successive animation frames from the inverse-dynamics simulation

Step 10: Bring up analyze panel


Select ANALYZE from the main menu and DYNAMICS from sub-menu.
Step 11: Adjust the gravity settings and run the dynamics simulation
Check the gravity box and set the y-value to -9.80665. Select "Contacts Optimized " integrator settings.
Set the simulation end time to 2.9 seconds with 290 times steps and select ANALYZE.
Step 12: Display the animation
Use the ADAMS/View toolbox to animate the model.

Preparing the Model for the Forward-Dynamics Simulation


After the inverse-dynamics simulation is performed the joint angulation histories are now recorded for
each joint. In this section, trained elements or PD-Servo controllers are exchanged for the passive
learning elements on the joints.
The motion agents are removed from the model and a "Tracker Agent" is installed. The tracker agent is
a motion agent located at the center of the pelvis which provides force-stabilization for the forwarddynamics simulation. During the inverse-dynamics simulation the location and orientation of the frame
of the tracker agent is recorded (it is not generating a force during the inverse-dynamics simulation).
The location and orientation information may then be used to drive the tracker agent in the forwarddynamics simulation. Usually various degrees-of freedom are specified as "free" to allow for proper
dynamical interaction. For this example the freedom in the direction normal to the floor would be
specified as free, to allow for proper ground reaction force generation between the feet and the steps.
For information on selecting specific model parameters for this section see Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ground%20Reaction%20Forces.html[06-Jun-15 12:50:04 PM]

LifeMOD Tutorials | Ground Reaction Forces

Figure 8: Panel to install the active elements on joints

Figure 9: Panel set to create the tracker agent.

Step 13: Bring up the joint edit panel


Select JOINTS from the main meun and TRAINING from the sub-menu.
Step 14: Install forward dynamics data
Select "Install Trained Driver Rotational Joint Elements." Enter 3e4 and 3e3 for the servo proportional
and derivative gain respectively. Select APPLY to update the joints.
Step 15:Bring up the motion agent tracker panel
Select MOTION from the main-menu and CREATE TRACKER AGENT from the sub-menu.
Step 16: Create the tracking agent
Specify the stiffness/damping parameters as in Figure 16. Specify all freedoms as driven. Select APPLY.

Running the Forward-Dynamics Simulation

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ground%20Reaction%20Forces.html[06-Jun-15 12:50:04 PM]

LifeMOD Tutorials | Ground Reaction Forces

With the tracker agent place, and the contractile elements in the muscles of the lower body to include
the motion splines from the inverse-dynamics simulation, the PD-Servo controllers controlling the
torque joints of the body and the ground reaction force on the feet, the forward-dynamics simulation is
ready to be performed.

Figure 16: Panel set to create the tracker agent.

Step 17: Bring up the analysis panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 18: Disable the motion agents and run the forward dynamics simulation
Run the simulation 2.9 seconds and 290 time steps using the "Contacts Optimized " integrator settings.
Be sure to disable the motion agents. Select ANALYZE.
Step 19 Display the animation
Use the ADAMS/View toolbox to animate the model.

Interrogating the Results


When the simulation is complete the model may be animated and the results reviewed. The leg vertical
forces will be examined and the model will be animated using scaling joint graphics.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ground%20Reaction%20Forces.html[06-Jun-15 12:50:04 PM]

LifeMOD Tutorials | Ground Reaction Forces

Figure 11: Joint scaling showing the joint torques as a result of the twisting motion

Figure 12: Plot of the forces the joints are exherting on the model

Step 20: Bring up results panel


Select RESULTS in the main-menu and ANIMATION in the sub-menu. Select Joints as the Data Type.
Step 21: Plot the right hip vertical forces
Select Borat_Right_Hip for the Joint, Force for the characteristic and the Y component. Select CREATE
FULL PLOT.
Step 22: Plot the left hip vertical forces
Select Borat_Left_Hip for the Joint, Force for the characteristic and the Y component. Select CREATE
FULL PLOT.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ground%20Reaction%20Forces.html[06-Jun-15 12:50:04 PM]

LifeMOD Tutorials | Ground Reaction Forces

Step 23: Plot the right knee vertical forces


Select Borat_Right_Knee for the Joint, Force for the characteristic and the Y component. Select CREATE
FULL PLOT.
Step 24: Plot the left knee vertical forces
Select Borat_Left_Knee for the Joint, Force for the characteristic and the Y component. Select CREATE
FULL PLOT.
Step 25: Plot the right ankle vertical forces
Select Borat_Right_Ankle for the Joint, Force for the characteristic and the Y component. Select CREATE
FULL PLOT.
Step 25: Plot the left ankle vertical forces
Select Borat_Left_Ankle for the Joint, Force for the characteristic and the Y component. Select CREATE
FULL PLOT.
Step 26: Animate front view
Select ANIMATION from the sub-menu, select front view, divide window and select PLAY.
Step 27: Animate right view
Select right view, divide window and select PLAY
Step 28: Turn on stick model with joint bubbles
In order to view the torques in the model clearly, the graphics are reduced to the stick model using the
display option at the bottom of the main LifeMOD panel. Check "Scale Joint/Tissue Graphics" select
Joints and select Scale Globally. Select the light bulb to turn on the joint bubble graphics.
Step 29: Animate front view
Select front view, divide window and select PLAY.
Step 30: Animate right view
Select right view, divide window and select PLAY
Step 31: DEMO COMPLETE

Further
This model could be used to explore may aspects of the twisting:
Work place injury
Orthopedic implant design
Assembly line ergonomics
Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ground%20Reaction%20Forces.html[06-Jun-15 12:50:04 PM]

LifeMOD Tutorials | Golf Swing Analysis

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

Human Performance Application Golfer


One of the most powerful features of the
LifeMOD Biomechanics Modeler is the
capability to create sophisticated human
models which may interact with an external
mechanical system such as a flexible golf
club.
For this example a full body human model is
scaled to a specific golfer subject. A flexible
golf club is created by importing the
graphics files for the grip and the head and
creating a flexible link structure to represent
the shaft between the grip and the head.
A golf driving stroke is simulated using the
motion capture data for the human subject.
A forward dynamics simulation is performed
with the joints of the legs and upper body driving the motion.
The objective of this exercise is to examine the sequence of joint torques necessary to complete
the swing. The golf club strains are examined as well.
Key skills exercised in this tutorial include:
Creating a model, joints, posture and motion from the model library
Importing a mechanical environment from the model library
Modeling the flexible golf club
Training the joints to produce the necessary torques to drive the human model
Creating foot/floor forces
Creating hand/club contact forces

Sections
Generating the Body Segments, Joints, Posture and Motion
Running the Equilibrium Analysis
Adding the Flexible Golf Club
Creating the Foot-Floor Constraints
Running the Inverse-Dynamics Simulation
Preparing the Model for the Forward-Dynamics Simulation
Running the Forward-Dynamics Simulation
Interrogating the Results
Further

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

Generating of the Body Segments, Joints, Posture and Motion


In this phase, the SLF file is used to create the human body model from measurements, joints
from joint data, posture from posture data and motion from recorded motion data. The body
segments are created using the parameters stored in the SLF file.
This file contains information on the subject name, gender, age, height and weight. LifeMOD
uses this information to extract body segment measurements and mass properties from the
internal anthropometric database.
Passive joints are created for the inverse-dynamics phase of the simulation process referred to as
the "training" phase. For this model passive joints will be created for the inverse-dynamics
simulation. The passive joint consists of a tri-axis hinge joint (3 DOF) which includes angulation
stops, stiffness and damping torques. This type of joint is used primarily to stabilize the body
during the inverse-dynamics simulation. They are later removed and replaced with Servo-type
torque generators for the "trained" phase. The parameters of the passive joints are included in the
SLF file
After the joints are created on the model the posture of the model may be adjusted, and the
model moved into place. The posture data and the model location are also included in the SLF file.
Finally, the motion data (MOCAP) for the golf stroke is imported into the model and used to drive
the motion agents created on the model. There are two components to the motion agent. A yellow
sphere designates the location of the data point and the red sphere designates the marker location
on the human model. The yellow sphere is attached to the red sphere via a bushing element with
properties designated below. During the inverse dynamic simulation, the yellow sphere will move
according to the MOCAP data, while influencing the motion of the red sphere attached to the
body. It is during this analysis that muscle contraction histories will be recorded. The motion agent
stiffness properties are entered in the panel in Figure 1. The motion trajectory data is included in
the SLF file.

Figure 1: Building the human model via SLF file

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

Figure 2: The resulting model with the joints, posture and motion data installed.

Step 1: Bring up the import panel


Launch the LifeMOD software. Select CREATE NEW MODEL to start a new modeling session.
Select XCHANGE from the main-menu and IMPORT SLF MODEL FILE.
Step 2: Import the Connor body, joints, posture and motion agents
Select "Model Library" on the top of the panel (see figure 1) and select "Full Body Golfing" for the
Model Library SLF File. The Body Data, Model Units, and Motion Data panels will then display the
current information in the SLF file. Select Body, Joints, Posture and Motion Agents as the data to
be built. Select APPLY to create the model displayed in figure 2.

Running the Equilibrium Analysis


In order to fit the model to the data positions, an equilibrium analysis must be performed. This is
a dynamics analysis which holds the positions of the data-driven motion agents (yellow balls)
fixed, while finding the minimum energy configuration in the springs of the motion agents. The
motion agents with the higher weights will have more influence on the model and the initial
configuration.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

Figure 3: Model moved into data cloud (left) After static analysis (center) after synchronization
(right)

Step 3: Bring up analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu. Make sure that "Freeze
Motion Agents for Equilibrium Analysis" is checked so the motion agents do not move during the
equilibration analysis.
Step 4: Run the equilibrium simulation
Specify the end time of the simulation for 1 second with 100 time steps using the "Robust"
integrator settings. Select ANALYZE.
Step 5: Update the model configuration with static results
Select UPDATE MODEL POSTURE WITH EQUILIBRIUM RESULTS to change the position of the body
to match the last frame in the simulation.
Step 6: Align the body markers with data
After the configuration is updated there will still be a discrepancy between the yellow spheres and
the red spheres due to differences between the body geometry and the test subject and
differences between the positioning of the markers in the model and the subject. Select
SYNCHRONIZE BODY MARKER LOCATIONS WITH DATA LOCATIONS button.

Adding the Flexible Golf Club


Geometry files representing the club grip and the head are imported into the model. A flexible link
is constructed using the flexible link utility in ADAMS to create a structure with properties similar
to the composite club shaft.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

Figure 4: Human model with discrete flexible shaft

Figure 5: Bushings connecting the club to the hands

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

Figure 6: Discrete flexible link panel used to create golf club shaft

Step 7: Import the club head and grip from the library
Select XCHANGE from the main-menu and IMPORT MECHANICAL ENVIRONMENT from the submenu. Select Mechanical Environment Library and select Golf Club Head from the Model Library
SLF File. Select APPLY to build the grip and club head.
Step 8: Bring up the discrete flexible link panel.
At the top ADAMS/View menu select Build-Flexible Bodies-Discrete Flexible Link, to bring up the
panel pictured in Figure 5.
Step 9: Set the parameters and create the flexible shaft.
Set the flexible shaft parameters as in Figure 5 and select OK to create the flexible link.
Step 10: Attach the club to the hands.
. A
Right-click the forces icon in the Main Toolbox, and select the bushing force icon
bushing is a restraint between two bodies whose stiffnes and damping can be defined in 6 DOF.
Pick SML_Right_Hand as the first body and SML_Club_Grip as the second body. Right-click on the
ground to bring up a location panel under the main toolbox, enter (0.3598247916, 0.697651211,
0.5148486542) and Select APPLY. Modify and set the values as in figure 7. Rename the bushing
.World.Hand_Grip.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis


loc

Figure 7: Panel for selecing the specific location

Figure 8: Force Bushing info for the right hand

Create a new bushing, selecting the first body as SML_Right_Hand, and the second body as
SML_Left_Hand. Select the bushing created prior as the location of the new bushing. Modify the
bushing and set the value as in figure 7. Rename the bushing .World.Rhand_Lhand.
OR
Open a command window by going in "View" in the top ADAMS menu to use the commands
provided.
Create the markers using the following ADAMS/View commands:
marker create marker=.World.Club_Grip.hands location=0.3598247916, 0.697651211, 0.5148486542
orientation=0.0, 0.0, 0.0 rel=.World
marker create marker=.World.SML_Right_Hand.Grip location=0.3598247916, 0.697651211, 0.5148486542
orientation=0.0, 0.0, 0.0 rel=.World
marker create marker=.World.SML_Left_Hand.Grip location=0.3598247916, 0.697651211, 0.5148486542
orientation=0.0, 0.0, 0.0 rel=.World

Connect the club to the right hand using the following command:

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis


force create element bushing bushing=.World.Hand_Grip i_mark=.World.SML_Right_Hand.Grip
j_mark=.World.Club_Grip.hands stiffness=1.0E+012,1.0E+012,1.0E+012
damping=1.0E+0011,1.0E+0011,1.0E+0011 force_preload=0.0,0.0,0.0 tstiffness=1.0E+008,1.0E+008,1.0E+008
tdamping=1.0E+007,1.0E+007,1.0E+007 torque_preload = 0.0, 0.0, 0.0

Connect the hands together with a bushing element using the following command:
force create element_like bushing bushing=.World.Rhand_Lhand i_mark=.World.SML_Right_Hand.Grip
j_mark=.World.SML_Left_Hand.Grip stiffness=1.0E+012,1.0E+012,1.0E+012
damping=1.0E+0011,1.0E+0011,1.0E+0011 force_preload=0.0,0.0,0.0 tstiffness=1.0E+008,1.0E+008,1.0E+008
tdamping=1.0E+007,1.0E+007,1.0E+007 torque_preload=0.0,0.0,0.0

Creating the Foot-Floor Constraints


Joints are used to represent the contact between the feet of the golfer and the playing surface. A
fixed joint is created between the left foot and the ground and a spherical joint is created at the
pivot location of the right foot. For information on selecting specific model parameters for this
section see Choosing Model Parameters.

Figure 9: The kinematic joints between the feet and the floor

Step 11: Create a bushing element between the left foot and the floor.
Create a bushing force, selecting SML_Left_Foot as the first body and the ground as the second
body. Right-click to bring up the location. Set the location to (0.6165542782, 5.5868707173E002, 0.35559667) using the Precision Move panel. See figure 6. Rename the bushing
.World.Left_Foot_GRX.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

Figure 10: Force Bushing info for the left foot

OR
Use the following ADAMS/View commands to create the markers and bushing element between
the left foot and the floor:
1. Create the markers
marker create marker=.World.SML_Left_Foot.MARKER_2342 location=0.6165542782, 5.5868707173E-002,
0.35559667orientation=0.0, 0.0, 0.0 rel=.World
marker create marker=.World.ground.MARKER_2343 location=0.6165542782, 5.5868707173E-002, .35559667
orientation=0.0, 0.0, 0.0 rel=.World

2. Create the bushing force element


force create element_like bushing bushing=.World.Left_Foot_GRX
i_marker_name=.World.SML_Left_Foot.MARKER_2342 j_marker_name=.World.ground.MARKER_2343
stiffness=1.0E+012,1.0E+012,1.0E+012 damping=1.0E+0011,1.0E+0011,1.0E+0011 force_preload=0.0,0.0,0.0
tstiffness=1.0E+008,1.0E+008,1.0E+008 tdamping=1.0E+007,1.0E+007,1.0E+007 torque_preload=0.0,0.0,0.0

Step 12: Create a bushing element between the right foot and the floor.
Create a bushing force, selecting SML_Right_Foot as the first body and the ground as the second
body. Select the location as (0.1305656331, 4.257274312E-002, 0.4558554612). The location and
orientation of the bushing is determined by it's markers. In order to modify the orientation of a
bushing, it's markers must the modified. Select the middle of the bushing and look for two
bushings with consecutive numbers. Right-click and modify each of the markers so the
orientations are (266.7096912618, 40.7657878536, 92.5480285278) Select the bushing and
modify it. Set the values as in figure 11. Rename the bushing .World.Right_Foot_GRX.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

Figure 11: Force Bushing info for the right foot

OR
Use the following ADAMS/View commands to create the markers and bushing force element
between the right foot and the floor:
1. Create the markers:
marker create marker=.World.SML_Right_Foot.MARKER_2344 location=0.1305656331, 4.257274312E-002,
0.4558554612 orientation=266.7096912618, 40.7657878536, 92.5480285278 rel=.World
marker create marker=.World.ground.MARKER_2345 location=0.1305656331, 4.257274312E-002,
0.4558554612 orientation=266.7096912618, 40.7657878536, 92.5480285278 rel=.World

2. Create the bushing force element


force create element_like bushing bushing=.World.Right_Foot_GRX
i_marker_name=.World.SML_Right_Foot.MARKER_2344 j_marker_name=.World.ground.MARKER_2345
stiffness=1.0E+012,1.0E+012,1.0E+012 damping=1.0E+0011,1.0E+0011,1.0E+0011 force_preload=0.0,0.0,0.0
tstiffness=100.0,100.0,100.0 tdamping=10.0,10.0,10.0 torque_preload=0.0,0.0,0.0

Step 13: Create the floor graphics.


Create a ground marker named: ".World.ground.flr", with a location of (-0.4, 0.0, -0.4), with an
orientation of (0,0,0) relative to .World.
Select the box icon from the rigid body section in the Main Toolbox. Select the previously created
marker as the first locatioin and another logical location as the second. Right-click on the box and
select MODIFY. Set the diagonal corner coordinates to be (1.5, .01, 2) If the block is not under
the body, check the orientation of the original marker and change to (0,0,0) Right-click the box
and select APPEARANCE. Change the color to be green. Select OK.
Create a fixed joint to fix the floor in space. Select the fixed joint icon from the joint section in
the Main Toolbox. Select the floor as the first body and the ground as the second. Select
.World.ground.flr as the location.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

Figure 12: Geometry Modify Shape box info for the floor

Figure 13: Green Appearance for the floor

OR
Use the following ADAMS/View commands to create the markers and graphics for the ground and
change the color to green:
marker create marker=.World.ground.flr location=-0.4, 0.0, -0.4 orientation=0,0,0 rel=.World
geometry create shape block block_name = .World.ground.floor corner_marker = .World.ground.flr
diag_corner_coords = 1.5, .01, 2

Running the Inverse-Dynamics Simulation


With the model in the proper position, the hip components implanted in the model, the club model
created and attached to the hands, the motion capture data read in, and the motion agents
installed, an inverse-dynamics or "training" simulation may be performed. This simulation is
performed to record the joint angulation histories for the golf stroke. When the joints are fully
trained to reproduce the motion, a subsequent forward-dynamics simulation will be performed.
The trained joints will be using pd-servo controllers based on the recorded angulations from the
file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

training phase.

Figure 14: Successive animation frames from the inverse-dynamics simulation

Step 14: Bring up the analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 15: Adjust the gravity settings and run the dynamics simulation
Check the gravity box and set the y-value to -9.80665. Select "Robust" integrator settings. Set
the simulation end time to 1.5 seconds with 150 times steps and select ANALYZE.
Step 16: Display animation
Use the ADAMS/View toolbox to animate the model.

Preparing the Model for the Forward-Dynamics Simulation


After the inverse-dynamics simulation is performed the joint angulation histories are now recorded
for each joint. In this section, trained elements or PD-Servo controllers are exchanged for the
passive learning elements on the joints.
The motion agents are removed from the model and a "Tracker Agent" is installed. The tracker
agent is a motion agent located at the center of the pelvis which provides force-stabilization for
the forward-dynamics simulation. During the inverse-dynamics simulation the location and
orientation of the frame of the tracker agent is recorded (it is not generating a force during the
inverse-dynamics simulation). The location and orientation information may then be used to drive
the tracker agent in the forward-dynamics simulation. Usually various degrees-of freedom are
specified as "free" to allow for proper dynamical interaction. For this example the freedom in the
direction normal to the floor would be specified as free, to allow for proper ground reaction force
generation between the feet and the steps. For information on selecting specific model parameters
for this section see Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

Figure 15: Tracker agent at the pelvis center

Figure 16: Panel set to create the tracker agent.

Step 17: Bring up the joint training panel


Select JOINTS from the main-menu and TRAINING from the sub-menu.
Step 18: Install Trained DRIVER rotational joint elements
Select "Install Trained Driver Rotational Joint Elements." Enter 1e5 and 1e3 for the servo
proportional and derivative gain respectively. Select APPLY to update the joints.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

Step 19: Bring up the motion agent tracker panel


Select MOTION from the main-menu and CREATE TRACKER AGENT from the sub-menu.
Step 20: Create the tracking agent
Specify the stiffness/damping parameters as in Figure 16. Specify all freedoms as driven except
for the Y-Dof. Select APPLY.
Step 21: Create the specific data requests
Select Build-Measure-REQUEST-New from the ADAMS/View menu. Name the request
REQ_Hand_Grip_Force. Select Define Using Function Expression and input in
"BUSH(.World.hand_grip, 0, 5, 0)" in the F5 function.

Figure 17: REQUEST page setup for a function expression

OR
Create the data request to output the hand/grip forces generated during the golfing simulation
using the following ADAMS/View command:
output_control create request request_name = REQ_Hand_Grip_Force f5 = "BUSH(.World.hand_grip, 0, 5,
0)"

Running the Forward-Dynamics Simulation


With the tracker agent place, and the contractile elements in the muscles of the lower body to
include the motion splines from the inverse-dynamics simulation, the PD-Servo controllers
controlling the torque joints of the body, the forward-dynamics simulation is ready to be

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

performed.

Figure 18: Panel set to run the forward-dynamics simulation

Step 22: Bring up the analysis panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 23: Disable the motion agents and run the forward dynamics simulation
Run the simulation 1.5 seconds and 200 time steps using the "Default" integrator settings. Be
sure to disable the motion agents. Select ANALYZE.

Interrogating the Results


When the simulation is complete the model may be animated and the results reviewed.
Various data may be presented from the forward-dynamics simulation including:
Foot-floor contact forces
Body kinematics
Joint torques
hand-club forces
shaft strain

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

Figure 19: Data for thoracic and lumbar twist torques and the frontal plane shoulder torques

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis


Figure 20: Data for the contact between the hands and grip

Figure 21: Data for the torques on the shaft

Figure 22: Animation frames of the forward-dynamics simulation

Figure 23: Results panel set up to plot the right wrist joint torques

Step 24: Display animation


Use the ADAMS/View toolbox to animate the model.
Step 25: Display simulation with skin/skel model.
Set the display to Skel_Skin and run the animation.
file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

Step 26: Turn on stick model with joint bubbles


In order to view the torques in the model clearly, the graphics are reduced to the stick model
using the display option at the bottom of the main LifeMOD panel. Check "Scale Joint/Tissue
Graphics" select Joints and select Scale Globally. Select the light bulb to turn on the joint bubble
graphics. Select front view, divide window and select PLAY.
Step 27: Bring up results panel
Select RESULTS in the main-menu and ANIMATION in the sub-menu.
Step 28: Turn on the joint torque scaling
Select scale Joint/Tissue Graphics, chose Joints, scale locally and select the light icon.
Step 29: Animate the stick model
Use the ADAMS/View toolbox to animate the model. Observe the scaling joint torque bubbles.
Step 30: Display the grip reaction forces
Turn on the scaling force graphics acting at the bushing connections between the hands and the
club grip using the following ADAMS commands:
mdi graphic_force object=.World.hand_Grip type=2
default force force_scale=300 torque_scale=.00

Use the ADAMS/View toolbox to animate the model. Observe the scaling force graphics at the
grip.
Step 31: Bring up the post processor window
Select DATA DISPLAY in the sub-menu. Select the Post Processor button in the results panel to
bring up the ADAMS results post processor window.
Step 32: Plot the thoracic twist torques
Select SML_thoracic for the Joint, Torque for the characteristic Transverse for the component.
Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 5. Check
New Plot and select CREATE FULL PLOT.
Step 33: Plot the lumbar twist torques
Select SML_lumbar for the Joint, Torque for the characteristic Transverse for the component.
Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 5. Check
"New Plot" and select CREATE FULL PLOT.
Step 34: Animate front view
Select ANIMATION from the sub-menu, select front view, divide window and select PLAY.
Step 35: Animate right view
Select right view, divide window and select PLAY.
Step 36: Turn on stick view and joint scaling graphics
In order to view the torques in the model clearly, the graphics are reduced to the stick model
using the display option at the bottom of the main LifeMOD panel. Check "Scale Joint/Tissue
Graphics" select Joints and select Scale Globally. Select the light bulb to turn on the joint bubble
graphics. Select front view, divide window and select PLAY.
Step 37: Plot the left shoulder frontal plane torques
Select DATA DISPLAY from the sub-menu. Select SML_Left_Shoulder for the Joint, Torque for the
characteristic Frontal for the component. Select a low pass butterworth data filter with a cutoff
frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 38: Plot the right shoulder frontal plane torques
Select SML_Right_Shoulder for the Joint, Torque for the characteristic Frontal for the component.
Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 5. Select
CREATE FULL PLOT.
Step 39: Plot the left wrist frontal plane torques
Select SML_Left_Wrist for the Joint, Torque for the characteristic Frontal for the component.
Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 5. Select

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Golf Swing Analysis

CREATE FULL PLOT.


Step 40: Plot the right wrist frontal plane torques
Select SML_Right_Wrist for the Joint, Torque for the characteristic Frontal for the component.
Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 5. Select
CREATE FULL PLOT.
Step 41: Animate front view
Select ANIMATION from the sub-menu. Select front view, divide window and select PLAY.
Step 42: Plot the grip torques
In the bottom panel in the post processor, select "Requests" as the Source. Scroll down to the
REQ_Hand_Grip_Force, select the U1 component and select ADD CURVES.
Step 43: Animate front view
Select ANIMATION from the sub-menu. Select front view, divide window and select PLAY.
Step 44: Plot the internal club torques at the 1/6 points on the shaft
Use the ADAMS/View plotting tools to plot the magnitude component Shaft_beams. Select Objects
as the Source. Select Force as the filter, select the Object as Shaft_beam1, the characteristic as
element_torque and the component as magnitude. Do this for each shaft beam element.
Step 45: Turn off skeleton and plot the motion of the club
Set the model display to "none", select front view, divide window and select PLAY.
Step 46: DEMO COMPLETE

Further
This model could be used to explore may aspects of the golf swing including:
club strain and loading
wear prediction
effects of changing the club parameters on the joint torques
ground reaction forces

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Golf%20Swing%20Analysis.html[06-Jun-15 12:50:06 PM]

LifeMOD Tutorials | Muscle Recruitment

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump

Muscle Recruitment
LifeMOD has a muscle recruitment capability for
situations where multiple muscle activation patterns
are capable of meeting the forward dynamics
kinematic profile. This example demonstrates the
muscle recruitment process using a simple arm
flexion at the elbow.

Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall

Key skills exercised in this tutorial include:


Development of trainable muscle forces
Inverse-dynamics, forward-dynamics
simulations.
Setup, evaluating, and running muscle
recruitment optimization

Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement

Sections
Generating the Body Segments
Reducing the Model
Generating the Joints
Creating the Muscle Forces
Posing the Human Model
Adding Motion Agents to the Human Model

Lifting Styles

Running the Inverse-Dynamics Simulation

Muscle Recruitment

Running the Forward-Dynamics Simulation

Muscle Relocation
Rehabilitation Machine
Tennis
Walking

Adding Muscle Recruitment Data Elements


Calculating Muscle Recruitment Sensitivities
Running Recruitment Optimization
Interrogating Results
Further

NeckSIM:Whiplash

Generating the Body Segments


In this phase, the arm model is created for simulation. The model will consist of a right arm and the
upper body.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 1: Body segment create panel and full body model

Step 1: Bring up segments panel and set fields


Launch the LifeMOD software and select CREATE NEW MODEL to begin a new modeling session.
Select SEGMENTS from the main-menu and CREATE BASE SEGMENT SET from the sub-menu.
Step 2: Create the body
Generate a full body model using the GeBod database. Select a 170 lbs, 70 inch tall male. Name
model Eric, set units to Inch Lbm Lbf, and hands to grip. Select "Create Body Parameter Table" to
create the body measurement table, then select "Create Human Segments" to create the body.

Reducing the Model


In this phase, the segments of the model are deleted to focus only on the right arm. All segments
are deleted except for the head, neck, upper_torso, central_torso, lower_torso, right_scapula,
right_upper_arm, right_lower_arm, right_hand.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 2: Segment delete panel and the resulting sub-model

Step 3: Bring up segment delete panel


Select SEGMENTS on the main-menu and DELETE on the sub-menu.
Step 4: Delete the various body segments
All segments are deleted except for the head, neck, upper_torso, central_torso, lower_torso,
right_scapula, right_upper_arm, right_lower_arm, right_hand.

Generating the Joints


In this phase, the human segments created in the first phase are connected together with kinematic
joints. At the same time passive torque functions are created at each joint degree of freedom. The
passive joints are created on the arm and trunk to stabilize the model during the inverse-dynamics
simulation and includes a spring-damper torque and angle limiting torque for each rotation degree
of freedom for the individual joint (scapular, shoulder, elbow, wrist, upper neck, lower neck,
thoracic and lumbar). For information on selecting specific model parameters for this section see
Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 3: Arm model with joints (right) and panel to create the passive joints on the right arm.

Step 5: Bring up joint create panel


Select JOINTS in the main-menu and CREATE BASE JOINT SET in the sub-menu. Select "Prepare
Model with Recording Joints".
Step 6: Create passive spring damper joints with angle limits for the model
Check the Right Arm and the Spinal joint sets, and set to 1 and the damping to .1. Select MODIFY
to bring up the joint matrix panels.
Step 7: Set all the spinal joints to fixed and create the first set
Select "Fixed" as the joint option for each degree-of-freedom for each spinal joint and select apply
to create fixed joints in the spine.
Step 8: Set the right scapular joint and shoulder joint to fixed and create the set
Select "Fixed" as the joint option for each degree-of-freedom for each right arm joint, except for
the right elbow sagittal freedom which should remain as passive. Select APPLY to create fixed joints
in the arm.

Creating the Muscle Forces


The next step in the process is to create soft tissues (muscles) on the model. LifeMOD
automatically creates a set of basic muscle groups for the body. Muscles consist of recording
elements or trained elements. The recording elements are simple data collectors which record the
contraction history of the muscle during an activity when the model is moved using external drivers
such as motion agents. Trained elements can be either PID closed-loop force actuators or actuation
curve open-loop force actuators acting to drive the skeleton's motion. Muscle parameters such as
physiological cross sectional area (pCSA) and maximum tissue stress are used to calculate the
maximum force potential of the particular muscle. LifeMOD contains a database of pCSA values for
each muscle and is scaled accordingly based on the input body parameters (ht, wt, gender and
age). Further, the force output of the muscle may be scaled from 0% to 200% to change the
contributions of each particular muscle. For information on selecting specific model parameters for
this section see Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 4: Muscle groups created on the model. Note that the color of the muscles is "rust" indicating
passive training elements.

Figure 5: Panel set up to create the right arm muscle groups. The default tissue stress is used and the
muscle tone multiplier is set to 200.

Step 9:Bring up the tissue set create panel


Select SOFT TISSUES on the main-menu and CREATE BASE TISSUE SET on the sub-menu.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Step 10: Set the fields for the muscle generation


Select "Prepare Model with Recording Muscle Elements (To be trained in an inverse-dynamics
simulation)" to bring up the panel displayed in figure 5. Set the passive stiffness and damping to
0.1, muscle resting load to 0, and set the muscle tone multiplier to 200%.
Step 11: Create the muscles
Check right arm and select APPLY to create the muscles.

Posing the Human Model


After the joints are created on
moved into place. The posture
library then further modify the
the Lower_Torso segment and

the model the posture of the model may be adjusted, and the model
may be adjusted by recalling one of several postures in the posture
joint angles if necessary. The body is moved into place by selecting
changing the location.

Figure 6: The model placed in the riding posture

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 7: Posture modification panel to place the model in the riding posture.

Step 12: Bring up posture panel


Select POSTURE on the main-menu and CONFIGURE BASE MODEL on the sub-menu.
Step 13: Update the right shoulder joint
Enter -40 for the sagittal angle of the shoulder joint. Select the Shoulder button to update the joint
with the angle.
Step 14: Update the right elbow joint
Enter -10 for the sagittal angle of the elbow joint. Select the Elbow button to update the joint with
the angle.

Adding Motion Agents to the Human Model


The model, as it exists, is passive and must be driven or manipulated with an external force. To
drive the model to capture the simple flexion and extension motion of the neck, Motion Agents will
be added to the model. The motion will have the effect of simply rotating the lower arm through its
motion, all the while the contraction of the muscles will be recorded for the subsequent forwarddynamics simulation.

Figure 8: Data for the driving spline for the motion agent. The left column is the simulation time and the
right column is the angle of the lower arm.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 9: Panel set up to create the motion agent to move the lower arm

Step 15:Bring up the create motion agent panel


Select MOTION on the main-menu and CREATE INDIVIDUAL MOTION AGENT on the sub-menu.
Step 16: Create a spline using data from Figure 9
Select Build, Data_Elements, Spline, New in the task bar. Enter data from figure 9. Select OK.
OR
Create the data spline using the ADAMS/View commands:
data_element create spline spline=.World.Eric_SPLINE_1 x = 0.0, 1.0, 2.0, 3.0, 4.0 y = 0.0, -10.0, -20.0, -40.0, 60.0 linear_extrapolate=no units=no_units

Step 17: Create motion agent on the lower arm


Select Eric_Right_Lower_Arm for the body segment. Use the Manually Select Location agent
positioning method with a location of (-1.8, 10.7, 13.4) Set the parameters as in Figure 10. Set all
dof's to free except Rx_dof which is set to driven referring to the Spline_2 created in the prior step.
Select APPLY to create the motion agent

Running the Inverse-Dynamics Simulation


With the model developed, complete with passive training muscle groups and motion agents an
inverse-dynamics simulation may be performed to capture the contraction of the muscles for the
elbow flexion activity.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 10. Animations from the inverse-dynamics simulation

Figure 11: Analyze panel set to run inverse-dynamics simulation

Step 18: Create a fixed joint between the upper_torso and ground
Select the fixed joint icon from the main toolbox. Select .World.Eric_Upper_Torso as the first body,
and .World.ground as the second body. Right-click and set the location to (5, 9, 3) in the location
panel. Select APPLY.
OR

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Use the following ADAMS/View commands to create a fixed joint between the upper_torso and
ground:
marker create marker=.World.Eric_Upper_Torso.ground location=5, 9, 3 rel=.world
marker create marker=.World.ground.Chest location=5, 9, 3 rel=.world
constraint create joint Fixed joint_name=.World.Chest_Ground
i_marker_name=.World.Eric_Upper_Torso.ground j_marker_name=.World.ground.Chest

Step 19: Bring up the analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu
Step 20: Run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 4 seconds and 100
time steps using the default integrator settings.
Step 21: Display simulation results
Use the ADAMS/View main toolbox to animate the model.

Running the Forward Dynamics Simulation


With the muscle contraction history recorded from the inverse-dynamics simulation, it is now used
in linear PID-Servo formulation to produce a force to recreate the motion history. The process
entails deactivating the Motion Agents and updating the muscles. For information on selecting
specific model parameters for this section see Choosing Model Parameters.

Figure 12: Panel set to run the analysis. Be sure to disable motion agents.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 13: Model with active "trained" muscle force elements. Note that the color of the muscles is now
red indicating active elements.

Step 22: Bring up soft tissue Training panel


Select SOFT TISSUES on the main-menu and TRAINING on the sub-menu. Select "Install Trained
Closed-loop Contractile Elements on Muscles".
Step 23: Update the muscles using inverse dynamics data
Specify 1e6 as the proportional gain, 1e6 as the integral gain, and 1e4 as the derivative gain.
These values control how well the PID-servo actuators will track the desired contraction at each
time step in the analysis. Note that the individual muscle will not produce a force greater than the
physiological cross section area (pCSA) times the maximum tissue stress. Select APPLY to update
the muscles.
Step 24: Bring up the analyze panel
Select ANALYZE from the main-menu and DYNAMICS from the sub-menu
Step 25: Disable the motion agent and run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 4 seconds and 100
time steps using the default integrator settings. Select "Disable motion agents".
Select ANALYZE.
Step 26: View the simulation results
Use the ADAMS/View main toolbox to animate the model.
Step 27: Save the analysis
Select SAVE ANALYSIS and enter the name Baseline. Select OK.

Adding Muscle Recruitment Data Elements


We are done with a standard forward dynamics analysis. We will introduce the topic of muscle
recruitment by first adding the data structures for muscle recruitment to the model. These include
adding a goal and associated response measures to be used to evaluate and optimize recruitment
response, dynamic gains to the muscles to represent the recruitment function, and adding a design
variable for each muscle to be used for recruitment optimization.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 14: Muscle Recruitment Setup panel

Step 28: Bring up the muscle recruitment setup panel


Select SOFT TISSUES on the main-menu and RECRUITMENT on the sub-menu and SETUP on the
tertiary menu.
Step 29: Fill in the Recruitment Setup
Fill in all selection values as shown in Figure 14.
Make sure that the Goal option is checked, and select Min Activation for the goal, Power for the
Measure, and 2.0 for the Exponent. These will be used to define measures and objectives for the
muscle recruitment. The Suffix is a label associated with this goal that is used in the name of the
created variable, measure, and objective.
Set the Dynamic Gain value to 10.0, the start to 0.0, end to 4.0, and Spline inc to 0.02. These will
define a dynamic gain spline representing a default recruitment level that will be the same for all
muscles, and span the entire time for the simulation. It is also good practice to set the spline
increment to at least five times smaller than the optimization increment size to be used later.
Set the Design Variables min to 1.0 and max to 1000.0. These represent the minimum and
maximum level that the recruitment level can be changed to during a recruitment optimization.
In the Muscles field, select all muscles by right clicking and selecting "*". Alternatively type "*" and
hit enter in the field, and then highlight all muscles in the Which? panel and select OK (see Figure
15). By selecting all muscles, the objectives and measures will be created based on the full set.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 15: Muscle selection panel.

Select APPLY.
Step 30: Bring up the analyze panel
Select ANALYZE from the main-menu and DYNAMICS from the sub-menu
Step 31: Disable the motion agent and run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 4 seconds and 100
time steps using the default integrator settings. Select "Disable motion agents".
Select ANALYZE.
Step 32: Save the analysis
Select SAVE ANALYSIS and enter the name PreOptimization. Select OK.
Step 33: Bring up results plotting
Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu. Select "Results Window"
button to bring up the results processor.
Step 34: Review Recruitment Measures
Right click on the plot window in the Adams/PostProcessor window and select Load Plot. Select the
simulation PreOptimization, source Measures. There are now two measures for each muscle:
_MEA_At measuring the activation of the muscle, and _MEA_DynGain showing the Dynamic Gain
representing the recruitment level.
There is one additional measure called MEA_MinAct2. This represents the goal, which was set to
Power of Exponent 2.0. The measure is the sum squared activation levels for all muscles, divided by
the number of muscles, and then raised to the 1/2.0 power. In other words, for the Power of
Exponent equal to 2.0, the MEA_MinAct2 measure is for the rms Activation level.
Select Surf and review the measures. Note that there are only five muscles with significant
activation levels: _Bic1_Rtiss_1, _Bic2_Rtiss_1, _Brac1_Rtiss_1, _Ecarp1_Rtiss_1, and
_Pron1_Rtiss_1.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 16: Muscle Activation Measures.

Calculating Muscle Recruitment Sensitivities


Now that we have muscle recruitment data structure in place, and have an initial assessment of the
muscle activations using default muscle recruitment levels, we would like to optimize the
recruitment levels. Before proceeding with optimization, however, it would be nice to filter the
muscle set down to the minimum number of muscles needed to optimize. This way the optimization
will proceed as efficiently as possible.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Based on the initial evaluation of the muscle activations, the five muscles with significant activation
levels would be good candidates for optimization. To determine if changes in the recruitment levels
for these muscles have any effect on their and any other muscles activation levels, a sensitivity
case will be run.

Figure 17: Muscle Recruitment Sensitivity panel

Step 35: Set Solution settings


Deselect the "Results Window" button to exit the post processor and return to the main simulation
tool. Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Set gravity at -386.0885826772 in the y direction. Select "Disable motion agents".
Step 36: Bring up the recruitment sensitivity panel
Select SOFT TISSUES on the main-menu and RECRUITMENT on the sub-menu and SENSITIVITY on
the tertiary menu.
Step 37: Fill in the Sensitivity options
Fill in the values as shown in Figure 17.
Set the start to 0.0, end to 4.0, and Solver step to 0.1.
In the Muscles field, select just the five muscles with significant activation levels (_Bic1_Rtiss_1,
_Bic2_Rtiss_1, _Brac1_Rtiss_1, _Ecarp1_Rtiss_1, and _Pron1_Rtiss_1). The names can be typed in,
selected by right clicking adding the names sequentially, or type "*" and hit enter in the field, and
then highlight the five muscles in the Which? panel and select OK (see Figure 18). By selecting
these five muscles, a separate sensitivity analysis will be performed on each of these muscles.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 18: Muscle selection panel.

Select "Modify" under Advance Settings. Set the Perturbation to 10.0, the Baseline Prefix to
Sens_Baseline, and the Analysis Prefix to Sensitivity.
In the response muscles field select all muscles. This means that the change in activation for all
muscles will be calculated for each sensitivity analysis. (if this field is left blank, only the five
muscles in the Muscles field would be calculated).
Step 38: Run & Review Muscle Recruitment Sensitivity
Select APPLY.
Six analysis will be performed: a baseline analysis followed by five sensitivity analysis, one for each
muscle in the Muscles field. Each sensitivity analysis will have the recruitment level for that muscle
increased by the perturbation value. Results will be presented in an external CSV file with name
based on the Analysis Prefix field value. When the analysis are done, a message will indicate where
to find the results (see Figure 19).

Figure 19: Sensitivity Results info panel.

Open file Sensitivity.csv in Excel, or alternately a text editor. Values in the file represent rms
(average over time) activation changes, relative to the baseline run, for the muscles. So, for
example, the first row indicates that by changing the recruitment curve from 10.0 (baseline set in
step 29) to 20.0 (by adding the perturbation value of 10.0) for muscle _Bic1_Rtiss_1, the activation
for _Bic1_Rtiss_1 has an rms change of 0.17, with significant changes to _Bic2_Rtiss_1,
_Brac1_Rtiss_1, _Pron1_Rtiss_1, and _Ecarp1_Rtiss_1 - i.e. the same five muscles with significant
activation levels. More important, none of the rest of the muscles have a significant change in
activation (from near zero levels) for a change in recruitment for these five muscles. The conclusion
is that we should perform a recruitment optimization on these five muscles, but we can leave out
the other muscles as not affected.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 20: Sensitivity Results.

Running Recruitment Optimization


Now let's perform the Recruitment optimization. Optimization will use the recruitment levels of the
five muscles as design variables, and minimize the goal of summed activation squared. For this
example we will run a single optimization across the entire 4.0 second simulation, as opposed to
running a separate optimization at each time step.

Figure 21: Muscle Recruitment Optimize panel

Step 39: Bring up the recruitment optimize panel


Select SOFT TISSUES on the main-menu and RECRUITMENT on the sub-menu and OPTIMIZE on the
tertiary menu.
Step 40: Fill in the Recruitment Optimize panel
Fill in all selection values as shown in Figure 21.
Set the Start to 0, end to 4, and Solver step to 0.1. Select Single Stage to indicate that a single
optimization across the entire simulation time will be performed. (Note: With Multi Stage you set an
Optimize Increment to indicate that optimization will be done in sequential smaller time steps. For
example, if we had wanted to run a separate simulation at each 0.1 second time steps - centered
at 0.0, 0.1, 0.2, ... and spanning ranges 0.0-0.05, 0.05-0.15, 0.15-0.25, ... - we would select Multi
Stage and put the optimization inc to 0.1)
Select Modify under Advanced Settings. Set the algorithm to SQP, Max Iterations to 3, Perturbation
to 0.01, and Tolerance to 1.0e-4. Set the Analysis Prefix to Optimize_Run. Set Time Measure to
Power, and Time Exponent to 2.0. (Note: Time Measure indicates how the Goal will be evaluated as
a function of time to convert the goal from a curve to a scalar value. This evaluation is done over
the appropriate time increment based on the time varying values of the Goal Variable.)
In the Muscles field, enter the five muscles we wish to optimize: _Bic1_Rtiss_1, _Bic2_Rtiss_1,
_Brac1_Rtiss_1, _Ecarp1_Rtiss_1, and _Pron1_Rtiss_1.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

In the Goal Variable field enter VAR_MinAct2. This is the name of the ADAMS_Variable associated
with the measure previously created.
The objective of the optimization will be based on the objective settings in the optimization setup
panel.
Select APPLY.

Interrogating Results
Results for the optimization objective vs. iteration should be plotted in a measure plot, as shown in
Figure 22. Results for the optimization are stored in analysis Optimize_Run.

Figure 22: Optimization Objective vs Iteration

Step 41: Bring up results plotting


Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu. Select "Results Window"
button to bring up the results processor.
Step 42: Create Measure plots of Muscle Activation Level
Split the post-processing page into a 2x3 grid of plots. Select simulations PreOptimization and
Optimize_Run. Select source Measures. In the top left plot window, plot measure MEA_minAct2 for
the two simulations. In the remaining windows, plot the _MEA_At measure for the five muscles of
interest: _Bic1_Rtiss_1, _Bic2_Rtiss_1, _Brac1_Rtiss_1, _Ecarp1_Rtiss_1, and _Pron1_Rtiss_1. For
each muscle plot, set the Y axis to range from 0 to 1.0 with 4 tics.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Figure 23: Muscle Activation levels pre and post recruitment optimization.

Notice that the minAct2 curve that the optimization objective is calculated from (in this case the
optimization objective is the sum square of the values of the minAct2 measure, summed over time)
was reduced during the optimization. All of the muscle activations were reduced except for muscle
_Bic2_Rtiss_1, which was increased.
Step 43: Create Measure plots of Recruitment Level
Add a second post-processing page in a 2x3 grid of plots. Select simulations PreOptimization and
Optimize_Run. Select Measures. In five of the plot windows, plot _DynGain measures for the five
muscles of interest. For each muscle plot, set the Y axis to range from 0 to 100.0 with 5 tics.

Figure 24: Muscle Recruitment levels pre and post recruitment optimization.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Muscle Recruitment

Notice that the dynamic gain, as represented in the _DynGain measures, have been adjusted during
the optimization. The relative recruitment level between the muscles is represented by the ratio
between these curves. Also note that the curves are flat, with a single value for the entire 4
seconds of simulation. That is because only a single stage optimization was performed. It is possible
to optimize further in successive stages, with commensurate simulation time required.
Step 44: DEMO COMPLETE

Further
This model was put forth to demonstrate the muscle recruitment process. The intention with this
model was to show the process with a relatively small model that solved the recruitment sensitivity
and optimization multi-runs in relatively short time frame. The same process can be used on any
model that has multiple trained muscles.
This model may be refined in many areas including:
Including more movements
Including more muscles in the model
Converting the muscles from simple trained to Hill trained
Change the optimization objectives
Optimizing the recruitment levels in smaller stages

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Recruitment.html[06-Jun-15 12:50:10 PM]

LifeMOD Tutorials | Antagonistic Muscles

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping

Orthopedics Application - Antagonistic Muscles


LifeMOD provides two methods of accurately producing
muscular forces; the trainable element and the Hill-base
element. These can now be combined to model co-contraction
or antagonistic effects in the human model.
To illustrate this feature a simple arm model will be created
with base muscles. A simple elbow flexure will be performed
for two cases. In the first case, the model will be composed
entirely of trainable muscle elements. In this case there will
not be antagonistic muscle forces. In the second case the
trainable triceps muscles will be replaced with Hill-based
muscles.
The Hill-based muscles consist of both a passive and
contractile element. The contractile element is driven with an
normalized activation curve. This curve is usually based on
EMG experimental data, but for this example a simple input
curve will be used. The intention is to turn on the triceps
muscle force during elbow flexure to oppose the force in the
biceps muscle. The change in the elbow joint force and the biceps muscle force necessary to flex the elbow
will be compared with the preceding analysis.
The simulation will be repeated with a different triceps activation curve to examine the effects on the elbow
force and the biceps muscle force necessary to flex the elbow.

Ground Reaction Force


Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine

Key skills exercised in this tutorial include:


Development of trainable muscle forces
Development of Hill-based muscle forces
Modeling antagonistic muscle effects
Inverse-dynamics, forward-dynamics simulations.
Scaled muscle force graphics animation
Creating data strip charts

Tennis
Walking
NeckSIM:Whiplash

Sections
Generating the Body Segments
Reducing the Model
Generating the Joints
Creating the Muscle Forces
Posing the Human Model
Adding Motion Agents to the Human Model
Running the Inverse-Dynamics Simulation
Running the Forward-Dynamics Simulation
Replace the Triceps with Hill-Based Muscles
Running the Forward-Dynamics Simulation
Interrogating the Results

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

Further

Generating the Body Segments


In this phase, the arm model is created for simulation. The model will consist of a right arm and the upper
body.

Figure 1: Body segment create panel and full body model

Step 1: Bring up segments panel and set fields


Launch the LifeMOD software and select CREATE NEW MODEL to begin a new modeling session. Select
SEGMENTS from the main-menu and CREATE BASE SEGMENT SET from the sub-menu.
Step 2: Create the body
Generate a full body model using the GeBod database. Select a 170 lbs, 70 inch tall male. Name model Eric,
set units to Inch Lbm Lbf, and hands to grip. Select "Create Body Parameter Table" to create the body
measurement table, then select "Create Human Segments" to create the body.

Reducing the Model


In this phase, the segments of the model are deleted to focus only on the right arm. All segments are
deleted except for the head, neck, upper_torso, central_torso, lower_torso, right_scapula, right_upper_arm,
right_lower_arm, right_hand.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

Figure 2: Segment delete panel and the resulting sub-model

Step 3: Bring up segment delete panel


Select SEGMENTS on the main-menu and DELETE on the sub-menu.
Step 4: Delete the various body segments
All segments are deleted except for the head, neck, upper_torso, central_torso, lower_torso, right_scapula,
right_upper_arm, right_lower_arm, right_hand.

Generating the Joints


In this phase, the human segments created in the first phase are connected together with kinematic joints.
At the same time passive torque functions are created at each joint degree of freedom. The passive joints
are created on the arm and trunk to stabilize the model during the inverse-dynamics simulation and
includes a spring-damper torque and angle limiting torque for each rotation degree of freedom for the
individual joint (scapular, shoulder, elbow, wrist, upper neck, lower neck, thoracic and lumbar). For
information on selecting specific model parameters for this section see Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

Figure 3: Arm model with joints (right) and panel to create the passive joints on the right arm.

Step 5: Bring up joint create panel


Select JOINTS in the main-menu and CREATE BASE JOINT SET in the sub-menu. Select "Prepare Model with
Recording Joints".
Step 6: Create passive spring damper joints with angle limits for the model
Check the Right Arm and the Spinal joint sets, and set to 1 and the damping to .1. Select MODIFY to bring
up the joint matrix panels.
Step 7: Set all the spinal joints to fixed and create the first set
Select "Fixed" as the joint option for each degree-of-freedom for each spinal joint and select apply to create
fixed joints in the spine.
Step 8: Set the right scapular joint and shoulder joint to fixed and create the set
Select "Fixed" as the joint option for each degree-of-freedom for each right arm joint, except for the right
elbow sagittal freedom which should remain as passive. Select APPLY to create fixed joints in the arm.

Creating the Muscle Forces


The next step in the process is to create soft tissues (muscles) on the model. LifeMOD automatically
creates a set of basic muscle groups for the body. Muscles consist of recording elements or trained
elements. The recording elements are simple data collectors which record the contraction history of the
muscle during an activity when the model is moved using external drivers such as motion agents. Trained
elements can be either PID closed-loop force actuators or actuation curve open-loop force actuators acting
to drive the skeleton's motion. Muscle parameters such as physiological cross sectional area (pCSA) and
maximum tissue stress are used to calculate the maximum force potential of the particular muscle.
LifeMOD contains a database of pCSA values for each muscle and is scaled accordingly based on the input
body parameters (ht, wt, gender and age). Further, the force output of the muscle may be scaled from 0%
to 200% to change the contributions of each particular muscle. For information on selecting specific model
parameters for this section see Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

Figure 4: Muscle groups created on the model. Note that the color of the muscles is "rust" indicating passive
training elements.

Figure 5: Panel set up to create the right arm muscle groups. The default tissue stress is used and the muscle tone
multiplier is set to 200.

Step 9:Bring up the tissue set create panel


Select SOFT TISSUES on the main-menu and CREATE BASE TISSUE SET on the sub-menu.
Step 10: Set the fields for the muscle generation
Select "Prepare Model with Recording Muscle Elements (To be trained in an inverse-dynamics simulation)" to
bring up the panel displayed in figure 5. Set the passive stiffness and damping to 0.1, muscle resting load

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

to 0, and set the muscle tone multiplier to 200%.


Step 11: Create the muscles
Check right arm and select APPLY to create the muscles.

Posing the Human Model


After the joints are created on the model the posture of the model may be adjusted, and the model moved
into place. The posture may be adjusted by recalling one of several postures in the posture library then
further modify the joint angles if necessary. The body is moved into place by selecting the Lower_Torso
segment and changing the location.

Figure 6: The model placed in the riding posture

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

Figure 7: Posture modification panel to place the model in the riding posture.

Step 12: Bring up posture panel


Select POSTURE on the main-menu and CONFIGURE BASE MODEL on the sub-menu.
Step 13: Update the right shoulder joint
Enter -40 for the sagittal angle of the shoulder joint. Select the Shoulder button to update the joint with
the angle.
Step 14: Update the right elbow joint
Enter -10 for the sagittal angle of the elbow joint. Select the Elbow button to update the joint with the
angle.

Adding Motion Agents to the Human Model


The model, as it exists, is passive and must be driven or manipulated with an external force. To drive the
model to capture the simple flexion and extension motion of the neck, Motion Agents will be added to the
model. The motion will have the effect of simply rotating the lower arm through its motion, all the while the
contraction of the muscles will be recorded for the subsequent forward-dynamics simulation.

Figure 8: Data for the driving spline for the motion agent. The left column is the simulation time and the right
column is the angle of the lower arm.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

Figure 9: Panel set up to create the motion agent to move the lower arm

Step 15: Create a spline using data from Figure 9.


Select Build, Data_Elements, Spline, New in the taskbar. Enter data from figure 9. Select OK.
OR
Create the data spline using the ADAMS/View commands:
data_element create spline spline=.World.Eric_SPLINE_1 x = 0.0, 1.0, 2.0, 3.0, 4.0 y = 0.0, -10.0, -20.0, -40.0, -60.0
linear_extrapolate=no units=no_units

Step 16: Bring up motion agent create panel


Select MOTION on the main-menu and CREATE INDIVIDUAL MOTION AGENT on the sub-menu.
Step 17: Create motion agent on right arm
Select Eric_Right_Lower_Arm for the body segment. Use the Manually Select Location agent positioning
method with a location of (-1.8, 10.7, 13.4) Set the parameters as in Figure 10. Set all dof's to free except
Rx_dof which is set to driven referring to the Spline_2 created in the prior step. Select APPLY to create the
motion agent

Running the Inverse-Dynamics Simulation


With the model developed, complete with passive training muscle groups and motion agents a inversedynamics simulation may be performed to capture the contraction of the muscles for the elbow flexion
activity.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

Figure 10. Animations from the inverse-dynamics simulation

Figure 11: Analyze panel set to run inverse-dynamics simulation

Step 18: Create a fixed joint between the upper_torso and ground
Select the fixed joint icon from the main toolbox. Select .World.Eric_Upper_Torso as the first body, and
.World.ground as the second body. Right-click and set the location to (5, 9, 3) in the location panel. Select
APPLY.
OR
Use the following ADAMS/View commands to create a fixed joint between the upper_torso and ground:
marker create marker=.World.Eric_Upper_Torso.ground location=5, 9, 3 rel=.world
marker create marker=.World.ground.Chest location=5, 9, 3 rel=.world

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles


constraint create joint Fixed joint_name=.World.Chest_Ground i_marker_name=.World.Eric_Upper_Torso.ground
j_marker_name=.World.ground.Chest

Step 19: Bring up the analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu
Step 20: Run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 4 seconds and 100 time steps
using the default integrator settings.
Step 21: Display simulation results
Use the ADAMS/View main toolbox to animate the model.

Running the Forward Dynamics Simulation


With the muscle contraction history recorded from the inverse-dynamics simulation, it is now used in linear
PID-Servo formulation to produce a force to recreate the motion history. The process entails deactivating
the Motion Agents and updating the muscles. For information on selecting specific model parameters for this
section see Choosing Model Parameters.

Figure 12: Panel set to run the analysis. Be sure to disable motion agents.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

Figure 13: Model with active "trained" muscle force elements. Note that the color of the muscles is now red
indicating active elements.

Step 23: Bring up soft tissue Training panel


Select SOFT TISSUES on the main-menu and TRAINING on the sub-menu. Select "Install Trained Closedloop Contractile Elements on Muscles".
Step 24: Update the muscles using inverse dynamics data
Specify 1e6 as the proportional gain, 1e6 as the integral gain, and 1e4 as the derivative gain. These values
control how well the PID-servo actuators will track the desired contraction at each time step in the analysis.
Note that the individual muscle will not produce a force greater than the physiological cross section area
(pCSA) times the maximum tissue stress. Select APPLY to update the muscles.
Step 25: Bring up the results panel
Select RESULTS from the main-menu and DATA DISPLAY from the sub-menu
Step 26: Create a strip chart to measure the force in the elbow
Select Joints as the Data Type. Select Eric_Right_Elbow as the Joint, Force as the Characteristic and Mag as
the Component. Select "Create Strip Chart Measure" to create the strip chart.
Step 27: Bring up the tissue results panel
Select Soft Tissues as the Data Type. Select Eric_Bic1_Rtiss_1 as the Soft Tissue, Tension as the
Characteristic.
Step 28: Create a strip chart to measure the biceps force
Select "Create Strip Chart Measure" to create the strip chart.
Step 29: Bring up the analyze panel
Select ANALYZE from the main-menu and DYNAMICS from the sub-menu
Step 30: Disable the motion agent and run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 4 seconds and 100 time steps
using the default integrator settings. Select "Disable motion agents".
Step 31: View the simulation results
Use the ADAMS/View main toolbox to animate the model.
Step 32: Save the elbow force curve
In order to preserve the elbow force curve in the strip chart to compare it to the next simulation; it must be
saved by right-clicking on the curve.
Step 33: Save the biceps force curve
Save the biceps curve force in the same manner as above.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

Step 34: Save the first analysis.


Select SAVE ANALYSIS and enter the name No_Antag. Select OK.

Replace the Triceps with Hill-Based Muscles


To introduce co-contraction or antagonistic effects into the arm model, the trainable triceps muscles will be
replaced with the Hill-based muscles. The Hill-based muscles consist of both a passive and contractile
element. The contractile element is driven with an normalized activation curve. This curve is usually based
on EMG experimental data, but for this example a simple input curve will be used. The intention is to turn
on the triceps muscle force during elbow flexure to oppose the force in the biceps muscle. The change in
the elbow joint force and the biceps muscle force necessary to flex the elbow will be compared with the
preceding analysis. For information on selecting specific model parameters for this section see Choosing
Model Parameters.

Figure 14: Replacing the trained triceps muscle elements with the Hill-based muscle elements.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles


Figure 15: Selecting the light bulb brings up the sub-panel to set the Hill-based muscle parameters.

Figure 16: Data spline for triceps

Step 35: Bring up the muscles delete panel.


Select SOFT TISSUES on the main-menu and DELETE on the sub-menu.
Step 36: Delete Triceps 1, 2 and 3
Delete the three individual triceps muscles by entering Eric_Tric1_Rtiss_1, Eric_Tric2_Rtiss_1 and
Eric_Tric3_Rtiss1 for deletion.
Step 37: Bring up the create base tissue set panel
Select SOFT TISSUES on the main-menu and CREATE BASE TISSUE SET on the sub-menu.
Step 38: Select the Hll-based muscle elements
Select "Prepare Model with Hill-Based Muscle to bring up the Hill muscle global parameters sub-panel.
Step 39: Update the Hill parameters
Set the passive element stiffness parameter (k) to .21.
Step 40: Create the activation spline
Select Build, Data_Elements, Spline, New from taskbar. Enter data from figure 17 and name
.World.Eric_Activation. Select OK.
OR
Create the data splines using the ADAMS/View commands:
data_element create spline spline=.World.Eric_Activation x=0.0, 1.0, 2.0, 3.0, 4.0 y=0.0, .25, .25, .25, .25
linear_extrapolate=no units=no_units

Step 41: Bring up the right arm muscles panel


Enter the Eric_Activation spline into the activation spline field, check right arm and select APPLY to the
triceps.

Running the Forward Dynamics Simulation


With the triceps muscles replaced, a second forward dynamics simulation is performed to examine the
effects of the co-contraction.

Figure 17: Modifed spline data

Step 42: Bring up the analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 43: Disable motion agent and run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 4 seconds and 100 time steps
using the default integrator settings. Select "Disable Motion Agents".
Step 44: View the simulation results
Use the ADAMS/View main toolbox to animate the model.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

Step 45: Save the elbow force curve


In order to preserve the elbow force curve in the strip chart to compare it to the next simulation; it must be
saved by right-clicking on the curve.
Step 46: Save the biceps force curve
Save the biceps curve force in the same manner as above.
Step 47: Save the second analysis.
Select SAVE ANALYSIS and enter the name Antag_1. Select OK.
Step 48: Change the activation curve
Modify the Eric_Activation spline using Edit, Modify from taskbar. Set filter to *Eric_Activation* under all and
push enter on the keybad. Double-click on .World and select Eric_Activation spline. Modify to figure 18.
OR
Modify spline using the following ADAMS/View command:
data_element modify spline spline=.World.Eric_Activation x=0.0, 1.0, 2.0, 3.0, 4.0 y=0.0, .25, .5, .5, .5
linear_extrapolate=no units=no_units

Step 49: Disable motion agent and run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 4 seconds and 100 time steps
using the default integrator settings.
Step 50: View the simulation results
Use the ADAMS/View main toolbox to animate the model.
Step 51: Save the third analysis.
Select SAVE ANALYSIS and enter the name Antag_2. Select OK.

Interrogating the Results


When the simulation is complete the model may be animated and the results may be plotted.

Figure 18: Strip charts for the elbow force and the biceps force for all three cases. The graphics indicate increasing
elbow joint force and biceps force with increasing triceps activation.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

Figure 19: Animation frame displaying scaled muscles.

Step 52: Bring up results panel


Select RESULTS in the main-menu and ANIMATION in the sub-menu.
Step 53: Scale muscle graphics for the Antag_2 case
Select ANIMATION in the sub-menu. Specify .World.Antag_2 as the Default Analysis and Select APPLY. Turn
on the global scaling of the muscle graphics by selecting Scale Joint/Tissue Graphics, Tissues, Scale Globally
and the light in the Results panel.
Step 54: Animate the Antag_2 case
Select left view and select PLAY to animate the model with the scaling muscles and the animated strip
charts.
Step 55: Scale muscle graphics for the Antag_1 case
Select ANIMATION in the sub-menu. Specify .World.Antag_1 as the Default Analysis and Select APPLY. Turn
on the global scaling of the muscle graphics by selecting Scale Joint/Tissue Graphics, Tissues, Global and
the light in the Results panel.
Step 56: Animate the Antag_1 case
Select left view and select PLAY to animate the model with the scaling muscles and the animated strip
charts.
Step 57: Scale muscle graphics for the No_Antag case
Select ANIMATION in the sub-menu. Specify .World.No_Antag as the Default Analysis and Select APPLY.
Turn on the global scaling of the muscle graphics by selecting Scale Joint/Tissue Graphics, Tissues, Global
and the light in the Results panel.
Step 58: Animate the No_Antag case
Select left view and select PLAY to animate the model with the scaling muscles and the animated strip
charts.
Step 59: DEMO COMPLETE

Further
This model was put forth to demonstrate the creation partial body model to examine the effects of muscular

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Antagonistic Muscles

co-contraction. The intention with this example was to touch of the various modeling functions of both the
LifeMOD Biomechanics Modeler and ADAMS/View necessary to create a detailed muscular reactions of this
nature.
This model may be refined in many areas including:
Including more movements
Including more muscles in the model
Creating wrapping functions on the muscles for more accurate line-of-sight.

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Antagonistic%20Muscles.html[06-Jun-15 12:50:14 PM]

LifeMOD Tutorials | Muscle Relocation

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force

Orthopedics Application - Muscle Relocation


The LifeMOD Biomechanics Modeler creates a scalable
human model with many major muscle groups on the
body. With the capability to create full body muscle
groups, LifeMOD can be used to evaluate the timing
sequence and force delivery magnitudes of individual
muscle groups for various activities.
An inverse dynamics - forward dynamics method is
used to first "train" the muscles to generate the forces
necessary to replicate desired motion of the limb.
A partial body model is developed to evaluate the
muscle group activities for leg motion.
Simulations are performed for two cases with a change
in the pelvic attachment of the gluteus medius muscle
to examine the change in load of this particular muscle and load-sharing of the surrounding muscles.
A simple hip flex activity is simulated and various muscle forces are reported and viewed graphically via
scaling muscle graphics.
Key skills exercised in this tutorial include:
Development of trainable muscle forces
Inverse-dynamics, forward-dynamics simulations.
Scaled muscle force graphics animation

Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

Sections
Generating the Body Segments
Reducing the Model
Generating the Joints
Creating the Soft Tissues
Posing the Human Model
Adding Motion Agents to the Human Model
Running the First Inverse-Dynamics Simulation
Running the First Direct-Dynamics Simulation
Prepare the Model for the Second First Inverse-Dynamics Simulation
Running the Second Inverse-Dynamics Simulation
Running the Second Direct-Dynamics Simulation
Interrogating the Results
Further

Generating the Body Segments


The body segments for the complete body are generated first, then the model is reduced to focus on the
cervical spine. The body is created using the GeBod database for a male who is 70 inches tall weighing 170
lbs.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation

Figure 1: Panel settings to create body model

Step 1: Bring up segments panel and set fields


Launch the LifeMOD software and select CREATE NEW MODEL to begin a new modeling session. Select
SEGMENTS from the main-menu and CREATE BASE SEGMENT SET from the sub-menu.
Step 2: Create the body
Generate a full body model using the GeBod database. Select a 170 lbs, 70 inch tall male. Set name to Eric
and units to Inch Lbm Lbf. Select "Create Body Measurement Table" to create the body measurement table,
then select "Create Human Segments" to create the body.

Reducing the Model


The segments of the full body model are reduced to concentrate on the lower torso and the left leg. The
upper_torso will be fixed to ground in subsequent steps.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation

Figure 2: Reducing the full body model

Step 3: Bring up segment delete panel


Select SEGMENTS in the main-menu and DELETE in the sub-menu.
Step 4: Delete the extra segments
Use the body segment delete panel to remove all the segments exluding lower torso and left leg and foot.

Generating the Joints


In this phase, the human segments created in the first phase are connected together with kinematic joints. At
the same time passive torque functions are created at each joint degree of freedom. The passive joints are
created on the leg to stabilize the model during the inverse-dynamics simulation and includes a spring-damper
torque and angle limiting torque for each rotation degree of freedom for the individual joint (hip, knee, ankle).
For information on selecting specific model parameters for this section see Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation


Figure 3: Leg model with joints (right) and panel to create the passive joints on the left leg

Step 5: Bring up joint create panel


Select JOINTS in the main-menu and CREATE BASE JOINT SET in the sub-menu.
Step 6: Create passive spring damper joints with angle limits for the model
Select "Prepare Model with Recordable Joints (To be trained in an inverse-dynamics simulation)"
Step 7: Set the parameterized stiffness and damping values
Check the left leg only and set the nominal joint stiffness to 10 and the damping to 1.
Step 8: Create the parameterized joints
Select APPLY to bring up the joint panel for the left leg and create the joints.

Creating the Soft Tissues


The next step in the process is to create soft tissues (muscles) on the model. LifeMOD automatically creates
a set of basic muscle groups for the body. Muscles consist of training elements or trained elements. The
training elements are simple data collectors which record the contraction history of the muscle during an
activity when the model is moved using external drivers such as motion agents. Trained elements can be
either PID closed-loop force actuators or actuation curve open-loop force actuators acting to drive the
skeleton's motion. Muscle parameters such as physiological cross sectional area (pCSA) and maximum tissue
stress are used to calculate the maximum force potential of the particular muscle. LifeMOD contains a
database of pCSA values for each muscle and is scaled accordingly based on the input body parameters (ht,
wt, gender and age). Further, the force output of the muscle may be scaled from 0% to 200% to change the
contributions of each particular muscle.

Figure 4: Muscle groups created on the model. Note that the color of the muscles is "rust" indicating passive training
elements.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation

Figure 5: Panel set up to create the left leg muscle groups

Step 9:Bring up the tissue set create panel


Select SOFT TISSUES on the main-menu and CREATE BASE TISSUE SET on the sub-menu.
Step 10: Set the fields for the muscle generation
Set the Passive Stiffness and Damping to 0.1 and the Muscle Resting Load to 0.5. Set the Muscle Tone
Multiplier to 100%.
Step 11: Create the muscles
Select the left leg only and select APPLY to create the muscles.

Posing the Human Model


After the joints are created on the model the posture of the model may be adjusted, and the model moved
into place. The posture may be adjusted by recalling one of several postures in the posture library then further
modify the joint angles if necessary. The body is moved into place by selecting the Lower_Torso segment and
changing the location.

Figure 7: The model placed in the riding posture

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation

Figure 8: Posture modification panel to place the model in the riding posture.

Step 12: Bring up posture panel


Select POSTURE on the main-menu and CONFIGURE BASE MODEL on the sub-menu.
Step 13: Put the model in Muscle Relocation posture
Select Load Posture to bring up the library database navigator. Select Muscle Relocation as the posture to
move the leg into position in figure 7.

Adding Motion Agents to the Human Model


The model, as it exists, is passive and must be driven or manipulated with an external force. To drive the
model to capture the simple flexion and extension motion of the neck, Motion Agents will be added to the
model. The motion will have the effect of simply "pulling and pushing" the leg to drive it through its motion,
all the while the contraction of the muscles will be recorded for the subsequent forward-dynamics simulation.

Figure 9: Data for the driving spline 1 (top) and spline 2 (bottom) for the motion agent

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation

Figure 10: Panel set up to create the motion agent to move the head

Step 14: Create a spline using data from Figure 9.


Select Build, Data_Elements, Spline, New from taskbar. Select "Append row to X and Y data" until nine rows
are available. Enter data from Figure 9. Name .World.Eric_SPLINE_Z. Create a second spline with second set of
data from figure 9. Name .World.Eric_SPLINE_Y.
OR
Create the data splines using the ADAMS/View commands:
data_element create spline spline=.World.Eric_SPLINE_1 x = 0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 y = 0.0, -20.0, -35, -41,
-42, -41, -35, -20.0, 0.0 linear_extrapolate=no units=no_units
data_element create spline spline=.World.Eric_SPLINE_2 x = 0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 y = 0.0, -10, -5, 12, 18,
13, -5, -11, 0.0 linear_extrapolate=no units=no_units

Step 15: Bring up motion agent create panel


Select MOTION on the main-menu and CREATE INDIVIDUAL MOTION AGENT on the sub-menu.
Step 16: Create motion agent on left leg
Select Eric_Left_Foot for the body segment. Use the Manually Select Location agent positioning method with a
location of (3.7,-25,19) Set the parameters as in Figure 10. Set all dof's to free except for the y-dof which is
set to driven referring to the Spline_2 created in the prior step and the z-dof which is set to driven referring
to the Spline_1.

Running the First Inverse-Dynamics Simulation


With the model developed, complete with passive training muscle groups and motion agents a inversedynamics simulation may be performed to capture the contraction of the muscles for the flexion-extension
activity.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation

Figure 11. Animations from the inverse-dynamics simulation

Figure 12: Analyze panel set to run inverse-dynamics simulation

Step 17: Create a fixed joint between the lower_torso and ground
Select fixed joint icon from main toolbox. Select .World.Eric_Lower_Torso as the first body, .World.ground as
the second. Right-click to bring up the location panel below the main toolbox. Enter (-1, 3, -3) as the location.
Select APPLY.
OR
Use the following ADAMS/View commands to create a fixed joint between the lowerr_torso and ground:
marker create marker=.World.Jerry_Lower_Torso.ground location=-1,3,-3 rel=.world
marker create marker=.World.ground.body location=-1,3,-3 rel=.world
constraint create joint Fixed joint_name=.World.FIX1 i_marker_name=.World.Jerry_Lower_Torso.ground
j_marker_name=.World.ground.body

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation

Step 18: Bring up the analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu
Step 19: Run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 8 seconds and 200 time steps
using the default integrator settings.
Step 20: Display animation
Use the ADAMS/View main toolbox to animate the model.

Running the First Direct-Dynamics Simulation


With the muscle contraction history recorded from the inverse-dynamics simulation, it is now used in linear
PID-Servo formulation to produce a force to recreate the motion history. The process entails deactivating the
Motion Agents and updating the muscles. For information on selecting specific model parameters for this
section see Choosing Model Parameters.

Figure 13: Panel set to run the analysis. Be sure to disable motion agents.

Figure 14: Leg model with active "trained" muscle force elements. Note that the color of the muscles is now red

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation


indicating active elements.

Step 21: Bring up soft tissue Training panel


Select SOFT TISSUES on the main-menu and TRAINING on the sub-menu.
Step 22: Install ACTIVE contractile element
Select "Intall Trained Closed-loop Contractile Elements on Muscles."
Step 23: Set fields and update muscles
Select "Closed-loop Hill" specify 1e9 as the proportional gain, 1e5 as the integral gain, and 1e8 as the
derivative gain.These values control how well the PID-servo actuators will track the desired contraction at each
time step in the analysis. Note that the individual muscle will not produce a force greater than the
physiological cross section area (pCSA) times the maximum tissue stress. Select APPLY to update the muscles.
Step 24: Bring up the analyze panel
Select ANALYZE from the main-menu and DYNAMICS from the sub-menu
Step 25: Run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 8 seconds and 200 time steps
using the default integrator settings. Select "Disable Motion Agents".
Step 26: Display animation
Use the ADAMS/View main toolbox to animate the model.
Step 27: Save the first analysis.
Select SAVE ANALYSIS and enter the name Run1. Select OK.
Step 28: Bring up the results panel.
Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu.
Step 29: Display glut medius forces
Select Soft Tissues as the Data Type. Select Eric_GlutMed1_Ltiss_1 as the Soft Tissue, Tension as the
Characteristic and select "Create Strip Chart Display". Select Jerry_GlutMed2_Ltiss_1 as the Soft Tissue,
Tension as the Characteristic and select "Create Strip Chart Display".
Step 30: Turn muscle graphics scaling on
Turn on the global scaling of the muscle graphics by selecting ANIMATION in the sub-menu. Select the Scale
Joint/Tissue Graphics. Select Tissues, Scale Globally and then select the light bulb.
Step 31: Display animation
Use the ADAMS/View main toolbox to animate the model with the data measures.
Step 32: Save the Glut Medius curves
On each strip chart, right click on the curve and select "save".

Prepare the Model for the Second Inverse-Dynamics Simulation


A second simulation case is performed using a different head motion. The passive elements are restored to the
muscle tissues and the motion agent is created with new data to move the head from side to side.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation

Figure 15: Relocating the gluteus medius pelvic attachment from the original position (left) to the new position
(right).

Figure 16: The panel used to modify the location of the attachment point

Step 33: Bring up soft tissue edit properties panel


Select SOFT TISSUES on the main-menu and EDIT PROPERTIES on the sub-menu. Select "Edit Tissue
Attachment Points".
Step 34: Relocate the gluteus medius pelvis attachment
The pelvic attachment is moved by entering the name of the attachment
.World.Eric_GlutMed1_Ltiss_1.attachment_1 and the location (5.3482942546, 1.5733867016, 1.0578233139)
in the panel in figure 15.
Step 35: Bring up the tissue edit panel

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation

Select SOFT TISSUES from the main-menu and TRAINING from the sub-menu.
Step 36: Restore the TRAINING elements in the muscles
Select "Re-Intall Trainable Passive Elements on Muscles".

Running the Second Inverse-Dynamics Simulation


A second simulation case is performed using the motion agent created for the first inverse dynamics
simulation
Step 37: Bring up the analyze panel
Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 38: Run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 8 seconds and 200 time steps
using the default integrator settings.
Step 39: Display animation
Use the ADAMS/View main toolbox to animate the model.

Running the Second Direct-Dynamics Simulation


With the muscle contraction history recorded from the inverse-dynamics simulation, it may now be used in an
active muscle formulation to produce a force to recreate the motion history. The process updating the muscles
and running the dynamics analysis while deactivating the motion agent.
Step 40: Bring up soft tissue training panel
Select SOFT TISSUES on the main-menu and TRAINING on the sub-menu.
Step 41: Install ACTIVE contractile element
Select "Install Trained Driver Contractile Elements on Muscles".
Step 42: Set fields and update joints
Select Hill Trained Muscles and specify 1e9 as the proportional gain, 1e5 as the integral gain, and 1e8 as the
derivative gain. Select APPLY.
Step 43: Bring up the analyze panel
Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 44: Disable motion agent and run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 8 seconds and 200 time steps
using the default integrator settings. Select "Disable Motion Agents".

Interrogating the Results


When the simulation is complete the model may be animated and the results may be plotted. Scaled force
vectors at the muscles can be a valuable key in extracting information on the behavior of the model.
Various data may be presented from the forward-dynamics simulation including:
Gluteus medius muscle force comparison between runs.
Surrounding tissue load sharing changes between runs.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation

Figure 17: Anterior and medial gluteus medius forces for both runs.

Figure 18: Three animation frames displaying scaling force muscle graphics

Step 45: Bring up results panel


Select RESULTS in the main-menu and DATA DISPLAY in the sub-menu. Select the post-processor button to
bring up the plotting window.
Step 46: Plot the gluteus medius anterior muscle forces for run 1
Set the analysis to "Run1". Select Soft Tissues as the Data Type. Select Eric_GlutMed1_Ltiss_1 for the soft
tissue and tension characteristic. Select CREATE FULL PLOT.
Step 47: Plot the gluteus medius anterior muscle forces for run 2
Set the analysis to "Last_Run". Select Eric_GlutMed1_Ltiss_1 for the soft tissue and tension characteristic.
Select CREATE FULL PLOT.
Step 48: Plot the gluteus medius anterior muscle forces for run 1
Set the analysis to "Run1". Select Jerry_GlutMed2_Ltiss_1 for the soft tissue and tension characteristic. Select
CREATE FULL PLOT.
Step 49: Plot the gluteus medius medial muscle forces for run 2
Set the analysis to "Last_Run". Select Jerry_GlutMed2_Ltiss_1 for the soft tissue and tension characteristic.
Select CREATE FULL PLOT.
Step 50: Turn muscle graphics scaling on and animate side view
Select ANIMATION in the sub-menu. Turn on the global scaling of the muscle graphics by selecting Scale
Joint/Tissue Graphics, Tissues, Global and the light in the Results panel. Select right view, divide window and
select PLAY to animate the model with the plot.
Step 51: Plot the gluteus medius anterior activation curve for run 1
Set the analysis to "Run1". Select Soft Tissues as the Data Type. Select Eric_GlutMed1_Ltiss_1 for the soft

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Muscle Relocation

tissue and activation characteristic. Select CREATE FULL PLOT.


Step 52: Plot the gluteus medius anterior activation curve for run 2
Set the analysis to "Run1". Select Jerry_GlutMed2_Ltiss_1 for the soft tissue and activation characteristic.
Select CREATE FULL PLOT.
Step 53: Plot the gluteus medius medial activation curve for run 1
Set the analysis to "Run1". Select Jerry_GlutMed2_Ltiss_1 for the soft tissue and activation characteristic.
Select CREATE FULL PLOT.
Step 54: Plot the gluteus medius medial activation curve for run 2
Set the analysis to "Last_Run". Select Jerry_GlutMed2_Ltiss_1 for the soft tissue and activation characteristic.
Select CREATE FULL PLOT.
Step 55: Animate back view
Select back view, divide screen and select PLAY to animate the model with the plot.
Step 56: DEMO COMPLETE

Further
This model was put forth to demonstrate the creation partial body model to examine the effects of relocating a
hip flexor muscle. The resulting force on this muscle as well as the surrounding, load-sharing tissues were
compared for two cases. The intention with this example was to touch of the various modeling functions of
both the LifeMOD Biomechanics Modeler and ADAMS/View necessary to create a detailed joint of this nature.
This model may be refined in many areas including:
Including more movements
Including more muscles in the model

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Muscle%20Relocation.html[06-Jun-15 12:50:17 PM]

LifeMOD Tutorials | Detailed Hand Grasping

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment

Ergonomics Application : Grasping


One of the most powerful features of the LifeMOD
Biomechanics Modeler is the capability to create
sophisticated human models which may interface with
external mechanical system such as a tennis ball.
For this example a complex model of the human hand
is created. A tennis ball is imported from the model
library. Connection forces between the hands of the
model and the grip of the ball are created.
A gripping force is created by clenching the fingers
over the ball using motion agents and saving the
resulting static tension. An inverse simulation is
performed where the ball is manually removed from
the grip using a motion agent. The muscles are then
trained and a forward dynamics simulation is
performed in which the ball is released from the grip
due to release of muscle tension. The ball is allowed
to fall from the grasp into a box.
The objective of this exercise is to examine the sequence of joint torques necessary to complete
the swing.
Key skills exercised in this tutorial include:
Creating a model, joints, posture and motion from the model library
Importing a club head and grip from the model library
Modeling the flexible golf club
Training the joints to produce the necessary torques to drive the human model
Creating foot/floor forces
Creating hand/club contact forces

Muscle Relocation
Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

Sections
Generating the Body Segments
Reducing the Model
Generating the Joints
Discretize the Hand Segment
Creating the Individual Joints in the Hand
Manipulating the Posture of the Hand
Defining the Extensor Digitorum Musculature
Creating the Extensor Pollicis Longus Muscle Group
Creating the Flexor Digitorum Profundus Muscle Group
Creating the Other Muscles of the Hand
Posing the Arm/Hand Model

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Defining the Environment


Creating the Motion Agents
Running an Analysis to Set up the Initial Conditions.
Training the Muscles to Open the Hand
Running the Forward Dynamics Analysis
Interrogating the Results
Further

Generating the Body Segments


In this phase the human body models are generated. The body consists of 19 segments and 18
joints with the mass properties of a 95% Chinese male.

Figure 1: Body segment creation panel

Step 1: Bring up segments panel and set fields for the body
Launch the LifeMOD software and select CREATE NEW MODEL to begin a new modeling session.
Select SEGMENTS from the main-menu and CREATE BASE SEGMENT SET from the sub-menu.
Step 2: Create the body
Enter "World" for the world model name and "Thorin" for the human body name. Units are
millimeter-kilogram-newton and the color is set to peach. Hands are set to open and the full body
model is specified. The model is created from an anthropometric database named "GeBOD". The
body will be constructed for a 77 kg person of 1778 mm in height. Select OK to set parameters
and select "Create Body Measurement Table" to create the segment measurement table and
"Create Human Segments" to create the model.

Reducing the Model


The segments of the full body model are reduced to concentrate on the left hand, left_lower_arm,

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

left_upper_arm and the left_scapula. Because the model is built around the Lower_Torso segment
it cannot be deleted, so is hid instead. The left_scapula is then fixed to ground.

Figure 2: Body segment delete panel to remove all segments except for the left hand, lower arm, upper
arm and scapula.

Step 3: Bring up segment delete panel


Select SEGMENTS in the main-menu and DELETE in the sub-menu.
Step 4: Delete the extra segments
Use the body segment delete panel to remove the segments as displayed in figure 3. Right-click
the lower torso and select HIDE.
Step 5: Fix the scapula to ground with a fixed joint
Use the Main Toolbox to create a fixed joint between the scapula and the ground by selecting
.World.Thorin_Left_Scapula as the first body and the ground as the second. Select any location on
the scapula.
OR
Create the fixed joint using the following ADAMS/View commands:
marker create marker=.World.ground.Thorin_Left_Scapula location=120, 400, 0
marker create marker=.World.Thorin_Left_Scapula.ground location=120, 400, 0
constraint create joint fixed joint_name=.World.fixScapulaToGround
i_marker_name=.World.ground.Thorin_Left_Scapula j_marker_name=.World.Thorin_Left_Scapula.ground

Step 6: Hide the fixed constraint


Right click on the joint icon and select appearance. Toggle the visibility to off. Do this for the
markers as well.

Generating the Joints


In this phase, the base human segments created in the first phase are connected together with
kinematic joints and passive stiffness/damping. At this point a minimal value for both is created at
the joints to stabilize the model during the simulation.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Figure 3: Panel to create HIII joints on the body model.

Step 7: Bring up joint create panel


Select JOINTS in the main-menu and CREATE BASE JOINT SET in the sub-menu. Select "Prepare
Model with Recording Joints (To be trained in an inverse-dynamics".
Step 8: Set joint parameters
Select Left Arm. Enter 100 for the Nominal Joint Stiffness and 100 for the Nominal Joint Damping.
Step 9: Create joints on the left arm
Select APPLY to create joints on the arm.
Step 10: View the dorsal side of the hand
Use the ADAMS/View toolbox to rotate the view and zoom in on the model as in the figure above.

Discretize the Hand Segments


The single base hand segment is now discretized into individual phalanx and metacarpals. In
addition to the skeletal geometry, ellipsoidal geometry representing the flesh is created. This
geometry is used to estimate the mass properties of the segment.

Figure 4: Individual segment creation panel used to discretize the hand segment into the individual bones

Step 11: Bring up the create segment panel and set the bone parameters

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Select SEGMENTS from the main menu and CREATE INDIVIDUAL SEGMENT from the sub-menu.
Set the external representation to ellipsoid and the internal representation to skeleton using the
LifeMOD Display Toolbox.
Step 12: Create the individual bones of the hand
Select "Estimate Mass Properties with Eillipsoids." Use the following table to create new segments
for the hand. Use the local shell for the shell entitity not the one located in LifeMOD
New
Segment

CM Location

Phalanx_1DL

171, -185, 68

Phalanx_1PL
metacarpal_1L
Phalanx_2DL
Phalanx_2ML
Phalanx_2PL
metacarpal_2L
Phalanx_3DL
Phalanx_3ML
Phalanx_3PL
metacarpal_3L
Phalanx_4DL
Phalanx_4ML
Phalanx_4PL

177, -162, 61
186, -126, 44
185, -264, 29
188, -242, 28
192, -208, 29
197, -149, 26
187, -275, -6
191, -251, -4
194, -212, 0
197, -151, 6
183, -265, -28
186, -243, -26
190, -206, -21

metacarpal_4L 194, -148, -10


Phalanx_5DL 184, -232, -50
Phalanx_5ML 185, -213, -48
Phalanx_5PL

189, -183, -43

metacarpal_5L 193, -137, -29

CM
Ellip X Ellip Y EllipZ
Shell Entity
Orientation
253, 83,
20
35
20 Skel_phalanx1dL
101
161, 16, 0
20
40
20 Skel_phalanx1PL
168, 29, 0
45
70
30
Skel_metacrpL
241, 3, 112
15
25
15 Skel_phalanx2dL
352, 0, 180
17
35
17 Skel_phalanx2ML
353, 1, 180
20
50
20 Skel_phalanx2L
176, 6, 0
30
80
30
Skel_mcarpal2L
333, 5, 24
15
25
15 Skel_phalanx3dL
348, 3, 180
17
35
17 Skel_phalanx3ML
359, 9, 180
20
55
20 Skel_phalanx3PL
355, 3, 180
30
85
30
Skel_mcarpal3L
347, 10, 10
15
25
15 Skel_phalanx4dL
347, 4, 180
17
35
17 Skel_phalanx4ML
357, 8, 180
20
55
20 Skel_phalanx4PL
356, 11,
30
85
30
Skel_mcarpal4L
180
325, 2, 34
15
20
15 Skel_phalanx5dL
351, 8, 180
17
35
17 Skel_phalanx5ML
354, 10,
20
40
20 Skel_phalanx5PL
180
354, 20,
30
75
30
Skel_mcarpal5L
180

Step 13: Modify the hand ellipsoid


Use the following ADAMS/View commands to move and resize the hand base segment ellipsoid:
marker mod marker=.World.Thorin_Left_Hand.gm loc=199,-95,5 ori=180,90,90
geom mod shape ellip ellip=.World.Thorin_Left_Hand.Ellipsoid x_scale=80 y_scale=33

z_scale=55

Creating the Individual Joints in the Hand


With the single hand segments now discretized into the individual segments, the segments must
now be jointed. In this section the individual joints in the hand are created.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Figure 5: Single joint create panel to create the finger joints.

Step 14: Create the joint markers on the hand


Use the following ADAMS/View commands to create the markers depicting the center of rotation
for each joint:
marker create marker= (Marker Name) loc=(Location) ori=(Orientation) rel=.world

Marker Name
Thorin_Phalanx_2ML.Phalanx_2DL
Thorin_Phalanx_3ML.Phalanx_3DL
Thorin_Phalanx_4ML.Phalanx_4DL
Thorin_Phalanx_5ML.Phalanx_5DL
Thorin_Phalanx_1PL.Phalanx_1DL
Thorin_Phalanx_2PL.Phalanx_2ML
Thorin_Phalanx_3PL.Phalanx_3ML
Thorin_Phalanx_4PL.Phalanx_4ML
Thorin_Phalanx_5PL.Phalanx_5ML
Thorin_metacarpal_1L.Phalanx_1PL
Thorin_metacarpal_2L.Phalanx_2PL
Thorin_metacarpal_3L.Phalanx_3PL
Thorin_metacarpal_4L.Phalanx_4PL
Thorin_metacarpal_5L.Phalanx_5PL
Thorin_Left_Hand.Metacarpal_1L
Thorin_Left_Hand.Metacarpal_2L
Thorin_Left_Hand.Metacarpal_3L
Thorin_Left_Hand.Metacarpal_4L
Thorin_Left_Hand.Metacarpal_5L

Global Location
186.7, -255.8, 28.9
188.1, -267.1, -5.8
183.8, -257.5, -27.5
184, -225.7, -50.6
172.6, -177.3, 66.6
190.2, -229, 29
194.7, -235.6, -3.9
189.9, -229.3, -25
187.7, -202.1, -47.2
182.6, -147.6, 57.1
194.9, -187.1, 30.3
194.8, -189.1, 4.1
191.9, -184.2, -18.4
191.1, -165.1, -40.3
191.1, -104.5, 32.1
199.7, -112.5, 22
200.7, -114.3, 8.2
196.7, -113.7, -3.5
196.4, -110.1, -19.1

Global
241.4
333
347.7
325.6
253.5
271
319.3
316.6
325.1
256
199.3
314.1
344
347
256
199.3
314.1
344
347

Orientation
3.2
112.7
5.1
24.9
10.4
10.3
2.3
34.7
83.1
101.4
3.1
82.5
16.9
20.6
12.5
24.4
10.4
20.9
83.4
114.3
6.8
157.2
4.2
41.3
12.2
11.8
21.2
7
83.4
114.3
6.8
157.2
4.2
41.3
12.2
11.8
21.2
7

Step 15: Bring up the single joint create panel


Select JOINTS from the main menu and CREATE INDIVIDUAL JOINT from the sub-menu. Set the
external representation to ellipsoid and the internal representation to skeleton using the LifeMOD
Display Toolbox.
Step 16: Create the finger joints
Use the single joint create panel above and the table with the values below to create each joint.
Jnt
Inboard Part
Outbard Part
1Thorin_Phalanx_1PL Thorin_Phalanx_1DL
2Thorin_Phalanx_2ML Thorin_Phalanx_2DL
3Thorin_Phalanx_3ML Thorin_Phalanx_3DL
4Thorin_Phalanx_4ML Thorin_Phalanx_4DL
5Thorin_Phalanx_5ML Thorin_Phalanx_5DL
6Thorin_Metacarpal_1LThorin_Phalanx_1PL

Reference Axis
Thorin_Phalanx_1PL.Phalanx_1DL
Thorin_Phalanx_2ML.Phalanx_2DL
Thorin_Phalanx_3ML.Phalanx_3DL
Thorin_Phalanx_4ML.Phalanx_4DL
Thorin_Phalanx_5ML.Phalanx_5DL
Thorin_Metacarpal_1L.Phalanx_1PL

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

K
1
1
1
1
1
1

C + 10 0
10 0
10 0
10 0
10 0
10 0

LifeMOD Tutorials | Detailed Hand Grasping

7Thorin_Phalanx_2PL Thorin_Phalanx_2ML Thorin_Phalanx_2PL.Phalanx_2ML


8Thorin_Phalanx_3PL Thorin_Phalanx_3ML Thorin_Phalanx_3PL.Phalanx_3ML
9Thorin_Phalanx_4PL Thorin_Phalanx_4ML Thorin_Phalanx_4PL.Phalanx_4ML
10Thorin_Phalanx_5PL Thorin_Phalanx_5ML Thorin_Phalanx_5PL.Phalanx_5ML
11Thorin_Left_Hand
Thorin_Metacarpal_1LThorin_Left_Hand.Metacarpal_1L
12Thorin_Metacarpal_2LThorin_Phalanx_2PL Thorin_Metacarpal_2L.Phalanx_2PL
13Thorin_Metacarpal_3LThorin_Phalanx_3PL Thorin_Metacarpal_3L.Phalanx_3PL
14Thorin_Metacarpal_4LThorin_Phalanx_4PL Thorin_Metacarpal_4L.Phalanx_4PL
15Thorin_Metacarpal_5LThorin_Phalanx_5PL Thorin_Metacarpal_5L.Phalanx_5PL
16Thorin_Left_Hand
Thorin_Metacarpal_2LThorin_Left_Hand.Metacarpal_2L
17Thorin_Left_Hand
Thorin_Metacarpal_3LThorin_Left_Hand.Metacarpal_3L
18Thorin_Left_Hand
Thorin_Metacarpal_4LThorin_Left_Hand.Metacarpal_4L
19Thorin_Left_Hand
Thorin_Metacarpal_5LThorin_Left_Hand.Metacarpal_5L

1 10
1 10
1 10
1 10
1 200
1 10
1 10
1 10
1 10
1 200
1 200
1 200
1 200

0
0
0
0
0
0
0
0
0
0
0
0
0

15
15
15
20

Manipulating the Posture of the Hand


After the hand has been discretized and jointed, the posture of the hand in manipulated to put the
hand in the starting position before the simulations.

Figure 6: Hand before the thumb is rotated (left) and after (right) using the panel below.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Figure 7: The panel used rotate the thumb by 45 degrees

Step 17: Bring up the configure single joint panel


Select POSTURE on the main-menu and CONFIGURE SINGLE JOINT on the sub-menu.
Step 18: View the dorsal side of the hand
Use the ADAMS/View toolbox to zoom in and position the hand in the model window.
Step 19: Rotate the thumb out by 45 degrees
Select Select Thorin_NSjoint_11 and bring up the slider panel displayed in the figure above.

Defining the Extensor Digitorum Musculature


In this step recording muscles are created for the extensor digitorum musculature. Slide points are
used to represent the tendon-sheath interaction.

Figure 8: The extensor digitorum muscle group before slide points are introduced (left) and after (right).
Though LifeMOD 2008.0.0 allows for multiple-origin entries when the muscle set is created, this figure

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping


illustrates how slide points function in relation to a muscle group.

Step 20: Bring up the single soft tissue panel


Select SOFT TISSUES on the main-menu and CREATE INDIVIDUAL TISSUE on the sub-menu.
Select Recording Muscle Tissue Elements.
Step 21: Create the extensor digitorum
Use the panel below to create the muscles. The table below displays the parts and attachment
locations for each muscle. Use 3834 for pCSA, 1.78 for Maximum Stress and a resting load of .44
Origin
Insertion Location
Location
NStiss_1 Thorin_Left_Upper_Arm Thorin_Phalanx_2DL235.5 170.4 6.4 187.2 -261.2 28.0
NStiss_2 Thorin_Left_Upper_Arm Thorin_Phalanx_3DL235.5 170.4 6.4 190.0 -273.0 -7.0
NStiss_3 Thorin_Left_Upper_Arm Thorin_Phalanx_4DL235.5 170.4 6.4 187.1 -265.1 -30.0
NStiss_4 Thorin_Left_Upper_Arm Thorin_Phalanx_5DL235.5 170.4 6.4 185.0 -230.8 -51.7
Name

Origin Part

Insertion Part

Figure 9: The panel used to create individual muscle elements. The origin and origin attachment location
fields now allow for multiple entries at once, therefore allowing the muscles and slide points to be
created at the same time.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Figure 10: This panel may also be used to create slide points for the muscles if they are not created in
the Create Individual Tissue menu.

Step 22A: Create Slide Points in the Create Individual Tissue panel
Enter the values listed in the table below, with commas separating each value, into the origin and
origin attachment location fields after the first origin value.
Step 22B: Route the tendons through the carpal tunnels
Select SOFT TISSUES on the main-menu and CREATE TISSUE WRAPPING on the sub-menu. Select
the light bulb next to Slide Point Based to bring up the wrapping panel. Use the panel above to
create the slide points on the muscles. The table below displays the parts and attachment locations
for each muscle.
Tissue
Thorin_Out_NStiss_1

Slide Pont Anchor


.Thorin_Left_Hand

Thorin_Out_NStiss_1

.Thorin_Metacarpal_2L

Thorin_Out_NStiss_1

.Thorin_Phalanx_2PL

Thorin_Out_NStiss_1

.Thorin_Phalanx_2ML

Thorin_Out_NStiss_2

.Thorin_Left_Hand

Thorin_Out_NStiss_2

.Thorin_Metacarpal_3L

Thorin_Out_NStiss_2

.Thorin_Phalanx_3PL

Thorin_Out_NStiss_2

.Thorin_Phalanx_3ML

Thorin_Out_NStiss_3

.Thorin_Left_Hand

Thorin_Out_NStiss_3

.Thorin_Metacarpal_4L

Thorin_Out_NStiss_3

.Thorin_Phalanx_4PL

Thorin_Out_NStiss_3

.Thorin_Phalanx_4ML

Thorin_Out_NStiss_4

.Thorin_Left_Hand

Thorin_Out_NStiss_4

.Thorin_Metacarpal_5L

Slide Point Location


210, -90, 10
(loc_rel_to({8,0,0},
Phalanx_2PL))
(loc_rel_to({7,0,0},
Phalanx_2ML))
(loc_rel_to({6,0,0},
Phalanx_2DL))
210, -90, 6
(loc_rel_to({8,0,0},
Phalanx_3PL))
(loc_rel_to({7,0,0},
Phalanx_3ML))
(loc_rel_to({6,0,0},
Phalanx_3DL))
210, -90, 2
(loc_rel_to({8,0,0},
Phalanx_4PL))
(loc_rel_to({7,0,0},
Phalanx_4ML))
(loc_rel_to({6,0,0},
Phalanx_4DL))
210, -90, -2
(loc_rel_to({8,0,0},
Phalanx_5PL))

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Thorin_Out_NStiss_4

.Thorin_Phalanx_5PL

Thorin_Out_NStiss_4

.Thorin_Phalanx_5ML

(loc_rel_to({7,0,0},
Phalanx_5ML))
(loc_rel_to({6,0,0},
Phalanx_5DL))

Step 23: Reduce the muscle graphical scale to 2


Select Muscles as the Tissues and set the Scale to 2 on the LifeMOD Display Toolbox.

Defining the Extensor Pollicis Longus Musculature


In this step recording muscles are created for the extensor pollicis longus musculature. Slide points
are used to represent the tendon-sheath interaction.

Figure 11: The extensor pollicis longus muscle group before slide points are introduced (left) and after
(right). Though LifeMOD 2008.0.0 allows for multiple-origin entries when the muscle set is created, this
figure illustrates how slide points function in relation to a muscle group.

Step 24: Bring up the single soft tissue panel


Select SOFT TISSUES on the main-menu and CREATE SINGLE on the sub-menu. Select Recording
Muscle Tissue Elements.
Step 25: Create the extensor pollicis longus
Use the panel above to create the muscles. The table below displays the parts and attachment
locations for each muscle. Use 3834 for pCSA, 1.78 for Maximum Stress and a resting load of .44
Name
Origin Part
Insertion Part Origin Location Insertion Location
NStiss_5 Thorin_Left_Lower_Arm Thorin_Phalanx_1DL211.6 45.1 -4.3 116.3 -142 67.5
Step 26A: Create Slide Points in the Create Individual Tissue panel
Enter the values listed in the table below, with commas separating each value, into the origin and

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

origin attachment location fields after the first origin value.


Step 26B: Route the tendons through the carpal tunnels
Select SOFT TISSUES on the main-menu and CREATE TISSUE WRAPPING on the sub-menu. Select
the light bulb next to Slide Point Based to bring up the wrapping panel. Use the panel above to
create the slide points on the muscles. The table below displays the parts and attachment locations
for each muscle.
Tissue
Thorin_Out_NStiss_5
Thorin_Out_NStiss_5_SLIDE_1
Thorin_Out_NStiss_5_SLIDE_1

Slide Pont Anchor


.Thorin_Left_Hand
.Thorin_Metacarpal_1L
.Thorin_Phalanx_1PL

Slide Point Location


210, -90, 20
(loc_rel_to({8,0,0}, Phalanx_1PL))
(loc_rel_to({7,0,0}, Phalanx_1DL))

Step 27: Scale muscle graphics to 2


Select Muscles as the Tissues and set the Scale to 2 on the LifeMOD Display Toolbox.

Defining the Flexor Digitorum Profundus Musculature


In this step recording muscles are created for the flexor digitorum profundus musculature. Slide
points are used to represent the tendon-sheath interaction.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping


Figure 12: The flexor digitorum profundus muscle group before slide points are introduced (left) and
after (right). Though LifeMOD 2008.0.0 allows for multiple-origin entries when the muscle set is created,
this figure illustrates how slide points function in relation to a muscle group.

Step 28: View the palmar side of the hand and bring up the single soft tissue panel
Select SOFT TISSUES on the main-menu and CREATE SINGLE on the sub-menu. Select Recording
Muscle Tissue Elements. Use the ADAMS/View toolbox to rotate the hand as in the figure above.
Step 29: Create the flexor digitorum profundus
Use the panel above to create the muscles. The table below displays the parts and attachment
locations for each muscle. Use 3834 for pCSA, 1.78 for Maximum Stress and a resting load of .44
Name
Attach Part_1
Attach Part_2
Attach Loc
NStiss_6 Thorin_Left_Lower_Arm Thorin_Phalanx_2DL 197 114
NStiss_7 Thorin_Left_Lower_Arm Thorin_Phalanx_3DL 197 114
NStiss_8 Thorin_Left_Lower_Arm Thorin_Phalanx_4DL 197 114
NStiss_9 Thorin_Left_Lower_Arm Thorin_Phalanx_5DL 197 114

1
-5
-5
-5
-5

Attach Loc 2
183
-264
28
186
-275
-7
182
-267 -30
182
-233 -51

Step 30A: Create Slide Points in the Create Individual Tissue panel
Enter the values listed in the table below, with commas separating each value, into the origin and
origin attachment location fields after the first origin value.
Step 30B: Route the tendons through the carpal tunnels
Select SOFT TISSUES on the main-menu and CREATE TISSUE WRAPPING on the sub-menu. Select
the light bulb next to Slide Point Based to bring up the wrapping panel. Use the panel above to
create the slide points on the muscles. The table below displays the parts and attachment locations
for each muscle.
Tissue
Thorin_Out_NStiss_6
Thorin_Out_NStiss_6_SLIDE_1
Thorin_Out_NStiss_6_SLIDE_1
Thorin_Out_NStiss_6_SLIDE_1
Thorin_Out_NStiss_7
Thorin_Out_NStiss_7_SLIDE_1
Thorin_Out_NStiss_7_SLIDE_1
Thorin_Out_NStiss_7_SLIDE_1
Thorin_Out_NStiss_8
Thorin_Out_NStiss_8_SLIDE_1
Thorin_Out_NStiss_8_SLIDE_1
Thorin_Out_NStiss_8_SLIDE_1
Thorin_Out_NStiss_9
Thorin_Out_NStiss_9_SLIDE_1
Thorin_Out_NStiss_9_SLIDE_1
Thorin_Out_NStiss_9_SLIDE_1

Slide Pont Anchor


.Thorin_Left_Hand
.Thorin_Metacarpal_2L
.Thorin_Phalanx_2PL
.Thorin_Phalanx_2ML
.Thorin_Left_Hand
.Thorin_Metacarpal_3L
.Thorin_Phalanx_3PL
.Thorin_Phalanx_3ML
.Thorin_Left_Hand
.Thorin_Metacarpal_4L
.Thorin_Phalanx_4PL
.Thorin_Phalanx_4ML
.Thorin_Left_Hand
.Thorin_Metacarpal_5L
.Thorin_Phalanx_5PL
.Thorin_Phalanx_5ML

Slide Point Location


190, -90, 10
(loc_rel_to({-8,0,0}, Phalanx_2PL))
(loc_rel_to({-7,0,0}, Phalanx_2ML))
(loc_rel_to({-6,0,0}, Phalanx_2DL))
190, -90, 6
(loc_rel_to({-8,0,0}, Phalanx_3PL))
(loc_rel_to({-7,0,0}, Phalanx_3ML))
(loc_rel_to({-6,0,0}, Phalanx_3DL))
190, -90, 2
(loc_rel_to({-8,0,0}, Phalanx_4PL))
(loc_rel_to({-7,0,0}, Phalanx_4ML))
(loc_rel_to({-6,0,0}, Phalanx_4DL))
190, -90, -2
(loc_rel_to({-8,0,0}, Phalanx_5PL))
(loc_rel_to({-7,0,0}, Phalanx_5ML))
(loc_rel_to({-6,0,0}, Phalanx_5DL))

Step 31: Set muscle scale graphics to 2


Select Muscles as the Tissues and set the Scale to 2 on the LifeMOD Display Toolbox.

Creating the Other Muscles of the Hand


To complete the musculature of the hand the flexor pollicis brevis, the adductor pollicis and the
flexor pollicis longus muscles and tendons are generated. The flexor pollicis longus tendon is routed
through the carpal tunnel.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Figure 13: The flexor pollicis brevis, the adductor pollicis and the flexor pollicis longus muscles and
tendons. Though LifeMOD 2008.0.0 allows for multiple-origin entries when the muscle set is created, this
figure illustrates how slide points function in relation to a muscle group.

Step 32: Bring up the single soft tissue panel


Select SOFT TISSUES on the main-menu and CREATE SINGLE on the sub-menu.
Step 33: Create the flexor pollicis brevis muscle
Use the panel above to create the muscle. The table below displays the parts and attachment
locations for each muscle.
Name
Attach Part_1
NStiss_11Thorin_Left_Hand

Attach Part_2
Thorin_Phalanx_1PL

Attach Loc 1
190 -98 21

Attach Loc 2
148
-121
52

Step 34: Create the adductor pollicis muscle


Use the panel above to create the muscle. The table below displays the parts and attachment
locations for each muscle.
Name
Attach Part_1
Attach Part_2
NStiss_12Thorin_Metacarpal_3LThorin_Phalanx_1PL

Attach Loc 1
199 -145
8

Attach Loc 2
147
-125
55

Step 35: Create the flexor pollicis longus muscle


Use the panel above to create the muscle. The table below displays the parts and attachment
locations for each muscle.
Name
Attach Part_1
Attach Part_2
NStiss_10Thorin_Left_Lower_ArmThorin_Phalanx_1DL

Attach Loc 1
214
69 23

Attach Loc 2
120
-143
60

Step 36A: Create Slide Points in the Create Individual Tissue panel
Enter the values listed in the table below, with commas separating each value, into the origin and
origin attachment location fields after the first origin value.
Step 36B: Bring up the slide-point create panel and create slide points on the flexor
pollicis longus tendon
Select SOFT TISSUES on the main-menu and CREATE TISSUE WRAPPING on the sub-menu. Select
the light bulb next to Slide Point Based to bring up the slide point based tissue wrapping tool.Use
the panel above to create the slide points on the muscles. The table below displays the parts and

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

attachment locations for each muscle.


Tissue
Thorin_Out_NStiss_10
Thorin_Out_NStiss_10_SLIDE_1
Thorin_Out_NStiss_10_SLIDE_1

Slide Pont Anchor


Slide Point Location
Thorin_Left_Hand
190
-90
16
Thorin_Metacarpal_1L (loc_rel_to({-8,0,0}, Phalanx_1PL))
Thorin_Phalanx_1PL
(loc_rel_to({-7,0,0}, Phalanx_1DL))

Figure 14: Panel used to create the recording muscle elements on the rest of the arm

Step 37: Bring up the tissues create set panel


Select SOFT TISSUES on the main-menu and CREATE BASE SET on the sub-menu.
Step 38: Create muscle tissues on the rest of the arm
Select Left Arm and select execute to select trainable tissues on the arm.
Step 39: Set muscle scale graphics to 2
Select Muscles and set the scale factor to 2 on the LifeMOD Display Toolbox.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Figure 15: Completed hand model with slide points, base muscle set, and muscle scaling.

Posing the Arm/Hand Model


With all the tissues now created on the arm/hand model, the limb is then positioned into the
starting position by manipulating the joints.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Figure 16: The panel used to adjust the shoulder and elbow angles and the model after posturing

Step 40: Bring up the posture panel to configure the base joints
Select POSTURE on the main-menu and CONFIGURE BASE MODEL on the sub-menu.
Step 41: Load the current joint angles and change the view to left
Select Load Current Joint Angles to bring up the angles for the shoulder, elbow and wrist joints.
Using the ADAMS/View toolbox to rotate the view to the left.
Step 42: Adjust the shoulder and elbow angles in the sagittal plane
Seth the Sagittal angle of the shoulder joint and the elbow joints to be -40 and -90 degrees
respectively.

Defining the Environment


file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

With the arm/hand model in position, a tennis ball model is imported from the mechanical system
library. Also, a box is created using the geometric boolean operations from ADAMS/View. Contact
properties are created between the fingers and palm of the hand and the ball as well as between
the ball and the box.

Figure 17: Ball positioned in the hand and secured with a lock joint. The hollow box built using boolean
operations.

Step 43: Bring up the import mechanical environment panel


Select XCHANGE on the main-menu and IMPORT MECHANICAL ENVIRONMENT on the sub-menu.
Set the option to Mechanical Environment Library.
Step 44: Import the tennis ball
Select Tennis Ball as the Model Library SLF File and select Apply to create the ball.
Step 45: Move the ball into the hand and attach with a lock joint
Either use the ADAMS/View move panel to move the ball or use the following commands to
reposition the ball:
part modify rigid_body name_and_position &
part_name = .World.Ball &
location = 144.0, 444.0, 433.0 &
orientation = 0.0, 0.0, 0.0 &
relative_to = .World

Either use the ADAMS/View panel to create a fixed joint between the ball and the hand or use the
following commands :
constraint create joint fixed joint_name = .World.ballFix &
i_part_name = .World.ground &
j_part_name = .World.Ball &
location = .World.Ball.cm &
orientation = 0.0, 0.0, 0.0

Step 46: Create two boxes


Two boxes are created with one a bit larger that the other. the smaller box is to be used as the
"cutting tool" in the boolean operation to create a hollow box to drop the ball in. Use the following
ADAMS/View commands to create the boxes:
mar cre mar=.World.ground.box_rm1 loc=-90.0, -410.0, -176 rel=.World
geo cre sha block blo=.World.ground.box_a cor= .World.ground.box_rm1 dia= (480mm),(-330mm),(470mm)
mar cre mar=.World.ground.box_rm2 loc=-100.0, -420.0, -191 rel=.World
geo cre sha block blo=.World.ground.box_b cor= .World.ground.box_rm2 dia= (500mm),(-350mm),(500mm)
geo att geo=.world.ground.box_a color=yellow
geo att geo=.world.ground.box_b color=brown

Step 47: Use box_a to cut box_b to create the hollow box.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Two boxes are created with one a bit larger that the other. the smaller box is to be used as the
"cutting tool" in the boolean operation to create a hollow box to drop the ball in. Use the following
ADAMS/View commands to create the boxes:
geometry create shape csg csg_name=.World.ground.basket &
base_object=.World.ground.box_b &
object=.World.ground.box_a &
type=difference
entity attributes &
entity_name = .World.ground.basket color = .colors.Brown &
transparency = 75

Figure 18: Contact panel used to create the contact force between the flesh of the fingers and palm of
the hand and the ball.

Step 48: Bring up the contact panel


Select CONTACTS from the main-menu and CREATE SINGLE from the sub-menu.
Step 49: Create contact forces between the ball and the hand
Contact forces are created between the flesh of the fingers and palm of the hand and the ball
using the panel with the contact settings in the figure above and the individual values in the table
below.
Contact Solid 1 Contact Solid 2
Ball.ellipsoid
Thorin_Left_Hand.Ellipsoid
Ball.ellipsoid
Phalanx_1DL.Ellipsoid
Ball.ellipsoid
Phalanx_2DL.Ellipsoid
Ball.ellipsoid
Phalanx_3DL.Ellipsoid
Ball.ellipsoid
Phalanx_4DL.Ellipsoid
Ball.ellipsoid
Phalanx_5DL.Ellipsoid
Ball.ellipsoid
Phalanx_2ML.Ellipsoid
Ball.ellipsoid
Phalanx_3ML.Ellipsoid
Ball.ellipsoid
Phalanx_4ML.Ellipsoid
Ball.ellipsoid
Phalanx_5ML.Ellipsoid
Ball.ellipsoid
Phalanx_1PL.Ellipsoid
Ball.ellipsoid
Phalanx_2PL.Ellipsoid
Ball.ellipsoid
Phalanx_3PL.Ellipsoid
Ball.ellipsoid
Phalanx_4PL.Ellipsoid
file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Ball.ellipsoid
Ball.ellipsoid
Ball.ellipsoid
Ball.ellipsoid
Ball.ellipsoid
Ball.ellipsoid

Phalanx_5PL.Ellipsoid
Metacarpal_1L.Ellipsoid
Metacarpal_2L.Ellipsoid
Metacarpal_3L.Ellipsoid
Metacarpal_4L.Ellipsoid
Metacarpal_5L.Ellipsoid

Step 50: Create contact forces between the ball hollow box
Use a contact stiffness of 10, damping of 17, exponent 1.5, depth 10, MU static .8 MU dynamic .8
and Friction Velocity of 254 and stiction velocity of 1. Select the .Ball.Ellipsoid as contact solid 1
and .ground.basket as contact solid 2. Select Apply to create the contact force.

Creating the Motion Agents


In this step, motion agents are created on the finger tips. They will serve two functions: 1) to
close the hand around the ball to establish the starting point of the simulation, and, 2) to open the
hand to train the muscles to drop the ball.

Figure 19: The single motion agents installed on the fingers and thumb of the hand

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Figure 20: The single motion agent create panel.

Step 51: Bring up the single motion agent panel


Select MOTION in the main-menu and CREATE SINGLE AGENT in the sub-menu. Use the
ADAMS/View toolbox to zoom closely into the hand.
Step 52: Create the motion splines
Use the ADAMS/View command below to create the 4 splines. The data for X_finger, Y_finger,
x_thumb and z_thumb splines in included in the tables below.
dat cre spl spl=.World.x_finger x_u=time y_u=length x=(data below) y=(data below)

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Step 53: Create the single motion agents


Use the panel in the figure above and the data from the table below to create the motion agents
on the fingers.
Motion Agent
MOTagent_1
MOTagent_2
MOTagent_3
MOTagent_4
MOTagent_5

Body Segment
Thorin_Phalanx_2DL
Thorin_Phalanx_3DL
Thorin_Phalanx_4DL
Thorin_Phalanx_5DL
Thorin_Phalanx_1DL

Location
183 539
186 519
182 497
183 457
105 489

X_dof Y_dof
498x_finger y_finger
532x_finger y_finger
539x_finger y_finger
526x_finger y_finger
384x_thumb FREE

Z_dof
y_finger
y_finger
y_finger
y_finger
z_thumb

Running an Analysis to Set up the Initial Conditions


In this step, the hand is locked to ground and an analysis is run to have the motion agents wrap
the fingers around the ball. The model will then be updated so the resulting configuration will be
initial condition in the next simulation.

Figure 21: Five successive images of the hand grasping the ball with the motion agents.

Step 54: Bring up the analyze panel


Select ANALYZE in the maine-menu and DYNAMICS in the sub-menu.
Step 55: Lock the hand to ground during the grasping
Create an ADAMS/View lock joint between the hand and the ground using either the ADAMS/View
toolbox or the following command
constraint create joint fixed joint_name = .World.handFix &
i_part_name = .World.ground &
j_part_name = .World.Thorin_Left_Hand &
location = .World.Thorin_Left_Hand.cm &
orientation = 0.0, 0.0, 0.0

Step 56: Run the simulation to put the hand in the starting position
Select the Robust integrator settings and run the simulation for 1 second and 100 time steps.
Step 57: Save the current configuration as the starting point for the next analysis
Select Update Model Posture with Equilibrium Results to update the model with the results of the
analysis.

Training the Muscles to Open the Hand


With the hand in the gripping position two motion single agents are created. The first motion agent
is fixed to the ball with the motion being with respect to a reference frame attached to the hand.
This agent will facilitate the "pulling" of the ball out of the hand. The second agent is fixed to the
arm which will facilitate the motion of the arm. Together these motion constitute a ball dropping
activity in which the muscle reaction forces will be calculated to perform in a subsequent forwarddynamics simulation.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Figure 22: Marker created on the hand to act as a reference for the motion agent on the ball. The marker
will move with the hand.

Figure 23: Panel use to create the single motion agent on the ball

Step 58: Bring up the motion agent delete panel, delete all the motion agents
Select MOTION on the main-menu and DELETE on the sub-menu. Select Delete All to delete all the
motion agents.
Step 59: Bring up the motion agent create single panel
Select MOTION on the main-menu and CREATE SINGLE AGENT on the sub-menu.
Step 60: Create a spline for ball movement
Use the following ADAMS/View command to create the spline:
dat cre spl spl=.World.SPL_ball &
x=0,.25,.5,.75,1,1.7,2.2,2.8,3.3,3.9,4.4,5 &
y=0,0,-10,-50,-133,-200,-300,-400,-400,-400,-400,-400

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Step 61: Create the reference frame for ball motion


A marker is created on the left_hand part to act as a reference frame for the motion of the ball.
The marker will move with the hand, therefore, the motion agents will be working off this moving
reference frame.
Step 62: Create the single motion agent on the ball
Use the data in the figure above to create the single motion agent on the ball.
Step 63: Create the data spline for the arm movement
Use the following ADAMS/View command to create the spline:
dat cre spl spl=.World.SPL_arm &
x=0,.6,1.1,1.7,2.2,2.8,3.3,3.9,4.4,5 &
y=0,-500,-600,-620,-620,-620,-750,-620,-620,-620

Step 64: Create the single motion agent on the arm


Create a motion agent on the Left_Hand at location 144,478,473. Leave the rotational dof's free.
Fix the x_dof, drive the y_dof with the spline SPL_arm and leave the z_dof as free. Select global
reference frame and use the same stiffness/damping properties as in the ball motion agent.

Figure 24: Three consecutive frames of the inverse dynamics simulation with motion agents active

Step 65: Bring up the analyze panel


Select ANALYZE in the maine-menu and DYNAMICS in the sub-menu.
Step 66: Delete the lock joint between the ball and the hand and the hand and ground
Delete the ballfix and handfix lock joints using the following ADAMS/View command:
constraint del con=.World.ballfix
constraint del con=.World.handFix

Step 67: Run the inverse dynamics simulation


Select Default integrator settings. Rung the simulation for 2 seconds and 200 time steps.
Step 68: Animate the results
Use the ADAMS/View toolbox to animate the results of the simulation.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Running the Forward Dynamics Analysis


With the muscles now trained from the inverse dynamics analysis, the motion agents are deleted
and a forward dynamics simulation is performed. The simulation is complete with the ball-hand
dynamics and the ball-box dynamics.

Figure 25: Successive frames of the ball dropping forward dynamics analysis

Figure 26: Panel use to update the muscles with the data from the inverse dynamics simulation

Step 69: Bring up the muscles training panel

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Select SOFT TISSUES on the main-menu and TRAINING on the sub-menu. Select the light bulb
next to Install Trained Driver Elements.
Step 70: Update the muscles with the inverse dynamics data
Enter 500000.0 for the Controller Gain and 500 for the Derivative Gain of the muscle controllers.
Select Apply to update the muscles with trained driver elements.
Step 71: Bring up the analyze panel
Select ANALYZE in the maine-menu and DYNAMICS in the sub-menu.
Step 72: Turn off the motion agents and run the forward dynamics simulation
Check Disable Motion Agents, and default integrator settings. Run the analysis for 2 seconds and
200 time steps.
Step 73: Reduce the muscle scale, turn off the attachments and animate the results
Use the LifeMOD Display panel to reduce the scale of the muscles to 2 and turn off the
attachment graphics. Use the ADAMS/View toolbox to animate the results of the simulation.

Interrogating the Results


When the simulation is complete the model may be animated and the results reviewed.
Various data may be presented from the forward-dynamics simulation including:
Individual muscle forces
Individual ligament forces
Disk compression forces
Disk shear forces

Figure 27: Forces in the extensor digitorum muscles

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Figure 28: Forces in the flexor digitorum muscles

Figure 29: Results panel set up to plot the extensor digitorum muscle forces

Step 74: Bring up results panel


Select RESULTS in the main-menu and ANIMATION in the sub-menu. Select "Results Window"
button to bring up the results processor

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Step 75: Turn off ellipsoids and animate the front view
Set the external representation to none in the LifeMOD Display Toolbox. Also turn of the tissue
attachments using the toolbox. Select .Ball.cm as the trace marker. select front view and run the
animation.
Step 76: Turn off the visibility of the box and animate
Select Thorin_Left_Hand.cm as the Fix to Camera Marker, select fix rotations. Select front view and
run the animation.
Step 77: Scale the muscles and run the animation fixing the camera to the lower arm
Select Thorin_Left_Lower_Arm.cm as the Fix to Camera Marker, select fix rotations. Select right
view and run the animation.
Step 78: Animate the left view
Select Thorin_Left_Lower_Arm.cm as the Fix to Camera Marker, select fix rotations. Select right
view and run the animation.
Step 79: Examine the forces in the extensor digitorum muscles
Select DATA DISPLAY in the sub-menu and Soft Tissues as the Data Type. Select the Tension
Characteristic. Select Create Full Plot for the following soft tissues
Thorin_Nstiss_1_SLIDE_1
Thorin_Nstiss_2_SLIDE_1
Thorin_Nstiss_3_SLIDE_1
Thorin_Nstiss_4_SLIDE_1
Step 80: Animate the model with scaling muscle graphics
Select ANIMATION in the sub-menu. Turn on the local scaling of the muscle graphics by selecting
Scale Joint/Tissue Graphics, Tissues, Scale Locally and the light bulb to scale the muscle graphics.
Select divide window, right view and animate.
Step 81: Examine the forces in the flexor digitorum muscles
Select DATA DISPLAY in the sub-menu and Soft Tissues as the Data Type. Select the Tension
Characteristic. Select Create Full Plot for the following soft tissues
Thorin_Nstiss_6_SLIDE_1
Thorin_Nstiss_7_SLIDE_1
Thorin_Nstiss_8_SLIDE_1
Thorin_Nstiss_9_SLIDE_1
Step 82: Animate the model with scaling muscle graphics
Select ANIMATION in the sub-menu. Turn on the local scaling of the muscle graphics by selecting
Scale Joint/Tissue Graphics, Tissues, Scale Locally and the light bulb to scale the muscle graphics.
Select divide window, left view and animate.
Step 83: Examine the finger tip contact forces
Select DATA DISPLAY in the sub-menu and Contacts as the Data Type. Select the Mag Component
Characteristic. Select Create Full Plot for the following soft tissue forces:
Thorin_NScon_7
Thorin_NScon_8
Thorin_NScon_9
Thorin_NScon_10
Step 84: Animate the model with muscle graphics turned off
Select ANIMATION in the sub-menu. Select Muscles as the Tissues and toggle off using the
LifeMOD Display Toolbox. Select divide window, left view and animate.
Step 85: Zoom in on the hand and animate

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Detailed Hand Grasping

Select ANIMATION in the sub-menu. Select Muscles as the Tissues and toggle off using the
LifeMOD Display Toolbox. Select zoom with center coordinates of 130, 448, 413 with a scale factor
of 2. Select divide window, left view and animate.
Step 86: DEMO COMPLETE

Further
This model could be used to explore many aspects including:
Various muscle/ligament parameters
Various acceleration profiles

Back To Top
Copyright 2010 LifeModeler, Inc.

FF

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Hand%20Grasping.html[06-Jun-15 12:50:21 PM]

LifeMOD Tutorials | Fall

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials

Injury Evaluation Application - Fall

Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation

This demonstration problem


examines the injury producing
mechanics during several fall
scenarios. A human model is
generated with passive joints
created from the Hybrid III
crash dummy database in
LifeMOD. Contact elements are
created between the segments
of the model and the floor.
The model is then given initial
velocity conditions and the
dynamics simulation is
performed. A second simulation
is performed where the joint
stiffness are scaled down to
represent a more flaccid human
or someone not prepared for the fall.
Injuries are accessed by examining the impact forces, joint torques, and the deceleration of
the head.
Features of this example problem include:
Parametric analysis
Creating body segments from the Chinese PeopleSize Anthropometric database
Contact elements between body segments and environment
Hybrid III Crash Dummy strength characteristics at the joints
Posture manipulation
Passive simulation

Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

Sections
Generating the Body Segments
Generating the Joints
Posing the Human Model
Creating Contact Forces
Running the Passive Simulation
Running the Parameter Variation Study
Interrogating the Results
Further

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fall.html[06-Jun-15 12:50:25 PM]

LifeMOD Tutorials | Fall

Generating the Body Segments


In this phase the human body models are generated. The body consists of 19 segments and
18 joints with the mass properties of a 95% Chinese male and the joint characteristics of the
Hybrid III crash dummy.

Figure 1: Body segment creation panel

Step 1: Bring up segments panel and set fields for the body
Launch the LifeMOD software and select CREATE NEW MODEL to begin a new modeling
session. Select SEGMENTS from the main-menu and CREATE BASE SEGMENT SET from the
sub-menu.
Step 2: Create the body
Enter "World" for the world model name and "Connor" for the human body name. Units are
Inch-Lbm-Lbf and the color is set to red. Hands are set to grip and the full body model is
specified. The model is created from an anthropometric database named "PeopleSize". The
body will be constructed for a 95th percentile Chinese male. Select APPLY to create the body
segment measurement table, and select APPLY a second time to create create the model.

Generating the Joints


In this phase, the human segments created in the first phase are connected together with
kinematic joints. At the same time torque functions are created at each joint degree of
freedom. The torque function is created from the Hybrid III database of torque functions. The
torque is based on a nonlinear joint stiffness, damping, friction and hysteresis (losses),
specific to each DOF (degree of freedom) for each joint as derived from the physical Hybrid
III crash dummy. A scale factor of 1.0 us used which represents the baseline stiffness of the
Hybrid III crash dummy.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fall.html[06-Jun-15 12:50:25 PM]

LifeMOD Tutorials | Fall

Figure 2: Panel to create HIII joints on the body model.

Step 3: Bring up joint create panel


Select JOINTS in the main-menu and CREATE BASE JOINT SET in the sub-menu. Select
"Prepare Joints with Hybrid III Crash Dummy Strength Joints." Enter a scale factor of 1.0 to
use the default stiffness of the crash dummy.
Step 4: Create Hybrid III strength joints on the model
Select APPLY. From this six panels will appear to create the joint/torque sets for each region
of the body (spinal, left arm, left leg, right arm, right leg).

Posing the Human Model


After the joints are created on the model the posture of the model may be adjusted, and the
model moved into place. The posture may be adjusted by recalling one of several postures in
the posture library then further modify the joint angles if necessary. The body is moved into
place by selecting the Lower_Torso segment and changing the location.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fall.html[06-Jun-15 12:50:25 PM]

LifeMOD Tutorials | Fall

Figure 3: Connor Model after adjusting the posture

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fall.html[06-Jun-15 12:50:25 PM]

LifeMOD Tutorials | Fall


Figure 4: Using the standard ADAMS/View control panel to reposition the human model in the
environment

Step 5: Bring up posture panel


Select POSTURE on the main-menu and CONFIGURE BASE MODEL on the sub-menu.
Step 6: Update the left/right shoulder joints
Enter -100 for the right and left shoulder, sagittal joint angle. Then select the SHOULDER
button for both arms.
Step 7: Update the left/right elbow joints
Enter -70 for the right and left elbow, sagittal joint angle. Then select the ELBOW button for
both arms.
Step 8: Update the upper neck joint
Enter 30 for the UpperNeck sagittal joint angle. Then select the UPPERNECK button to update
the joint angle.
Step 9: Update the lower neck joint
Enter 30 for the LowerNeck sagittal joint angle. Then select the LOWERNECK button to
update the joint angle.
Step 10: Update the thoracic joint
Enter 30 for the thoracic sagittal joint angle. Then select the THORACIC button to update the
joint angle.
Step 11: Update the lumbar joint
Enter 30 for the lumbar sagittal joint angle. Then select the LUMBAR button to update the
joint angle.
Step 12: Update the left/right hip joints
Enter -90 for the right and left hip, sagittal joint angle. Then select the HIP button for both
legs.
Step 13: Update the left/right knee joints
Enter 120 for the right and left knee, sagittal joint angle. Then select the KNEE button for
both legs.
Step 14: Rotate and reposition model
Reposition the model by modifying the location of the Lower_Torso segment. Right-click on
the Lower_Torso segment and select MODIFY. Select NAME AND POSITION from the Category
menu. Enter (-15,-20,63) as the location and (270, 150, 210) as the orientation. Select OK
to reposition the model.
OR
Reposition the model using the following ADAMS/View command:
part mod rigid name part=.World.Connor_Lower_Torso location=-15,-20, 63.0 orientation=270, 150, 210
rel=.World

Creating Contact Forces


Contact forces are created on the model to provide an interaction between the human model
and the environment. LifeMOD contact forces utilize an ellipsoid-plate contact algorithm for
efficient calculation of the reaction of the body segments to impact with the environment. The
general form of the contact force function is
F n =k *(g**e)+Step (g,0,0,d max ,c max )*dg/dt

where:

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fall.html[06-Jun-15 12:50:25 PM]

LifeMOD Tutorials | Fall


g represents the penetration the ellipsoid into the plate
dg/dt is the penetration velocity at the contact point.
e is a positive real value denoting the force exponent.
dmax is a positive real value specifying the boundary penetration to apply the maximum damping
coefficient cmax.

Figure 5: Contact set creation panel with parameters set for Connor model.

Step 15: Create contact marker on floor


Create a marker to identify the location and orientation of the contact surface (floor).
Bring up the ADAMS Main Toolbox by selecting the icon from the bottom right-hand corner of
the screen. Right-click on the geometry section (the link icon) and select the marker icon.
When the marker icon is selected the cursor changes and prompts appear on the bottom lefthand corner of the screen. In this case it reads Coordinate System: Select the Location.
Notice when the curor is placed over the model it automatically starts locating the possible
vertices it can be placed on. Any specific vertex can be selected by right-clicking a location
and selecting the same of the desired vertex. In the case, a marker is placed in space with a
specific orientation to correctly postition the floor. By right-clicking the background a location
panel appears under the Main Toolbox. The two fields in the panel are the coordinate location
with respect to the grid, origin, or specified object. Enter (-10,-31,0) in the first field and
select OK. Right-click the newly created marker and select MODIFY. Enter (0,-90,0) as the
orientation. Select OK. Right-click the marker again and select RENAME. Enter
.World.ground.floor as the name. Select OK.
OR
Create the marker by using the following ADAMS/View command:
marker create marker=.World.ground.floor location=-10, -31, 0 orientation=0,-90,0

Step 16: Bring up contact panel


Select CONTACTS on the main-menu and CREATE BASE CONTACT SET on the sub-menu.
Select "Ellipsoid-Solid" and check "Create Contact Surface Plane." Enter .World.ground.floor in
the contact surface marker field (you can right-click in the field and select PICK, and select
the marker manually on the screen) and set the parameters as in Figure 5.
Step 17: Create contact between body segments and floor
Select SELECT ALL, uncheck Neck and check Vorce Vectors. Then select APPLY.

Running the Passive Simulation


With the model generated, joints created, contact forces applied, and set in the right posture,

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fall.html[06-Jun-15 12:50:25 PM]

LifeMOD Tutorials | Fall

the dynamic analysis will be performed. This simulation is termed "passive," since the human
model will be responding to forces from the environment. Two cases will be performed; each
with varying joint stiffness.

Figure 6: Setting the initial conditions for the body

Figure 7: Gravity and integrator settings for passive simulation.

Step 18: Bring up the initial conditions panel


Select ANALYZE from the main-menu and BODY VELOCITY INITIAL CONDITIONS from the
sub-menu.
Step 19: Set the initial conditions for the model
Set the initial velocity conditions as in the panel in figure 6.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fall.html[06-Jun-15 12:50:25 PM]

LifeMOD Tutorials | Fall

Step 20: Bring up the analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 21: Run the dynamics simulation
Set the gravity vector at -386 in the negative Y direction. Run the simulation for 1.0 seconds
and 100 time steps using the default integrator settings.
Step 22: Display simulation
When the simulation is complete, select the animation icon in Main Toolbox. Using this panel,
simulations be viewed after the analysis is complete. Different views, and renderings. Specific
LifeMOD renderings of the model will be used later in the tutorials.

Running the Parameter Variation Study


To evaluate the effects of "bracing" the joint strength is modified and compared between
successive runs.

Figure 8: Decreasing the joint stiffness for all the joints in the body model

Step 23: Save the first analysis


Select SAVE ANALYSIS and enter the name Case_1. Select OK.
Step 24: Bring up Parameters panel
Select PARAMETERS in the main-menu and JOINTS in the sub-menu.
Step 25: Decrease Hybrid III Scale factor
Decrease the scale factor for .6, effectively reducing the stiffness in the joints. Select INTALL
VALUES.
Step 26: Bring up the analyze panel
Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 27: Run the dynamics simulation
Set the gravity vector at -386 in the negative Y direction. Run the simulation for 1.0 seconds
and 100 time steps using the default integrator settings.
Step 28: Display simulation
When the simulation is complete, animate the model by using the animation tool in Main

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fall.html[06-Jun-15 12:50:25 PM]

LifeMOD Tutorials | Fall

Tools panel.
Step 29: Display simulation with dummy model
For another method of viewing the animated model, select Dummy as the external
representation and none as the internal on the LifeMOD Display Toolbox and run the
animation.
Step 30: Display simulation with skin/skeletal model
For another method of viewing the animated model, select Skin as the external
representation and Skeleton as the internal on the LifeMOD Display Toolbox and run the
animation.
Step 31: Save the second analysis
Select SAVE ANALYSIS and enter the name Case_2. Select OK.

Interrogating the Results


With the simulations complete, the results may be reviewed in many ways. One of the best
ways to understand model performance is to plot the data and view the animation
simultaneously. In this final section, results for head impact forces and decelerations are
compared for both models and both strength parameters settings.

Figure 9: Animation sequences of the human responses to the fall.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fall.html[06-Jun-15 12:50:25 PM]

LifeMOD Tutorials | Fall

Figure 10: Head contact forces (top) and Head acceleration (bottom)

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fall.html[06-Jun-15 12:50:25 PM]

LifeMOD Tutorials | Fall

Figure10 Settings in the ADAMS post processor panel to superimpose animation for both cases.
(case_1 in red)

Step 32: Bring up results panel


Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu. Select CONTACTS
as the Data Type and select the post processor button in the upper right-hand corner.
Step 33: Plot the head impact for case-1
Select the Z-component of the contact force, Connor_Head_CON_1 for the Connor model for
Case_1 analysis. Select CREATE FULL PLOT to create the data curve.
Step 34: Plot the head impact for case-2
Select the Z-component of the contact force, Connor_Head_CON_1 for the Connor model for
case_2 analysis. Select CREATE FULL PLOT to create the data curve.
Step 35: Animate case_1
Select ANIMATION from the sub-menu. Set the analysis to .World.Case_1, select Divide
Window, right view and select PLAY.
Step 36: Animate case_2
Set the analysis to .World.Case_2 and select PLAY.
Step 37: Animate both cases superimposed

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fall.html[06-Jun-15 12:50:25 PM]

LifeMOD Tutorials | Fall

Select Compare Cases and .world.case_1 as Case 1 and .world.case_2 as Case 2. Select
PLAY.
Step 38: Bring up Body results panel
Select DATA DISPLAY in the sub-menu and set Body Motion as the Data Type.
Step 39: Plot the head acceleration for case-1
Select y-component of the CM_Acceleration characteristic for the head of the model for
Case_1. Use the same filter settings as above. Select CREATE FULL PLOT to create the data
curve.
Step 40: Plot the head acceleration for case-2
Select y-component of the CM_Acceleration characteristic for the head of the model for
Case_2. Use the same filter settings as above. Select CREATE FULL PLOT to create the data
curve.
Step 41: Animate the skin/skeleton model case_1
Select ANIMATION in the sub-menu. For another method of viewing the animated model,
select Skin as the external representation and Skeleton as the internal on the LifeMOD
Display Toolbox and run the animation.
Step 42: Animate the skin/skeleton model case_2
Set the analysis to .World.Case_2, select PLAY.
Step 43: Animate both cases superimposed
Select none as the external representation and Skeleton as the internal on the LifeMOD
Display Toolbox. Select Compare Cases and .world.case_1 as Case 1 and .world.case_2 as
Case 2. Select PLAY.
Step 44: DEMO COMPLETE

Further
This model was put forth to demonstrate the creation of a passive human model to determine
the physical reactions to a human during a fall. Obviously the model can be further refined
and improved, from the point developed in this example. The intention with this example was
to touch of the various modeling functions of both LifeMOD and ADAMS/View necessary to
create a human model of this nature for this application.
This model may be refined in many areas including:
Creating a more biofidelic spine model to examine local loadings on the vertebrae and
soft tissues (see Section 4: Non-Standard Model Example - Detailed Cervical Spine).
Creating simulations with varying boundary conditions such as fall height, initial
velocity, impact angle, ground compliance, posture, etc.
Adding "human reaction" by adding PD controllers to several joints.

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fall.html[06-Jun-15 12:50:25 PM]

LifeMOD Tutorials | Car Crash Analysis

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials

Injury Evaluation Application - Car Crash

Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine

This demonstration problem will illustrate using a passive human


model to evaluate the potential injuries sustained during vehicle
crash. The human model will be combined with an ADAMS model of a
car interior or a test sled. The model will be restrained using forces to
simulate the seat/shoulder belts. The sled is then subjected to an
acceleration pulse from the rear, and in another simulation one from
the front. Injury potential will be evaluated by examining the segment
impact forces, the segment accelerations and the loads at the
anatomical joints.
Features of this example problem include:
Creating body segments from the UK PeopleSize Anthropometric
database
Contact elements between body segments and environment
Hybrid III Crash Dummy strength characteristics at the joints
Posture manipulation
Passive simulation
Combining human model with ADAMS environment model
Attaching the human model to the environment with seat belt forces.
Comparing the results from different analyses.

Sections
Generating the Body Segments
Generating the Joints
Posing the Human Model
Creating the Car Interior Model
Creating Contact Forces

Tennis

Running the Equilibrium Analysis

Walking

Creating the Seatbelt Forces

NeckSIM:Whiplash

Creating the Crash Pulse


Running the Simulation for the Forward Hit
Running the Simulation for the Rearward Hit
Interrogating the Results
Further

Generating the Body Segments


In this phase the human body model is developed and placed in an environment. The body consists of
19 segments and 18 joints with the mass properties of a 5%ile UK male and the joint characteristics of
the Hybrid III crash dummy.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis

Figure 1: Body segment creation panel and crash dummy model display

Step 1: Bring up segments panel and set fields for the body
Launch the LifeMOD software. Select CREATE NEW MODEL to start a new modeling session. Select
SEGMENTS from the main-menu and CREATE BASE SEGMENT SET from the sub-menu.
Step 2: Create the body
Specify the human model name as Joe, the units as Inch, Lbm, Lbf, full body, hands "Grip". Select the
PeopleSize Anthropometric database for a 5th percentile UK male. Select "Create Body Measurement
Table" to build the body measurement table, select "Create Human Segments."

Generating the Joints


In this phase, the human segments created in the first phase are connected together with kinematic
joints. At the same time torque functions are created at each joint degree of freedom. The torque
function is created from the Hybrid III database of torque functions. The torque is based on a nonlinear
joint stiffness, damping, friction and hysteresis (losses), specific to each DOF for each joint as derived
from the physical Hybrid III crash dummy.

Figure 2: Various graphical representations of the model. Crash dummy representation (left), stick figure with
joint graphics (center), stick figure with joint axes (right).

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis

Figure 3: Panel to create Hybrid III dummy joints

Figure 4: Spinal joint set matrix panel and joint icons on stick model representation

Step 3: Bring up joint create panel


Select JOINTS in the main-menu and CREATE BASE JOINT SET in the sub-menu. Select HYBRID III
CRASH DUMMY STRENGTH CHARACTERISTICS. Enter a scale factor of .6, to scale the 50% strength

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis

profile.
Step 4: Create Hybrid III strength joints
SELECT ALL body regions and select APPLY. From this six panels will appear to create the joint/torque
sets for each region of the body (spinal, left arm, left leg, right arm, right leg).

Posing the Human Model


With the joints created on the model the posture of the model may be adjusted, and the model moved
into place. The posture may be adjusted by recalling one of several postures in the posture library then
further modify the joint angles if necessary. The body is moved into place by selecting the Lower_Torso
segment and changing the location.

Figure 5: Use the Load Posture button to load the riding posture from the library. This will create the posture
for the model as displayed at the top.

Step 5: Bring up posture panel


Select POSTURE on the main-menu and CONFIGURE BASE MODEL on the sub-menu.
Step 6: Put model in riding posture
"Load Library Posture" to find the required posture, Select UPRIGHTRIDING as the Stored Posture and
select OPEN.
Step 7: Rotate model
Reposition the model by modifying the location of the Lower_Torso segment. Right-click and modify the
lower torso. Select "Name and Position" and set the location to (0.0,-1.1687224256,-1.2047626433)
and orientation to (180,125,90). Select OK.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis

OR
Use the ADAMS/View movement panel as displayed in figure 5 or by entering the ADAMS/View
command:
part mod rigid name part=.World.Joe_Lower_Torso location=0.0, -1.1687224256, -1.2047626433 orientation=180.0,
125.0, 90.0 rel=.World

Creating the Car Interior Model


Standard ADAMS/View tools are used to create the car interior. The seat is created with the following
ADAMS commands (or the user may use standard ADAMS/View tools). Simple geometry is used to
represent the seat and floor of the compartment. Markers are positioned with the z-axis normal to the
plane at the locations displayed in the figure. A translational joint is created between this model and
the ground to be used to provide motion to the compartment from the crash pulse.

Figure 6: Car interior model with translational joint for crash pulse.

Step 8: Create Seat


Select the box icon from the Main Toolbox. Create the box on the screen. Right-click the box and
rename the newly created part .World.Sled. Right-click the corner marker of the box and select
MODIFY. Set the location to (10,-4.88,14.94) and orientation to (90,90,270). Rename the marker
.World.Sled.seat1. Right-click the box and select MODIFY. Set the diagonal coordinates to(22.82,2.43,20.15). Rename the box .World. Sled.Bseat1. Right-click the box and select APPEARENCE. Change
the color to brown.
Select the box icon again and create a second box. Select the corner marker and set the location to (9.9, -5.78, -5.25) and orientation to (90,90,340). Rename the marker .World.Sled.seat2. Change the
diagonal coordinates of the box to (26.82,-2.66,20.15). Rename the box .World.Sled.Bseat2. Change
the color to brown.
OR
Create the car compartment part using the following command:
part create rigid name part=Sled

Create markers for the seat bottom using the following commands:

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis


marker create marker=.World.Sled.seat1 loc=-10, -4.88, 14.94 ori=90, 90, 270 rel=.world
marker create marker=.World.Sled.seat2 loc=-9.9, -5.78, -5.25 ori=90, 90, 340

Create the graphics for the seat using the following commands:
geom create shape block block=.World.Sled.Bseat1 corner=.World.Sled.seat1 dia=22.82,-2.43,20.15
geom create shape block block=.World.Sled.Bseat2 corner=.World.Sled.seat2 dia=26.82,-2.66,20.15
geom attributes geom=.World.Sled.Bseat1 color=brown
geom attributes geom=.World.Sled.Bseat2 color=brown

Step 9: Create Floor


Create another box. Select the corner marker and change the location to (-9.9, 0.98, 38.27) and
orientation to (90,90,225). Rename .World.Sled.floor1. Change the diagonal coordinates of the box
to(14.99,-0.87,20.15). Rename the box .World.Sled.Bfloor1. Change the color to blue.
Create another box. Select the corner marker and change the location to (-9.9, -9.24, 28.43) and
orientation to (90,90,270). Rename .World.Sled.floor2. Change the diagonal coordinates of the box to
(14.99,-0.87,20.15). Rename the box .World.Sled.Bfloor2. Change the color to blue.
OR
Create markers for the seat floor using the following commands:
marker create marker=.World.Sled.floor1 loc=-9.9, 0.98, 38.27 ori=90, 90, 225 rel=.world
marker create marker=.World.Sled.floor2 loc=-9.9, -9.24, 28.43 ori=90, 90, 270

Create the graphics for the floor using the following commands:
geom create shape block block=.World.Sled.Bfloor1 corner=.World.Sled.floor1 dia=14.99,-0.87,20.15
geom create shape block block=.World.Sled.Bfloor2 corner=.World.Sled.floor2 dia=14.99,-0.87,20.15
geom attributes geom=.World.Sled.Bfloor1 color=blue
geom attributes geom=.World.Sled.Bfloor2 color=blue

Step 10: Create a translational joint between the sled and ground
Select the translational joint icon from the Main Toolbox. Select .World.Sled as the first body and the
ground as the second. Right-click the ground to bring up the location panel under the Main Toolbox.
Enter (-0.5, -10.6, 6) as the location. Select APPLY. Change the orienations of both markers in the joint
to (0,0,0). Rename the joint .World.tran.
Create a translational joint between the sled and ground (see Figure 5).
marker create marker=.World.Sled.tran loc=-0.5, -10.6, 6 ori=0,0,0 rel=.world
marker create marker=.World.ground.tran loc=-0.5, -10.6, 6 ori=0,0,0 rel=.world
constraint create joint tran joint=.World.tran i_mark=.World.Sled.tran j_mark=.World.ground.tran

Creating Contact Forces


Contact forces are created on the model to provide an interaction between the human model and the
environment. LifeMOD contact forces utilize a novel contact algorithm for efficient calculation of the
reaction of the body segments to impact with the environment. The general form of the contact force
function is
F n =k *(g**e)+Step (g,0,0,d max ,c max )*dg/dt

where:
g represents the penetration the ellipsoid into the plate
dg/dt is the penetration velocity at the contact point.
e is a positive real value denoting the force exponent.
dmax is a positive real value specifying the boundary penetration to apply the maximum damping coefficient cmax.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis

Figure 7: Panel to create first set of contact elements.

Step 11: Bring up the contact panel


Select CONTACTS on the main-menu and CREATE BASE CONTACT SET on the sub-menu.
Step 12: Create the contact forces between the segments and the seat bottom
Select solid-solid as the type of contact. Enter .World.sled.Bseat1 in the contact solid field and set the
parameters as in Figure 7. Select Right_Hand, Right_Upper_Leg, Left_Upper_Leg, Left_Hand as the
contact segments. Then select APPLY.
Step 13: Create the contact forces between the segments and the seat back
Set the contact sold field to .World.sled.Bseat2. Select Head, Upper_Torso, Central_Torso, Lower_Torso,
Right_Upper_Arm, Left_Upper_Arm. Then select APPLY.
Step 14: Create the contact forces between the feet and the floor
Set the contact solid field to .World.sled.Bfloor1. Select Right_Foot_Single, Left_Foot_Single. Select
APPLY.
Step 15: Create the contact forces between the feet and the floor
Set the contact solid field to .World.sled.Bfloor2. Select Right_Foot_Single, Left_Foot_Single. Select
APPLY.

Running the Equilibrium Analysis


The sled is fixed to ground and an equilibrium analysis is performed to allow the human model to settle
into the seat before the seatbelt forces are applied.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis

Figure 8: Human model in the equilibrium position (settled into the seat) and the analyze panel.

Step 16: Create a motion=0 on the sled translational joint


Create a motion (with velocity = 0 ) on the translational joint between the sled and ground by
selecting Translational Joint Motion under the motion section in the Maint Toolbox. Set the speed to 0 in
Main Toolbox. Select .World.tran as the joint.
constraint create motion motion=.World.Impulse joint=.World.tran function="0"

Step 17: Bring up analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 18: Run the simulation
Set the gravity vector at -386 in the negative Y direction. Run the simulation for 1.0 seconds and 50
time steps using the "Default" integrator settings.
Step 19: Animate equilibrium simulation
Select Dummy as the external representation and none as the internal in the LifeMOD Display Toolbox.
Select animate on the ADAMS/View main toolbox.
Step 20: Update the model configuration with static results
Select "Update Model Posture with Equilibruim Results" button on the panel.

Creating the Seatbelt Forces


Standard ADAMS/View tools are used to create the seatbelt forces (lap and shoulder belt) between the
segments of the human model and the car sled. The forces is a tension-only force produced when the
attachment locations between the human model and the sled exceed a certain value (slack length).

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis

Figure 9: Model with the seat belt forces in place.

Step 21: Create the attachment markers between the human model and the sled
Create the following markers:
.World.Sled.belt1 at (12,-10,-9)
.World.Sled.belt2 at (-12,-10,-9)
.World.Sled.belt3 at (12,20,-17)
.World.Joe_Lower_Torso.belt1 at (6.2-2.6.-1.6)
.World.Joe_Lower_Torso.belt2 at (-6.2,-2.6,-1.6)
.World.Joe_Upper_Torso.belt3 at (4.14,5.3.-0.3)
.World.Joe_Upper_Torso.belt4 at (4.3,5.3,-0.3)
Create the seatbelt attachment markers on the sled
marker create marker=.World.Sled.belt1 loc=12, -10, -9 ori=0,0,0 rel=.World
marker create marker=.World.Sled.belt2 loc=-12, -10, -9 ori=0,0,0 rel=.World
marker create marker=.World.Sled.belt3 loc=12, 20, -17 ori=0,0,0 rel=.World

Create the seatbelt attachment markers on the human model.


marker
marker
marker
marker

create
create
create
create

marker=.World.Joe_Lower_Torso.belt1 loc=6.2,-2.6,-1.6 ori=0,0,0 rel=.World


marker=.World.Joe_Lower_Torso.belt2 loc=-6.2, -2.6, -1.6 ori=0,0,0 rel=.World
marker=.World.Joe_Upper_Torso.belt3 loc=4,14.5,-1.5 ori=0,0,0 rel=.World
marker=.World.Joe_Upper_Torso.belt4 loc=-4.3, 5.3, -0.3 ori=0,0,0 rel=.World

Step 22: Create belt segment 1


Create belt segment 1. Select the Single-Component Force from the Main Toolbox. Specify "Two Bodies"
as the Run-time Direction in the Main Toolbox. Select .World.Sled as the first body and
.World.Joe_Lower_Torso as the second. Select .World.Sled.belt1 as the first location and
.World.Joe_Lower_Torso as the second. Modify the force and input the following funtion:
step(dm(.world.sled.belt1,.world.Joe_Lower_Torso.belt1), 15,0,16,1e3*(dm(.world.sled.belt1,.world.Joe_Lower_Torso.belt1)-15)-1e2*vz
(.world.Joe_Lower_Torso.belt1,.world.sled.belt1,.world.sled.belt1))
Rename the force .World.belt1. Create an outline for the belt using the command navigator. Select
geometry-create-curve-outline. Name the outline .World.GRAbelt1. Put in .World.sled.belt1,
.World.Joe_Lower_Torso.belt1 for the Marker Name. Select OK. Right-click the outline and change the
color to black.
OR
Create the seatbelt using the following ADAMS/View commands:

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis


force create direct single_component_force type=tran single_component_force = .World.belt1
i_marker=.world.sled.belt1 j_marker=.world.Joe_Lower_Torso.belt1 function =
"step(dm(.world.sled.belt1,.world.Joe_Lower_Torso.belt1), 15,0,16,1e3*(dm(.world.sled.belt1,.world.Joe_Lower_Torso.belt1)-15)-1e2*vz
(.world.Joe_Lower_Torso.belt1,.world.sled.belt1,.world.sled.belt1))"
geo cre curve out out=.World.GRAbelt1 marker=.World.sled.belt1, .World.Joe_Lower_Torso.belt1 horiz=clamp
vert=clamp close=no
geo att geo=.World.GRAbelt1 color=black

Step 23: Create belt segment 2


Create belt segment 2. Create another single-component force, selecting .World.sled as the first body
and .World.Joe_Lower_Torso as the second. Select .World.sled.belt2 as the first location and
.World.Joe_Lower_Torso.belt2 as the second. Modify the force and input the following function:
step(dm(.world.sled.belt2,.world.Joe_Lower_Torso.belt2), 15,0,16,1e3*(dm(.world.sled.belt2,.world.Joe_Lower_Torso.belt2)-15)-1e2*vz
(.world.Joe_Lower_Torso.belt2,.world.sled.belt2,.world.sled.belt2))
Rename the force .World.belt2. Create an outline for the belt using the command navigator. Select
geometry-create-curve-outline. Name the outline .World.GRAbelt2. Put in .World.sled.belt2,
.World.Joe_Lower_Torso.belt2 for the Marker Name. Select OK. Right-click the outline and change the
color to black.
OR
Create the seatbelt by using the following ADAMS/View commands:
force create direct single_component_force type=tran single_component_force = .World.belt2
i_marker=.world.sled.belt2 j_marker=.world.Joe_Lower_Torso.belt2 function =
"step(dm(.world.sled.belt2,.world.Joe_Lower_Torso.belt2), 15,0,16,1e3*(dm(.world.sled.belt2,.world.Joe_Lower_Torso.belt2)-15)-1e2*vz
(.world.Joe_Lower_Torso.belt2,.world.sled.belt2,.world.sled.belt2))"
geo cre curve out out=.World.GRAbelt2 marker=.World.sled.belt2, .World.Joe_Lower_Torso.belt2 horiz=clamp
vert=clamp close=no
geo att geo=.World.GRAbelt2 color=black

Step 24: Create belt segment 3


Create belt segment 3. Create another single-component force selecting .World.Sled as the first body
and .World.Joe_Upper_Torso as the second. Select .World.sled.belt3 as the first location and
.World.Joe_Upper_Torso.belt3 as the second. Modify the force and insert the following function:
step(dm(.world.sled.belt3,.world.Joe_Upper_Torso.belt3), 19,0,20,1e3*(dm(.world.sled.belt3,.world.Joe_Upper_Torso.belt3) -19)1e2*vz(.world.Joe_Upper_Torso.belt3,.world.sled.belt3,.world.sled.belt3))
Rename the force .World.belt3. Create an outline for the belt using the command navigator. Select
geometry-create-curve-outline. Name the outline .World.GRAbelt3. Put in .World.sled.belt3,
.World.Joe_Upper_Torso.belt3 for the Marker Name. Select OK. Right-click the outline and change the
color to black.
OR
Create the seatbelt using the following ADAMS/View commands:
force create direct single_component_force type=tran single_component_force = .World.belt3
i_marker=.world.sled.belt3 j_marker=.world.Joe_Upper_Torso.belt3 function =
"step(dm(.world.sled.belt3,.world.Joe_Upper_Torso.belt3), 19,0,20,1e3*(dm(.world.sled.belt3,.world.Joe_Upper_Torso.belt3) -19)1e2*vz(.world.Joe_Upper_Torso.belt3,.world.sled.belt3,.world.sled.belt3))"
geo cre curve out out=.World.GRAbelt3 marker=.World.sled.belt3,
.World.Joe_Upper_Torso.belt3 horiz=clamp vert=clamp close=no
geo att geo=.World.GRAbelt3 color=black

Step 25: Create belt segment 4


Create belt segment 4. Create another single-component force selecting .World.Sled as the first body
and .World.Joe_Upper_Torso as the second. Select .World.sled.belt2 as the first location and

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis

.World.Joe_Upper_Torso.belt4 as the second. Modify the force and insert the following function:
step(dm(.world.sled.belt2,.world.Joe_Upper_Torso.belt4), 20,0,21,1e3*(dm(.world.sled.belt2,.world.Joe_Upper_Torso.belt4) -20)1e2*vz(.world.Joe_Upper_Torso.belt4,.world.sled.belt2,.world.sled.belt2))
Rename the force .World.belt4. Create an outline for the belt using the command navigator. Select
geometry-create-curve-outline. Name the outline .World.GRAbelt4. Put in .World.sled.belt2,
.World.Joe_Upper_Torso.belt4 for the Marker Name. Select OK. Right-click the outline and change the
color to black.
force create direct single_component_force type=tran single_component_force = .World.belt4
i_marker=.world.sled.belt2 j_marker=.world.Joe_Upper_Torso.belt4 function =
"step(dm(.world.sled.belt2,.world.Joe_Upper_Torso.belt4), 20,0,21,1e3*(dm(.world.sled.belt2,.world.Joe_Upper_Torso.belt4) -20)1e2*vz(.world.Joe_Upper_Torso.belt4,.world.sled.belt2,.world.sled.belt2))"
geo cre curve out out=.World.GRAbelt4 marker=.World.sled.belt2,
.World.Joe_Upper_Torso.belt4 horiz=clamp vert=clamp close=no
geo att geo=.World.GRAbelt4 color=black

Creating the Crash Pulse


Standard ADAMS/View tools are used to create a displacement v. time data table which is later used by
a spline function for the kinematic motion driver in the joint between the sled and the ground.

Figure 10: Editing motion to introduce crash pulse into the sled model

Step 26: Create the crash pulse spline (time v. displacement)


Create the the displacement v. time data spline for the crash pulse. Select Build-Data Elements-SplineNEW. Select "Append row to X and Y data" to get 11 rows. Enter in the data from figure 11. Select OK.
Right-click the motion on the tranlational joint and select MODIFY. Enter AKISPL(time,0,.World.crash_pulse, 0) as the function. Select OK.
OR
Create the spline and modify the motion using the following ADAMS/View commands:

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis


data_element create spline spline=.World.crash_pulse x=0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0 y=0.0,
20.0, 40.0, 60.0, 80.0, 100.0, 120.0, 140.0, 160.0, 180.0, 200.0

Modify the motion statement on the translational joint to include the pulse.
constraint modify motion motion_name = .World.Impulse joint_name=.World.tran function ="AKISPL(time,0,.World.crash_pulse, 0)"

Running the Simulation for the Forward Hit


The simulation is performed using the crash pulse to move the sled in the aft direction representing a
vehicle being hit from the front.

Figure 10: Simulation using the crash pulse representing the vehicle being struck from the front

Step 27: Bring up analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 28: Run the simulation
Set the gravity vector at -386 in the negative Y direction. Run the simulation for 1.0 seconds and 100
time steps using the default integrator settings.
Step 29: Save the first analysis
Select SAVE ANALYSIS and enter the name Hit_Forward. Select OK.

Running the Simulation for the Rearward Hit


The simulation is performed using the crash pulse to move the sled in the fore direction representing a
vehicle being hit from the rear.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis

Figure 11: Simulation using the crash pulse representing the vehicle being hit from the rear

Step 30: Modify the motion statement reverse the crash pulse
Modify the sign of the crash pulse on motion. Right-click the motion and enter
AKISPL(time,0,.World.crash_pulse,0) as the fuction. Select OK.
OR
Modify the function on the motion using the following ADAMS/View command:
constraint modify motion motion_name = .World.Impulse joint_name=.World.tran function =
"AKISPL(time,0,.World.crash_pulse,0)"

Step 31: Run the simulation


Set the gravity vector at -386 in the negative Y direction. Run the simulation for 1.0 seconds and 100
time steps using the default integrator settings.
Step 32: Save the second analysis
Select SAVE ANALYSIS and enter the name Hit_Rearward. Select OK.

Interrogating the Results


When the simulation is complete the model may be animated. Various representations are used and are
accessed by the buttons on every LifeMOD menu panel. To make an injury assessment of the crash
and to examine the effects of the rearward collision as compared to the forward collision, the data may
be plotted together. The data from the simulation that would be useful is:
Head and upper torso acceleration
Head contact forces
Neck torque

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis

Figure 12: Animation sequence and plots of the rearward and forward collisions.

Figure 13: Results panel to plot head acceleration

Step 33: Display simulation for forward hit


When the simulation is complete, animate the forward hit by using the animation tool in Main Tools
panel for the Hit_Forward case.
Step 34: Display simulation for forward hit with skeleton
For another method of viewing the animated model, select none as the external representation and
Skeleton as the internal on the LifeMOD Display Toolbox and run the animation for the Hit_Forward
case.
Step 35: Display simulation for forward hit with skin model
For another method of viewing the animated model, select Skin as the external representation and
Skeleton as the internal on the LifeMOD Display Toolbox and run the animation for the Hit_Forward
case.
Step 36: Display simulation for rearward hit
For another method of viewing the animated model, select Dummy as the external representation and

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis

none as the internal on the LifeMOD Display Toolbox and run the animation for the Hit_Rearward case.
Step 37: Display simulation for rearward hit with skeleton
For another method of viewing the animated model, select none as the external representation and
Skeleton as the internal on the LifeMOD Display Toolbox and run the animation for the Hit_Rearward
case.
Step 38: Display simulation for rearward hit skin model
For another method of viewing the animated model, select Skin as the external representation and
Skeleton as the internal on the LifeMOD Display Toolbox and run the animation for the Hit_Rearward
case.
Step 39: Bring up results panel
Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu. Select Body Motion as the
Data Type and select the post processor button.
Step 40: Plot the head acceleration from the rearward crash
Select Joe_Head, the Z-component for the CM_Acceleration characteristic for Hit_Rearwad analysis.
Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of 5. Select
CREATE FULL PLOT to create the data curve.
Step 41: Plot the head acceleration from the forward crash
Select Joe_Head, the Z-component for the CM_Acceleration characteristic for Hit_Forward analysis.
Select CREATE FULL PLOT to create the data curve.
Step 42: Animate iso view for forward hit
Select ANIMATION in the sub-menu. Set the analysis to Hit_Forward and the view to Iso, select Divide
Window and select PLAY.
Step 43: Animate iso view for rearward hit
Set the analysis to Hit_Rearward and the view to Iso and select PLAY.
Step 44: Animate top view for forward hit
Set the analysis to Hit_Forward and the view to top. Select Fix Camera to marker .world.sled.seat1,
select top view and select PLAY.
Step 45: Animate top view for rearward hit
Set the analysis to Hit_Rearward and the view to top. Select Fix Camera to marker .world.sled.seat1,
select top view and select PLAY.
Step 46: Bring up results panel
Select DATA DISPLAY in the sub-menu and Contacts as the Data Type.
Step 47: Plot the head impact forces from the rearward crash
Select Joe_Head_CON_1 and plot the Z-component for the Hit_Rearward analysis using the same filter
settings as above, check "New Plot" and select CREATE FULL PLOT to create the data curve.
Step 48: Plot the head impact forces from the forward crash
Plot the Z-component of the head contact for the Hit_Forward analysis using the same filter settings as
above and select CREATE FULL PLOT to create the data curve.
Step 49: Animate side view for forward hit
Select ANIMATION in the sub-menu. Set the analysis to Hit_Forward and the view to right, select
Divide Window and select PLAY.
Step 50: Animate side view for rearward hit
Set the analysis to Hit_Rearward and the view to Iso and select PLAY.
Step 51: Bring up results panel
Select DATA DISPLAY in the sub-menu and Joints as the Data Type.
Step 52: Plot the neck torque from the rearward crash
Select the sagittal component of torque for the Upper_Neck joint of the Hit_Rearward analysis. Check
"New Plot" and select CREATE FULL PLOT to create the data curve.
Step 53: Plot the neck torque from the forward crash
Select the sagittal component of torque for the Upper_Neck joint of the Hit_Forward analysis .Select

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Car Crash Analysis

CREATE FULL PLOT to create the data curve.


Step 54: Animate side view for forward hit
Select ANIMATION in the sub-menu. Set the analysis to Hit_Forward and the view to right, select
Divide Window and select PLAY.
Step 55: Animate side view for rearward hit
Set the analysis to Hit_Rearward and select PLAY.
Step 56: DEMO COMPLETE

Further
This model was put forth to demonstrate the creation of a passive human model to determine the
physical reactions to a human during a car crash. Also, to demonstrate how to examine the effects of
separate conditions of a crash (i.e., forward vs. rearward collisions).
This model may be refined in many areas including:
Creating a more biofidelic spine model to examine local loadings on the vertebrae and soft tissues
(see Section 4: Non-Standard Model Example - Detailed Cervical Spine).
Creating simulations with varying boundary conditions crash pulse, posture, seatbelt
configurations, airbag forces, etc.
Adding "human reaction" by adding PD controllers to several joints.

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Car%20Crash%20Analysis.html[06-Jun-15 12:50:28 PM]

LifeMOD Tutorials | Rehabilitation Machine

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

Clinical Application - Rehabilitation Machine


With the capability to simulate musculoskeletal human models
joined to mechanical systems, many questions concerning the
effects of the machine on the body may be studied.
This simple example displays the effects of ramping up the
stepping machine resistance torque on the muscle force
magnitudes and timings. The information may be useful to
researchers interested in the bodies response to changing load
patterns.
An inverse dynamics - forward dynamics method is used to first
"train" the muscles to generate the forces necessary for the
human model to use the stepping machine.
Various muscle forces are reported and viewed graphically via
scaled force vectors.
Features of this model include:
Full body point-to-point muscle forces
Inverse-dynamics, forward-dynamics simulations.
Scaled muscle force vector animation
Complete human model - mechanical system simulation.

Sections
Import the Body Model
Creating the Soft Tissues
Merging the Stepping Machine Model
Adding Motion Agents to the Model
Running the Equilibrium Simulation
Running the Inverse-Dynamics Simulation
Preparing the Model for Direct-Dynamics Simulation
Running the Direct-Dynamics Simulation
Running the Parametric Analysis
Interrogating the Results
Further
Acknowledgement

Import the Body Model


In this phase, the SLF file from the model library is used to create the human body model from measurements,
joints from joint data, posture from posture data and motion from recorded motion data. The body segments
are created using the parameters stored in the SLF file.
This file contains information on the subject name, gender, age, height and weight. LifeMOD uses this
information to extract body segment measurements and mass properties from the internal anthropometric
database.
Passive joints are created for the inverse-dynamics phase of the simulation process. For this model passive
joints will be created for the inverse-dynamics simulation. The passive joint consists of a tri-axis hinge joint (3

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

DOF) which includes angulation stops, stiffness and damping torques. This type of joint is used primarily to
stabilize the body during the inverse-dynamics simulation. The parameters are included in the SLF file. For more
information on the format of the SLF file see appendix.

Figure 1: Resulting model created from the data stored in the SLF file.

Step 1: Bring up the import panel


Launch the LifeMOD software and select CREATE NEW MODEL to begin a new modeling session. Select
XCHANGE on the main-menu and IMPORT SLF MODEL FILE on the sub-menu.
Step 2: Import the body model
Select Model Library and Full Body Elliptical Exercise Machine as the Model Library SLF File. At the bottom of the
panel, Body, Joints and Posture should be checked. Select APPLY to create the body segments, joints and
posture.

Creating the Soft Tissues


The next step in the process is to create soft tissues (muscles) on the model. LifeMOD automatically creates a
set of basic muscle groups for the body. Muscles consist of recording elements or trained elements. The
recording elements are simple data collectors which record the contraction history of the muscle during an
activity when the model is moved using external drivers such as motion agents. Trained elements can be either
PID closed-loop force actuators or actuation curve open-loop force actuators acting to drive the skeleton's
motion. Muscle parameters such as physiological cross sectional area (pCSA) and maximum tissue stress are
used to calculate the maximum force potential of the particular muscle. LifeMOD contains a database of pCSA
values for each muscle and is scaled accordingly based on the input body parameters (ht, wt, gender and age).
Further, the force output of the muscle may be scaled from 0% to 200% to change the contributions of each
particular muscle. For information on selecting specific model parameters for this section see Choosing Model
Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Figure 2: Muscle set created on the body. Note that the color of the muscles is "coral" indicating passive training
elements.

Step 3: Bring up the soft tissue panel


Select SOFT TISSUES on the main-menu and CREATE BASE TISSUE SET on the sub-menu.
Step 4: Set the fields for the muscle generation
Select "Prepare Model with Recording Muscle Elements (To be trained in an inverse-dynamics simulation)" to
bring up the panel displayed in figure 5. Set the passive stiffness to 0.4448221615 and passive damping to
1.7512683525E-002, muscle resting load to 0.0455, and set the muscle tone multiplier to 200%.
Step 5: Create the soft tissues on the body
Select APPLY to create the muscle sets on the body.

Merging the Stepping Machine Model


A model for the exercise machine exists in the LifeMOD model library. The model consists of six parts; arms,
steps, disk and frame. Simple revolute joints are used to join all parts. A torque with a ramping function is
added to the disk.

Figure 3: Pre built stepping machine model is merged with the human model.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Figure 4: Human model is connected to the stepping machine via ADAMS bushing elements.

Step 6: Import the stepper machine from the mechanical environment library
Select XCHANGE on the main-menu and IMPORT MECHANICAL ENVIRONMENT on the sub-menu. Select Stepper
Machine as the Model Library SLF File and select APPLY to create the model.
Step 7: Create a bushing elements on the left foot
Create a bushing between the left foot and left pedal using the main toolbox. Select the bushing icon from
contraints in the main toolbox. Select .World.Homer_Left_Foot as the first body and .World.CyclePedalL as the
second body. Right-click on the ground to bring up the navigation panel under the main toolbox. Set the
location to be (133, 311, -413) and select OK. Rename .World.BUSH_lfoot. Modify and set the parameters to
those in figure 6.
OR
Use the following ADAMS/View commands to create a new marker on the foot and a marker on the pedal.
marker create marker=.World.Homer_Left_Foot.pedal location=133, 311, -413 ori=0,0,0 rel=.World
marker create marker=.World.CyclePedalL.Lfoot location=133, 311, -413 ori=0,0,0 rel=.World

Use the following ADAMS/View command to create a bushing connecting the markers.
force create element bushing bushing=.World.BUSH_lfoot i_mark=.World.Homer_Left_Foot.pedal
j_mark=.World.CyclePedalL.Lfoot stiffness=1e4,1e4,1e4 damping=1e3,1e3,1e3 force_preload=0.0,0.0,0.0 tstiffness=1e6,1e6,1e6
tdamping=1e5,1e5,1e5 torque_preload=0.0,0.0,0.0

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine


bush

Figure 5: Parameters for feet bushings

Step 8: Create a bushing elements on the right foot


Create a bushing between the right foot and right pedal using the main toolbox. Select the bushing icon from
contraints in the main toolbox. Select .World.Homer_Right_Foot as the first body and .World.CyclePedalR as the
second body. Right-click on the ground to bring up the navigation panel under the main toolbox. Set the
location to be (-165, 201,-294) and select OK. Rename .World.BUSH_rfoot. Modify and set the parameters to
those in figure 6.
OR
Use the following ADAMS/View commands to create a new marker on the foot and a marker on the pedal.
marker create marker=.World.Homer_Right_Foot.pedal location=-165, 201, -294ori=0,0,0 rel=.World
marker create marker=.World.CyclePedalR.Rfoot location=-165, 201, -294 ori=0,0,0 rel=.World

Use the following ADAMS/View command to create a bushing connecting the markers.
force create element bushing bushing=.World.BUSH_rfoot i_mark=.World.Homer_Right_Foot.pedal
j_mark=.World.CyclePedalR.Rfoot stiffness=1e4,1e4,1e4 damping=1e3,1e3,1e3 force_preload=0.0,0.0,0.0 tstiffness=1e6,1e6,1e6
tdamping=1e5,1e5,1e5 torque_preload=0.0,0.0,0.0

Step 9: Create a bushing elements on the left hand


Create a bushing between the left hand and left handle using the main toolbox. Select the bushing icon from
contraints in the main toolbox. Select .World.Homer_Left_Hand as the first body and .World.CycleHandlelL as
the second body. Right-click on the ground to bring up the navigation panel under the main toolbox. Set the
location to be (253, 1634, 69) and select OK. Rename .World.BUSH_lhand. Modify and set the parameters to
those in figure 6.
OR
Use the following ADAMS/View commands to create a new marker on the hand and a marker on the machine
arm.
marker create marker=.World.Homer_Left_Hand.handle location= 253, 1634, 69 ori=0,0,0 rel=.World
marker create marker=.World.CycleHandleL.Lhand location= 253, 1634, 69 ori=0,0,0 rel=.World

Use the following ADAMS/View command to create a bushing connecting the markers.
force create element bushing bushing=.World.BUSH_lhand i_mark=.World.Homer_Left_Hand.handle
j_mark=.World.CycleHandleL.Lhand stiffness=1e4,1e4,1e4 damping=1e3,1e3,1e3 force_preload=0.0,0.0,0.0
tstiffness=1e6,1e6,1e6 tdamping=1e5,1e5,1e5 torque_preload=0.0,0.0,0.0

Step 10: Create a bushing elements on the right hand


Create a bushing between the right hand and right handle using the main toolbox. Select the bushing icon from
contraints in the main toolbox. Select .World.Homer_Right_Hand as the first body and .World.CycleHandlelR as
the second body. Right-click on the ground to bring up the navigation panel under the main toolbox. Set the

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

location to be (-253, 1574, -27) and select OK. Rename .World.BUSH_rhand. Modify and set the parameters to
those in figure 6.
OR
Use the following ADAMS/View commands to create a new marker on the hand and a marker on the machine
arm.
marker create marker=.World.Homer_Right_Hand.handle location= -253, 1574, -27 ori=0,0,0 rel=.World
marker create marker=.World.CycleHandleR.Rhand location=-253, 1574, -27 ori=0,0,0 rel=.World

Use the following ADAMS/View command to create a bushing connecting the markers.
force create element bushing bushing=.World.BUSH_rhand i_mark=.World.Homer_Right_Hand.handle
j_mark=.World.CycleHandleR.Rhand stiffness=1e4,1e4,1e4 damping=1e3,1e3,1e3 force_preload=0.0,0.0,0.0
tstiffness=1e6,1e6,1e6 tdamping=1e5,1e5,1e5 torque_preload=0.0,0.0,0.0

Adding Motion Agents to the Model


In the inverse simulation phase, the machine will be actually generating the motion and the human model will
be responding to the activity of the machine. The motion agents added at the pelvis and head during this phase
will be used to stabilize the model during the inverse simulation. They will be fixed in space and attached to the
model with springs with small stiffness and damping values.

Figure 6: Motion agents are added to the pelvis and head to stabilize the model during the inverse dynamics
simulation.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Figure 7: Motion Agent creation panel.

Step 11: Bring up the create motion agent panel


Select MOTION on the main-menu and CREATE INDIVIDUAL MOTION AGENT sub-menu.
Step 12: Create motion agent on pelvis
Select .World.Homer_Lower_Torso as the body segment and select Manually Select Location for the agent
positioning method using a location of (-4, 1092, -661) Set the stiffness properties as in Figure 7. Specify all
dof's to be fixed.
Step 13: Create motion agent on head
Select .World.Homer_Head as the body segment and select Manually Select Location for the agent positioning
method using a location of (5, 1757, -568) Set the stiffness properties as in Figure 7. Specify all dof's to be
fixed.

Running the Equilibrium Simulation


To produce smooth simulations for both the inverse-dynamics and forward-dynamics simulations, it is strongly
recommended that an equilibrium simulation be performed to equilibrate the forces in the model. In this case to
bring in balance the human model with the gravity force.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Figure 8: Joints Constraining Model to the Environment.

Step 14: Set the wheel motion driver to 0


Right-click on Motion: Driver and select MODIFY. Set the function to 0. Select OK.
OR
Use the ADAMS/View command to modify the motion driver
constraint modify motion motion_name = .World.Driver function = "0"

Step 15: Bring up the analyze panel


Select ANALYZE on the main-menu and DYNAMICS sub-menu. Select "Default" as the integrator.
Step 16: Run the simulation
Set gravity at -9806.65 in the y direction and specify the end time of the simulation as 1 seconds with 100 time
steps. Select ANALYZE.
Step 17: Display animation
Use the ADAMS/View toolbox to animate the model.
Step 18: Update the model configuration with static results
Select "Update Model Posture with Equilibrium Results" to change the position of the body to match the last
frame in the simulation.

Running the Inverse-Dynamics Simulation


With the human model in the proper position, the model connected to the stepping machine and the motion
agents installed, an inverse-dynamics simulation may be performed. In this phase, the machine will actually
drive the model. This simulation is performed to record the muscle contractile history for the stepping activity.
In the forward-dynamics simulation, to be done later, the muscle contraction histories will be used in the
contractile elements in the muscles to produce forces to allow the model the replicate the motion.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Figure 9: Successive animation frames from the inverse-dynamics simulation

Step 19: Update the motion driver on the wheel


Right-click Motion: Driver and modify the function to -360d*time.
OR
Use the following ADAMS/View command to update the motion driver on the wheel.
constraint modify motion motion_name = .World.Driver function = "-360d*time"

Step 20: Run the dynamics simulation


Check the gravity box and set the y-value to -9806.65. Select "Default" integrator settings. Set the simulation
end time to 3 seconds with 150 time steps. Specify the default integrator settings and select ANALYZE.
Step 21: Display animation
Use the ADAMS/View toolbox to animate the model.

Preparing the Model for Direct Dynamics Simulation


With the muscle contraction history recorded from the inverse-dynamics simulation, it is now used in linear PDServo formulation to produce a force to recreate the motion history. The process entails deactivating the Motion
Agents and updating the muscles. For information on selecting specific model parameters for this section see
Choosing Model Parameters.
The motion agents are removed from the model and a "Tracker Agent" is installed. The tracker agent is a
motion agent located at the center of the pelvis which provides force-stabilization for the forward-dynamics
simulation. During the inverse-dynamics simulation the location and orientation of the frame of the tracker
agent is recorded (it is not generating a force during the inverse-dynamics simulation). The location and
orientation information may then be used to drive the tracker agent in the forward-dynamics simulation. Usually
various degrees-of freedom are specified as "free" to allow for proper dynamical interaction. For this example
the freedom in the direction normal to the floor would be specified as free, to allow for proper ground reaction
force generation between the feet and the steps.
In this example the tracker agent accounts for the fact that the upper body is missing from the model. It
compensates for the forces of the arms and upper body transmitted through the trunk.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Figure 10: Deactivate wheel driver and activate wheel resistance torque for forward dynamics analysis

Figure 11: Panel to install closed loop muscle elements

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Figure 12: Panel to create tracking agent

Step 22: Bring up the tissue training panel


Select SOFT TISSUES from the main-menu and TRAINING from the sub-menu.
Step 23: Install ACTIVE contractile element
Select "Install Trained Closed-loop Contrractile Elements on Muscles".
Step 24: Set fields and update joints
Specify 1e7 as the proportional gain, 1e6 as the integral gain, and 1e4 as the derivative gain. These values
control how well the PID-servo actuators will track the desired contraction at each time step in the analysis.
Note that the individual muscle will not produce a force greater than the physiological cross section area (pCSA)
times the maximum tissue stress. Select APPLY to update the muscles.
Step 25: Bring up the motion agent tracker panel
Select MOTION from the main-menu and CREATE TRACKER AGENT from the sub-menu.
Step 26: Create the tracking agent
Specify the stiffness/damping parameters as in Figure 12. Specify all freedoms as driven except for the Y-Dof.
Select APPLY.
Step 27: Deactivate wheel driver
Select the wheel driver motion (see figure 10) and select (DE)ACTIVATE.

Running the Direct Dynamics Simulation


With the wheel driver deactivated and the resistance torque at the wheel in place, the human model is now
ready to drive the stepper using the muscle forces.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Figure 13: Disable motion agents and run the forward dynamics simulation

Figure 14: Animation frames from the direct-dynamics simulation (machine graphics turned off for clarity). Note that
the color of the muscles is now red indicating active elements.

Step 28: Bring up the analysis panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 29: Disable motion agents and run the forward dynamics simulation
Select "Disable Motion Agents". Run the simulation 3.0 seconds and 300 time steps using the "Default"
integrator settings. Select ANALYZE.
Step 30: Display animation
Use the ADAMS/View toolbox to animate the model.
Step 31: Save the simulation results
On the analyze panel, select Save Analysis and enter Case_1, then OK.
Step 32: Bring up the results panel.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu. Select Soft Tissues as the Data Type.
Step 33: Display right and left leg muscle strip charts
To view a sampling of the forces running through the muscles, select Homer_VasLat_Rtiss_1 as the Soft Tissue,
Tension as the Characteristic and select "Create Strip Chart Measure". Select Homer_Iliac_Ltiss_1 as the Soft
Tissue, Tension as the Characteristic and select "Create Strip Chart Measure".
Step 34: Turn muscle graphics scaling on
Select ANIMATION in the sub-menu. Turn on the global scaling of the muscle graphics by selecting Scale
Joint/Tissue Graphics, Tissues, Scale Globally and the light bulb to scale the muscle graphics.
Step 35: Turn off machine and display animation
For clarity turn off the graphics of the machine using the following Adams/View command:
group att vis=off group=machine

Use the ADAMS/View toolbox to animate the model.Select the right view and play animation.
Step 36: Save the animation curves
On each strip chart, right click on the curve and select "save".

Running the Parametric Analysis


LifeMOD manages the redundant muscle problem in human mechanics by allowing for equal contribution for
each muscle involved in the motion across the joint. This contribution is effected by the maximum force output
of each muscle and can further be effected by the user. This section the user will reduce the contributions of
three muscles to examine the effects load redistribution effects on the other muscles.
The simulation results will show that by reducing the knee extensor forces on the right leg, the hip extensors on
the left leg must increase to compensate.

Figure 15: Right leg muscle properties panel used to reduce the contributions of the Vastus Medialis and the Vastus
Lateralis muscles to 25%.

Step 37: Bring up the tissue edit training panel


Select TABLE EDITOR from the top-right corner. Select MUSCLES as the component.
Step 38: Reduce the contribution of the right leg vastus muscles Muscles
Reduce the tone of the vastus medialis and the vastus lateralis muscles from 1.0 to 0.25 and select APPLY.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Step 39: Bring up the analysis panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 40: Disable motion agents and run the forward dynamics simulation
Select "Disable Motion Agents". Run the simulation 3.0 seconds and 300 time steps using the "Default"
integrator settings. Select ANALYZE.
Step 41: Display animation
Use the ADAMS/View toolbox to animate the model.
Step 42: Save the simulation results
On the analyze panel, select Save Analysis and enter Case_2, then OK.

Interrogating the Results


When the simulation is complete the model may be animated and the results reviewed. Various data may be
presented from the forward-dynamics simulation including:
All muscle force histories
All muscle contraction histories
Hand-machine contact forces
Foot-machine contact forces

Figure 16: Animation Sequence and Data Display from comparing case 1 (before muscle contribution adjustment) to
case 2 (after reducing the GM and Soleus muscles. The simulation results show how that when the right knee extensors
are reduced, the left hip extensors must compensate.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Figure 17: Machine resistance torque

Figure 18: Left foot interface force with the machine for both cases

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Figure 19: Right arm triceps muscle forces case_1 (blue) case_2 (red).

Figure 20: Erectus Spinaes muscle forces for case_1 (blue) and case_2 (red)

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Figure 21: Animation frames displaying scaling muscle force graphics

Step 43: Bring up results panel


Select RESULTS in the main-menu and DATA DISPLAY in the sub-menu. Select Soft Tissues as the Data Type.
Select "Results Window" button to bring up the results processor.
Step 44: Plot the machine resistance
In the bottom plotting window, scroll to the bottom of the requests and select Machine_Torque and the U2
component. Select ADD CURVES.
Step 45: Animate side view
Select ANIMATION from sub-menu. Select right view, divide window. Select PLAY.
Step 46: Compare the left foot/machine contact forces for the two cases.
Use the ADAMS/View tools to generate a plot of the foot forces using the request .World.case_1.Interface_Lfoot
and the U2 component for case 1 and .World.case_1.Interface_Lfoot and the U2 component for case 2.
Step 47: Turn on interface force vectors and animate iso view
Turn on the foot and hand contact forces using the following ADAMS/View commands:
entity attributes entity_name = .World."*hand_force_graphic_1*" visibility = on
entity attributes entity_name = .World."*foot_force_graphic_1*" visibility = on

Step 48: Plot the left leg biceps femoris muscle force - Case_1
Select DATA DISPLAY from sub-menu. Enter Case_1 as the analysis. Select Homer_Bicfem2_Ltiss_1 for the
muscle force and the tension characteristic. Select a low pass butterworth data filter with a cutoff frequency of
5.0 and an order of 1. Check "New Plot" and select CREATE FULL PLOT to create the curve.
Step 49: Plot the left leg biceps femoris muscle force - Case_2
Enter Case_2 as the analysis. Select Homer_Bicfem2_Ltiss_1 for the muscle force and the tension characteristic.
Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 1. Select CREATE FULL
PLOT to create the curve.
Step 50: Turn muscle graphics scaling on
Turn on the global scaling of the muscle graphics by selecting Scale Joint/Tissue Graphics, Tissues, Scale
Globally and the light bulb to scale the muscle graphics.
Step 51: Animate right view
Select right view, divide window and select PLAY.
Step 52: Plot the right arm medial triceps muscle tension - Case_1
Select Homer_tric3_Rtiss_1 for the muscle force and the tension characteristic. Select a low pass butterworth
data filter with a cutoff frequency of 5.0 and an order of 1. Check "New Plot" and select CREATE FULL PLOT to
create the curve.
Step 53: Plot the right arm medial triceps muscle tension - Case_2
Select Homer_tric3_Rtiss_1 for the muscle force and the tension characteristic. Select a low pass butterworth
data filter with a cutoff frequency of 5.0 and an order of 1. Select CREATE FULL PLOT to create the curve.
Step 54: Animate right view
Select right view, divide window and select PLAY.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Rehabilitation Machine

Step 55: Plot the Erectus Spinaes muscle tension - Case_1


Select Homer_ErecSpin1_Rtiss_1 for the muscle force and the tension characteristic. Select a low pass
butterworth data filter with a cutoff frequency of 5.0 and an order of 1. Check New Plot and sselect Create Full
Plot to create the curve.
Step 56: Plot the Erectus Spinaes muscle tension - Case_2
Select Homer_ErecSpin1_Rtiss_1 for the muscle force and the tension characteristic. Select a low pass
butterworth data filter with a cutoff frequency of 5.0 and an order of 1. Check New Plot and select Create Full
Plot to create the curve.
Step 57: Animate rear view
Select back view, divide window and select PLAY.
Step 48: DEMO COMPLETE

Further
This model could be used for:
to determine the controller profile for the machine
to provide human-based loads for structural analysis
to evaluate effects of muscle force weakening

Acknowledgement
A special thanks for furnishing the data for this model to:
Youngaje Song
School of Mechanical & Aerospace Engineering
Seoul National University
www.snu.ac.kr

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Rehabilitation%20Machine.html[06-Jun-15 12:50:32 PM]

LifeMOD Tutorials | Tennis Swing Analysis

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment

Human Performance Application Tennis


One of the most powerful features of the
LifeMOD Biomechanics Modeler is the
capability to create sophisticated human
models which may interface with external
mechanical system such as a tennis racket.
For this example a full body human model is
scaled to a specific tennis player. A tennis
racket is imported from the model library.
Connection forces between the hands of the
model and the grip of the racket are created.
A forward swing complete with ball impact is
simulated using the motion capture data for
the human subject. A forward dynamics
simulation is performed with the joints driving
the activity.
The objective of this exercise is to examine the
sequence of joint torques necessary to complete the swing.
Key skills exercised in this tutorial include:
Creating a model, joints, posture and motion from the model library
Importing a club head and grip from the model library
Modeling the flexible golf club
Training the joints to produce the necessary torques to drive the human model
Creating foot/floor forces
Creating hand/club contact forces

Muscle Relocation
Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

Sections
Generating the Body Segments, Joints, Posture and Motion
Importing the Tennis Racket
Apply an Augment Motion Agent Set to the Tennis Racket
Running the Equilibrium Analysis
Adding the Flexible Golf Club
Creating the Foot-Floor Constraints
Running the Inverse-Dynamics Simulation
Preparing the Model for the Forward-Dynamics Simulation
Importing the Tennis Ball
Running the Forward-Dynamics Simulation
Interrogating the Results

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Further

Generating of the Body Segments, Joints, Posture and Motion


In this phase, the SLF file is used to create the human body model from measurements, joints
from joint data, posture from posture data and motion from recorded motion data. The body
segments are created using the parameters stored in the SLF file.
This file contains information on the subject name, gender, age, height and weight. LifeMOD
uses this information to extract body segment measurements and mass properties from the
internal anthropometric database.
Passive joints are created for the inverse-dynamics phase of the simulation process referred to as
the "training" phase. For this model passive joints will be created for the inverse-dynamics
simulation. The passive joint consists of a tri-axis hinge joint (3 DOF) which includes angulation
stops, stiffness and damping torques. This type of joint is used primarily to stabilize the body
during the inverse-dynamics simulation. They are later removed and replaced with Servo-type
torque generators for the "trained" phase. The parameters of the passive joints are included in
the SLF file
After the joints are created on the model the posture of the model may be adjusted, and the
model moved into place. The posture data and the model location are also included in the SLF
file.
Finally, the motion data (MOCAP) for the tennis swing is imported into the model and used to
drive the motion agents created on the model. There are two components to the motion agent. A
yellow sphere designates the location of the data point and the red sphere designates the marker
location on the human model. The yellow sphere is attached to the red sphere via a bushing
element with properties designated below. During the inverse dynamic simulation, the yellow
sphere will move according to the MOCAP data, while influencing the motion of the red sphere
attached to the body. It is during this analysis that muscle contraction histories will be recorded.
The motion agent stiffness properties are entered in the panel in Figure 1. The motion trajectory
data is included in the SLF file.

Figure 1: Building the human model via SLF file

Step 1: Bring up the import panel


Begin the ADAMS/View modeling session and select the LifeMOD button at the bottom left
portion of the screen. Select Xchange from the main-menu and IMPORT SLF MODEL DATA.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Step 2: Import the Connor body, joints, posture and motion agents
Select "Model Library" on the top of the panel (see figure 1) and select "Full Body Tennis " for the
Model Library SLF File. The Body Data, Model Units, and Motion Data panels will then display the
current information in the SLF file. In the Build section, select Body, Joints, Posture and Motion
Agents. Select Apply to create the model displayed in figure 2.

Importing the Tennis Racket

Figure 2: The resulting model after the tennis racket is imported from the model library before it is
moved into position (left) and after moving it into position (right).

Figure 3: Panel used to import tennis racket

Step 3: Bring up the import mechanical environment panel


Select IMPORT MECHANICAL ENVIRONMENT in the sub-menu.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Step 4: Import the tennis racket


Select Tennis Racket as the Model Library SLF File and select Apply to create the tennis racket.
Step 5: Move the racket into position
Move the racket into position as displayed in the figure above by using the ADAMS/View move
tools or by entering the following ADAMS/View command:
part modify rigid_body name_and_position part_name = .World.Racket &
location = -185, -120, -60 &
orientation = 90,90,0 &
relative_to = .World

Step 6: Attach the racket to the hand


Use the following ADAMS/View commands to create markers and a bushing between the racket
and the right hand of the model:
marker create marker=.World.Racket.connect &
location=-171. -132, 35&
orientation=00.0, 00.0, 00.0
marker create marker=.World.Jenn_Right_Hand.connect &
location=-171. -132, 35&
orientation=00.0, 00.0, 00.0
force create element_like bushing &
bushing_name=.World.Hand_Grip &
i_marker_name=.World.Racket.connect &
j_marker_name=.World.Jenn_Right_Hand.connect &
stiffness=1.0E+008,1.0E+008,1.0E+008 &
damping=1.0E+006,1.0E+006,1.0E+006 &
tstiffness=1.0E+008,1.0E+008,1.0E+008 &
tdamping=1.0E+006,1.0E+006,1.0E+006

Step 7: Create the specific data request


Use the following commands to create a data request for the forces between the right hand and
the grip:
output_control create request request_name = REQ_Hand_Grip_Force &
f5 = "BUSH(.World.hand_grip, 0, 1, 0)"

Apply an Augment Motion Agent Set to the Tennis Racket

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Figure 4: Panel used to import MOCAP data for the tennis racket

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Figure 5: Reading in the augmented marker set for the tennis racket. The top picture displays the
locations of the MOCAP targets when the video capture was performed. The panel below is used to
assign the imported data to the motion agents.

Step 8: Bring up the motion file import panel


Select MOTION in the main-menu and IMPORT MOTION CAPTURE DATA in the sub-menu.
Step 9: Import the tennis racket motion file from the motion library
Select Motion Library and Environment:Tennis Racket Motion as the Motion Library SLF File. Set
the Data Prefix to racket and select Apply to bring in the data.
Step 10: Bring up the motion create base set panel panel
Select CREATE BASE SET from the sub-menu and augmentation Marker Set.
Step 11: Create the augmented motion agent set on the tennis racket
Select AUGMENT MOTION AGENT SET from the sub-menu. Select Enter Motion Agent Locations on
Parts. Enter -167.0, -124.0, 273.0 for part_1, -167.0, -223.0, 588.0 for part_2 and -167.0, -4.0,
588.0 for part_3. These are marker locations on the tennis racket recorded from the the
experiment in global space. Enter 1e6 for the translational stiffness and 1e4 for the translational
damping. Select the data prefix of racket, check global and select Apply to create the three
motion agents on the racket.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Running the Equilibrium Analysis


In order to fit the model to the data positions, an equilibrium analysis must be performed. This is
a dynamics analysis which holds the positions of the data-driven motion agents (yellow balls)
fixed, while finding the minimum energy configuration in the springs of the motion agents. The
motion agents with the higher weights will have more influence on the model and the initial
configuration.

Figure 6: Model before equilibrium (left) and after (right).

Step 12: Bring up analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 13: Run the equilibrium simulation
Specify the end time of the simulation as 1 second with 100 time steps using the robust
integrator settings. Select ANALYZE.
Step 14: Update the model configuration with static results
Select UPDATE MODEL POSTURE WITH EQUILIBRIUM RESULTS to change the position of the body
to match the last frame in the simulation.
Step 15: Align the body markers with data
After the the configuration is updated there will still be a discrepancy between the yellow spheres
and the red spheres due to differences between the body geometry and the test subject and
differences between the positioning of the markers in the model and the subject. Select
SYNCHRONIZE BODY MARKER LOCATIONS WITH DATA LOCATIONS button.

Creating the Foot-Floor Contacts


The contact ellipsoids automatically created at the time of segment generation, will now be used
to create the foot-floor contact elements. For information on selecting specific model parameters

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

for this section see Choosing Model Parameters.

Figure 7: Panel used to create the ellipsoid-plane contact force formulations between the contact
ellipsoids of the feet and the ground.

Step 16: Create the ground contact marker


Create a marker to designate the location and orientation of the ground (z-axis pointing normal to
surface) using the following ADAMS/View commands.
marker cre marker=.World.ground.flr loc= 264.0, 43.0, -744.0 ori= 180,90,90 rel= .World

Step 17: Bring up the contact panel


Select CONTACTS on the main-menu and CREATE BASE SET on the sub-menu.
Step 18: Create the contact forces between the feet and the floor
Check "Create Contact Surface Graphics", set thickness to 10, X-length to 2000 and Y-length to
2000. Check force vectors to create scaled force graphics during animation and check simple so as
to create only two vectors instead of one per contact element on the feet. Select
Right_Foot_Multiple and Left_Foot_Multipe and select Apply to create the contact elements.

Running the Inverse-Dynamics Simulation


With the model in the proper position, the tennis racket imported and attached to the hands of
the model, the motion capture data read in for both the body and the racket, and the motion
agents installed, an inverse-dynamics or "training" simulation may be performed. This simulation
is performed to record the joint angulation histories for the tennis stroke. When the joints are
fully trained to reproduce the motion, a subsequent forward-dynamics simulation will be
performed. The trained joints will be using pd-servo controllers based on the recorded angulations
from the training phase.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Figure 8: Successive animation frames from the inverse-dynamics simulation

Figure 9: Analysis panel set up to run the inverse dynamics simulation

Step 19: Bring up the analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 20: Adjust the gravity settings and run the dynamics simulation
Check the gravity box and set the y-value to -9806.65. Select "Robust" integrator settings. Set
the simulation end time to 2 seconds with 200 times steps. Specify the default integrator settings
and select ANALYZE.
Step 21: Display animation
Use the ADAMS/View toolbox to animate the model.

Preparing the Model for the Forward-Dynamics Simulation


After the inverse-dynamics simulation is performed the joint angulation histories are now recorded
for each joint. In this section, trained elements or PD-Servo controllers are exchanged for the
passive learning elements on the joints.
The motion agents are removed from the model and a "Tracker Agent" is installed. The tracker
agent is a motion agent located at the center of the pelvis which provides force-stabilization for
the forward-dynamics simulation. During the inverse-dynamics simulation the location and
orientation of the frame of the tracker agent is recorded (it is not generating a force during the
inverse-dynamics simulation). The location and orientation information may then be used to drive
file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

the tracker agent in the forward-dynamics simulation. Usually various degrees-of freedom are
specified as "free" to allow for proper dynamical interaction. For this example the freedom in the
direction normal to the floor would be specified as free, to allow for proper ground reaction force
generation between the feet and the steps. For information on selecting specific model parameters
for this section see Choosing Model Parameters.

Figure 10: Panel set to create the tracker agent.

Step 22: Bring up the joint training panel


Select JOINTS from the main-menu and TRAINING from the sub-menu.
Step 23: Install Trained DRIVER rotational joint elements
Select "Install Trained DRIVER rotational joint elements". Enter 1e5 and 1e3 for the servo
proportional and derivative gain respectively. Select APPLY to update the joints.
Step 24: Bring up the motion agent tracker panel
Select MOTION from the main-menu and CREATE TRACKER AGENT from the sub-menu.
Step 25: Create the tracking agent
Specify the stiffness/damping parameters as in Figure 9. Specify the translational freedoms as
free and the rotational freedoms as driven. Select APPLY.
Step 26: Create the specific data requests
Create the data request to output the stem-cup forces and the hand/grip forces generated during
the golfing simulation using the following ADAMS/View command:
output_control create request request_name = REQ_Hand_Grip_Force &
f5 = "BUSH(.World.hand_grip, 0, 5, 0)"

Importing the Tennis Ball

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Figure 11: The resulting model after the tennis ball is imported from the model library and moved into
position.

Figure 12: Panel used to import tennis ball

Step 27: Bring up the Import Mechanical Environment panel


Select XCHANGE from the main-menu and select IMPORT MECHANICAL ENVIRONMENT in the submenu. Select Mechanical Environment Library
Step 28: Import the tennis ball from the library
Select Tennis Ball as the Model Library SLF File and select Apply to create the tennis racket.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Step 29: Move the tennis ball into position


Move the tennis ball into position as displayed in the figure above by using the ADAMS/View move
tools or by entering the following ADAMS/View command:
part modify rigid_body name_and_position part_name = .World.Ball &
location = -100.0, 1806.0, 172.0 &
orientation = 0,0,0 &
relative_to = .World

Step 30: Provide initial velocity conditions for the ball


Using the following ADAMS/View command to apply initial velocity conditions to the ball:
part modify rigid initial_velocity part= .World.Ball vy = -1400.0

Figure 13: The panel and parameters used to create the ball to floor contact forces.

Figure 14: The panel and parameters used to create the ball to racket contact forces.

Step 31: Bring up the single contact panel


Select CONTACTS on the main-menu and CREATE SINGLE on the sub-menu.
Step 32: Create the contact forces between the ball and the floor
Enter the parameters listed in Figure 13 to create the solid-solid contact between the
.world.ball.ellipsoid and the .world.ground.srffloor_4 geometries.
Step 33: Create the contact forces between the ball and the racket
Enter the parameters listed in Figure 14 to create the solid-solid contact between the

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

.world.ball.ellipsoid and the .world.racket.plate geometries.

Running the Forward-Dynamics Simulation


With the tracker agent place, and the contractile elements in the muscles of the lower body to
include the motion splines from the inverse-dynamics simulation, the PD-Servo controllers
controlling the torque joints of the body, the forward-dynamics simulation is ready to be
performed.

Figure 15: Panel set to run the forward dynamics simulation

Step 34: Bring up the analysis panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 35: Disable the motion agents and run the forward dynamics simulation
Run the simulation 2 seconds and 200 time steps using the "Default" integrator settings. Be sure
to disable the motion agents. Select ANALYZE.

Interrogating the Results


When the simulation is complete the model may be animated and the results reviewed.
Various data may be presented from the forward-dynamics simulation including:
Foot-floor contact forces
Body kinematics
Joint torques
hand-club forces
shaft strain
Step 36: Display animation
Use the ADAMS/View toolbox to animate the model.
file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Step 37: Display simulation with skin/skel model.


Select Skin as the external representation and Skeleton as the internal representation in the
LifeMOD Display Toolbox panel. Use the ADAMS/View toolbox to animate the model.
Step 38: Turn on stick model with joint bubbles
In order to view the torques in the model clearly, the graphics are reduced to the stick model
using the display option at the bottom of the main LifeMOD panel. Use the Toggle Icons button
to toggle the joint bubble graphics.
Step 39: Bring up results panel
Select RESULTS in the main-menu and ANIMATION in the sub-menu.
Step 40: Turn on the joint torque scaling
Turn on the local scaling of the joint graphics by selecting Scale Joint/Tissue Graphics, Joints,
Scale Globally and the light bulb to scale the muscle graphics. Turn on the joint graphics using
the LifeMOD Display Toolbox and select Joints-Graphics and on.
Step 41: Animate the stick model
Use the ADAMS/View toolbox to animate the model. Observe the scaling joint torque bubbles.
Step 42: Display the grip reaction forces
Turn on the scaling force graphics acting at the bushing connections between the hands and the
club grip using the following ADAMS commands:
mdi graphic_force object=.World.hand_Grip type=2
default force force_scale=300 torque_scale=.00

Use the ADAMS/View toolbox to animate the model. Observe the scaling force graphics at the
grip.

Figure 16: Graph plotting of thoracic and lumbar twist torques

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Figure 17: Panel set up to plot spinal twist torques

Step 43: Bring up the post processor window


Select DATA DISPLAY in the sub-menu and Joints as the Data Type. Select "Results Window" on
the results panel to bring up the ADAMS results post processor window.
Step 44: Plot the thoracic twist torques
Select Jenn_thoracic for the Joint, Torque for the characteristic Transverse for the component.
Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 5. Check
New Plot and select PLOT CURVE.
Step 45: Plot the lumbar twist torques
Select Jenn_lumbar for the Joint, Torque for the characteristic Transverse for the component.
Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 5. Check
New Plot and select Create Full Plot.
Step 46: Animate front view
Select ANIMATION in the sub-menu. Select front view, divide window and select PLAY.
Step 47: Animate right view
Select Skin as the external representation and Skeleton as the internal representation in the
LifeMOD Display Toolbox. Select left view, divide window and select PLAY.
Step 48: Turn on stick view and joint scaling graphics
In order to view the torques in the model clearly, set the external representation to none and the
internal representation to Stick and toggle the Joint Graphics on using the LifeMOD Display
Toolbox. Turn on the local scaling of the joint graphics by selecting Scale Joint/Tissue Graphics,
Joints, Scale Globally and the light bulb to scale the muscle graphics. Select left view, divide
window and select PLAY.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Figure 18: Graph plotting arm sagittal plane torques

Step 49: Plot the left shoulder frontal plane torques


Select Data Display in the sub-menu. Select Jenn_Left_Shoulder for the Joint, Torque for the
characteristic Frontal for the component. Select a low pass butterworth data filter with a cutoff
frequency of 5.0 and an order of 5. Select Create Full Plot.
Step 50: Plot the right shoulder frontal plane torques
Select Jenn_Right_Shoulder for the Joint, Torque for the characteristic Frontal for the component.
Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 5. Select
Create Full Plot.
Step 51: Plot the left wrist frontal plane torques
Select Jenn_Left_Wrist for the Joint, Torque for the characteristic Frontal for the component.
Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 5. Select
PLOT CURVE.
Step 52: Plot the right wrist frontal plane torques
Select Jenn_Right_Wrist for the Joint, Torque for the characteristic Frontal for the component.
Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 5. Select
Create Full Plot.
Step 53: Animate left view
Select ANIMATION from the sub-menu. Select left view, divide window and select PLAY.
Step 54: Plot the grip torques
Turn off joint graphics using the LifeMOD Display Toolbox. Use the ADAMS/View plotting tools to
plot the U1 component of the REQ_Hand_Grip_Force request

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Tennis Swing Analysis

Figure 19: Animation with trail frames of the forward dynamics simulation

Step 55: Animate front view


Select front view, divide window and select PLAY.
Step 56: Animate front view with trail frames
Select trail frames, select trace marker of .world.ball.cm, select front view and select PLAY.
Step 57: Animate left view with train frames.
Select trail frames, select trace marker of .world.ball.cm, select left view and select PLAY.
Step 58: DEMO COMPLETE

Further
This model could be used to explore may aspects of the golf swing including:
club strain and loading
wear prediction
effects of changing the club parameters on the joint torques
ground reaction forces

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Tennis%20Swing%20Analysis.html[06-Jun-15 12:50:36 PM]

LifeMOD Tutorials | Total Hip Replacement

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

Orthopedics Application - Total Hip Replacement


One of the most powerful features of the LifeMOD
Biomechanics Modeler is the capability to create
sophisticated human models which may contain
mechanical components such as joint replacements,
spinal fixation devices, braces, etc.
A partial human model (lower body) is created in this
example and augmented with a total hip replacement
at the right hip. The hip replacement consists of the
geometry files (shell files) for the hip stem and the
acetabular liner. These files are imported into the
human model and secured to the bones using
bushing force elements.
A walk-sit-walk simulation is performed using motion
capture data. The objective of this exercise is to determine if the hip stem impinges on the
acetabular liner, and to determine the forces at the bone/component interfaces for this common
everyday activity.
A combination inverse-forward dynamics simulation will be performed with full foot contact.
Key skills exercised in this tutorial include:
Partial Body Model
Import and attach hip replacement mechanism
Ground reaction force calculation
Inverse-dynamics, forward-dynamics simulations

Sections
Generating of the Body Segments Joints, and Motion Data
Running the Equilibrium Analysis
Creating Passive Muscle Forces
Adding the Hip Replacement Device
Creating the Foot Contact Forces
Running the Inverse-Dynamics Simulation
Preparing the Model for the Forward-Dynamics Simulation
Running the Forward-Dynamics Simulation
Interrogating the Results
Further
Acknowledgement

Generating of the Body Segments Joints, and Motion Data

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

In this phase, the SLF file is used to create the human body model from measurements, joints
from joint data, posture from posture data and motion from recorded motion data. The body
segments are created using the parameters stored in the SLF file.
This file contains information on the subject name, gender, age, height and weight. LifeMOD
uses this information to extract body segment measurements and mass properties from the
internal anthropometric database.
Passive joints are created for the inverse-dynamics phase of the simulation process. For this
model passive joints will be created for the inverse-dynamics simulation. The passive joint
consists of a tri-axis hinge joint (3 DOF) which includes angulation stops, stiffness and damping
torques. This type of joint is used primarily to stabilize the body during the inverse-dynamics
simulation. The parameters are included in the SLF file
Finally, the motion data (MOCAP) for the walk-sit-walk activity is imported into the model and
used to drive the motion agents created on the model. There are two components to the motion
agent. A yellow sphere designates the location of the data point and the red sphere designates
the marker location on the human model. The yellow sphere is attached to the red sphere via a
bushing element with properties designated below. During the inverse dynamic simulation, the
yellow sphere will move according to the MOCAP data, while influencing the motion of the red
sphere attached to the body. It is during this analysis that muscle contraction histories will be
recorded. The motion agent stiffness properties are entered in the panel in Figure 1. The motion
trajectory data is included in the SLF file.

Figure 1: Exchange panel to import body and joint parameters and motion data

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Figure 2: The resulting model and motion data installed.

Step 1: Bring up import panel


Launch the LifeMOD software and select CREATE NEW MODEL to begin a new modeling session.
Select Xchange from the main-menu and IMPORT SLF MODEL FILE from the sub-menu. Select
Model Library and Lower Body Walk-Sit-Walk as the Model Library SLF File.
Step 2: Import the body, joints, posture and motion
Check Body, Joints and Motion Agents as the data to be built and select APPLY to build the lower
body with joints and motion agents as displayed in figure 2.

Running the Equilibrium Analysis


In order to fit the model to the data positions, an equilibrium analysis must be performed. This is
a dynamics analysis which holds the positions of the data-driven motion agents (yellow balls)
fixed, while finding the minimum energy configuration in the springs of the motion agents. The
motion agents with the higher weights will have more influence on the model and the initial

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

configuration.

Figure 3: Model moved into data cloud (left), after equilibrium analysis (center), after synchronization
(right).

Step 3: Bring up analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 4: Run the equilibrium simulation
Specify the end time of the simulation as 1 second with 100 time steps, check "Freeze Motion
Agents for Equilbrium Analysis:, and set integrator settings to "Fast". Select ANALYZE.
Step 5: Update the model configuration with static results
Select UPDATE MODEL POSTURE WITH EQUILIBRIUM RESULTS to change the position of the body
to match the last frame in the simulation.
Step 6: Align the body markers with data
After the the configuration is updated there will still be a discrepancy between the yellow spheres
and the red spheres due to differences between the body geometry and the test subject and
differences between the positioning of the markers in the model and the subject. Select
SYNCHRONIZE BODY MARKER LOCATIONS WITH DATA LOCATIONS button.

Creating Passive Muscle Forces


The next step in the process is to create soft tissues (muscles) on the model. LifeMOD
automatically creates a set of basic muscle groups for the body. Muscles consist of recording
elements or trained elements. The recording elements are simple data collectors which record the
contraction history of the muscle during an activity when the model is moved using external
drivers such as motion agents. Trained elements can be either PID closed-loop force actuators or
actuation curve open-loop force actuators acting to drive the skeleton's motion. Muscle
parameters such as physiological cross sectional area (pCSA) and maximum tissue stress are used
to calculate the maximum force potential of the particular muscle. LifeMOD contains a database
of pCSA values for each muscle and is scaled accordingly based on the input body parameters (ht,
wt, gender and age). Further, the force output of the muscle may be scaled from 0% to 200% to
change the contributions of each particular muscle. For information on selecting specific model
parameters for this section see Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Figure 4: Muscle groups created on the model. Note that the color of the muscles is "coral" indicating
passive recording elements.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Figure 5: Panel set up to create the left leg muscle groups

Step 7: Bring up the create muscle-tendon panel


Select SOFT TISSUES on the main-menu and CREATE BASE TISSUE SET on the sub-menu.
Step 8: Set the fields for the muscle generation
Select "Prepare Model with Recording Muscle Elements (To be trained in an inverse-dynamics
simulation)" to bring up the panel displayed in figure 5. Set the passive stiffness to
0.4448221615, passive damping to 1.7512683525E-002, and muscle resting load to 0. Set the
muscle tone multiplier to be 100%, the tissue stress to be 259 lbs/in2 and the muscle resting
load to be 0.0 lbs.
Step 9: Create the muscles
Check both right and left legs and select APPLY.

Adding the Hip Replacement Device


With the model in the proper position and posture, the joints of the right hip will be deleted and
replaced with the total hip replacement. Geometry files of the hip system are imported as shell
files. Geometry may also be imported via IGES, Step, Parasolids or any format currently
supported by MSC.Adams.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Figure 6: Installing the cup and stem components

Figure 7: Panel set up to create the acetabular hip stem

Step 11: Display right hip joint


Move the model into position and right-click on Diego_Lower_Torso and select APPEARENCE. Slide
the trasparency bar to 95 and select OK. If the trasparency is set to 100 the part will no longer
be able to be selected on the screen and will have to be turned back on using the database

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

navigator. Turn of the muscle graphics using the Display Toolbox.


Step 12: Delete the right hip joint
Select JOINTS on the main-menu and DELETE on the sub-menu. Input Diego_Right_Hip and
select APPLY.
Step 13: Bring up the single part creation panel
Select SEGMENTS on the main-menu and CREATE INDIVIDUAL SEGMENT on the sub-menu.
Step 14: Create the acetabular cup part
Set the segment name to "Cup" with a CM location of (-825, 851, 202) and orientation of (358,
46, 5) Select "Specify Mass Properties" with a mass of .18, Ixx=8.0, Iyy=8.0 and Izz=8.0. Select
"Import Shell Geometry" and Model Library. Select "THR Acetabular Cup" as the model library and
select APPLY to create the part. Right-click the cup and select APPEARENCE and change the color
of the cup to red.
Step 15: Create a fixation force between the cup and the hip bone
With the cup part in place, it must now be secured to the pelvis bone using a force. The type of
force entity chosen is the basic MSC.Adams bushing force, or a 6 component spring force acting
at a common location between the pelvis bone and the cup part. To create the bushing select the
from the main toolbox. Select .World.Diego_Cup as the first body and
bushing icon
.World.Diego_Lower_Torso as the second body. Select Diego_Cup.cm as the location. (Make sure
the icon toggle is on) See figure 9 for parameters. Rename .World.Diego_Lower_Torso.cup.
OR
Create the bushing using the following ADAMS/View commands:
marker cre marker=.World.Diego_Lower_Torso.cup loc=(loc_relative_to({0,0,0},.World.Diego_cup.cm))
ori=(ori_relative_to({0,0,0},.World.Diego_cup.cm))
force create element bushing bushing=.World.cup_pelvis i_mark=.World.Diego_cup.cm
j_mark=.World.Diego_Lower_Torso.cup damping = 1e8, 1e8, 1e8 stiffness = 1e9, 1e9, 1e9 force_preload = 0.0,
0.0, 0.0 tdamping = 1e8, 1e8, 1e8 & tstiffness = 1e9, 1e9, 1e9 torque_preload = 0.0, 0.0, 0.0

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Figure 8: Bushing between hip and lower torso

Step 16: Display the femur bone


Right-click Diego_Lower_Torso and select APPEARENCE. Change the transpareny to 0. Select OK.
Change the transparency of Diego_Right_Upper_Leg to 95.
Step 17: Bring up the single part creation panel
Select SEGMENTS in the main-menu and CREATE INDIVIDUAL SEGMENT in the sub-menu.
Step 18: Import the geometry and create the hip stem part
Set the segment name to "Stem" with a CM location of (-840, 811, 261) and orientation of (191,
82, 341) Select "Specify Mass Properties" with a mass of .18, Ixx=2086.812377293,
Iyy=2086.812377293 and Izz=21.1572858697. Select "Import Shell Geometry" and select "THR
Hip Stem". Specify geometry type as "other" and select APPLY. Set color to blue.
Step 19: Create a joint between the stem and the femur bone
With the stem part in place, it must now be secured to the pelvis bone using a bushing force.
Select the busing icon from the main menu. Select .World.Diego_Stem as the first body and
.World.Diego_Right_Upper_Leg as the second body. Select Diego_Stem.cm as the location. See
figure 9 for parameters. Rename .World.Diego_Right_Upper_Leg.stem.
OR
Create the bushing enter the following ADAMS/View commands:
marker cre ma=.World.Diego_Right_Upper_Leg.stem loc=(loc_relative_to({0,0,0},.World.Diego_stem.cm))
ori=(ori_relative_to({0,0,0},.World.Diego_stem.cm))
force create element bushing bushing=.World.stem_femur i_mark=.World.Diego_stem.cm
j_mark=.World.Diego_Right_Upper_Leg.stem damping = 1e8, 1e8, 1e8 stiffness = 1e9, 1e9, 1e9 force_preload
= 0.0, 0.0, 0.0 tdamping = 1e8, 1e8, 1e8 tstiffness = 1e9, 1e9, 1e9 torque_preload = 0.0, 0.0, 0.0

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Step 20: Create a bushing force between the stem ball and the cup
A bushing force is also used to simulate the interaction between the stem ball and the cup. Select
the bushing icon from the Main Toolbox, select .World.Diego_Cup as the first body and
.World.Diego_Stem as the second body. Select .World.Diego_Cup.cm as the location. Rename
.World.Diego_Stem_cup. Set the parameters to figure 10. Select move icon in the Modify panel.
Move -8 units in the Y direction relative to .World.Diego_Cup.cm. See figure 11. Select the marker
on .World.Diego_Cup created by the bushing and rename .World.Diego_Cup.Stem for future
reference. (To verify what marker to rename, right-click on the bushing and select Info. The
marker will be the I Marker. It will also be the higher of the two numbers under
.World.Diego_Cup.)
OR
Create the bushing enter the following ADAMS/View commands:
marker create marker= .World.Diego_Cup.Stem location = (loc_relative_to({0,0,-8},.world.Diego_cup.cm))
orientation = 0.0, 0.0, 0.0
marker create marker= .World.Diego_Stem.Cup location = (loc_relative_to({0,0,-8},.world.Diego_cup.cm))
orientation = 0.0, 0.0, 0.0
force create element bushing bushing= .World.stem_cup damping = 1e7, 1e7, 1e7 stiffness = 1e8, 1e8, 1e8
force_preload = 0.0, 0.0, 0.0 tdamping = 100,100,100 tstiffness = 0,0,0 torque_preload = 0.0, 0.0, 0.0
i_marker_name = .World.Diego_Cup.Stem j_marker_name = .World.Diego_Stem.cup

Figure 9: Bushing between stem and cup components

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Creating the Foot Contact Forces


Contact forces must be created at the foot to generate a reaction between the feet floor and the
pelvis and the stool. When the model segments were created, contact ellipsoids were scaled and
positioned at the metatarsal heads and calcaneous. These ellipsoids will be used for the foot-floor
contact.

Figure 10: Foot contact ellipsoids floor and the stool.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Figure 11: Panel set to create the foot contact forces for the floor

Figure 12: Panel set to create the pelvis-stool contact forces

Step 21: Bring up the contact create panel


Select CONTACTS from the main-menu and CREATE BASE CONTACT SET from the sub-menu.
Step 22: Create the ground contact markers
Create marker to represent the location of the contact surface of the floor. The z-axes are
oriented normal to the contact surface. Create a marker using the main toolbox and modify its
location to (0, 5, 0) and orientation to (0, -90, 0) Rename .World.ground.CON
OR

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Create the marker using the following ADAMS/View command:


marker cre marker= .World.ground.CON location = 0,5,0 orientation = 180.0, 90.0, 180.0 relative_to =
.World

Step 23: Create the foot/floor contact forces


Specify ellipsoid contact force. Specify the Contact Surface Marker as .World.ground.CON. Check
the "Create Contact Surface Graphics Plane" box and set the depth to 10.0 and the surface X
length to 3000 and the Y length to 3000. Check the "Force Vectors" box to create scaled force
vectors to be displayed with the animation, and select "Single" to combine the force vectors of
the feet to one location. Set the stiffness/damping parameters of the contact force to those in
Figure 10. Check the Right_Foot_Multiple and the Left_Foot_Multiple boxes. Select APPLY to create
the contact forces between the feet and the floor. (Note: Mu Dynamic and Stiction Transition
Velocity can only be modified under Solid-Solid contact)
Step 24: Create the stool (chair)
Create the stool by creating simple geometry using the main toolbox. First, create a marker at (0,
500.7, 0) with an orientation of (0, -90, 0). Rename .World.CONb. Select the cylinder icon
from the rigid bodies section in the Main Toolbox. In the main toolbox, set the length to 450 and
radius to 22, be sure to check the boxes. Select .World.ground.CON as the first marker and
.World.ground.CONb as the second. Change color to yellow. Select the cylinder icon a second
time, setting the length to 62 and radius to 220. Select .World.ground.CONb as the first marker
and .World.CON as the second. Change color to yellow.
Fix the chair to the ground by selecting the fixed joint icon from the main toolbox. Select the leg
of the chair as the first object and the ground as the second. Select .World.ground.CON as the
location. Create another joint to fix the seat of the chair to the leg. Select the seat as the first
object and the leg as the second. Select .World.ground.CONb as the location.
OR
Create a marker and simple graphics to designate the location of the stool using the following
ADAMS/View commands:
marker create marker=.world.ground.CONb location=0,500.7,0 orientation=0,-90,0
geometry cre shape cylinder cylinder_name = .World.ground.stoola center_marker = .World.ground.CON
angle_extent = 360.0 length = 450 radius = 22.0 side_count_for_body = 20 segment_count_for_ends = 20
geometry cre shape cylinder cylinder_name = .World.ground.stoolb center_marker = .World.ground.CONb
angle_extent = 360.0 length = -62 radius = 220.0 side_count_for_body = 20 segment_count_for_ends = 20

Step 25: Create pelvis-stool contact forces


Select CONTACTS from the main-menu and CREATE BASE CONTACT SET from the sub-menu.
Specify the Contact Surface Marker as .World.ground.CONb. Uncheck the "Create Contact Surface
Graphics" box. Check the "Force Vectors" box to create scaled force vectors to be displayed with
the animation, and select lower_torso. Set the stiffness/damping parameters of the contact force
to those in Figure 11.
Step 26: Create the specific data requests
Create the data request to output the stem-cup forces generated during the simulation, and the
orientation of the stem by tracking the location of a point imbedded in the stem neck with respect
to a coordinate system on the cup. Select Build-Measure-REQUEST-New from the taskbar. Name
REQ_Stem_Cup_Force. Select "Define Using Function Expression" and enter
BUSH(.World.Diego_Stem_Cup, 0, 1, 0) in F1. Select OK.
Create a reference marker .World.Diego_Stem.Ref. Select Modify, input (0, 0, 50) as the location
relative to .World.Diego_Cup.Stem. Create another request named REQ_Stem_Cup_Orientation.
Set parameters to figure 12. Select OK.
OR
Create the requests using the following ADAMS/View commands:

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement


output_control create request request_name = REQ_Stem_Cup_Force f1 = "BUSH(.World.Diego_Stem_Cup,
0, 1, 0)"
marker create marker=.World.Diego_Stem.Ref loc=(loc_relative_to({0,0,50},.World.Diego_Cup.stem))
output_control create request request = REQ_Stem_Cup_Orientation output_type = displacement
i_marker_name = .World.Diego_Stem.Ref j_marker_name = .World.Diego_Cup.Stem r_marker_name =
.World.Diego_Cup.Stem

Figure 13: Request for stem and cup orientation

Running the Inverse-Dynamics Simulation


With the model in the proper position, the hip components implanted in the model, the motion
capture data read in, and the motion agents installed, an inverse-dynamics simulation may be
performed. This simulation is performed to record the muscle contractile history for the stairstepping activity. In the forward-dynamics simulation, to be done later, the muscle contraction
histories will be used in the contractile elements in the muscles to produce forces to allow the
model the replicate the motion.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Figure 14: Successive animation frames from the inverse-dynamics simulation

Step 27: Bring up the analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 28: Run the dynamics simulation
Check the gravity box and set the y-value to -9806.65. Select "Fast" integrator settings. Set the
simulation end time to 7 seconds with 350 times steps. Select ANALYZE.
Step 29: Display animation
Using the Display Toolbox, change the transparency of the segments to 70. Use the ADAMS/View
toolbox to animate the model.

Preparing the Model for the Forward-Dynamics Simulation


With the muscle contraction history recorded from the inverse-dynamics simulation, it is now used
in linear PID-Servo formulation to produce a force to recreate the motion history. The process
entails deactivating the Motion Agents and updating the muscles. For information on selecting
specific model parameters for this section see Choosing Model Parameters.
The motion agents are removed from the model and a "Tracker Agent" is installed. The tracker
agent is a motion agent located at the center of the pelvis which provides force-stabilization for
the forward-dynamics simulation. During the inverse-dynamics simulation the location and
orientation of the frame of the tracker agent is recorded (it is not generating a force during the
inverse-dynamics simulation). The location and orientation information may then be used to drive
the tracker agent in the forward-dynamics simulation. Usually various degrees-of freedom are
specified as "free" to allow for proper dynamical interaction. For this example the freedom in the
direction normal to the floor would be specified as free, to allow for proper ground reaction force
generation between the feet and the steps.
In this example the tracker agent accounts for the fact that the upper body is missing from the
model. It compensates for the forces of the arms and upper body transmitted through the trunk.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Figure 15: Tracker agent at the pelvis center Note that the color of the muscles is now red indicating
active elements.

Figure 16: Panel set to create the tracker agent.

Step 30: Bring up the tissue training panel


Select SOFT TISSUES from the main-menu and TRAINING from the sub-menu.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Step 31: Install ACTIVE contractile element


Select "Install Trained Closed-loop Contractile Elements on Muscles".
Step 32: Set fields and update joints
Specify 1e7 as the proportional gain, 1e4 as the integral gain, and 1e5 as the derivative gain.
These values control how well the PID-servo actuators will track the desired contraction at each
time step in the analysis. Note that the individual muscle will not produce a force greater than the
physiological cross section area (pCSA) times the maximum tissue stress. Select APPLY to update
the muscles.
Step 33: Bring up the motion agent tracker panel
Select MOTION from the main-menu and CREATE TRACKER AGENT from the sub-menu.
Step 34: Create the tracking agent
Specify the stiffness/damping parameters as in Figure 14. Specify all freedoms as driven. Select
APPLY.

Running the Forward-Dynamics Simulation


With the contact forces created, the tracker agent place, and the contractile elements in the
muscles to include the motion splines from the inverse-dynamics simulation, the forwarddynamics simulation is ready to be performed.

Figure 17: Panel set to run the forward-dynamics simulation

Step 35: Bring up the analysis panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 36: Run the forward dynamics simulation
Run the simulation 7 seconds and 350 time steps using the "Contacts Optimized" integrator
settings. Select ANALYZE. Select "Disable Motion Agents".

Interrogating the Results


When the simulation is complete the model may be animated and the results reviewed. Various
data may be presented from the forward-dynamics simulation including:

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Ball-cup interaction forces


Foot-floor contact forces
Stem motion
Muscle forces
Stem-bone forces
Cup-bone forces

Figure 18: Data for the foot-floor contact forces, pelvis-stool forces

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Figure 19: Data for the ball - cup contact force

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Figure 20: Data for the motion of a point embedded in the neck of the hip stem with respect to a
coordinate system on the cup

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Figure 21: Data for the iliacus muscle force (hip flexor) for right hip (with implant) and left hip (no
implant)

Figure 22: Results panel set up to plot the right foot ground reaction forces.

Step 37: Display animation

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Use the ADAMS/View toolbox to animate the model.


Step 38: Display simulation with skin/skel model
Set the display to Skel_Skin and run the animation.
Step 39: Display simulation close up view
Use the ADAMS/View toolbox to zoom in on the hip. In the animation panel set the base part to
pelvis and run the animation.
Step 40: Display simulation close up side view
Use the ADAMS/View toolbox to zoom in on the hip. In the animation panel set the base part to
pelvis and run the animation.
Step 41: Bring up results panel
Select RESULTS in the main-menu and DATA DISPLAY in the sub-menu. Select the postprocessor
button to bring the plot window. Select Contacts as the Data Type.
Step 42: Plot the right foot ground reaction force
Select Diego_GRX_Rfoot_1 for the contact force and the magnitude component. Select a low pass
butterworth data filter with a cutoff frequency of 5.0 and an order of 5. Select CREATE FULL
PLOT.
Step 43: Plot the left foot ground reaction force
Select Diego_GRX_Lfoot_1 for the contact force and the magnitude component. Select CREATE
FULL PLOT.
Step 44: Plot the pelvis stool contact forces
Select Diego_Lower_Torso_CON_1 for the contact force and the magnitude component. Select
CREATE FULL PLOT.
Step 45: Animate side view
Select ANIMATION in the sub-menu. Uncheck force vectors, then select CONTACT_ALL to turn on
only the contact force vectors for the animation. Select front view, divide window. Check zoom
and enter the center as -270,496,0 and the scale as 1.7. Select PLAY.
Step 46: Animate side view close up
Select front view, divide window. Check zoom and enter the center as -797,876,0 and the scale
as 6.7. Check Fix Camera to Marker and enter the lower_torso.cm as the part to fix the camera.
Select PLAY.
Step 47: Plot the stem/cup forces
Use the ADAMS/View tools to plot the special request for the stem/hip force
(World.Last_Run.REQ_Stem_Cup_Force.u1) Select the graph and in the bottom panel of the
screen, select User_Defined, and scroll to the bottom of the list and select the U1 component of
REQ_Stem_Cup_Force. Select CLEAR PLOT followed by ADD CURVES.
Step 48: Animate front view
Uncheck "Scale Force/Torque Vectors." Use the following ADAMS/View command to turn on the
force vectors for the stem/cup force:
mdi graphic_force object=.World.Diego_stem_cup type=1

Select front view, divide window. Check zoom and enter the center as -270,496,0 and the scale
as 1.7. Select PLAY.
Step 49: Plot the stem orientation with respect to the cup
Use the ADAMS/View tools to plot the special request for the stem/hip location. In the bottom
panel scroll to the bottom of the requests and select "REQ_Stem_Cup_Orientation," highlight X
and Y components and select ADD CURVES.
Step 50: Animate side view close up
Use the following ADAMS/View command to turn off the force vectors for the stem/cup
orientation:
mdi graphic_force object=.World.Diego_stem_cup type=0

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Hip Replacement

Select front view, divide window. Check zoom and enter the center as -797,876,0 and the scale
as 6.7. Check camera and enter the lower_torso as the part to fix the camera. Select PLAY
Step 51: Bring up soft tissue results panel
Select DATA DISPLAY in the sub-menu.
Step 52: Plot the right iliacus tension
Select Soft Tissues as the Data Type. Select Diego_Iliac_Rtiss_1 for the soft tissue and "Tension"
for the characteristic. Select a low pass butterworth data filter with a cutoff frequency of 5.0 and
an order of 5. Check "New Plot." Select CREATE FULL PLOT.
Step 53: Plot the left iliacus tension
Select Diego_Iliac_Ltiss_1 for the soft tissue and "Tension" for the characteristic. Select CREATE
FULL PLOT.
Step 54: Turn muscle graphics scaling on and animate side view
Select ANIMATION in the sub-menu. Turn on the global scaling of the muscle graphics by
selecting Tissues, Global and the light bulb under Animation Scaling Graphics in the Results panel.
Select right view, divide screen and select PLAY to animate the model with the plot.
Step 55: Animate side view
Select front view, divide window. Check zoom and enter the center as -270,496,0 and the scale
as 1.7. Select PLAY.
Step 56: Animate side view close up
Select front view, divide window. Check zoom and enter the center as -797,876,0 and the scale
as 6.7. Check camera and enter the lower_torso as the part to fix the camera. Select PLAY.
Step 57: DEMO COMPLETE

Further
This model could be used to explore may involved with the design of total hip replacements
including:
impingement forces
range of motion for various human movement protocols
bone-stem forces evaluation
bone-cup forces evaluation
wear prediction

Acknowledgement
A special thanks for furnishing the data for this model to:
Diego Crovato
eMotion S.r.l\
Italy
www.emotion3d.com/contact.html

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Hip%20Replacement.html[06-Jun-15 12:50:40 PM]

LifeMOD Tutorials | Total Knee Replacement

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

Orthopedics Application - Total Knee Replacement


The LifeMOD Biomechanics Modeler creates a standard kinematic joint
knee by default. However, the user may create a more biofidelic
representation of a force based knee joint. This example involves the
addition of the geometry for a total knee replacement system. A
sophisticated solid-solid contact algorithm is used to accurately calculate
the tibio-femoral and patello-femoral forces of contact.
The knee is stabilized with ligament forces and driven using muscle forces.
Tibio-femoral and patello-femoral contact forces are examined as well as
ligament and muscle loads for a deep knee bend.
This example also walks the user through the process of changing the
contribution of various muscle groups on the knee flex motion.
Features of this model include:
Force-based knee joint.
Importing total knee replacement geometry
Muscle driven model
Point-to-point ligament forces
Running a parametric analysis
Changing the contribution of various muscle groups
Inverse-dynamics, forward-dynamics simulations.

Sections
Generating the Body Segments
Reducing the Model
Generating the Simple Joints
Importing the TKR Components
Generating the Patello-Femoral and Tibio-Femoral Contact Joints
Generation of the Ligament Forces
Generation of the Tendon Forces
Generation of the Muscle Forces
Generating the Quadriceps Tendon
Generating the Tissue Contact-Based Wrap Elements
Adding Motion Agents to the Model
Running the Equilibrium Simulation
Running the Inverse-Dynamics Simulation
Running the forward-Dynamics Simulation
Running the Parametric Analysis
Interrogating the Results
Further

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Generating the Body Segments


In this phase, the leg model is created for simulation. The model will consist of a single leg with a mass at
the hip location to represent the mass of the upper body. Contact ellipsoids will be created to describe the
tibio-femoral and patello-femoral contact elements. Muscle forces will be used for the stabilizing tissues
and the quadriceps and hamstrings muscle groups.

Figure 1: Body segment create panel and full body model

Step 1: Bring up segments panel and set fields


Launch the LifeMOD software and select CREATE NEW MODEL to begin a new modeling session. Select
SEGMENTS from the main-menu and CREATE BASE SEGMENT SET from the sub-menu.
Step 2: Create the body
Generate a full body model using the GeBod database. Select a 170 lbs, 70 inch tall male named Ryan
with Inch Lbm Lbf units. Select "Create Body Parameter Table" to create the body measurement table,
then select "Create Human Model from Parameter Table" to create the body.

Reducing the Model


In this phase, the segments of the model are deleted to focus only on the knee joint. All segments are
deleted except for the lower_torso, left_upper_leg and the left_lower_leg.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Figure 2: Segment delete panel and the resulting sub-model

Step 3: Bring up segment delete panel


Select SEGMENTS on the main-menu and DELETE on the sub-menu.
Step 4: Delete the various body segments
All segments are deleted except for the lower_torso, left_upper_leg left_lower_leg, and left_foot.
Step 5: Increase the mass of the pelvis to compensate for the rest of body
Right click on the lower_torso segment and select modify. Adjust the mass to 119.3.

Generating the Simple Joints


In this phase, simple kinematic joints with small damping and stiffness forces are used to model the
ankle and hip joints. These simple joints are part of the BASE set of joints.

Figure 3: Left leg joint matrix to create the passive hip and ankle joints. Be sure to unselect the left knee.

Step 6: Bring up the joint create panel


Select JOINTS from the main-menu and CREATE BASE JOINT SET on the sub-menu.
Step 7: Create the passive spring-damper joints
Select "Prepare Model with Recording Joints (To be trained in an inverse-dynamics simulation)". Enter 1
for the nominal stiffness and .1 for the damping. Check only the left leg and select MODIFY to bring up

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

the left leg joint matrix panel.


Step 8: De-select the knee joint and create the hip and ankle joints.
Uncheck the "Create" box for the knee and select APPLY to create the joints.

Importing the TKR Components


Solid models of the femoral component, tibial insert component and patella component are imported into
LifeMOD. LifeMOD supports Parasolids, IGES, Wavefront/OBJ, general polygon and many other formats.

Figure 4: Panel to create tibial insert component by importing Parasolids solid geometry.

Figure 5: Panel to create femoral component by importing Parasolids solid geometry.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Figure 6: Location and orientation of the contact marker on the tibial plateau

Figure 7: Leg model with the tibial insert, femoral and patellar components installed.

Step 9: Bring up the create single segment panel


Select SEGMENTS in the main-menu and CREATE INDIVDUAL SEGMENT in the sub-menu.
Step 10: Create the tibial insert component using geometry from library
Set the segment name to tibCMP and locate the CM at (3.0510154532, -17.5486593628, 4.65868456E002) with a (180,90,0) orientation. Select "Calculate Mass Properties based on Material". Select
polyethylene as the material. Select "Import Parasolids Geometry". Select Geometry type of "Other".
Select File Type "ASCII". Select TKR Tibail Insert from Model Library. Select APPLY to create the insert
component. LifeMOD will use the material and solid geometry to create the mass properties of the

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

component. Right-click on part and select Appearence. Set color to yellow.


Step 11: Create the femoral component using geometry from library
Set the segment name to femCMP and locate the CM at (3.0462981041, -17.4379596676, 0.3547902754)
with a (179.9782358787, 105.2951776296, 359.9832371446) orientation. Select "Calculate Mass
Properties based on Material". Select steel as the material. Select "Import Parasolids Geometry". Select
Geometry type of "Other". Select File Type "ASCII". Select "TKR Femoral Component" from Model Library.
Select APPLY to create the insert component. LifeMOD will use the material and solid geometry to create
the mass properties of the component. Set color to cyan.
Step 12: Create the patella component using geometry from library
Set the segment name to patCMP and locate the CM at (3.0492544755, -15.9492562045, 1.4243131206)
with a (0,95,0) orientation. Select "Calculate Mass Properties based on Material". Select lead as the
material. Select "Import Parasolids Geometry". Select Geometry type of "Other". Select File Type "ASCII".
Select TKR Patellar Component from Model Library. Select APPLY to create the insert component.
LifeMOD will use the material and solid geometry to create the mass properties of the component. Set
color to blue.
Step 13: Move and reassign the patella bone to the component
Right click on the patella bone and select .World.Ryan_Left_Lower_Leg.Skel_lpatella. Select RENAME,
enter .World.Ryan_patcmp.Skel_lpatella as the new shell name and select OK to change the ownership of
the patella bone shell from the lower leg to the patCMP part.
Step 14: Create a fixed joint between the femCMP and the femur
from the main toolbox. Select .World.Ryan_femCMP as the first body and
Select the fixed joint icon
.World.Ryan_Left_Upper_Leg as the second body. Set the location to be (3, -17, 0).
OR
Create the fixed joint by issuing the following ADAMS/View commands:
marker create marker=.World.Ryan_femCMP.MARKER_833 location=3, -17, 0.0 orientation=0.0, 0.0, 0.0
marker create marker=.World.Ryan_Left_Upper_Leg.MARKER_834 location=3, -17, 0.0 orientation=0.0, 0.0, 0.0
constraint create joint Fixed joint_name=.World.Ryan_JOINT_1
i_marker_name=.World.Ryan_femCMP.MARKER_833 j_marker_name=.World.Ryan_Left_Upper_Leg.MARKER_834

Step 15: Create a fixed joint between the tibCMP and the tibia
Create another fixed joint with .World.tibCMP as the first body and .World.Ryan_Left_Lower_Leg as the
second body. Select the location of the previous joint as the location. r
OR
Create the fixed joint by issuing the following ADAMS/View commands:
marker create marker=.World.Ryan_tibCMP.MARKER_833 location=3, -17, 0.0 orientation=0.0, 0.0, 0.0
marker create marker=.World.Ryan_Left_Lower_Leg.MARKER_834 location=3, -17, 0.0 orientation=0.0, 0.0, 0.0
constraint create joint Fixed joint_name=.World.Ryan_JOINT_2 i_marker_name=.World.Ryan_tibCMP.MARKER_833
j_marker_name=.World.Ryan_Left_Lower_Leg.MARKER_834

Generating the Patello-Femoral and Tibio-Femoral Contact Joints


With the solid models of the TKR components implanted to the leg model, contact forces are created
between the solids of each interacting component. LifeMOD uses a very robust contact algorithm to
calculate the normal and frictional forces of contact between two solids. For information on selecting
specific model parameters for this section see Choosing Model Parameters

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Figure 8: Panel used to create tibio-femoral contact forces

Figure 9: Panel used to create the patello-femoral contact forces.

Step 16: Bring up the create contact panel


Select CONTACTS in the main-menu and CREATE INDIVIDUAL CONTACT in the sub-menu.
Step 17: Create contact between the femoral component and the tibial component
Select solid-solid contact. Select Ryan_femCMP.solid as Contact Solid 1 and Ryan _tibCMP as Contact
Solid 2. Select Ryan_tibCMP.cm as the results reference marker. Select the following contact properties:
stiffness:5.7e6
exponent:2
damping:1e4
damping depth:1e-2
static friction:.3
dynamic friction:.1
friction transition velocity:40
stiction transition velocity:3.9
Step 18: Create contact between the patella component and the femoral component

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Select solid-solid contact. Select Ryan_patCMP.solid as Contact Solid 1 and Ryan_femCMP as Contact Solid
2. Select Ryan_patCMP.cm as the results reference marker. Select the following contact properties:
stiffness:8.7e6
exponent:2.1
damping:5000
damping depth:1e-3
static friction:.3
dynamic friction:.1
friction transition velocity:40
stiction transition velocity:4

Generating the Ligament Forces


With the contact forces generated between the condyles and the tibial plateau and the condyles and the
patella segment, the joint must be stabilized by adding ligament forces. Forces representing the MCL and
LCL ligaments are created in this phase. For information on selecting specific model parameters for this
section see Choosing Model Parameters.

Figure 10: Location of the LCL (left) and MCL (right) ligaments

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Figure 11: Panel used to create the MCL ligament

Step 19: Bring up the create soft tissue panel


Select SOFT TISSUES in the main-menu and CREATE INDIVIDUAL TISSUE on the sub-menu. Select
"Ligament/Tendon Tissue"
Step 20: Create the MCL ligament
Set the Origin to .World.Ryan_Left_Upper_Leg with attachment at (1.5, -17, -0.5) and the Insertion to
.World.Ryan_Left_Lower_Leg with attachment at (1.5, -18, -0.3) Set the ligament strain stiffness to
5000.0, the damping to 50.0 and the preload to 7 lbs. Select APPLY.
Step 21: Create the LCL ligament
Set the Origin to .World.Ryan_Left_Upper_Leg with attachment at (4.8, -16, -0.2) and the Insertion to
.World.Ryan_Left_Lower_Leg with attachment at (4.8, -18.6, -0.3) Set the ligament strain stiffness to
5000.0, the damping to 50.0 and the preload to 7 lbs. Select APPLY.

Generating the Tendon Forces


With the knee joint stabilized using ligament forces a patellar tendon is added between the patella and
the tibia.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Figure 12: Patellar Tendon Fiber Strand Insertion Points.

Figure 13: Panel to create the lateral strand of the patellar tendon

Step 22: Create the lateral strand of the patellar tendon


Set the Origin to .World.Ryan_patCMP with attachment at (3.3, -16.7, 1.4) and the Insertion to
.World.Ryan_Left_Lower_Leg with attachment at (3.3, -19.3, 1.0) Set the ligament strain stiffness to
5000.0, the damping to 50.0 and the preload to 0 lbs. Select APPLY.
Step 23: Create the medial strand of the patellar tendon
Set the Origin to .World.Ryan_patCMP with attachment at (2.8, -16.7, 1.4) and the Insertion to

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

.World.Ryan_left_Lower_Leg with attachment at (2.8, -19.3, 1.0) Set the ligament strain stiffness to
5000.0, the damping to 50.0 and the preload to 0 lbs. Select APPLY.

Generating the Muscle Forces


The next step in the process is to create soft tissues (muscles) on the model. LifeMOD automatically
creates a set of basic muscle groups for the body. Muscles consist of recording elements or trained
elements. The recording elements are simple data collectors which record the contraction history of the
muscle during an activity when the model is moved using external drivers such as motion agents. Trained
elements can be either PID closed-loop force actuators or actuation curve open-loop force actuators acting
to drive the skeleton's motion. Muscle parameters such as physiological cross sectional area (pCSA) and
maximum tissue stress are used to calculate the maximum force potential of the particular muscle.
LifeMOD contains a database of pCSA values for each muscle and is scaled accordingly based on the
input body parameters (ht, wt, gender and age). Further, the force output of the muscle may be scaled
from 0% to 200% to change the contributions of each particular muscle.
The BASE muscle set will be used to create the musculature at the knee. Since a new patella segment
was created, the attachments of the muscles will have to be repositioned to the new patella segment.

Figure 14: Muscle groups created on the model. Note that the color of the muscles is "rust" indicating passive
training elements.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Figure 15: Panel set up to create the left leg muscle groups.

Step 24: Bring up muscle-tendon panel


Select SOFT TISSUES on the main-menu and CREATE BASE TISSUE SET on the sub-menu.
Step 25: Set the parameters for the muscle set
Select "Prepare Model with Recording Muscle Elements (To be trained in an inverse-dynamics simulation)",
Set the passive stiffness and damping to 0.1, the muscle resting load to 50 and the muscle tone
multiplier to be 200%, the tissue stress to be 259 lbs/in2 and the muscle resting load to be .5 lbs.
Step 26:Create the left leg muscles
Select only the left leg and select APPLY.

Generating the Quadriceps Tendon


By default LifeMOD automatically generates a set of base muscles for a standard configuration of the
body. In some cases, such as this tutorial, muscles must be adjusted to include necessary effects for the
analysis. Since the patella component part is a non-standard part in the model, the attachments of
several muscles must be changed from other bones (the lower leg in this example). For this tutorial the
quadriceps muscles are attached to a dummy part which is in turn connected via a tendon to the patella
component.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Figure 16: Creating of the quadriceps tendon. Medial and lateral strands of the patellar tendon are connected
between the patellar componen part and the tendon dummy part. The quadriceps muscle attachments are
reassigned to the tendon dummy part.

Figure 17: Panel set up to move the quad muscle attachment points.

Step 27: Zoom in and create a muscle-tendon interface part


Use the Adams/View tools to zoom into the patella location. Create a dummy part by creating a marker
named .World.Tendon.cm at (3.1, -13.6, 1) In Command Navigator go to Part-Create-Rigid_bodyName_and_Position. Set name to .World.Tendon. Select OK. In the Command Navigator go to PartModify-Rigid_body-Mass_properties. Input .World.Tendon and set the mass to .01, Center of Mass Marker
to .World.Tendon.cm, ixx=.01, iyy=.01, izz=.01. Select OK.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

OR
Create the part using the following commands:
part create rigid_body name part=.World.Tendon
marker create marker=.World.Tendon.cm location=3.1,-13.6,1 rel=.World
part modify rigid mass_properties part_name=.World.Tendon mass = .01
center_of_mass_marker = .World.tendon.cmixx = .01 iyy = .01 izz = .01

Step 28: Bring up the soft tissues edit panel


Select SOFT TISSUES in the main-menu and EDIT PROPERTIES in the sub-menu. Select "Edit Tissue
Attachment Points" to bring up the attachment point editing panel.
Step 29: Move the Vastus Lateralis attachment
In the panel in figure 17 enter .World.Ryan_VasLat_Ltiss_1.attachment_2 as the attachment (or right click
in the field and cursor select the attachment on the model). Enter (3.3, -13.6, 1) as the location and
select MODIFY to move the attachment.
Step 30: Reassign the Vastus Lateralis muscle
In the panel in figure 17 enter .World.Tendon in the "Reassign to Segment" field and select APPLY to
change the part the muscle is attached to from the lower leg to the tendon dummy part.
Step 31: Move the Rectus Femoris attachment
In the panel in figure 17 enter .World.Ryan_RecFem_Ltiss_1.attachment_2 as the attachment (or right
click in the field and cursor select the attachment on the model). Enter (3.05, -13.6, 1) as the location
and select MODIFY to move the attachment.
Step 32: Reassign the Rectus Femoris muscle
In the panel in figure 17 enter .World.Tendon in the "Reassign to Segment" field and select APPLY to
change the part the muscle is attached to from the lower leg to the tendon dummy part.
Step 33: Move the Vastus Medialis attachment
In the panel in figure 17 enter .World.Ryan_VasMed_Ltiss_1.attachment_2 as the attachment (or right
click in the field and cursor select the attachment on the model). Enter (2.8, -13.6, 1) as the location and
select MODIFY to move the attachment.
Step 34: Reassign the Vastus Medialis muscle
In the panel in figure 17 enter .World.Tendon in the "Reassign to Segment" field and select APPLY to
change the part the muscle is attached to from the lower leg to the tendon dummy part.
Step 35: Bring up the create soft tissues panel
Select SOFT TISSUES in the main-menu and CREATE INDIVIDUAL TISSUE in the sub-menu. Select
Ligament/Tendon Tissue.
Step 36: Create the lateral strand of the quad tendon.
Set the Origin to .World.Tendon with attachment at (3.3, -13.6, 1.0) and the Insertion to
.World.Ryan_patCMP with attachment at (3.3, -15.4, 1.3) Set the ligament strain stiffness to 5e4, the
damping to 500.0 and the preload to 0 lbs. Select APPLY.
Step 37: Create the medial strand of the quad tendon.
Set part 1 to .World.Tendon with attachment at (2.8, -13.6, 1.0) and part 2 to .World.Ryan_patCMP with
attachment at (2.8, -15.4, 1.3) Set the ligament strain stiffness to 5e4, the damping to 500.0 and the
preload to 0 lbs. Select APPLY.

Generating the Tissue Contact-Based Wrapping Elements


With the quadriceps tendon complex created, contact-based wrapping elements may be created between
the quad tendon and the femoral component and the patellar tendon and the tibial insert component.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Figure 18: Quadriceps tendon and patellar tendon are discretized into contact element to wrap about the femoral
componen and the tibial insert component respectively.

Figure 19: Panel used to create the contact-based tissue wrapping elements.

Step 38: Bring up the soft tissues edit panel


Select SOFT TISSUES in the main-menu and CREATE TISSUE WRAPPING in the sub-menu. Select "Contact
Surface Based".
Step 39: Generate wrap elements between medial patellar tendon and tibial insert
In the panel displayed in figure 19, enter .World.Ryan_Out_NStiss_4P as the tissue,
.World.Ryan_patCMP.NStiss_4_Mell as the Tissue Attachment, .World.Ryan_tibCMP.solid as the Wrap
Geometry, 1.4 as the Distance from Attachment to Begin Segmentation, .8 as the Segmentation length,

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

and 3 as the Number of Segments. Select APPLY to discretize the tissue and create the contact forces.
Step 40: Generate wrap elements between lateral patellar tendon and tibial insert
In the panel displayed in figure 19, enter .World.Ryan_Out_NStiss_3P as the tissue,
.World.Ryan_Left_Lower_Leg.NStiss_3_Mell as the Tissue Attachment, .World.Ryan_tibCMP.solid as the
Wrap Geometry, 1.4 as the Distance from Attachment to Begin Segmentation, .8 as the Segmentation
length, and 3 as the Number of Segments. Select Apply to discretize the tissue and create the contact
forces.
Step 41: Generate wrap elements between medial quad tendon and femoral component
In the panel displayed in figure 19, enter .World.Ryan_Out_NStiss_6P as the tissue,
.World.Ryan_patcmp.NStiss_6_Mell as the Tissue Attachment, .World.Ryan_femCMP.solid as the Wrap
Geometry, 0.1 as the Distance from Attachment to Begin Segmentation, 1.4 as the Segmentation length,
and 5 as the Number of Segments. Select APPLY to discretize the tissue and create the contact forces.
Step 42: Generate wrap elements between lateral quad tendon and femoral component
In the panel displayed in figure 19, enter .World.Ryan_Out_NStiss_5P as the tissue,
.World.Ryan_patcmp.NStiss_5_Mell as the Tissue Attachment, .World.Ryan_femCMP.solid as the Wrap
Geometry, 0.1 as the Distance from Attachment to Begin Segmentation, 1.4 as the Segmentation length,
and 5 as the Number of Segments. Select APPLY to discretize the tissue and create the contact forces.

Adding Motion Agents to the Model


A motion agent is added to stabilize the knee model for an equilibrium analysis. The agent basically adds
a fixed constraint along the z-axis (anterior to posterior) of the knee and is free in the other 5 dof's. This
motion agent will be removed for the inverse-dynamics simulation which follows the equilibrium
simulation.

Figure 20: Motion agent creation panel and knee model with motion agent

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Figure 21: Data for the spline driving the motion agent

Figure 22: Location of the Motion Agent.

Step 43: Bring up the create motion agent panel


Select MOTION on the main-menu and CREATE INDIVIDUAL MOTION AGENT sub-menu.
Step 44: Create a spline using data from Figure 21
From the top of the screen select Build-Data_Element-New. Insert the values from figure 21. Select OK
OR
Create the spline using following ADAMS/View command:
data_element create spline spline=.World.Ryan_SPLINE_1 x=0.0, .5, 1, 1.5, 2, 2.5, 3, 3.5, 4 y=0.0, 4, 7, 9, 9.3, 9, 7, 4, 0.0
linear_extrapolate=no units=no_units

Step 45: Create motion agent on the lower leg


Select .World.Ryan_left_Lower_Leg as the body segment and select Manually Select Location for the agent
positioning method using a location of (2.8, -15, 1.2). Set the trans. stiffness to be 1e7 and the trans.
damping to be 1e5. Specify all dof's to be free except for the X-dof which is fixed and the z-dof which is
driven using the spline created in the previous step. Select APPLY.

Running the Equilibrium Simulation

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

To produce smooth simulations for both the inverse-dynamics and forward-dynamics simulations, it is
strongly recommended that an equilibrium simulation be performed to equilibrate the forces in the model.
These forces occur due to misplacement of the contact ellipsoids, balancing the preloaded soft tissues,
etc. Before the simulation may be performed the mofdel must be constrained to the environment. This is
done using a joint combination, which will allow the knee to flex in 6 degrees-of-freedom. Following this,
an inverse-dynamics simulation is performed to capture the muscle elongation data for a subsequent
forward-dynamics simulation.

Figure 23: Joints Constraining Model to the Environment.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Figure 24: Panel set up for equilibrium simulation. Be sure to check "Freeze Motion Agents for Equilibrium" to
make sure the motion agent does not move and only acts as a stabilizer.

Step 46: Create a fixed joint between the foot and ground
Select the fixed joint icon from main toolbox, selecting .World.Ryan_Left_Foot as the first body and
.World.ground as the second body. Right-click on the ground and enter (6, -36, -0.3) as the location.
Select APPLY.
OR
Use the following ADAMS/View commands to create a fixed joint between the foot and ground:
marker create marker=.World.Ryan_Left_Foot.ground location=6, -36, -0.3 rel=.world
marker create marker=.World.ground.foot location=6, -36, -0.3 rel=.world
constraint create joint Fixed joint_name=.World.Foot_Ground i_marker_name=.World.Ryan_Left_Foot.ground
j_marker_name=.World.ground.foot

Step 47: Constrain the motion of the body by creating a translational joint between pelvis and
ground
from main toolbox. Select .World.Ryan_Lower_Torso as the first
Select the translational joint icon
body and .World.ground as the second. Right-click and set location to (0, 0.6, -0.8) and orientation 0, 90, 0 relative to origin. Select APPLY.
OR
Use the following ADAMS/View commands to create a universal joint between the femur and the pelvis:
marker create marker=.World.Ryan_Lower_Torso.MARKER_860_2 loc=0, 0.6, -0.8 ori=0,-90,0 rel=(none)
marker create marker=.World.ground.MARKER_861_2 loc=0, 0.6, -0.8 ori=0,-90,0 rel=(none)
constraint create joint Translational joint_name=.World.Ryan_JOINT_5
i_marker=.World.Ryan_Lower_Torso.MARKER_860_2 j_marker=.World.ground.MARKER_861_2

Step 48: Bring up the analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 49: Run the dynamics simulation, freeze the motion agent
Select "Freeze Motion Agents for Equilibrium Analysis" Set gravity at -386.0885826772 in the y direction
and run the simulation for 1 second and 100 time steps using the "Contacts Optimized" integrator
settings. By freezing the motion agent, it will provide a force to stabilize the knee into an equilibrium
position.
Step 50: View the equilibrium simulation results

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Use the ADAMS/View toolbox to animate the equilibrium results


Step 51: Update the model configuration with static results
Select UPDATE MODEL POSTURE WITH EQUILIBRIUM RESULTS button on the analyze panel.

Running the Inverse-Dynamics Simulation


With the updated model configuration, the model is ready for the inverse-dynamics simulation. The
motion agent will be used to manipulate the model into a deep knee bend activity. During this analysis
the muscle contractions in the muscle training elements will be recorded.

Figure 25: Animation from the Inverse-Dynamics Simulation.

Step 52: Uncheck Freeze Motion Agent and run the simulation
Uncheck Freeze Motion Agent in the panel displayed in figure 24. Set gravity at -386.0885826772 in the y
direction and run the simulation for 4 seconds and 200 time steps using the "Contacts Optimized "
integrator settings.
Step 53: Display animation
Use the ADAMS/View toolbox to animate the equilibrium results

Running the forward-Dynamics Simulation


With the muscle contraction histories recorded from the inverse-dynamics simulation, the data may now
be used in an active muscle formulation to produce a force to recreate the motion history. The process
entails removing the Motion Agents and updating the muscles. Also the passive stiffness in the hip and
ankle joints are reduced from the higher values used in the inverse-dynamics simulation for stabilization.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Figure 26: Four successive frames of the forward-dynamics simulation. Note the color of the muscle is now deep
red indicating active muscle forces. Also note the scaling muscle graphics indicating force magnitudes thorough
the muscles, tendons and ligaments.

Figure 27: Panel to update muscle formulation with ACTIVE (Trained) contraction elements based on data from
inverse-dynamics analysis

Step 54: Bring up the tissue training panel


Select SOFT TISSUES on the main-menu and TRAINING on the sub-menu.
Step 55: Install ACTIVE contractile element
Select "Install Trained Closed-loop Contractile Elements on Muscles" Specify 1e7 as the proportional gain,
1e5 as the integral gain, and 1e5 as the derivative gain. These values control how well the PID-servo
actuators will track the desired contraction at each time step in the analysis. Note that the individual
muscle will not produce a force greater than the physiological cross section area (pCSA) times the
maximum tissue stress. Select APPLY to update the muscles.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Step 57: Bring up the analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 58: Disable motion agents and run the forward-dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 4 seconds and 200 time
steps using the "Conacts Optimized" integrator settings. Select "Disable Motion Agents."

Running the Parametric Analysis


LifeMOD manages the redundant muscle problem in human mechanics by allowing for equal contribution
for each muscle involved in the motion across the joint. This contribution is effected by the maximum
force output of each muscle and can further be effected by the user. This section the user will reduce the
contributions of three muscles to examine the effects load redistribution effects on the other muscles.

Figure 28: Panel used to reduce the contributions by 50% of the Gluteus Maximus 1, 2 and the Soleus muscles.

Step 59: Display animation


Use the ADAMS/View toolbox to animate the results
Step 60: Bring up the results panel.
Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu.
Step 61: Display muscle strip charts
Enter Soft Tissues as the Data Type. Select the soft tissue Ryan_VasLat_Ltiss_1, Tension as the
Characteristic and "Create Strip Chart Measure" to create the strip chart for the muscle. Select the soft
tissue Ryan_GlutMax1_Ltiss_1, Tension as the Characteristic and "Create Strip Chart Measure" to create
the strip chart for the muscle. Two data strip charts will be displayed with the muscle forces for this
activity.
Step 62: Turn on muscle graphics scaling
Select ANIMATION on the sub-menu. Select Scale Joint/Tissue Graphics, Tissues, Scale Globally and the
light bulb to scale the muscle graphics.
Step 63: Display animation
Use the ADAMS/View toolbox to animate the results. Observe the scaling muscle forces.
Step 64: Save the muscle force curves
On each strip chart, right click on the curve and select "SAVE CURVE".

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Step 65: Bring up soft tissue edit panel


Select TABLE EDITOR from the top-right corner.
Step 66: Bring up the left leg tissue panel
Select MUSCLES as the component.
Step 67: Reduce the contribution of the Gluteus Maximus 1, 2 and the Soleus Muscles
Decrease the tone of Ryan_GlutMax_1_Ltiss_1, Ryan_GlutMax_2_Ltiss_1 and Ryan_Soleus_Ltiss_1 from
1.0 to .25. Select APPLY.
Step 68: Bring up the analyze panel
Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 69: Disable motion agents and run the forward-dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 4 seconds and 200 time
steps using the Contacts Optimized integrator settings. Select "Disable Motion Agents."

Interrogating the Results


When the simulation is complete the model may be animated. Figure 26 displays the model animation.
The appearance of the animations may differ from the figure, depending on the placement of the muscle
attachment points.
Various data may be presented from the forward-dynamics simulation including:
Tibia-femoral and patello-femoral contact forces
Ligament tensions
Muscle Forces
Relative Displacements

Figure 29: Animation Sequence and Data Display from comparing case 1 (before muscle contribution adjustment)
to case 2 (after reducing the GM and Soleus muscles.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Figure 30: Plot of the LCL and MCL ligament strains

Figure 31: Plot of the PF and TF contact forces

Step 70: Bring up the results panel.


Select RESULTS on the main-menu and ANIMATION on the sub-menu.
Step 71: Turn muscle graphics scaling on
Select Scale Joint/Tissue Graphics, Tissues, Scale Globally and the light bulb to scale the muscle graphics.
Step 72: Display animation
Select Fix Camera to Marker and select .World.Ryan_tibCMP.cm. Select right view and the Play arrow in
the panel to animate. Note the change in force distribution between the two cases.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Step 73: Display animation without muscles


Use the LifeMOD Display Toolbox to turn off the muscles, tendons and ligamments. Then animate the
model to examine the interaction of the components.
Step 74: Display animation without bones
Use the LifeMOD Display Toolbox to turn off the bones to get a better view of the motion of the
components. Set the view to wireframe by selecting Render on the Adams/View toolbox panel. Select Fix
Camera to Marker and select .World.Ryan_tibCMP.cm. Select play in the animation panel to display the
animation.
Step 75: Animate the front view
Select front view animate animate.
Step 76: Animate the top view
Select top view animate animate.
Step 77: Bring up results panel
Select DATA DISPLAY on the sub-menu. Select "Results Window" button to bring up the results processor.
Select Soft Tissues as the Data Type.
Step 78: Plot the LCL ligament forces
Select Ryan_NStiss_1P for the soft tissue and tension characteristic. Select a low pass butterworth data
filter with a cutoff frequency of 5.0 and an order of 1. Select CREATE FULL PLOT to create the curve.
Step 79:Plot the MCL ligament forces
Select Ryan_NStiss_2P for the soft tissue and tension characteristic. Select a low pass butterworth data
filter with a cutoff frequency of 5.0 and an order of 1. Select CREATE FULL PLOT to create the curve.
Step 80: Animate right view
Select ANIMATION from sub-menu. Select right view, divide window and select PLAY.
Step 81: Animate the view close up.
Check zoom on the results panel and enter (-0.5378289278, -17.502685398, 3.1299660314) for the
zoom center and 2.75 for the zoom scale. select PLAY.
Step 82: Bring up contact panel
Select DATA DISPLAY in the sub-menu. Select Contacts as the Data Type.
Step 83: Plot the AP-Shear component of the TF contact force
Delete previous graph. Select Ryan_NScon_1 as the contact force and the Z component Select a low pass
butterworth data filter with a cutoff frequency of 5.0 and an order of 1. Select CREATE FULL PLOT to
create the curve.
Step 84: Plot the Normal component of the TF contact force
Select Ryan_NScon_1 as the contact force and the Y component Select a low pass butterworth data filter
with a cutoff frequency of 5.0 and an order of 1. Select CREATE FULL PLOT to create the curve.
Step 85: Plot the normal component of the PF contact force
Select Ryan_NScon_2 as the contact force and the Y component Select a low pass butterworth data filter
with a cutoff frequency of 5.0 and an order of 1. Select CREATE FULL PLOT to create the curve.
Step 86: Turn off bones/muscles and animate right view
Select ANIMATION from sub-menu.Turn off the bones and muscles using the LifeMOD Display Toolbox.
Select Fix Camera to Marker and .World.Ryan_tibCMP.cm as the marker. Set view to right, select divide
window and animate.
Step 87: Animate the right view in wire frame.
Set the model rendering to wireframe and run the animation.
Step 88: Animate the top view
Set the model rendering to shaded, set view to top and run the animation.
Step 89: Animate the top view, wire frame.
Set the model rendering to wireframe, set view to top and run the animation.
Step 90: Animate the front view.
Set the model rendering to shaded, set view to front and run the animation.
Step 91: Animate the front view, wire frame.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Total Knee Replacement

Set the model rendering to wireframe and run the animation.


Step 83: DEMO COMPLETE

Further
This model was put forth to demonstrate the creation of a human joint with a relatively high degree of
biofidelity. Obviously the model can be further refined and improved, from the point developed in this
example. The intention with this example was to touch of the various modeling functions of both the
LifeMOD Biomechanics Modeler and ADAMS/View necessary to create a joint of this nature.
This model may be refined in many areas including:
Performing a sensitivity analysis by examining the effects of repositioning the ligament attachment
points
Adding more ligament, muscle and tendon strands to better represent the nature of these soft
tissue forces

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Total%20Knee%20Replacement.html[06-Jun-15 12:50:44 PM]

LifeMOD Tutorials | Fighting

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing

Human Performance Application - Fighting


The LifeMOD Biomechanics Modeler can be used to create as many as
six separate interacting models in an environment. Contact forces can
be created between segments of each model to allow for humanhuman forces to be inflicted. This example involves the generation of
two human models. One model is active and punches the other model
in the chest. The second model, being only passive, simply recoils from
the punch and falls to the ground.
Features of this model include:
Creating multiple human models in a single environment
Creating body to body contact forces
Creating foot-floor contact
Generation of passive and active models
Multiple function joints
Using the human model data export and import feature
Personalizing the body parameters
Contact elements between body segments and environment
Posture manipulation

Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine
Tennis
Walking

Steps
Generating of the Body Segments
Creating the Hybrid III Joints
Posing the Fred Human Model
Creating the Passive Joints on Model Joe
Adding Active Joints to the Human Model
Posing the Joe Human Model
Creating the Environment Contact Forces
Creating Contact Between the Fist and Upper Torso
Running the Dynamics Simulation
Interrogating the Results

NeckSIM:Whiplash

Generating of the Body Segments


In this phase, the human segments of models are created for both bodies. The first body, "Joe" is created
from the GeBod anthropometric database, with some editing of the parameter table. The second body,
"Fred" is created from the GeBod database using standard parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Figure 1: Segments creation panel and both Joe and Fred models

Figure 2: Editing the body parameters table

Step 1: Bring up segments panel and set fields for first body
Select SEGMENTS from the main-menu and CREATE BASE SEGMENT SET from the sub-menu. Set the
human model name to Joe and specify the full body. Select "GeBod" as the database with parameters of
"male", height of 70 inches and weight of 170 lbs. Select "Grip hands". Set Units to "Inch Lbm Lbf" and color
to red. Select "Create Body Measurement Table."
Step 2: Bring up the detailed measurements panel
Select "Edit Body Measurements" to bring up the Body Segment Measurement table.
Step 3: Make adjustments to the geometry of the human model
Make adjustments to the table (See Figure 2) and select APPLY.
Step 4: Create the first body
Select "Create Human Segments" on the segments panel to create the body.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Step 5: Bring up segments panel and set fields for second body
Set the human model name to Fred and specify the full body. Select "GeBod" as the database with
parameters of "male", color to blue, height of 62 inches and weight of 150 lbs. Select "Create Body
Measurement Table."
Step 6: Create the second body
Select "Create Human Segments" on the segments panel to create the body.

Creating the Hybrid III Joints


In this phase, the human segments created in the first phase are connected together with kinematic joints.
At the same time torque functions are created at each joint degree of freedom.
Since the Fred model will be the model which is struck by Joe, it will be a reactive model only. For this case,
the spring-damper torque functions available from the Hybrid III will be used. The torque is based on a
nonlinear joint stiffness, damping, friction and hysteresis (losses), specific to each DOF for each joint as
derived from the physical Hybrid III crash dummy. For information on selecting specific model parameters
for this section see Choosing Model Parameters.

Figure 4: Complete set of joints established on the Fred model. Joints can be depicted as spheres (left) and joint
axes (right).

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Figure 4: Spinal Joint Matrix panel with HII scale factor set to .6

Figure 5: Left Leg Joint Matrix panel with HIII scale factors set for each joint.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Figure 6: Left arm joint matrix

Step 7: Bring up joint create panel


Select JOINTS from the main-menu and CREATE BASE JOINT SET from the sub-menu.
Step 8: Create Hybrid III strength joints
Select "Prepare Model with Hybrid III Crash Dummy Strength Joints". Enter .6 as the Hybrid III scale factor.
Select MODIFY.
Step 9: Create Hybrid III strength joints on the spine
Hybrid III scale factors should all be set to .6 and select APPLY.
Step 10: Create Hybrid III strength joints on the left leg
Enter the scale factors as in figure 5 on the left leg matrix panel. Select APPLY.
Step 11: Create Hybrid III strength joints on the left arm
Enter the scale factors as in figure 6 on the left arm and select APPLY.
Step 12: Create Hybrid III strength joints on the right leg
Enter the scale factors as in figure 5 on the right leg matrix panel. Select APPLY.
Step 13: Create Hybrid III strength joints on the right arm
Enter the scale factors as in figure 6 on the left arm and select APPLY.

Posing the Fred Human Model


With the joints created on the Fred model, the joint angles may now be modified to adjust the starting
posture of the model.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Figure 7: Adjusting the joint angles of the Fred model to change the starting posture

Step 14: Bring up posture panel


Select POSTURE from the main-menu and CONFIGURE BASE MODEL from the sub-menu.
Step 15: Adjust the right shoulder and elbow joints
Specify -44 for the right shoulder sagittal angle, and -84 for the right elbow sagittal angle. Select SHOULDER
and ELBOW to create the right arm joints.
Step 17: Adjust the left shoulder and elbow joints
Specify -20 for the left shoulder sagittal angle, and -78 for the left elbow sagittal angle. Select SHOULDER
and ELBOW to create the left arm joints.
Step 18: Adjust the left hip and ankle joints
Specify 20 for the left hip sagittal angle, and -15 for the left ankle sagittal angle. Select HIP and ANKLE to
create the left leg joints
Step 19: Adjust the right hip and knee joints
Specify -20 for the right hip sagittal angle, and 25 for the right knee sagittal angle.. Select HIP, and KNEE to
create the right leg joints.
Step 20: Adjust the spinal joints
Specify -10 for the UpperNeck sagittal angle, -10 for the LowerNeck sagittal angle, 10 for the thoracic
sagittal angle, and 10 for the lumbar sagittal angle. Select UpperNeck, LowerNeck,THORACIC and LUMBAR to
create the right leg joints.
Step 21: Move the model into place
Reposition the model by modifying the location of the Lower_Torso segment. Select Name and Position from
pull-down menu and enter (-13.7, -1.2, 1.674015748) as the location and (180,90,180) as the orientation.
Select OK.
OR
Enter the ADAMS/View command:
part mod rigid name part=.World.Fred_Lower_Torso location=-13.7, -1.2, 1.674015748 orientation=180,90,180 rel=.World

Step 22: Set active the Joe model


Select "Joe" for the active body.

Creating the Passive Joints on Joe Model


The second model, "Joe" has a combination of Hybrid III passive joint torques and motion driven joints (to
punch the other human model).

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Figure 8: Active and passive joints on the puncher model

Step 23: Bring up joint create panel


Select JOINTS from the main-menu and CREATE BASE JOINT SET from the sub-menu.
Step 24: Create Hybrid III strength joints on right leg
Select "Hybrid III Crash Dummy Strength Characteristics". Enter a 3 scale factor, check right leg and select
APPLY.
Step 25: Create Hybrid III strength joints on left leg
Select "Hybrid III Crash Dummy Strength Characteristics". Enter a 7 scale factor, check left leg and select
APPLY.

Adding Active Joints to the Human Model


The active joints are driven using torque functions to create the necessary driving torque at the particular
joint degree-of-freedom to track an input data table. The data table is input via an ADAMS/View spline.
Simulation Time

Right Shoulder

Left Shoulder

Lumbar

Neck

Right Elbow

52

-18

-130

0.1

42

-14

-2

-125

0.2

32

-10

74

-4

-120

0.3

22

-8

-6

-100

0.4

-22

-6

-8

-70

0.5

-42

-4

10

-10

-40

0.6

-42

10

-10

-40

0.7

-42

10

-10

-40

0.8

-22

-8

-70

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting


0.9

22

-6

-100

32

-4

-120

1.1

42

-2

-125

1.2

52

-130

1.3

52

-2

-130

1.4

52

-4

-130

1.5

52

-6

-130

Figure 9: Data table for the active joints in the model

Figure 10: Right Arm Joint Matrix panel for active/passive combination joints

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Figure 11: Left Arm Joint Matrix panel for active/passive combination joints

Figure 12: Spinal Joint Matrix panel for active/passive combination joints

Step 26: Create the right shoulder spline using data from manual
Select Build-Data Elements-Spline-New. Select "Append row to X and Y data" until there are 16 rows. Enter
the Simulation Time from figure 9 into the X column. Enter in the data under the Right Shoulder column in
figure 9 into the Y column. Name .World.Joe_Rshoulder_spline and select OK.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

OR
Create the spline function for the right shoulder using the following ADAMS/View command:
data_element create spline spline=.World.Joe_Rshoulder_spline x=0.0, 0.1, 0.2, 0.3, .4, .5, .6, .7, .8, .9, 1.0, 1.1, 1.2, 1.3, 1.4,
1.5 y=52, 42, 32, 22, -22, -42, -42, -42, -22, 22, 32, 42, 52, 52, 52, 52 linear_extrapolate=no units=no_units

Step 27: Create the left shoulder spline using data from manual
Create a new spline using Simulation Time for the X column and Left Shoulder for the Y column from figure
9. Name .World.Joe_Lshoulder_spline and select OK.
OR
Create the spline function for the left should using the following ADAMS/View command:
data_element create spline spline=.World.Joe_Lshoulder_spline x=0.0, 0.1, 0.2, 0.3, .4, .5 y=-18, -14, -10, -8, -6, -4
linear_extrapolate=no units=no_units

Step 28: Create the lumbar spline using data from manual
Create a new spline using Simulation Time for the X column and Lumbar for the Y column from figure 9.
Name .World.Joe_Lumbar_spline and select OK.
OR
Create the spline function for the lumbar spine using the following ADAMS/View command:
data_element create spline spline=.World.Joe_Lumbar_spline x=0.0, 0.1, 0.2, 0.3, .4, .5, .6, .7, .8, .9, 1.0, 1.1, 1.2, 1.3, 1.4,
1.5 y=0,2,4,6,8,10,10,10,8,6,4,2,0,-2,-4,-6 linear_extrapolate=no units=no_units

Step 29: Create the neck spline using data from manual
Create a new spline using Simulation Time for the X column and Neck for the Y column from figure 9. Name
.World.Joe_Neck_spline and select OK.
OR
Create the spline function for the neck using the following ADAMS/View command:
data_element create spline spline=.World.Joe_Neck_spline x=0.0, 0.1, 0.2, 0.3, .4, .5, .6, .7, .8, .9, 1.0, 1.1, 1.2, 1.3, 1.4, 1.5
y=0,-2,-4,-6,-8,-10,-10,-10,-8,-6,-4,-2,0,2,4,6 linear_extrapolate=no units=no_units

Step 30: Create the elbow spline using data from manual
Create a new spline using Simulation Time for the X column and Right Elbow for the Y column from figure 9.
Name .World.Joe_Relbow_spline and select OK.
Create the spline function for the neck using the following ADAMS/View command:
data_element create spline spline=.World.Joe_Relbow_spline x=0.0, 0.1, 0.2, 0.3, .4, .5, .6, .7, .8, .9, 1.0, 1.1, 1.2, 1.3, 1.4,
1.5 y=-130,-125,-120,-100,-70,-40,-40,-40,-70,-100,-120,-125,-130,-130,-130,-130 linear_extrapolate=no units=no_units

Step 31: Bring up the joint create panel


Select JOINTS from the main menu and CREATE BASE JOINT SET from the sub-menu. Select "Prepare Model
with Hybrid III Crash Dummy Strength Joints" enter .5 as the scale factor. Select right arm, left arm and
spine and select MODIFY.
Step 32: Create the active and passive joints on the right arm
Specify the parameters for the right arm as is Figure 10 and select APPLY.
Step 33: Create the active and passive joints on the left arm
Specify the parameters for the left arm as is Figure 11 and select APPLY.
Step 34: Create the active and passive joints on the spine
Specify the parameters for the spinal joints as is Figure 12 and select APPLY.

Posing the Joe Human Model


With the active and passive joints created on the Joe model, the joint angles must be modified to place the
model in the posture at the start of the simulated punching event.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Figure 13: Posture modify panel and resulting posture for Joe (puncher) model.

Figure 14: Models before translating and rotating red model (left) and after (right).

Step 35: Bring up posture panel


Select POSTURE on the main-menu and CONFIGURE BASE MODEL on the sub-menu.
Step 36: Adjust the right shoulder and elbow
Specify 52 for the right shoulder sagittal angle, and -130 for the right elbow sagittal angle.
Step 37: Adjust the left shoulder and elbow
Specify -18 for the left shoulder sagittal angle, and -135 for the left elbow sagittal angle.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Step 38: Adjust the right hip, knee, ankle


Specify -18 for the right hip sagittal angle, 23 for the right knee sagittal angle and -7 for the right ankle.
Step 39: Adjust the left hip, knee, ankle
Specify 15 for the left hip sagittal angle, 18 for the left knee sagittal angle and -10 for the left ankle.
Step 40: Turn on the first body
Specify ALL for the active body.
Step 41: Rotate and translate the second body
Select Joe's lower torso and select MODIFY. Select "Name and Position" and change the location to(1.2, 4.1,
1.7) and orientation to (180,90,0). Select OK.
OR
Reposition the model by modifying the location of the Lower_Torso segment. Enter the ADAMS/View
command:
part mod rigid name part=.World.Joe_Lower_Torso location=11.2, 4.1, 1.7 orientation=180,90,0 rel=.World

Creating the Environment Contact Forces


With the models in place, contact forces must be designated between the Fred model who will be punched
and will fall to the floor. Forces will also be created for the Joe model who will be standing on the floor.
These forces will be between the segments of the Fred model and the environment. For information on
selecting specific model parameters for this section see Choosing Model Parameters.

Figure 15: Contact panel set up to create right foot contacts on the Fred Model

Step 42: Create the ground marker


Create a marker to indicate the location and orientation of the ground (floor). Set the location to(4.1540197817,-31.7518454266,-32.5409133732) and orientation to (0,-90,0). Rename .World.ground.g.
OR
Use the following ADAMS/View command to create the marker.
marker create marker=.World.ground.g location=-4.1540197817, -31.7518454266, -32.5409133732 orientation=180.0, 90.0,
90.0 rel=.World

Step 43: Set active the Fred model and bring up the contacts panel
Contact forces can only be created on one model at a time. Therefore, specify the Fred model as the active
body and first body to generate contacts. Select CONTACTS on the main-menu and CREATE BASE CONTACT
SET on the sub-menu.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Step 44: Create contact between the various segments and the floor
Specify Head, Upper_Torso, Right_Upper_Arm, Right_Lower_Arm, Left_Upper_Arm, Left_Lower_Arm
Right_Lower_Leg, Left_Lower_Leg, Right_Foot_Multiple and Left_Foot_Multiple as the contact segments.
Specify .World.ground.g as the contact surface marker and set the parameters as in Figure 15. Select APPLY
to create the contacts.
Step 45: Set active the Joe model
Set active the Joe model to create contacts.
Step 46: Create a bushing force element between the left foot and the floor
Since the left foot will not move during the punching simulation, it can be considered as fixed to the floor.
Select the bushing icon from the Main Toolbox. Select .World.Joe_Left_Foot as the first body and the ground
as the second. Right-click the ground and set the location to be(26.1083821273,25.9910445258,5.3811277636). Rename .World.Lbush.
OR
Issue the following ADAMS/View to create the fixed joint between the foot and floor:
marker create marker=.World.Joe_Left_Foot.fix location = 26.1083821273, -25.9910445258, 5.3811277636
orientation=0.0, 0.0, 0.0
marker create marker=.World.ground.fix location = 26.1083821273, -25.9910445258, 5.3811277636 orientation=0.0, 0.0,
0.0
force cre element_like bushing bushing=.World.Lbush stiffness=1.0E+004,1.0E+004,1.0E+004
damping=1000.0,1000.0,1000.0 force_preload=0.0,0.0,0.0 tstiffness=1.0E+004,1.0E+004,1.0E+004
tdamping=1000.0,1000.0,1000.0 torque_preload=0.0,0.0,0.0 i_marker_name = .World.Joe_Left_Foot.fix j_marker_name
= .World.ground.fix

Step 47: Create a bushing force element between the right foot and the floor
Since the right foot will not move during the punching simulation, it can be considered as fixed to the floor.
Select the bushing icon from the Main Toolbox. Select .World.Joe_Right_Foot as the first body and the
ground as the second. Right-click the ground and set the location to be(5.2694873594,-29.2027936596,1.5595139056). Rename .World.Rbush.
OR
Issue the following ADAMS/View to create the fixed joint between the foot and floor:
marker create marker=.World.Joe_Right_Foot.fix location = 5.2694873594, -29.2027936596, -1.5595139056
orientation=0.0, 0.0, 0.0
marker create marker=.World.ground.fix2 location = 5.2694873594, -29.2027936596, -1.5595139056 orientation=0.0, 0.0,
0.0
force cre element_like bushing bushing=.World.Rbush stiffness=1.0E+004,1.0E+004,1.0E+004
damping=1000.0,1000.0,1000.0 force_preload=0.0,0.0,0.0 tstiffness=1.0E+004,1.0E+004,1.0E+004
tdamping=1000.0,1000.0,1000.0 torque_preload=0.0,0.0,0.0 i_marker_name = .World.Joe_Right_Foot.fix
j_marker_name = .World.ground.fix2

Creating Contact Between the Fist and Upper Torso


With the environmental forces created, the interaction forces must be created between the fist of Joe and
the upper_torso of Fred.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Figure 16: Contact marker created on the upper torso of the "Fred" model.

Figure 17: Contact panel set up for the contact between the fist of Fred and the chest of Joe

Step 48: Bring up the single contact force create panel


Select CREATE INDIVIDUAL CONTACT from the sub-menu. Select .World.Fred_Upper_Torso.Ellipsoid as the
contact solid 1 and .World.Joe_Right_Hand.Ellipsoid as contact solid 2. Set the parameters as in Figure 17
and select APPLY.
Step 49: Create a contact between Fred's torso and arm
Create another contact between Fred's upper torso and right upper arm. Select
.World.Fred_Upper_Torso.Ellipsoid as contact solid 1 and .World.Fred_Right_Upper_Arm.Ellipsoid as contact
solid. Set the Referece Marker as .World.Fred_Upper_Torso.cm. Set the parameters as in Figure 17 and
select APPLY. Set active ALL.

Running the Dynamics Simulation


With the forces in place, the punching simulation is ready to be run.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Figure 18: Analyze panel for the dynamic punching simulation

Step 50: Bring up analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 51: Run the simulation
Set gravity at -386.0885826772 in the -y direction and run the simulation for 3 seconds and 300 time steps
using the "Default" integrator settings.

Interrogating the Results


When the simulation is complete the model may be animated. Figure 19 displays the model animation. To
gain insight to the dynamics of the landing and potential injury producing events it would be useful to plot:
Head acceleration of the person punched
Chest acceleration
Punching force

Figure 19: Animation sequence of the event

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Figure 20: Results panel set up to plot the head acceleration of Fred

Step 52: Display simulation


Use the ADAMS/View tools to animate the simulation
Step 53: Display simulation with skeletal model
Set the external display to none and the internal display to skeleton using the LifeMOD Display Toolbox. Use
the ADAMS/View tools to animate the simulation
Step 54: Display simulation with stick model
Set the external display to none and the internal display to stick using the LifeMOD Display Toolbox. Use the
ADAMS/View tools to animate the simulation
Step 55: Display simulation with dummy model
Set the external display to dummy and the internal display to none using the LifeMOD Display Toolbox. Use
the ADAMS/View tools to animate the simulation
Step 56: Display simulation with skel/skin model
Set the external display to skin and the internal display to skeleton using the LifeMOD Display Toolbox. Use
the ADAMS/View tools to animate the simulation

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Figure 21: Head and chest acceleration plotted for the Fred model

Step 57: Bring up results panel


Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu. Select Body Motion as the Data
Type. Select the "Results Window" button to bring up the post processor.
Step 58: Plot the head acceleration
Select "Fred_Head" as the body segment, and "CM_Acceleration" as the characteristic and magnitude
component. Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 1. Select
PLOT CURVE.
Step 59: Plot the chest acceleration
Select "Fred_Upper_Torso" as the body segment, and "CM_Acceleration" as the characteristic and magnitude
component. Select a low pass butterworth data filter with a cutoff frequency of 5.0 and an order of 1. Select
PLOT CURVE.
Step 60: Animate iso view
Select ANIMATION in the sub-menu. Specify zoom with center coordinates of -26, -25, -18 and a scale of 2.
Select iso view and select PLAY.
Step 61: Animate front view
Specify zoom with center coordinates of -20,5.6,-33 and a scale of 3. Select front view and select PLAY.
Step 62: DEMO COMPLETE

Further
This model was put forth to demonstrate the capability of creating multiple, interacting human models in a
single environment. Obviously the model can be further refined and improved, from the point developed in
this example. This model may be refined in many ways including:
Creating an active reaction from the punched model such as blocking, movement, etc.
Developing different activities such as throwing, tripping,etc.
Creating a feedback controller to have models compensate based on the activities of the other models.
Import motion capture data for the exact punching sequence.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Fighting

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Fighting.html[06-Jun-15 12:50:49 PM]

LifeMOD Tutorials | Walking

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall

Clinical Application - Walking


This demonstration problem will illustrate the generation of a forward
dynamics gait model using motion data recorded from a digitized
motion capture source. The motion capture (MOCAP) data is assigned
to the model using a Motion Agent set and the inverse dynamics
simulation is performed. The motion agents are removed, and the
recorded joint angle histories are used to drive the torque functions in
the joints for the forward dynamics simulation.
Features of this model include:
Increasing the biofidelity of the foot segment
Creating foot/floor contact forces
Assigning MOCAP data through motion agent sets.
Running inverse-dynamics simulations
Running forward-dynamics simulations

Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine

Sections
Generating the Body Segments
Generating the Joints
Generating the Motion Agents
Running the Equilibrium Analysis
Creating the Foot-Floor Contacts
Running the Inverse Dynamics Simulation
Preparing the Model for the Forward Dynamics Simulation
Running the Forward Dynamics Simulation
Interrogating the Results
Further
Acknowledgement

Tennis
Walking
NeckSIM:Whiplash

Generating the Body Segments


In this phase, the human body model is developed from the model library file. The model library SLF file
contains body measurement parameters, joint data and motion capture data.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Walking.html[06-Jun-15 12:50:52 PM]

LifeMOD Tutorials | Walking

Figure 1: Importing the body information for the Britney model. For this example, select only the body to build even
though the model file contains motion information.

Step 1: Bring up the import panel


Launch the LifeMOD software and select CREATE NEW MODEL to begin a new modeling session. Select
XCHANGE from the main-menu and IMPORT SLF MODEL FILE from the sub-menu.
Step 2: Import the body model from the model library
Select Model Library and Full Body Gait as the Model Library SLF File. Check only the Body in build section
and select APPLY to create the body.

Generating the Joints


In this phase, the human segments created in the first phase are connected together with kinematic joints. At
the same time torque functions are created at each joint degree of freedom. The torque functions are simple,
lightly damped springs to stabilized the model during the inverse-dynamics simulation. For information on
selecting specific model parameters for this section see Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Walking.html[06-Jun-15 12:50:52 PM]

LifeMOD Tutorials | Walking


Figure 2: Joint base set creation panel

Step 3: Bring up joint create panel


Select JOINTS on the main-menu and CREATE BASE JOINT SET on the sub-menu.
Step 4: Create the passive spring-damper joints
Select "Prepare Model with Recording Joints (To be trained in an inverse-dynamics simulation) Specify the
nominal joint stiffness to be 1e6 and the damping to be 1e4. Select the "Select All" button and select APPLY.

Generating the Motion Agents


The model, as it exists, is passive and must be driven with an external force. To drive the model to capture
the simple joint angle histories for each joint, Motion Agents will be added to the model. The motion agents
have the effect of guiding the model to track the segment motion contained in the motion input file.
The steps include importing the motion data file, creating the motion agents, fitting the model to the data,
and synchronizing the motion agents. The synchronization process reduces the slight differences between the
model and the data.
For this example only a subset of the captured data is used. The discarded data represents known inaccuracies
such as occlusions, etc.

Figure 3: MOCAP data import panel set up to retrieve gait data

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Walking.html[06-Jun-15 12:50:52 PM]

LifeMOD Tutorials | Walking

Figure 4: Motion agent creation panel set up to generate complete motion agent set.

Step 5: Bring up MOCAP data import panel


Select MOTION on the main-menu and IMPORT MOTION CAPTURE DATA on the sub-menu.
Step 6: Read in the motion capture data
Select Motion Library and "Full Body: Gait" for the Motion Library SLF File. In this example select Use PARTIAL
Data SET with a Simulation Start Time of 1.5 and an End Time of 999.9. Set the Data Prefix to "Gait."
Step 7: Bring up the motion agent create panel
Select MOTION on the main-menu and CREATE BASE MOTION AGENT SET on the sub-menu.
Step 8: Specify the data locations and create the motion agents
Select "Plug-in-Gait Marker Set". If data does not exist for a particular marker, the option tab will be rendered
inactive. Adjust the weights on Rank, Rhee, Rtoe, Lank, Lheel, and Ltoe to 10 to increase the contribution of
the motion agents to these sites. This will scale the stiffness of the foot motion agents, since, in this case, the
data for the feet is more reliable. Set the Data Prefix to "Gait" and select APPLY.

Running the Equilibrium Analysis


In order to fit the model to the data positions, an equilibrium analysis must be performed. This is a dynamics
analysis which holds the positions of the data-driven motion agents (yellow balls) fixed, while finding the
minimum energy configuration in the springs of the motion agents. The motion agents with the higher weights
will have more influence on the model and the initial configuration.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Walking.html[06-Jun-15 12:50:52 PM]

LifeMOD Tutorials | Walking

Figure 5: Data locations when agents are first created (left), after moving into center of data cloud (center) and after
equilibrium simulation (right)

Step 9: Bring up analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 10: Run the equilibrium simulation
Check "Freeze Motion Agents for Equilibrium Analysis" and run the simulation for 1 seconds and 100 time
steps. Set the integrator settings to "Robust"
Step 11: Update the model configuration with static results
Select "Update Posture with Equilibrium Results" to adjust the starting posture of the model to the equilibrium
position.
Step 12: Align the body markers with data
Select "Synchronize Body Marker Locations with Data Locations" to move the body marker locations to the
locations of the data.

Creating the Foot-Floor Contacts


The contact ellipsoids automatically created at the time of segment generation, will now be used to create the
foot-floor contact elements. For information on selecting specific model parameters for this section see
Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Walking.html[06-Jun-15 12:50:52 PM]

LifeMOD Tutorials | Walking

Figure 6: Contact generation panel set to create contacts on the ellipsoids of the feet

Step 13: Create the ground contact marker


Create a marker to designate the location and orientation of the ground (z-axis pointing normal to surface) by
selecting the create marker icon from the main toolbox. Create the marker and modify the location to (0,0,0)
and orientation to (0,-90,0). Rename .World.ground.flr.
OR
Create the marker using the following ADAMS/View commands.
marker cre marker=.World.ground.flr loc= 0,0,0 ori= 0.0, -90.0, 0.0 rel= .World

Step 14: Bring up the contact panel


Select CONTACTS on the main-menu and CREATE BASE CONTACT SET on the sub-menu.
Step 15: Create the contact forces between the feet and the floor
Select "Ellipsoid-Plane" to get access to "Create Contact Surface Plane " that needs to be checked, set depth
to 10, X-length to 4000 and Y-length to 1500. Check force vectors to create scaled force graphics during
animation and check Single so as to create only two vectors instead of one per contact element on the feet.
Select APPLY.

Running the Inverse Dynamics Simulation


From this simulation, it can be seen that the human model will track the motion data. Discrepancies between
the recorded motion history and the performance of the model can be witnessed by observing the Motion
Agents during animation. A yellow sphere will track the motion exactly, a red sphere is rigidly attached to the
body segment. When a discrepancy between the data and the kinematics restraints in the model occur there
will be a separation of these two spheres (the bushing uniting the two parts extends). This flexibility allows
the Motion Agents to become "motion influencers" rather that motion governors. This allows for errors in data,
measurement and collection.
As a product of the inverse-dynamics simulation the rotations of the joints ("training" elements) are recorded
to be used in the following forward-dynamics simulation.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Walking.html[06-Jun-15 12:50:52 PM]

LifeMOD Tutorials | Walking

Figure 7: Animation sequence for the inverse-dynamics analysis, and close-up view of motion agent activity (right).

Step 16: Bring up analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 17: Run the simulation
Set the gravity to -9806 in the Y-direction and run the simulation for 3.3 seconds and 330 time steps using
the "Default" integrator settings.
Step 18: Display animation
Display animation using the ADAMS/View toolbox.

Preparing the Model for the Forward Dynamics Simulation


With the joint angle history recorded from the inverse-dynamics simulation, it may now be used in a
proportional-derivative controller to produce a torque to recreate the motion history. The process entails
removing the Motion Agents and updating the Joints to include the PD controllers or "trained" joints.
Also a tracker agent will be installed. The tracker agent is a motion agent which is driven using data recorded
from the inverse-dynamics analysis. The agent will be used to guide the model and account for any dynamic
instabilities. For information on selecting specific model parameters for this section see Choosing Model
Parameters.

Figure 8: Panel to install PD-Servo controllers ("trained" elements) on the joints for forward dynamics simulation.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Walking.html[06-Jun-15 12:50:52 PM]

LifeMOD Tutorials | Walking

Figure 9: Panel to create tracker agent

Step 19: Bring up the joint training panel


Select JOINTS from the main-menu and TRAINING from the sub-menu.
Step 20: Install forward dynamics data
Select Select "Install Trained Driver Rotational Joint Elements". Set the servo proportional gain to 1e5,
derivative gain to 1e3. Select "Select ALL" button and APPLY to update the joints.
Step 21: Bring up the motion agent tracker panel
Select MOTION on the main-menu and CREATE TRACKER AGENT on the sub-menu.
Step 22: Create the tracking agent
Set the stiffness parameters as in Figure 9 and specify all freedoms as driven except for the Y-dof which is
specified as free. This allows the model to create the proper ground reaction force.

Running the Forward Dynamics Simulation


With the joint formulated to include PD-servo controllers based on motion recorded from the inverse-dynamics
analysis and the foot-floor contact forces installed, the model is now ready a forward dynamics simulation.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Walking.html[06-Jun-15 12:50:52 PM]

LifeMOD Tutorials | Walking

Figure 10: Animation sequence showing model motion and ground reaction force vectors

Step 23: Bring up analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 24: Disable the motion agents and run the simulation
Set the gravity to -9806 in the Y-direction and run the simulation for 3.3 seconds and 330 time steps using
the "Robust" integrator settings. Be sure to disable the motion agents.

Interrogating the Results


When the simulation is complete the model may be animated. To gain insight to the dynamics of gait and the
joint reactions necessary for locomotion.
Hip, knee and ankle torques
Ground reaction force

Figure 11: Panel set up to plot the left hip torque

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Walking.html[06-Jun-15 12:50:52 PM]

LifeMOD Tutorials | Walking

Figure 12: Left leg torques (left plot), ground reaction forces (right plot)

Step 25: Display simulation


Use the ADAMS/View toolbox to animate the model.
Step 26: Display simulation with skin/skel model
Set the External display to Skin and the Internal display to Skeleton using the LifeMOD Display Toolbox and
use the ADAMS/View toolbox to animate the model
Step 27: Bring up results panel
Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu. Select Joints as the Data Type
Select "Results Window" button to bring up the results processor.
Step 28: Plot the left hip joint torques
Select "Britney_Left_Hip", torque characteristic and sagittal component. Select a low pass butterworth data
filter with a cutoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT to create the curve.
Step 29: Plot the left knee joint torques
Select "Britney_Left_Knee", torque characteristic and sagittal component. Select a low pass butterworth data
filter with a cutoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT to create the curve.
Step 30: Plot the left ankle joint torques
Select "Britney_Left_Ankle", torque characteristic and sagittal component. Select a low pass butterworth data
filter with a cutoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT to create the curve.
Step 31: Animate iso view
Select ANIMATION in the sub-menu. Select Divide Window, select iso view and select PLAY.
Step 32: Select scale joint torques globally
Turn on the global scaling of the joint graphics by selecting Scale Joint/Tissue Graphics, Joints, Scale Globally
and the light bulb to scale the muscle graphics. Turn on the joint graphics using the LifeMOD Display Toolbox
and select Joints-Graphics and on.
Step 33: Animate the stick model
In the LifeMOD Display Toolbox select none as the external representation and stick as the internal
representation. Select front view and select PLAY. Observe the scaling joint torque bubbles.
Step 34: Animate right view
Select right view and select PLAY.
Step 35: Turn off joint graphics
Turn on the joint graphics using the LifeMOD Display Toolbox and select Joints-Graphics and off. Turn on the
skeleton by selecting none as the external representation and skeleton as the internal representation in the
LifeMOD Display Toolbox.
Step 36: Bring up the plotting panel
Select DATA DISPLAY in the sub-menu and Contacts as the Data Type.
Step 37: Plot the ground reaction force for right foot
Select "Britney_GRX_Rfoot_1", magnitude component. Select a low pass butterworth data filter with a cutoff
frequency of 5.0 and an order of 5. Check "New Plot" and select CREATE FULL PLOT to create the curve.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Walking.html[06-Jun-15 12:50:52 PM]

LifeMOD Tutorials | Walking

Step 38: Plot the ground reaction force for left foot
Select "Britney_GRX_Lfoot_1", magnitude component. Select a low pass butterworth data filter with a cutoff
frequency of 5.0 and an order of 5. Select CREATE FULL PLOT to create the curve.
Step 39: Animate iso view
Select ANIMATION from the sub-menu. Select Divide Window, iso view and select PLAY.
Step 40: Animate front view
Select front view and select PLAY.
Step 41: Animate right view
Select right view and select PLAY.
Step 42: DEMO COMPLETE

Further
This model was put forth to demonstrate the capability of a forward dynamics gait model to assess the
internal reactions and external ground reactions of locomotion.
This model may be refined in many areas including:
Creating the full body
Adding a balance control controller.
Refine the foot further to verify ground reaction results to force plane measurements
Add point-to-point muscle forces instead of torques
Add force-based knee joints to the model.

Acknowledgement
A special thanks for furnishing the data for this model to:
Mike Kocourek
Business Development Manager, Life Sciences Division
Vicon Motion Systems, Inc.
www.vicon.com

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Walking.html[06-Jun-15 12:50:52 PM]

LifeMOD Tutorials | Gait Analysis

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

Clinical Application - Gait Analysis


The motion capture was performed for two
individuals to compare various aspects of
their functional gait parameters. Two models
will be built in LifeMOD and the simulations
performed with the models walking side-by
side for a visual comparison, as well as
examining gait kinematics, kinetics and
ground reaction forces.
Features of this model include:
Inverse-dynamics simulation
Forward-dynamics simulation
Model driven with motion-capture data
Two human simulation models
Direct model comparison

Steps
Generating the Body Segments
Generating the Joints
Generating the Motion Agents
Running the Equilibrium Analysis
Creating the Foot-Floor Contacts
Running the Inverse Dynamics Simulation
Preparing the Model for the Forward Dynamics Simulation
Running the Forward Dynamics Simulation
Interrogating the Results
Further
Acknowledgement

Generating the Body Segments


In this phase, the human segments of models are created for both bodies. The first body, "Connor"
is created from properties in the model library. The second body, "Casey" is created from properties
in model library.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Figure 1: Body segment generation panel for "Connor" model and partial body model

Step 1: Bring up segments panel and set fields


Launch the LifeMOD software and select CREATE NEW MODEL to begin a new modeling session.
Select XCHANGE from the main-menu and IMPORT SLF MODEL FILE from the sub-menu.
Step 2: Import the Connor body from the model library
Select Lower Body Gait Case 2 as the Model Library SLF File. Make sure Body is checked and select
APPLY to create the Connor body
Step 3: Import the Casey body from the model library
Select Lower Body Gait Case 1 as the Model Library SLF File. Make sure Body is checked and select
APPLY to create the Casey body

Generating the Joints


In this phase, the human segments created in the first phase are connected together with kinematic
joints. At the same time torque functions are created at each joint degree of freedom. The torque
functions are simple, lightly damped springs to stabilize the model during the inverse-dynamics
simulation. For information on selecting specific model parameters for this section see Choosing
Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Figure 2: Joint base set creation panel

Step 4: Bring up joint create panel


Select JOINTS on the main-menu and CREATE BASE JOINT SET on the sub-menu.
Step 5: Create the passive spring-damper joints on Casey
Select "Prepare Model with Recording Joints (To be trained in an inverse-dynamics simulation)."
Specify the nominal joint stiffness to be 1e5 and the damping to be 1e4. Select the right and left
legs and select APPLY.
Step 6: Set active the Connor model
Specify the active model (at the top of the panel) to be "Connor".
Step 7: Create the passive spring-damper joints on Connor
Specify the nominal joint stiffness to be 1e5 and the damping to be 1e4. Select the right and left
legs and select APPLY.

Generating the Motion Agents


The models, as they exist, are passive and must be driven with an external force. To drive the
model to capture the simple joint angle histories for each joint, Motion Agents will be added to the
model. The motion agents have the effect of guiding the model to track the segment motion
contained in the motion input file.
The steps include importing the motion data file, creating the motion agents, fitting the model to the
data, and synchronizing the motion agents. The synchronization process reduces the slight
differences between the model and the data.
For this example only a subset of the captured data is used. The discarded data represents known
inaccuracies such as occlusions, etc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Figure 3: MOCAP data import panel set up to retrieve gait data for the "Connor" model

Figure 4: Motion agent creation panel set up to generate complete motion agent set.

Step 8: Bring up MOCAP data import panel


Select MOTION on the main-menu and IMPORT MOTION CAPTURE DATA on the sub-menu. Specify
Motion Library.
Step 9: Read in the motion capture data for the Connor model
Select "Lower Body: Gait Case 2" as the motion library file. Specify the Data Prefix as Gait_Connor
and Use FULL Data Set. Select APPLY.
Step 10: Bring up the motion agent create panel
Select MOTION on the main-menu and CREATE BASE MOTION AGENT SET on the sub-menu.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Step 11: Specify the the weights on the motion agents and create
Select "Helen Hayes Lower Body Protocol". If data does not exist for a particular marker, the option
tab will be rendered inactive. Adjust the weights as in Figure 4 to increase the contribution of the
motion agents of these markers where data is considered to be more reliable and artifact-free.
Check "Global" and Data Prefix to Gait_Connor. Select APPLY.
Step 12: Set active the Casey model
Specify the active model (at the top of the panel) to be "Casey".
Step 13: Bring up MOCAP data import panel
Select MOTION on the main-menu and IMPORT MOTION CAPTURE DATA on the sub-menu. Specify
the Motion Library.
Step 14: Read in the motion capture data for the Casey model
Select "Lower Body: Gait Case 1" as the motion library file. Specify the Data Prefix as Gait_Casey
and Use FULL Data Set.
Step 15: Bring up the motion agent create panel
Select MOTION on the main-menu and CREATE BASE MOTION AGENT SET on the sub-menu.
Step 16: Specify the the weights on the motion agents and create
Select "Helen Hayes Lower Body Protocol". If data does not exist for a particular marker, the option
tab will be rendered inactive. Adjust the weights as in Figure 4 to increase the contribution of the
motion agents of these markers where data is considered to be more reliable and artifact-free.Check
"Global" and set the Data Prefix to Gait_Casey.

Running the Equilibrium Analysis


In order to fit the model to the data positions, an equilibrium analysis must be performed. This is a
dynamics analytics which holds the positions of the data-driven motion agents (yellow balls) fixed,
while finding the minimum energy configuration in the springs of the motion agents. The motion
agents with the higher weights will have more influence on the model and the initial configuration.

Figure 5: Data locations when agents first created (left), and during equilibrium analysis (center), final
equilibrium position (right).

Step 17: Set active both models


Specify the active model (at the top of the panel) to be "ALL".
Step 18:Bring up analyze panel
Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 19: Run the equilibrium simulation
Check "Freeze Motion Agents for Equilibrium Analysis" and run the simulation for 4 seconds and 100
time steps using the "Robust" integrator settings.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Step 20: Set active Casey model


Specify the active model (at the top of the panel) to be "Casey".
Step 21: Update the model configuration with equilibrium results
Select "Update Posture with Equilibrium Results" button to adjust the starting posture of the model
to the equilibrium position.
Step 22: Set active Connor model
Specify the active model (at the top of the panel) to be "Connor".
Step 23: Update the model configuration with equilibrium results
Select "Update Posture with Equilibrium Results" button to adjust the starting posture of the model
to the equilibrium position.
Step 24: Synchronize marker locations
Select "Synchronize Body Marker Locations with Data Locations" button to move the body marker
locations to the locations of the data.
Step 25: Set active Casey model
Specify the active model (at the top of the panel) to be "Casey".
Step 26: Synchronize marker locations
Select "Synchronize Body Marker Locations with Data Locations" button to move the body marker
locations to the locations of the data.

Creating the Foot-Floor Contacts


The contact ellipsoids automatically created at the time of segment generation, will now be used to
create the foot-floor contact elements. For information on selecting specific model parameters for
this section see Choosing Model Parameters.

Figure 6: Contact generation panel set to create contacts on the ellipsoids of the feet

Step 27: Create the ground contact marker


Create a marker to designate the location and orientation of the ground (z-axis pointing normal to
surface) Select the create marker icon from the main toolbox. Select any location and modify the
location to (0,0,0) and orientation to (0,-90,0). Rename .World.ground.flr.
OR
file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Create the marker by using the following ADAMS/View commands.


marker cre marker=.World.ground.flr loc= 0,0,0 ori= 0.0, -90.0, 0.0 rel= .World

Step 28: Bring up the contact panel


Select CONTACTS on the main-menu and CREATE BASE CONTACT SET on the sub-menu.
Step 29: Create the contact forces between the feet and the floor
Check "Create Contact Surface Graphics", set depth to 10, X-length to 3000 and Y-length to 3000.
Check force vectors to create scaled force graphics during animation and check simple so as to
create only two vectors instead of one per contact element on the feet. See figure 6 for contact
parameters. Select APPLY.
Step 30: Set active Connor model
Specify the active model (at the top of the panel) to be "Connor".
Step 31: Create the contact forces between the feet and the floor
Check "Create Contact Surface Graphics", set depth to 10, X-length to 3000 and Y-length to 3000.
Check force vectors to create scaled force graphics during animation and check simple so as to
create only two vectors instead of one per contact element on the feet. See figure 6 for contact
parameters. Select APPLY.

Running the Inverse Dynamics Simulation


From this simulation, it can be seen that the human model will track the motion data. Discrepancies
between the recorded motion history and the performance of the model can be witnessed by
observing the Motion Agents during animation. A yellow sphere will track the motion exactly, a red
sphere is rigidly attached to the body segment. When a discrepancy between the data and the
kinematics restraints in the model occur there will be a separation of these two spheres (the bushing
uniting the two parts extends). This flexibility allows the Motion Agents to become "motion
influencers" rather that motion governors. This allows for errors in data, measurement and
collection.
As a product of the inverse dynamics simulation the rotations of the joints ("training" elements) are
recorded to be used in the following forward dynamics simulation.

Figure 7: Analysis panel for the inverse-dynamics analysis

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Step 32: Set active both models


Specify the active model (at the top of the display panel) to be "ALL".
Step 33: Bring up analyze panel
Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 34: Run the simulation
Set the gravity to -9806 in the Y-direction and run the simulation for 2.5 seconds and 250 time
steps using the "Default" integrator settings.
Step 35: Display animation
Display animation using the ADAMS/View toolbox.

Preparing the Model for the Forward Dynamics Simulation


With the joint angle history recorded from the inverse-dynamics simulation, it may now be used in a
proportional-derivative controller to produce a torque to recreate the motion history. The process
entails removing the Motion Agents and updating the Joints to include the PD controllers or "trained"
joints.
Also a tracker agent will be installed. The tracker agent is a motion agent which is driven using data
recorded from the inverse-dynamics analysis. The agent will be used to guide the model and account
for any dynamic instabilities. For information on selecting specific model parameters for this section
see Choosing Model Parameters.

Figure 8: Panel to install PD-Servo controllers ("trained" elements) on the joints for forward dynamics
simulation.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Figure 9: Panel to create tracker agent

Step 36: Set active Connor model


Specify the active model (at the top of the panel) to be "Connor".
Step 37: Bring up the joints training panel
Select JOINTS from the main-menu and TRAINING from the sub-menu.
Step 38: Update joints with ACTIVE elements
Select "Install Trained Driver Rotational Elements".
Step 39: Set the fields and update the joints
Specify the Servo proportional gain at 1e5 and the derivative gain at 1e3. Select APPLY to update
the leg joints with the active elements. A rule of thumb in selecting controller gains is to select a
relatively high proportional gain, and a derivative gain at about 10% of the proportional gain. These
values may be varied using the Parameters selection from the LifeMOD main menu to note the
effect on the simulation results.
Step 40: Bring up the motion agent tracker panel
Select MOTION on the main-menu and CREATE TRACKER AGENT on the sub-menu.
Step 41: Create the tracking agent
Set the stiffness parameters as in Figure 9 and specify all freedoms as driven except for the Y-dof
which is specified as free. This allows the model to create the proper ground reaction force.
Step 42: Set active Casey model
Specify the active model (at the top of the panel) to be "Casey".
Step 43: Bring up the joints training panel
Select JOINTS from the main-menu and TRAINING from the sub-menu.
Step 44: Update joints with ACTIVE elements
Select "Intall Trained Driver Rotational Joint Elements" .
Step 45: Set the fields and update the joints
Specify the Servo proportional gain at 1e6 and the derivative gain at 1e5. Select APPLY to update
the leg joints with the active elements
Step 46: Bring up the motion agent tracker panel
Select MOTION on the main-menu and CREATE TRACKER AGENT on the sub-menu.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Step 47: Create the tracking agent


Set the stiffness parameters as in Figure 9 and specify all freedoms as driven except for the Y-dof
which is specified as free. This allows the model to create the proper ground reaction force.

Running the Forward Dynamics Simulation


With the joint formulated to include PD-servo controllers based on motion recorded from the
inverse-dynamics analysis and the foot-floor contact forces installed, the model is now ready a
forward dynamics simulation.

Figure 10: Animation of the Connor and Casey models with ground reaction force vectors displayed

Step 48: Set active both models


Specify the active model (at the top of the panel) to be "ALL".
Step 49: Bring up analyze panel
Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 50: Run the simulation
Set the gravity to -9806 in the Y-direction, select "Disable Motion Agents" and "Intial Static" and run
the simulation for 2.5 seconds and 250 time steps using the "Robust" integrator settings.

Interrogating the Results


When the simulation is complete the model may be animated. To gain insight to the dynamics of
gait and the joint reactions necessary for locomotion.
Hip, knee and ankle torques
Ground reaction force

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Figure 11: Left leg hip torques for both models

Step 51: Display simulation


Use the ADAMS/View toolbox to animate the model.
Step 52: Display simulation with skin/skel model
Set the external display to skin and the internal to skeleton using the LifeMOD Display Toolbox. Use
the ADAMS/View toolbox to animate the model
Step 53: Bring up results panel
Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu. Select Joints as the Data
Type. Select "Results Window" button to bring up the results processor.
Step 54: Plot the Connor left hip joint torques
Select "Connor_Left_Hip", torque characteristic and sagittal component. Select a low pass
butterworth data filter with a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 55: Plot the Casey left hip joint torques
Select "Casey_Left_Hip", torque characteristic and sagittal component. Select a low pass butterworth
data filter with a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 56: Animate right view
Select ANIMATION from the sub-menu. Select Divide Window. Select right view and select PLAY.
Step 57: Fix camera and animate right view
Check "Fix Camera to Marker " box and enter ".World.Connor_Lower_Torso.cm " as the marker to be
tracked. Select Zoom and enter 0.0, 574.0, -1150.0 as the center coordinates and 2.6 as the scale.
Select right view and select PLAY.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Figure 12: Left leg knee torques for both models

Step 58: Plot the Connor left knee joint torques


Select DATA DISPLAY in the sub-menu. Select "Connor_Left_knee", torque characteristic and sagittal
component. Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of
5. Check "New Plot" and select CREATE FULL PLOT.
Step 59: Plot the Casey left knee joint torques
Select "Casey_Left_knee", torque characteristic and sagittal component. Select a low pass
butterworth data filter with a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 60: Animate top view
Select ANIMATION in the sub-menu. Select Divide Window. Select top view and select PLAY.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Figure 13: Left leg ankle torques for both models

Step 61: Plot the Connor left ankle joint torques


Select DATA DISPLAY in the sub-menu. Select "Connor_Left_ankle", torque characteristic and sagittal
component. Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of
5. Check "New Plot" and select CREATE FULL PLOT.
Step 62: Plot the Casey left ankle joint torques
Select "Casey_Left_ankle", torque characteristic and sagittal component. Select a low pass
butterworth data filter with a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 63: Animate ISO view
Select ANIMATION in the sub-menu. Select "Divide Window," iso view and select PLAY.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Figure 14: Ground reaction force for both models

Step 64: Plot the ground reaction force for Connor right foot
Select DATA DISPLAY in the sub-menu. Select Contacts as the Data Type "Connor_GRX_Rfoot_1",
magnitude component. Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and
an order of 5. Check "New Plot" and select CREATE FULL PLOT.
Step 65: Plot the ground reaction force for Connor left foot
Select "Connor_GRX_Lfoot_1", magnitude component. Select a low pass butterworth data filter with
a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 66: Plot the ground reaction force for Casey right foot
Select "Casey_GRX_Rfoot_1", magnitude component. Select a low pass butterworth data filter with a
cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 67: Plot the ground reaction force for Casey left foot
Select "Casey_GRX_Lfoot_1", magnitude component. Select a low pass butterworth data filter with a
cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Figure 15: Right leg flexion angles for both models' hips, knees, and ankles

Step 68: Animate right view


Select ANIMATION in the sub-menu. Select "Divide Window," right view and select PLAY.
Step 69: Plot the Connor right hip flexion angle
Select DATA DISPLAY in the sub-menu. Select Joints as the Data Type. Select "Connor_Right_Hip",
Angle characteristic and sagittal component. Select a low pass butterworth data filter with a cuttoff
frequency of 5.0 and an order of 5. Check "New Plot" and select CREATE FULL PLOT.
Step 70: Plot the Casey right hip flexion angle
Select "Casey_Right_Hip", Angle characteristic and sagittal component. Select a low pass butterworth
data filter with a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 71: Plot the Connor right knee flexion angle
Select "Connor_Right_Knee", Angle characteristic and sagittal component. Select a low pass
butterworth data filter with a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 72: Plot the Casey right knee flexion angle
Select "Casey_Right_Knee", Angle characteristic and sagittal component. Select a low pass
butterworth data filter with a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 73: Plot the Connor right ankle flexion angle
Select "Connor_Right_Ankle", Angle characteristic and sagittal component. Select a low pass
butterworth data filter with a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 74: Plot the Casey right ankle flexion angle
Select "Casey_Right_Ankle", Angle characteristic and sagittal component. Select a low pass
butterworth data filter with a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 75: Fix camera and animate right view
Select ANIMATION in the sub-menu. Check "Camera Track" box and enter
".World.Connor_Lower_Torso" as the part to be tracked. Select right view and select PLAY.
Step 76: DEMO COMPLETE

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Gait Analysis

Further
This model was put forth to demonstrate the creation of a active human model driven using data
from a motion capture system. Obviously the model can be further refined and improved, from the
point developed in this example. The intention with this example was to touch of the various
modeling functions of both the LifeMOD Biomechanics Modeler and ADAMS/View necessary to
create a model of this nature for this application.
This model may be refined in many areas including:
Creating a force-based knee joint to examine local loadings on ligaments and (see ForceBased Knee Joint tutorial ).
Create muscles to drive motion.
Create a detailed foot model to understand the balancing activity of the foot.

Acknowledgement
A special thanks for furnishing the data for this model to:
Diego Crovato
eMotion S.r.l
Italy
www.emotion3d.com/contact.html

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Gait%20Analysis.html[06-Jun-15 12:50:54 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping

NeckSIM: Detailed Spine Whiplash


A new series of high fidelity function modules are now
available in LifeMOD. This demo features the new
module LifeMOD/NeckSIM.
For this example, the single base segment of the neck is
automatically discretized using LifeMOD/NeckSIM into
C1-C7 vertebrae elements. In addition to the individual
parts, bushing forces representing disk compression and
shear forces are automatically generated between the
segments.
The model is stabilized with a set of ligament forces for
the interspinous, flaval, anterior longitudinal and
capsule.
Muscle force sets representing the trapezius,
semispinalis capitis, semispinalis cervicis, longus colli
and the sternocleidomastoid are created on the model.
The Hill-Formulation muscle model is used to model the
muscle dynamics. Tissue sliding elements are created for
each muscle to permit the interaction between the tissue and bone.
A translational joint is used between the upper_torso and ground to provide a translational
acceleration profile to the model representing a frontal impact, a rear impact and a lateral impact.

Ground Reaction Force


Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine

Key skills exercised in this tutorial include:


Creating a model, joints, posture and motion from the model library
Importing a club head and grip from the model library
Modeling the flexible golf club
Training the joints to produce the necessary torques to drive the human model
Creating foot/floor forces
Creating hand/club contact forces

Tennis
Walking
NeckSIM:Whiplash

Sections
Generating the Body Segments
Reducing the Model
Generating the Joints
Using NeckSIM to Discretize the Neck
Creating the Ligaments
Creating the Trapezius Muscle Group
Creating the Semispinalis Capitis Muscle Group
Creating the Semispinalis Cervicis Muscle Group
Creating the Longus Colli Muscle Group

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Creating the Sternocleidomastoid Muscle Group


Setting up the Acceleration Mechanism
Running the Simulations for the Frontal, Rear and Side Impacts
Interrogating the Results
Further

Generating the Body Segments


In this phase the human body models are generated. The body consists of 19 segments and 18
joints with the mass properties of a 95% Chinese male and the joint characteristics of the Hybrid III
crash dummy.

Figure 1: Body segment creation panel

Step 1: Bring up segments panel and set fields for the body
Begin the ADAMS/View modeling session and select the LifeMOD button at the bottom left portion
of the screen. Select SEGMENTS from the main-menu and CREATE BASE SET from the sub-menu.
Step 2: Create the body
Enter "World" for the world model name and "Danny" for the human body name. Units are InchLbm-Llbf and the color is set to red. Hands are set to grip and the full body model is specified. The
model is created from an anthropometric database named "GeBOD". The body will be constructed for
a 170 lb person of 70 inches in height. Select OK to set parameters and select Create Body
Parameter Table to create the segment measurement table and Create Human Model from Parameter
Table to create the model.

Reducing the Model


The segments of the full body model are reduced to concentrate on the head, neck and upper_torso.
The upper_torso will be fixed to ground in subsequent steps.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Figure 2: Body segment delete panel to remove all segments except for the head, neck and upper_torso

Step 3: Bring up segment delete panel


Select SEGMENTS in the main-menu and DELETE in the sub-menu.
Step 4: Delete the extra segments
Use the body segment delete panel to remove the segments as displayed in the panel above.

Generating the Joints


In this phase, the human segments created in the first phase are connected together with kinematic
joints. At the same time torque functions are created at each joint degree of freedom. The torque
function is created from the Hybrid III database of torque functions. The torque is based on a
nonlinear joint stiffness, damping, friction and hysteresis (losses), specific to each DOF for each joint
as derived from the physical Hybrid III crash dummy. A scale factor of 1.0 us used which represents
the baseline stiffness of the Hybrid III crash dummy.

Figure 3: Panel to create Hybrid-III joints on the body model.

Step 5: Bring up joint create panel


Select JOINTS in the main-menu and CREATE BASE SET in the sub-menu. Select HYBRID III CRASH

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

DUMMY STRENGTH CHARACTERISTICS. Enter a scale factor of 1.0 to use the default stiffness of the
crash dummy.
Step 6: Create the base joints on the spine, and arms
Check Spinal, Left Arm and Right Arm and select EXECUTE to build the base joints.

Using NeckSIM to Discretize the Neck


LifeMOD/NeckSIM is now used to automatically discretize the single base neck segment. Each
vertebrae will be made into a part with distributed mass properties from the single neck segment. In
addition, the disk forces between the vertebrae will be modeled using 6 degree-of-freedom springs.

Figure 4: NeckSIM panel used to auto discretize the single neck segment into the vertebrae and disk forces.
Single neck segment is dispersed into c1-c7 vertebrae components. Disks are represented as 6 degree-offreedom springs.

Step 7: Zoom in on the neck and bring up the discretize segment panel
Use the ADAMS/View display tools to rotate the view to the side and zoom in on the neck. Turn of
the Joint Graphics using the LifeMOD Display Toolbox. Select PLUGINS in the main-menu and
NECKSIM in the sub-menu. Select Disks Modeled as Bushing Joints with Averaged DeJager Data as
the Type of Joint.
Step 8: Auto discretize the neck
Select LOAD THE CURRENT JOINT ANGLES. The panel should be filled with all 0's, since the model is
still in the created position. Any new angle entered will be an offset from this position.

Create the Ligaments


After the neck has been discretized into its individual vertebrae, ligament forces are generated.
Various levels of ligaments will be created including the interspinous, flaval, longitudinal and the
facet joint capsule ligaments.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Figure 5: Side view showing the interspinous, flaval and anterior longitudinal ligaments

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Figure 6: Rear view showing the left and right fact joint capsule ligaments

Figure 7: The panel used to create the ligaments.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Step 9: Bring up the single soft tissue panel


Select SOFT TISSUES on the main-menu and CREATE SINGLE on the sub-menu.
Step 10: Create the interspinous ligaments
Use the panel above to create the ligaments. In this example each ligament will have a strain
stiffness of 100 and damping of 2.0. The table below displays the parts and attachment locations for
each ligament
Tissue
Name

Origin Part

Insertion Part

NStiss_1
NStiss_2
NStiss_3
NStiss_4
NStiss_5
NStiss_6
NStiss_7
NStiss_8

.Danny_C7
.Danny_C6
.Danny_C5
.Danny_C4
.Danny_C3
.Danny_Axis
.Danny_Atlas
.Danny_Head

.Danny_Upper_Torso
.Danny_C7
.Danny_C6
.Danny_C5
.Danny_C4
.Danny_C3
.Danny_Axis
.Danny_Atlas

Origin Attachment
Location
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

21.0
22.1
23.1
24.0
24.9
25.8
26.4
26.7

Insertion Attachment
Location
-2.6
-2.5
-2.4
-2.2
-2.0
-1.6
-1.7
-2.5

0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

20.6
21.3
22.6
23.5
24.6
25.6
26.3
26.6

-2.7
-2.6
-2.4
-2.4
-2.0
-1.7
-1.5
-2.0

Step 11: Reduce the ligament graphical scale to 2


Select Ligaments/Tendons as the tissue in the LifeMOD Display Toolbox. Use the slider to scale the
tissues to a level of 2.
Step 12: Create the flaval ligaments
Use the panel above to create the ligaments. In this example each ligament will have a strain
stiffness of 100 and damping of 2.0. The table below displays the parts and attachment locations for
each ligament
Tissue
Name

Origin Part

Insertion Part

NStiss_9
NStiss_10
NStiss_11
NStiss_12
NStiss_13
NStiss_113
NStiss_114
NStiss_115

.Danny_C7
.Danny_C6
.Danny_C5
.Danny_C4
.Danny_C3
.Danny_axis
.Danny_atlas
.Danny_head

.Danny_Upper_Torso
.Danny_C7
.Danny_C6
.Danny_C5
.Danny_C4
.Danny_C3
.Danny_axis
.Danny_atlas

Origin Attachment
Location
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

21.2
22.2
23.0
24.0
25.0
25.9
26.4
26.7

Insertion Attachment
Location
-2.3
-2.1
-2.1
-2.0
-1.7
-1.8
-2.0
-2.6

0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

20.7
21.5
22.6
23.6
24.6
25.3
25.9
26.5

-2.5
-2.3
-2.1
-2.0
-1.8
-2.0
-1.8
-2.3

Step 13: Create the anterior longitudinal ligaments


Use the panel above to create the ligaments. In this example each ligament will have a strain
stiffness of 100 and damping of 2.0. The table below displays the parts and attachment locations for
each ligament
Tissue
Name

Origin Part

Insertion Part

NStiss_14
NStiss_15
NStiss_16
NStiss_17
NStiss_18
NStiss_19
NStiss_20
NStiss_21

.Danny_C7
.Danny_C6
.Danny_C5
.Danny_C4
.Danny_C3
.Danny_Axis
.Danny_Atlas
.Danny_Head

.Danny_Upper_Torso
.Danny_C7
.Danny_C6
.Danny_C5
.Danny_C4
.Danny_C3
.Danny_Axis
.Danny_Atlas

Origin Attachment
Location
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

21.0
22.1
23.1
24.1
25.0
25.9
26.5
27.3

Insertion Attachment
Location
-0.3
0.0
0.0
0.0
0.0
-0.1
-0.2
-0.3

0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

20.9
21.7
22.5
23.5
24.5
25.5
26.2
26.9

-0.4
-0.1
0.0
0.0
0.1
0.0
-0.1
-0.2

Step 14: Change to rear view


Use the ADAMS/View toolbox to rotate the model to the rear view.
Step 15: Create the facet joint capsule ligaments
Use the panel above to create the ligaments. In this example each ligament will have a strain
stiffness of 100 and damping of 2.0. The table below displays the parts and attachment locations for
each ligament
file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Tissue
Name

Origin Part

Insertion Part

NStiss_22
NStiss_23
NStiss_24
NStiss_25
NStiss_26
NStiss_27
NStiss_28
NStiss_29
NStiss_30
NStiss_31
NStiss_32
NStiss_33
NStiss_34
NStiss_35
NStiss_36
NStiss_37

.Danny_C7
.Danny_C7
.Danny_C6
.Danny_C6
.Danny_C5
.Danny_C5
.Danny_C4
.Danny_C4
.Danny_C3
.Danny_C3
.Danny_Axis
.Danny_Axis
.Danny_Atlas
.Danny_Atlas
.Danny_Head
.Danny_Head

.Danny_Upper_Torso
.Danny_Upper_Torso
.Danny_C7
.Danny_C7
.Danny_C6
.Danny_C6
.Danny_C5
.Danny_C5
.Danny_C4
.Danny_C4
.Danny_C3
.Danny_C3
.Danny_Axis
.Danny_Axis
.Danny_Atlas
.Danny_Atlas

Origin Attachment
Location
1.2
-1.2
1.2
-1.2
1.2
-1.2
1.2
-1.2
1.2
-1.2
0.7
-0.7
0.6
-0.6
0.9
-0.9

21.4
21.4
22.2
22.2
23.0
23.0
24.0
24.0
25.0
25.0
26.0
26.0
26.2
26.2
26.9
26.9

Insertion Attachment
Location
-2.0
-2.0
-2.1
-2.1
-2.1
-2.1
-2.0
-2.0
-2.0
-2.0
-1.1
-1.1
-1.2
-1.2
-1.2
-1.2

1.2
-1.2
1.2
-1.2
1.2
-1.2
1.2
-1.2
1.2
-1.2
0.8
-0.8
0.7
-0.7
0.7
-0.7

20.9
20.9
21.5
21.5
22.5
22.5
23.4
23.4
24.5
24.5
25.6
25.6
26.6
26.6
26.6
26.6

-2.3
-2.3
-2.2
-2.2
-2.1
-2.1
-2.1
-2.1
-2.0
-2.0
-1.4
-1.4
-1.2
-1.2
-1.2
-1.2

Create the Trapezius Muscle Group


After the ligaments are created on the model, the trapezius muscle group is created. In this
example, Hill Muscle elements will be used to describe the muscle dynamics. The data library is used
to create EMG data to drive the activations of the muscle elements. To permit muscle interaction
with hard tissues and other obstructions, the muscle paths will be defined using "slide points".

Figure 8: The trapezius muscle group before slide points are introduced (left) and after (right).

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Figure 9: The panel used to read the EMG data from the library

Step 16: Bring up the import test data panel


Select XCHANGE on the main-menu and IMPORT TEST DATA on the sub-menu.
Step 17: Read in the EMG data for the muscle activations
Select Test Data Library and EMG_ON_175ms. Select Apply to build the data spline from the external
library.
Step 18: Bring up the single soft tissue panel
Select SOFT TISSUES on the main-menu and CREATE SINGLE on the sub-menu. Select Hill-Type
Muscle Elements.

Figure 10: The panel used to create the non-standard hill muscle elements. The origin and origin
attachment location fields now allow for multiple entries at once, therefore allowing the muscles and slide
points to be created at the same time.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Figure 11: This panel may also be used to create slide points for the muscles if they are not created in the
Create Individual Tissue menu.

Step 19: Create the trapezius muscles

Use the data from the panel above to create the trapezius muscles. Use the Hill Muscle Element
Properties listed above. Enter .World.EMG_Activations for the Data Spline. The table below displays
the parts and attachment locations for each muscle.
Tissue
Name

Origin Part

Insertion Part

NStiss_38
NStiss_39
NStiss_40
NStiss_41
NStiss_42
NStiss_43
NStiss_44
NStiss_45
NStiss_46
NStiss_47
NStiss_48
NStiss_49
NStiss_50
NStiss_51
NStiss_52
NStiss_53

.Danny_C7
.Danny_C7
.Danny_C6
.Danny_C6
.Danny_C5
.Danny_C5
.Danny_C4
.Danny_C4
.Danny_C3
.Danny_C3
.Danny_axis
.Danny_axis
.Danny_head
.Danny_head
.Danny_head
.Danny_head

.Danny_Left_Scapula
.Danny_Right_
.Danny_Left_
.Danny_Right_
.Danny_Left_
.Danny_Right_
.Danny_Left_
.Danny_Right_
.Danny_Left_
.Danny_Right_
.Danny_Left_
.Danny_Right_
.Danny_Left_
.Danny_Right_
.Danny_Left_
.Danny_Right_

Origin Attachment
Location
0.2
-0.2
0.2
-0.2
0.2
-0.2
0.2
-0.2
0.2
-0.2
0.0
0.0
0.2
-0.2
1.2
-1.2

21.1
21.1
22.1
22.1
23.0
23.0
24.0
24.0
24.8
24.8
25.8
25.8
26.4
26.4
26.6
26.6

Insertion Attachment
Location
-2.7
-2.7
-2.7
-2.7
-2.6
-2.6
-2.4
-2.4
-2.3
-2.3
-1.6
-1.6
-2.4
-2.4
-2.4
-2.4

3.5
-3.5
3.6
-3.6
3.5
-3.5
3.6
-3.6
3.7
-3.7
3.7
-3.7
3.8
-3.8
3.8
-3.8

16.8
16.8
17.2
17.2
17.6
17.6
18.0
18.0
18.4
18.4
18.8
18.8
19.0
19.0
19.5
19.5

-4.3
-4.3
-4.3
-4.3
-4.1
-4.1
-4.1
-4.1
-4.0
-4.0
-3.6
-3.6
-3.5
-3.5
-3.3
-3.3

Step 21A: Create Slide Points in the Create Individual Tissue panel
Enter the values listed in the table below, with commas separating each value, into the origin and
origin attachment location fields after the first origin value.
file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Step 21B: Bring up the slide point create panel and create slide points on the trapezius
muscles
Select SOFT TISSUES on the main-menu and CREATE TISSUE WRAPPING on the sub-menu. Select
the light bulb next to Slide Point Based to bring up the slide point based tissue wrapping tool. Use
the panel above to create the slide points on the trapezius muscles. The table below displays the
parts and attachment locations for each muscle.
Step 22: Reduce the muscle graphical scale to 2
Select Muscles as the Tissues in the LifeMOD Display Toolbox and use the slider to set the scale to 2
to reduce the graphical size of the muscles.
Tissue
.Danny_Out_NStiss_52H
.Danny_Out_NStiss_53H
.Danny_Out_NStiss_50H
.Danny_Out_NStiss_51H
.Danny_Out_NStiss_52H_SLIDE_1
.Danny_Out_NStiss_53H_SLIDE_1
.Danny_Out_NStiss_50H_SLIDE_1
.Danny_Out_NStiss_51H_SLIDE_1
.Danny_Out_NStiss_48H
.Danny_Out_NStiss_49H
.Danny_Out_NStiss_46H
.Danny_Out_NStiss_47H
.Danny_Out_NStiss_52H_SLIDE_1
.Danny_Out_NStiss_53H_SLIDE_1
.Danny_Out_NStiss_50H_SLIDE_1
.Danny_Out_NStiss_51H_SLIDE_1
.Danny_Out_NStiss_48H_SLIDE_1
.Danny_Out_NStiss_49H_SLIDE_1
.Danny_Out_NStiss_46H_SLIDE_1
.Danny_Out_NStiss_47H_SLIDE_1
.Danny_Out_NStiss_44H
.Danny_Out_NStiss_45H
.Danny_Out_NStiss_52H_SLIDE_1
.Danny_Out_NStiss_53H_SLIDE_1
.Danny_Out_NStiss_50H_SLIDE_1
.Danny_Out_NStiss_51H_SLIDE_1
.Danny_Out_NStiss_48H_SLIDE_1
.Danny_Out_NStiss_49H_SLIDE_1
.Danny_Out_NStiss_46H_SLIDE_1
.Danny_Out_NStiss_47H_SLIDE_1
.Danny_Out_NStiss_44H_SLIDE_1
.Danny_Out_NStiss_45H_SLIDE_1
.Danny_Out_NStiss_42H
.Danny_Out_NStiss_43H
.Danny_Out_NStiss_52H_SLIDE_1
.Danny_Out_NStiss_53H_SLIDE_1
.Danny_Out_NStiss_50H_SLIDE_1
.Danny_Out_NStiss_51H_SLIDE_1
.Danny_Out_NStiss_48H_SLIDE_1
.Danny_Out_NStiss_49H_SLIDE_1
.Danny_Out_NStiss_46H_SLIDE_1
.Danny_Out_NStiss_47H_SLIDE_1
.Danny_Out_NStiss_44H_SLIDE_1
.Danny_Out_NStiss_45H_SLIDE_1
.Danny_Out_NStiss_42H_SLIDE_1
.Danny_Out_NStiss_43H_SLIDE_1
.Danny_Out_NStiss_40H

Slide Pont
Anchor
.Danny_C3
.Danny_C3
.Danny_C3
.Danny_C3
.Danny_C4
.Danny_C4
.Danny_C4
.Danny_C4
.Danny_C4
.Danny_C4
.Danny_C4
.Danny_C4
.Danny_C5
.Danny_C5
.Danny_C5
.Danny_C5
.Danny_C5
.Danny_C5
.Danny_C5
.Danny_C5
.Danny_C5
.Danny_C5
.Danny_C6
.Danny_C6
.Danny_C6
.Danny_C6
.Danny_C6
.Danny_C6
.Danny_C6
.Danny_C6
.Danny_C6
.Danny_C6
.Danny_C6
.Danny_C6
.Danny_C7
.Danny_C7
.Danny_C7
.Danny_C7
.Danny_C7
.Danny_C7
.Danny_C7
.Danny_C7
.Danny_C7
.Danny_C7
.Danny_C7
.Danny_C7
.Danny_C7

Slide Point Location


1.12
-1.12
0.32
-0.32
1.32
-1.32
0.62
-0.62
0.22
-0.22
0.09
-0.09
1.62
-1.62
1.02
-1.02
0.72
-0.73
0.32
-0.32
0.08
-0.08
1.89
-1.89
1.49
-1.49
1.19
-1.19
0.81
-0.81
0.46
-0.46
0.08
-0.08
2.39
-2.39
2.09
-2.09
1.69
-1.69
1.39
-1.39
1.09
-1.09
0.89
-0.89
0.69

25.07
25.07
25.07
25.07
24.07
24.07
24.07
24.07
24.07
24.07
24.07
24.07
23.07
23.07
23.07
23.07
23.07
23.07
23.07
23.07
23.07
23.07
22.07
22.07
22.07
22.07
22.07
22.07
22.07
22.07
22.07
22.07
22.07
22.07
21.07
21.07
21.07
21.07
21.07
21.07
21.07
21.07
21.07
21.07
21.07
21.07
21.07

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

-2.27
-2.27
-2.27
-2.27
-2.27
-2.27
-2.27
-2.27
-2.27
-2.27
-2.27
-2.27
-2.37
-2.37
-2.37
-2.37
-2.37
-2.37
-2.37
-2.37
-2.37
-2.37
-2.67
-2.67
-2.67
-2.67
-2.67
-2.67
-2.67
-2.67
-2.67
-2.67
-2.67
-2.67
-2.87
-2.87
-2.87
-2.87
-2.87
-2.87
-2.87
-2.87
-2.87
-2.87
-2.87
-2.87
-2.87

LifeMOD Tutorials | Detailed Whiplash Analysis

.Danny_Out_NStiss_41H

.Danny_C7

-0.69

21.07

-2.87

Create the Semispinalis Capitis Muscle Group


After the trapezius muscles are created on the model, the semispinalis muscle group is created. In
this example, Hill Muscle elements will be used to describe the muscle dynamics. To permit muscle
interaction with hard tissues and other obstructions, the muscle paths will be defined using "slide
points".

Figure 12: The semispinalis capitis muscle group before slide points are introduced (left) and after (right).

Step 23: Bring up the single soft tissue panel and toggle existing muscles off
Select SOFT TISSUES on the main-menu and CREATE SINGLE on the sub-menu. Select Hill-Type
Muscle Elements. Select Muscles and toggle off and select tissue attachments and toggle off using
the LifeMOD Display Toolbox.
Step 24: Create the semispinalis capitis muscles
Use the panel above to create the semispinalis capitis muscles. Use the Hill Muscle Element
Properties listed above. The table below displays the parts and attachment locations for each muscle.
Tissue
Name

Origin Part

Insertion Part

NStiss_54
NStiss_55
NStiss_56
NStiss_57
NStiss_58
NStiss_59
NStiss_60
NStiss_61
NStiss_62
NStiss_63

.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head

.Danny_c4
.Danny_c4
.Danny_c5
.Danny_c5
.Danny_c6
.Danny_c6
.Danny_c7
.Danny_c7
.Danny_upper_torso
.Danny_upper_torso

Origin Attachment
Locations
1.6
-1.6
1.6
-1.6
1.6
-1.6
1.6
-1.6
1.6
-1.6

26.9
26.9
26.9
26.9
26.9
26.9
26.9
26.9
26.9
26.9

Insertion Attachment
Locations
-2.2
-2.2
-2.2
-2.2
-2.2
-2.2
-2.2
-2.2
-2.2
-2.2

1.2
-1.2
1.2
-1.2
1.2
-1.2
1.2
-1.2
1.2
-1.2

24.5
24.5
23.5
23.5
22.5
22.5
21.5
21.5
20.5
20.5

-0.9
-0.9
-0.9
-0.9
-0.9
-0.9
-1.0
-1.0
-1.2
-1.2

Step 25A: Create Slide Points in the Create Individual Tissue panel
Enter the values listed in the table below, with commas separating each value, into the origin and
origin attachment location fields after the first origin value.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Step 25B: Bring up the slide point create panel and create slide points on the semispinalis
capitis muscles
Select SOFT TISSUES on the main-menu and CREATE TISSUE WRAPPING on the sub-menu. Select
the light bulb next to Slide Point Based to bring up the slide point based tissue wrapping tool. Use
the panel above to create the slide points on the semispinalis capitis muscles. The table below
displays the parts and attachment locations for each muscle.
Tissue
.Danny_Out_NStiss_62H
.Danny_Out_NStiss_63H
.Danny_Out_NStiss_60H
.Danny_Out_NStiss_61H
.Danny_Out_NStiss_62H_slide_2
.Danny_Out_NStiss_63H_slide_2
.Danny_Out_NStiss_60H_slide_2
.Danny_Out_NStiss_61H_slide_2
.Danny_Out_NStiss_58h
.Danny_Out_NStiss_59h
.Danny_Out_NStiss_62H_slide_3
.Danny_Out_NStiss_63H_slide_3
.Danny_Out_NStiss_60H_slide_3
.Danny_Out_NStiss_61H_slide_3
.Danny_Out_NStiss_58h_slide_2
.Danny_Out_NStiss_59h_slide_2
.Danny_Out_NStiss_56h
.Danny_Out_NStiss_57h
.Danny_Out_NStiss_62H_slide_4
.Danny_Out_NStiss_63H_slide_4
.Danny_Out_NStiss_60H_slide_4
.Danny_Out_NStiss_61H_slide_4
.Danny_Out_NStiss_58h_slide_3
.Danny_Out_NStiss_59h_slide_3
.Danny_Out_NStiss_56h_slide_2
.Danny_Out_NStiss_57h_slide_2
.Danny_Out_NStiss_54H
.Danny_Out_NStiss_55H

Slide Pont
Anchor
.Danny_C6
.Danny_C6
.Danny_C6
.Danny_C6

Slide Point Location


1.29
-1.29
1.29
-1.29

22.38
22.38
22.38
22.38

-1.55
-1.55
-1.25
-1.25

.Danny_C5

1.39

23.28

-1.75

.Danny_C5

-1.39

23.28

-1.75

.Danny_C5

1.39

23.28

-1.45

.Danny_C5

-1.39

23.28

-1.45

.Danny_C5
.Danny_C5

1.39
-1.39

23.28
23.28

-1.15
-1.15

.Danny_C4

1.49

24.28

-1.85

.Danny_C4

-1.49

24.28

-1.85

.Danny_C4

1.49

24.28

-1.65

.Danny_C4

-1.49

24.28

-1.65

.Danny_C4

1.49

24.28

-1.45

.Danny_C4

-1.49

24.28

-1.45

.Danny_C4
.Danny_C4

1.49
-1.49

24.28
24.28

-1.15
-1.15

.Danny_C3

1.59

25.28

-2.05

.Danny_C3

-1.59

25.28

-2.05

.Danny_C3

1.59

25.28

-1.95

.Danny_C3

-1.59

25.28

-1.95

.Danny_C3

1.59

25.28

-1.85

.Danny_C3

-1.59

25.28

-1.85

.Danny_C3

1.59

25.28

-1.65

.Danny_C3

-1.59

25.28

-1.65

.Danny_C3
.Danny_C3

1.59
-1.59

25.28
25.28

-1.35
-1.35

Create the Semispinalis Cervicis Muscle Group


After the semispinalis capitis muscles are created on the model, the semispinalis cervicis muscle
group is created. In this example, Hill Muscle elements will be used to describe the muscle dynamics.
To permit muscle interaction with hard tissues and other obstructions, the muscle paths will be

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

defined using "slide points".

Figure 13: The semispinalis cervicis muscle group before slide points are introduced (left) and after (right).

Step 26: Bring up the single soft tissue panel and toggle existing muscles off
Select SOFT TISSUES on the main-menu and CREATE SINGLE on the sub-menu. Select Hill-Type
Muscle Elements. Select Muscles and toggle off and select tissue attachments and toggle off using
the LifeMOD Display Toolbox.
Step 27: Create the semispinalis cervicis muscles
Use the panel above to create the semispinalis cervicis muscles. Use the Hill Muscle Element
Properties listed above. The table below displays the parts and attachment locations for each muscle.
Tissue
Name

Origin Part

Insertion Part

NStiss_64
NStiss_65
NStiss_66
NStiss_67
NStiss_68
NStiss_69
NStiss_70
NStiss_71
NStiss_72
NStiss_73
NStiss_74
NStiss_75

.Danny_axis
.Danny_axis
.Danny_c3
.Danny_c3
.Danny_c4
.Danny_c4
.Danny_c5
.Danny_c5
.Danny_c6
.Danny_c6
.Danny_c7
.Danny_c7

.Danny_Upper_Torso
.Danny_Upper_Torso
.Danny_Upper_Torso
.Danny_Upper_Torso
.Danny_Upper_Torso
.Danny_Upper_Torso
.Danny_Upper_Torso
.Danny_Upper_Torso
.Danny_Upper_Torso
.Danny_Upper_Torso
.Danny_Upper_Torso
.Danny_Upper_Torso

Origin Attachment
Location
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

25.8
25.8
25.0
25.0
24.2
24.2
23.3
23.3
22.4
22.4
21.2
21.2

Insertion Attachment
Location
-1.6
-1.6
-2.4
-2.4
-2.4
-2.4
-2.7
-2.7
-2.9
-2.9
-3.0
-3.0

1.2
-1.2
1.2
-1.2
1.4
-1.4
1.4
-1.4
1.5
-1.5
1.5
-1.5

20.9
20.9
20.1
20.1
19.3
19.3
18.4
18.4
17.6
17.6
16.4
16.4

-2.3
-2.3
-2.3
-2.3
-2.7
-2.7
-3.4
-3.4
-3.4
-3.4
-3.8
-3.8

Step 28A: Create Slide Points in the Create Individual Tissue panel
Enter the values listed in the table below, with commas separating each value, into the origin and
origin attachment location fields after the first origin value.
Step 28B: Bring up the slide point create panel and create slide points on the semispinalis
capitis muscles
Select SOFT TISSUES on the main-menu and CREATE TISSUE WRAPPING on the sub-menu. Select
the light bulb next to Slide Point Based to bring up the slide point based tissue wrapping tool. Use
the panel above to create the slide points on the semispinalis cervicis muscles. The table below
displays the parts and attachment locations for each muscle.
Tissue
.Danny_Out_NStiss_64H
.Danny_Out_NStiss_65H

Slide Pont
Anchor
.Danny_C5
.Danny_C5

Slide Point Location


0.79
-0.79

22.84
22.84

-2.39
-2.39

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

.Danny_Out_NStiss_66H
.Danny_Out_NStiss_67H
.Danny_Out_NStiss_68H
.Danny_Out_NStiss_69H

.Danny_C5
.Danny_C5
.Danny_C5
.Danny_C5

0.69
-0.69
0.49
-0.49

22.84
22.84
22.84
22.84

-2.39
-2.39
-2.39
-2.39

.Danny_C7

0.99

21.84

-2.39

.Danny_C7

-0.99

21.84

-2.39

.Danny_C7

0.89

21.84

-2.39

.Danny_C7

-0.89

21.84

-2.39

.Danny_C7

0.78

21.84

-2.39

.Danny_C7
.Danny_Out_NStiss_69H_SLIDE_1
.Danny_Out_NStiss_70H
.Danny_C7
.Danny_Out_NStiss_71H
.Danny_C7

-0.78

21.84

-2.39

0.49
-0.49

21.84
21.84

-2.59
-2.59

.Danny_Out_NStiss_64H_SLIDE_1
.Danny_Out_NStiss_65H_SLIDE_1
.Danny_Out_NStiss_66H_SLIDE_1
.Danny_Out_NStiss_67H_SLIDE_1
.Danny_Out_NStiss_68H_SLIDE_1

Create the Longus Colli Muscle Group


After the semispinalis cervicis muscles are created on the model, the longus colli muscle group is
created. In this example, Hill Muscle elements will be used to describe the muscle dynamics. To
permit muscle interaction with hard tissues and other obstructions, the muscle paths will be defined
using "slide points".

Figure 14: The longus colli muscle group before slide points are introduced (left) and after (right).

Step 29: Bring up the single soft tissue panel and toggle existing muscles off
Select SOFT TISSUES on the main-menu and CREATE SINGLE on the sub-menu. Select Hill-Type
Muscle Elements. Select Muscles and toggle off and select tissue attachments and toggle off using
the LifeMOD Display Toolbox.
Step 30: Create the longus colli muscles
Use the panel above to create the longus colli muscles. Use the Hill Muscle Element Properties listed
above. The table below displays the parts and attachment locations for each muscle.
Tissue
Name

Origin Part

Insertion Part

Origin Attachment
Location

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

Insertion Attachment
Location

LifeMOD Tutorials | Detailed Whiplash Analysis

NStiss_76
NStiss_77

.Danny_head
.Danny_head

.Danny_Upper_Torso
.Danny_Upper_Torso

0.5
-0.5

28
28

-0.1
-0.1

0.5
-0.5

20.4
20.4

-0.4
-0.4

Step 31A: Create Slide Points in the Create Individual Tissue panel
Enter the values listed in the table below, with commas separating each value, into the origin and
origin attachment location fields after the first origin value.
Step 31B: Bring up the slide point create panel and create slide points on the semispinalis
capitis muscles
Select SOFT TISSUES on the main-menu and CREATE TISSUE WRAPPING on the sub-menu. Select
the light bulb next to Slide Point Based to bring up the slide point based tissue wrapping tool. Use
the panel above to create the slide points on the longus colli muscles. The table below displays the
parts and attachment locations for each muscle.
Tissue
.Danny_Out_NStiss_76H
.Danny_Out_NStiss_77H
.Danny_Out_NStiss_76H_SLIDE_1
.Danny_Out_NStiss_77H_SLIDE_1
.Danny_Out_NStiss_76H_SLIDE_1
.Danny_Out_NStiss_77H_SLIDE_1
.Danny_Out_NStiss_76H_SLIDE_1
.Danny_Out_NStiss_77H_SLIDE_1
.Danny_Out_NStiss_76H_SLIDE_1
.Danny_Out_NStiss_77H_SLIDE_1
.Danny_Out_NStiss_76H_SLIDE_1
.Danny_Out_NStiss_77H_SLIDE_1

Slide Pont
Anchor
.Danny_axis
.Danny_axis

Slide Point Location


0.51
-0.51

26.14
26.14

0.01
0.01

.Danny_c3

0.51

25.14

0.01

.Danny_c3

-0.51

25.14

0.01

.Danny_c4

0.51

24.14

-0.05

.Danny_c4

-0.51

24.14

-0.05

.Danny_c5

0.51

23.14

-0.12

.Danny_c5

-0.51

23.14

-0.12

.Danny_c6

0.51

22.14

-0.22

.Danny_c6

-0.51

22.14

-0.22

.Danny_c7

0.51

21.14

-0.3

.Danny_c7

-0.51

21.14

-0.3

Create the Sternocleidomastoid Muscle Group


After the longus colli muscles are created on the model, the sternocleidomastoid muscle group is
created. In this example, Hill Muscle elements will be used to describe the muscle dynamics. To
permit muscle interaction with hard tissues and other obstructions, the muscle paths will be defined
using "slide points".

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Figure 15: The sternocleidomastoid muscle group before slide points are introduced (left) and after (right).

Step 32: Bring up the single soft tissue panel and toggle existing muscles off
Select SOFT TISSUES on the main-menu and CREATE SINGLE on the sub-menu. Select Hill-Type
Muscle Elements. Select Muscles and toggle off and select tissue attachments and toggle off using
the LifeMOD Display Toolbox.
Step 33: Create the sternocleidomastoid muscles
Use the panel above to create the sternocleidomastoid muscles. Use the Hill Muscle Element
Properties listed above. The table below displays the parts and attachment locations for each muscle.
Tissue
Name
NStiss_78
NStiss_79
NStiss_80
NStiss_81
NStiss_82
NStiss_83
NStiss_84
NStiss_85
NStiss_86
NStiss_87
NStiss_88
NStiss_89

Origin Part
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head
.Danny_head

Origin Attachment
Location
.Danny_Upper_Torso
2.1
26.5
.Danny_Upper_Torso
-2.1
26.5
.Danny_Upper_Torso
2.3
26.7
.Danny_Upper_Torso
-2.3
26.7
.Danny_Upper_Torso
2.3
26.8
.Danny_Upper_Torso
-2.3
26.8
.Danny_Left_Scapula
2.1
26.5
.Danny_Left_Scapula
-2.1
26.5
.Danny_Left_Scapula
2.3
26.7
.Danny_Left_Scapula
-2.3
26.7
.Danny_Left_Scapula
2.3
26.8
.Danny_Left_Scapula
-2.3
26.8

Insertion Part

Insertion Attachment
Location
-0.5
0.1
19.5
1.1
-0.5
-0.1
19.5
1.1
-0.9
0.2
19.5
1.1
-0.9
-0.2
19.5
1.1
-1.3
0.3
19.5
1.1
-1.3
-0.3
19.5
1.1
-0.5
2
19.7
1.5
-0.5
-2
19.7
1.5
-0.9
2.2
19.5
1.5
-0.9
-2.2
19.5
1.5
-1.3
2.3
19.5
1.5
-1.3
-2.3
19.5
1.5

Step 34A: Create Slide Points in the Create Individual Tissue panel
Enter the values listed in the table below, with commas separating each value, into the origin and
origin attachment location fields after the first origin value.
Step 34B: Bring up the slide point create panel and create slide points on the semispinalis
capitis muscles
Select SOFT TISSUES on the main-menu and CREATE TISSUE WRAPPING on the sub-menu. Select
the light bulb next to Slide Point Based to bring up the slide point based tissue wrapping tool. Use
the panel above to create the slide points on the sternocleidomastiod muscles. The table below
displays the parts and attachment locations for each muscle.
Tissue
.Danny_Out_NStiss_78H
.Danny_Out_NStiss_79H
.Danny_Out_NStiss_80H
.Danny_Out_NStiss_81H

Slide Pont
Slide Point
Anchor
World.Danny_C7
0.66
World.Danny_C7
-0.66
World.Danny_C7
0.86
World.Danny_C7
-0.86

Location
21.39
21.39
21.39
21.39

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

1.06
1.06
0.66
0.66

LifeMOD Tutorials | Detailed Whiplash Analysis

.Danny_Out_NStiss_82H
.Danny_Out_NStiss_83H
.Danny_Out_NStiss_84H
.Danny_Out_NStiss_85H
.Danny_Out_NStiss_86H
.Danny_Out_NStiss_87H
.Danny_Out_NStiss_88H
.Danny_Out_NStiss_89H
.Danny_Out_NStiss_78H_SLIDE_2
.Danny_Out_NStiss_79H_SLIDE_2
.Danny_Out_NStiss_80H_SLIDE_2
.Danny_Out_NStiss_81H_SLIDE_2
.Danny_Out_NStiss_82H_SLIDE_2
.Danny_Out_NStiss_83H_SLIDE_2
.Danny_Out_NStiss_84H_SLIDE_2
.Danny_Out_NStiss_85H_SLIDE_2
.Danny_Out_NStiss_86H_SLIDE_2
.Danny_Out_NStiss_87H_SLIDE_2
.Danny_Out_NStiss_88H_SLIDE_2
.Danny_Out_NStiss_89H_SLIDE_2
.Danny_Out_NStiss_78H_SLIDE_3
.Danny_Out_NStiss_79H_SLIDE_3
.Danny_Out_NStiss_80H_SLIDE_3
.Danny_Out_NStiss_81H_SLIDE_3
.Danny_Out_NStiss_82H_SLIDE_3
.Danny_Out_NStiss_83H_SLIDE_3
.Danny_Out_NStiss_84H_SLIDE_3
.Danny_Out_NStiss_85H_SLIDE_3
.Danny_Out_NStiss_86H_SLIDE_3
.Danny_Out_NStiss_87H_SLIDE_3
.Danny_Out_NStiss_88H_SLIDE_3
.Danny_Out_NStiss_89H_SLIDE_3
.Danny_Out_NStiss_78H_slide_4
.Danny_Out_NStiss_79H_slide_4
.Danny_Out_NStiss_80H_slide_4

World.Danny_C7
World.Danny_C7
World.Danny_C7
World.Danny_C7
World.Danny_C7
World.Danny_C7
World.Danny_C7
World.Danny_C7

1.06
-1.06
1.36
-1.36
1.56
-1.56
1.66
-1.66

21.39
21.39
21.39
21.39
21.39
21.39
21.39
21.39

0.46
0.46
1.06
1.06
0.96
0.96
0.66
0.66

World.Danny_c6

0.91

22.29

0.83

World.Danny_c6

-0.91

22.29

0.83

World.Danny_c6

1.11

22.29

0.33

World.Danny_c6

-1.11

22.29

0.33

World.Danny_c6

1.31

22.29

0.03

World.Danny_c6

-1.31

22.29

0.03

World.Danny_c6

1.41

22.29

0.84

World.Danny_c6

-1.41

22.29

0.84

World.Danny_c6

1.61

22.29

0.64

World.Danny_c6

-1.61

22.29

0.64

World.Danny_c6

1.71

22.29

0.34

World.Danny_c6

-1.71

22.29

0.34

World.Danny_c5

1.21

23.29

0.54

World.Danny_c5

-1.21

23.29

0.54

World.Danny_c5

1.41

23.29

0.04

World.Danny_c5

-1.41

23.29

0.04

World.Danny_c5

1.51

23.29

-0.1

World.Danny_c5

-1.51

23.29

-0.1

World.Danny_c5

1.41

23.29

0.54

World.Danny_c5

-1.41

23.29

0.54

World.Danny_c5

1.61

23.29

0.24

World.Danny_c5

-1.61

23.29

0.24

World.Danny_c5

1.71

23.29

0.04

World.Danny_c5

-1.71

23.29

0.04

World.Danny_c4

1.46

24.34

0.18

World.Danny_c4

-1.46

24.34

0.18

World.Danny_c4

1.66

24.34

-0.23

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

.Danny_Out_NStiss_81H_slide_4
.Danny_Out_NStiss_82H_slide_4
.Danny_Out_NStiss_83H_slide_4
.Danny_Out_NStiss_84H_slide_4
.Danny_Out_NStiss_85H_slide_4
.Danny_Out_NStiss_86H_slide_4
.Danny_Out_NStiss_87H_slide_4
.Danny_Out_NStiss_88H_slide_4
.Danny_Out_NStiss_89H_slide_4
.Danny_Out_NStiss_78H_slide_5
.Danny_Out_NStiss_79H_slide_5
.Danny_Out_NStiss_80H_slide_5
.Danny_Out_NStiss_81H_slide_5
.Danny_Out_NStiss_82H_slide_5
.Danny_Out_NStiss_83H_slide_5
.Danny_Out_NStiss_84H_slide_5
.Danny_Out_NStiss_85H_slide_5
.Danny_Out_NStiss_86H_slide_5
.Danny_Out_NStiss_87H_slide_5
.Danny_Out_NStiss_88H_slide_5
.Danny_Out_NStiss_89H_slide_5

World.Danny_c4

-1.66

24.34

-0.23

World.Danny_c4

1.76

24.34

-0.43

World.Danny_c4

-1.76

24.34

-0.43

World.Danny_c4

1.46

24.34

0.28

World.Danny_c4

-1.46

24.34

0.28

World.Danny_c4

1.66

24.34

-0.12

World.Danny_c4

-1.66

24.34

-0.12

World.Danny_c4

1.76

24.34

-0.32

World.Danny_c4

-1.76

24.34

-0.32

World.Danny_c3

1.76

25.44

-0.12

World.Danny_c3

-1.76

25.44

-0.12

World.Danny_c3

1.96

25.44

-0.52

World.Danny_c3

-1.96

25.44

-0.52

World.Danny_c3

2.06

25.44

-0.82

World.Danny_c3

-2.06

25.44

-0.82

World.Danny_c3

1.86

25.44

-0.12

World.Danny_c3

-2.06

25.44

-0.12

World.Danny_c3

2.06

25.44

-0.52

World.Danny_c3

-2.06

25.44

-0.52

World.Danny_c3

2.16

25.44

-0.82

World.Danny_c3

-2.16

25.44

-0.82

Setting up the Acceleration Mechanism


A translational joint is created between the upper_torso and the ground. A motion driver is then
used to impose an acceleration curve on this joint. A scale function is imposed on the curve function
to control the degree of acceleration.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Figure 16: Translational joint on the model to impose an acceleration on the upper_torso of the model.

Step 35: Create a translational joint in the upper torso


Use the following ADAMS/View commands to create one marker on ground and one marker on the
upper_torso. Then create the translational joint between the two markers:
marker cre marker_name = .World.ground.driver &
loc=-0.9199606299, 11.6839955672, 3.8495669291 &
orientation = 0.0, 0.0, 0.0 &
relative_to = .World
marker cre marker_name = .World.Danny_Upper_Torso.driver &
loc=-0.9199606299, 11.6839955672, 3.8495669291 &
orientation = 0.0, 0.0, 0.0 &
relative_to = .World
constraint create joint translational joint_name = .World.Driver &
i_marker_name = .World.Danny_Upper_Torso.driver &
j_marker_name = .World.ground.driver

Step 36: Create the translation motion to impose the acceleration


Create an ADAMS/View variable as a scale function for the acceleration profile using the following
ADAMS/View command:
var create var=.World.DV_Gload real=-15

Create a ADAMS/View motion generator which steps the acceleration profile on from .15 seconds and
off at .2 seconds using the following command:
constraint create motion_generator motion_name = .World.Mdriver &
joint_name = .World.Driver &
type_of_freedom = translational &
function = "(.World.DV_Gload)*386*(step(time,.1,0,.15,1)-step(time,.15,0,.2,1))" &
time_derivative = acceleration

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Running the Simulations for the Frontal, Rear and Side Impacts
With the model fully built and the acceleration mechanism installed, simulations are performed for
the three cases. To change the direction of the impact, the acceleration mechanism (translational
joint) is simply rotated.

Figure 17: Successive frames of the front_impact condition

Figure 18: Panel use to run the simulations

Step 37: Bring up analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Step 38: Run the simulation


Specify the end time of the simulation as .5 second with 100 time steps using the contacts optimized
integrator settings. Select ANALYZE.
Step 39: Save the first analysis
In the analyze panel above, select Save Analysis and give the analysis the name of Frontal_Impact.

Figure 19: Successive frames of the rear_impact condition

Step 40: Set up the rear impact analysis


Change the sign of the acceleration scale factor using the following ADAMS/View command:
var create var=.World.DV_Gload real=7

Step 41: Run the simulation


Specify the end time of the simulation as .5 second with 100 time steps using the contacts optimized
integrator settings. Select ANALYZE.
Step 42: Save the second analysis
In the analyze panel above, select Save Analysis and give the analysis the name of Rear_Impact.

Figure 20: Successive frames of the lateral_imact condition

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Step 43: Set up the lateral impact analysis


Use the cursor to select the translational joint and rotate it 90 degrees. This will impose the
acceleration from the side.
Step 44: Run the simulation
Specify the end time of the simulation as .5 second with 100 time steps using the contacts optimized
integrator settings. Select ANALYZE.
Step 45: Save the second analysis
In the analyze panel above, select Save Analysis and give the analysis the name of Lateral_Impact.

Interrogating the Results


When the simulation is complete the model may be animated and the results reviewed.
Various data may be presented from the forward-dynamics simulation including:
Individual muscle forces
Individual ligament forces
Disk compression forces
Disk shear forces

Figure 22: Vertical upper_torso acceleration (top) and Muscle activations (bottom) for frontal impact case.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Figure 23: AP Shear strain for each disk

Figure 24: Interspinous ligament loads for the frontal collision

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Figure 25: Results panel set up to plot the disk AP shear forces

Step 46: Bring up results panel


Select RESULTS in the main-menu and ANIMATION in the sub-menu.
Step 47: Display the frontal impact simulation
Turn on the local scaling of the muscle graphics by selecting Scale Joint/Tissue Graphics, Tissues,
Scale Locally and the light bulb to scale the muscle graphics. Select Frontal_Impact as the Default
Analysis. Select Fix Camera to the Danny_Upper_Torso.cm marker. Select zoom with center
coordinates of 0,25,.1 and a scale of 2.3. Select right view and animate.
Step 48: Display the rear impact simulation
Use the same animation parameters but select Rear_Impact as the default analysis. Select right view
and animate.
Step 49: Display the side impact simulation
Use the same animation parameters but select Side_Impact as the default analysis. Select front view
and animate.
Step 50: Bring up results panel
Select "Results Window" on the results panel to bring up the ADAMS results post processor window.
Select DATA DISPLAY on the sub menu to bring up the results panel.
Step 51: Examine the muscle activation parameters for the frontal impact case
Enter .World.Frontal_Impact as the default analysis and select Apply. Select Soft Tissues as the data
type and Select Danny_NStiss_38H as the soft tissue and Activation as the Characteristic. Select
Create Full Plot to plot the muscle activations.
Step 52: Splint the plot window and swap the view
Use the following ADAMS/View commands to split the plotting window.
interface page modify layout=page2x1 set_contents = yes
view man swap view_name = view_1 , view_2
default plot plot=plot_2

Step 53: Examine the thoracic segment acceleration profile


Select Body_Motion as the Data Type. Select Danny_Upper_Torso as the Body Segment,
CM_Acceleration as the Characteristic and Z as the Component.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Step 54: Examine the disk shear strain for the 15g frontal impact case
Select DATA DISPLAY in the sub-menu and Disks as the Data Type. Select the Force Characteristic
and the AP shear Component. Select Create Full Plot for each disk force from Disk Danny_NSjoint_1
through Danny_NSjoint_8.
Step 55: Animate the model without muscle graphics
Select ANIMATION in the sub-menu. Select Muscles as the Tissues and toggle off in the LifeMOD
Display Toolbox. Select Frontal_Impact as the Default Analysis. Select Fix Camera to the
Danny_Upper_Torso.cm marker. Select zoom with center coordinates of 0,25,.1 and a scale of 2.3.
Select divide window, right view and animate.
Step 56: Examine the disk bending loads for the 15g frontal impact case
Select DATA DISPLAY in the sub-menu and Disks as the Data Type. Select the Torque Characteristic
and the Sagittal Component. Select Create Full Plot for each disk force from Disk Danny_NSjoint_1
through Danny_NSjoint_8.
Step 57: Animate the model without muscle graphics
Select ANIMATION in the sub-menu. Select Frontal_Impact as the Default Analysis. Select Fix
Camera to the Danny_Upper_Torso.cm marker. Select zoom with center coordinates of 0,25,.1 and a
scale of 2.3. Select divide window, right view and animate.
Step 58: Examine the interspinous ligament loads for the 15g frontal impact case
Select DATA DISPLAY in the sub-menu and Tissues as the Data Type. Select the Tension
Characteristic. Select Create Full Plot for the following soft tissue forces:
Danny_NStiss_1P
Danny_NStiss_2P
Danny_NStiss_3P
Danny_NStiss_4P
Danny_NStiss_5P
Danny_NStiss_113P
Danny_NStiss_114P
Danny_NStiss_115P
Step 59: Animate the model without muscle graphics
Select ANIMATION in the sub-menu.Turn on the local scaling of the ligament graphics by selecting
Scale Joint/Tissue Graphics, Tissues, Scale Locally and the light bulb to scale the muscle graphics.
Select Frontal_Impact as the Default Analysis. Select Fix Camera to the Danny_Upper_Torso.cm
marker. Select zoom with center coordinates of 0,25,.1 and a scale of 2.3. Select divide window,
right view and animate.
Step 60: Examine the extension muscle loads for the frontal impact case
Select DATA DISPLAY in the sub-menu and Soft Tissues as the Data Type. Select the Tension
Characteristic. Select Create Full Plot for the following soft tissue forces:
Danny_NStiss_52H_slide_1
Danny_NStiss_46H_slide_1
Danny_NStiss_38H
Danny_NStiss_70H_slide_1
Danny_NStiss_72H
Danny_NStiss_74H
Step 61: Animate the model with muscle graphics
Select ANIMATION in the sub-menu. Select Muscles as the Tissues and toggle on using the LifeMOD
Display Toolbox. Turn on the local scaling of the muscle graphics by selecting Scale Joint/Tissue
Graphics, Tissues, Scale Locally and the light bulb to scale the muscle graphics. Select
Frontal_Impact as the Default Analysis. Select Fix Camera to the Danny_Upper_Torso.cm marker.
Select zoom with center coordinates of 0,25,.1 and a scale of 2.3. Select divide window, back view

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

and animate.
Step 62: Examine the disk shear strain for the 7g rear impact case
Select DATA DISPLAY in the sub-menu and Disks as the Data Type. Select Rear_Impact as the
default analysis. Select the Force Characteristic and the AP shear Component. Select Create Full Plot
for each disk force from Disk Danny_NSjoint_1 through Danny_NSjoint_8.
Step 63: Animate the model without muscle graphics
Select ANIMATION in the sub-menu. Select Muscles as the Tissues and toggle off in the LifeMOD
Display Toolbox. Select Rear_Impact as the Default Analysis. Select Fix Camera to the
Danny_Upper_Torso.cm marker. Select zoom with center coordinates of 0,25,.1 and a scale of 2.3.
Select divide window, right view and animate.
Step 64 Examine the disk bending loads for the rear impact case
Select DATA DISPLAY in the sub-menu and Disks as the Data Type. Select the Torque Characteristic
and the Sagittal Component. Select Create Full Plot for each disk force from Disk Danny_NSjoint_1
through Danny_NSjoint_8.
Step 65: Animate the model without muscle graphics
Select ANIMATION in the sub-menu. Select Rear_Impact as the Default Analysis. Select Fix Camera
to the Danny_Upper_Torso.cm marker. Select zoom with center coordinates of 0,25,.1 and a scale of
2.3. Select divide window, right view and animate.
Step 66: Examine the flaval ligament loads for the rear impact case
Select DATA DISPLAY in the sub-menu and Tissues as the Data Type. Select the Tension
Characteristic. Select Create Full Plot for the following soft tissue forces:
Danny_NStiss_14P
Danny_NStiss_15P
Danny_NStiss_16P
Danny_NStiss_17P
Danny_NStiss_18P
Danny_NStiss_19P
Danny_NStiss_20P
Danny_NStiss_21P
Step 67: Animate the model with ligament graphics
Select ANIMATION in the sub-menu.Turn on the local scaling of the ligament graphics by selecting
Scale Joint/Tissue Graphics, Tissues, Scale Locally and the light bulb to scale the muscle graphics.
Select Rear_Impact as the Default Analysis. Select Fix Camera to the Danny_Upper_Torso.cm
marker. Select zoom with center coordinates of 0,25,.1 and a scale of 2.3. Select divide window,
right view and animate.
Step 68: Examine the flexion muscle loads for the rear impact case
Select DATA DISPLAY in the sub-menu and Soft Tissues as the Data Type. Select the Tension
Characteristic. Select Create Full Plot for the following soft tissue forces:
Danny_NStiss_89H_slide_1
Danny_NStiss_79H_slide_1
Danny_NStiss_77H_slide_1
Step 69: Animate the model with muscle graphics
Select ANIMATION in the sub-menu. Select Muscles as the Tissues and toggle on using the LifeMOD
Display Toolbox. Turn on the local scaling of the muscle graphics by selecting Scale Joint/Tissue
Graphics, Tissues, Scale Locally and the light bulb to scale the muscle graphics. Select Rear_Impact
as the Default Analysis. Select Fix Camera to the Danny_Upper_Torso.cm marker. Select zoom with
center coordinates of 0,25,.1 and a scale of 2.3. Select divide window, front view and animate.
Step 70: Examine the disk shear strain for the 7g lateral impact case
Select DATA DISPLAY in the sub-menu and Disks as the Data Type. Select Lateral_Impact as the

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

default analysis. Select the Force Characteristic and the AP shear Component. Select Create Full Plot
for each disk force from Disk Danny_NSjoint_1 through Danny_NSjoint_8.
Step 71: Animate the model without muscle graphics
Select ANIMATION in the sub-menu. Select Muscles as the Tissues and toggle off in the LifeMOD
Display Toolbox. Select Lateral_Impact as the Default Analysis. Select Fix Camera to the
Danny_Upper_Torso.cm marker. Select zoom with center coordinates of 0,25,.1 and a scale of 2.3.
Select divide window, front view and animate.
Step 72: Examine the disk bending loads for the rear impact case
Select DATA DISPLAY in the sub-menu and Disks as the Data Type. Select the Torque Characteristic
and the Sagittal Component. Select Create Full Plot for each disk force from Disk Danny_NSjoint_1
through Danny_NSjoint_8.
Step 73: Animate the model without muscle graphics
Select ANIMATION in the sub-menu. Select Lateral_Impact as the Default Analysis. Select Fix
Camera to the Danny_Upper_Torso.cm marker. Select zoom with center coordinates of 0,25,.1 and a
scale of 2.3. Select divide window, front view and animate.
Step 74: Examine the facet joint ligament loads for the lateral impact case
Select DATA DISPLAY in the sub-menu and Tissues as the Data Type. Select the Tension
Characteristic. Select Create Full Plot for the following soft tissue forces:
Danny_NStiss_23P
Danny_NStiss_25P
Danny_NStiss_27P
Danny_NStiss_29P
Danny_NStiss_31P
Danny_NStiss_33P
Danny_NStiss_35P
Danny_NStiss_37P
Step 75: Animate the model with ligament graphics
Select ANIMATION in the sub-menu.Turn on the local scaling of the ligament graphics by selecting
Scale Joint/Tissue Graphics, Tissues, Scale Locally and the light bulb to scale the muscle graphics.
Select Lateral_Impact as the Default Analysis. Select Fix Camera to the Danny_Upper_Torso.cm
marker. Select zoom with center coordinates of 0,25,.1 and a scale of 2.3. Select divide window,
front view and animate.
Step 76: Examine the lateral stabilizing muscle loads for the lateral impact case
Select DATA DISPLAY in the sub-menu and Soft Tissues as the Data Type. Select the Tension
Characteristic. Select Create Full Plot for the following soft tissue forces:
Danny_NStiss_89H_slide_1
Danny_NStiss_79H_slide_1
Danny_NStiss_77H_slide_1
Danny_NStiss_63H_slide_1
Danny_NStiss_53H_slide_1
Step 77: Animate the model with muscle graphics
Select ANIMATION in the sub-menu. Select Muscles as the Tissues and toggle on using the LifeMOD
Display Toolbox. Turn on the local scaling of the muscle graphics by selecting Scale Joint/Tissue
Graphics, Tissues, Scale Locally and the light bulb to scale the muscle graphics. Select
Lateral_Impact as the Default Analysis. Select Fix Camera to the Danny_Upper_Torso.cm marker.
Select zoom with center coordinates of 0,25,.1 and a scale of 2.3. Select divide window, front view
and animate.
Step 78: DEMO COMPLETE

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Detailed Whiplash Analysis

Further
This model could be used to explore many aspects including:
Various muscle/ligament parameters
Various acceleration profiles

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Whiplash%20Analysis.html[06-Jun-15 12:51:30 PM]

LifeMOD Tutorials | Bed Settling

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement

Injury Evaluation Application - Bed Settling


This demonstration problem will illustrate the
combination of a mechanical model (bed) from the
model library with a human model (patient) for a bed
settling analysis to determine the final resting
configuration for models with two different sets of joint
stiffnesses.
Features of this model include:
Combining ADAMS model with human body model
Importing SLF file for anthropometric, joint and
posture data.
Creating human/bed contact forces
Running parametric variation simulation

Sections
Generating the Bed Model
Import the Body Model
Creating the Contact Forces
Running the Passive Simulation
Running the Parametric Study
Interrogating the Results
Further

Lifting Styles
Muscle Recruitment
Muscle Relocation

Generating the Bed Model


In this phase, the previously built ADAMS model of the bed is imported into the database.

Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bed%20Settling.html[06-Jun-15 12:50:01 PM]

LifeMOD Tutorials | Bed Settling

Figure 1: Imported mechanical model (bed).

Figure 2: Panel used to import the mechanical environment (bed).

Step 1: Bring up the import mechanical environment panel


Launch the LifeMOD software. Select CREATE NEW MODEL to start a new modeling session.
Select XCHANGE in the main-menu and IMPORT MECHANICAL ENVIRONMENT in the submenu.
Step 2: Import the bed model from the mechanical environment library
Select Mechanical Environment Library and "Bed" as the Model Library SLF File. Select APPLY
to create the bed model. Press "Shift-S" to shade the view of the bed.

Import the Body Model


In this phase, the human body is created using data contained in the SLF file. The file,

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bed%20Settling.html[06-Jun-15 12:50:01 PM]

LifeMOD Tutorials | Bed Settling

Patient.slf contains body anthropometric data, joint data and posture data.

Figure 3 Body with joints and posture imported from the model library.

Figure 4: Body import panel

Step 3: Bring up the import model


Select IMPORT SLF MODEL FILE on the main-menu and IMPORT SLF MODEL FILE from the
sub-menu.
Step 4: Import the body, joints and posture from the library
Select Model Library and "Full Body Bed Settling" as the Model Library File. Body, Joints and
Posture should be checked in the Build section indicating the presences of these items. Select
APPLY to create the model.

Creating Contact Forces


file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bed%20Settling.html[06-Jun-15 12:50:01 PM]

LifeMOD Tutorials | Bed Settling

The contact ellipsoids automatically created at the time of segment generation, will now be
used to create the foot-floor contact elements. For information on selecting specific model
parameters for this section see Choosing Model Parameters.

Figure 5: Human model displayed as ellipsoids. The ellipsoids represent contact elements to be used
between the model and the bed.

Figure 6: Contact set creation panel

Step 5: Bring up the contact panel


Select CONTACTS on the main-menu and CREATE BASE CONTACT SET on the sub-menu.
Step 6: Create the contact forces between the head/neck and pillow
Select Ellipsoid as the External representation and none as the Internal in the LifeMOD Display
Toolbox. Check force vectors to create scaled force graphics during animation. Provide the
contact parameters as listed in Figure 6. Select .World.ground.pillow as the contact solid.
Select head and neck segments and select APPLY to create the pillow contacts.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bed%20Settling.html[06-Jun-15 12:50:01 PM]

LifeMOD Tutorials | Bed Settling

Step 7: Create the contact forces between the body and the mattress
Check force vectors to create scaled force graphics during animation. Provide the contact
parameters as listed in Figure 6. Select the mattress as the contact solid. Select
right_lower_arm, left_lower_arm, right_hand, left_hand, lower_torso, central_torso,
upper_torso, right_upper_leg, right_lower_leg, right_foot_Single, left_upper_leg,
left_lower_leg, left_foot_Single segments and select APPLY to create the pillow contacts.

Running the Passive Simulation


With the body in position over the bed, a simulation is perform to "drop" the body into the
bed to determine the resting (equilibrium) position for the human model.

Figure 7 Body before settling simulation (left) and after (right).

Step 8: Bring up analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 9: Adjust the visualization parameters on the bed
Right click on the blanket. Select Shell:blanket and appearance. Adjust transparency to
around 80 using the slider. Select OK.
Step 10: Run the dynamics simulation
Check gravity in the -Y direction and run the simulation for 1.5 seconds and 150 time steps
using the "Default" integrator settings.
Step 11: Display simulation results
Display animation using the ADAMS/View toolbox.
Step 12: Save the first analysis
Select SAVE ANALYSIS and enter the name Stiff. Select OK.

Running the Parametric Study


The joint properties are adjusted by changing a global scale factor. In this phase, the hybrid
III joint properties are scaled to .1 of the original value. For information on selecting specific
model parameters for this section see Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bed%20Settling.html[06-Jun-15 12:50:01 PM]

LifeMOD Tutorials | Bed Settling

Figure 8: Parameters window to adjust the joint parameters

Step 13: Bring up the parameters panel


Select PARAMETERS on the main-menu and JOINTS on the sub-menu.
Step 14: Increase the joint properties by .1 of the original value
Set the Hybrid III scale factor to .1 and select INSTALL VALUES.
Step 15: Bring up analyze panel
Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 16: Run the dynamics simulation
Check gravity in the -Y direction and run the simulation for 1.5 seconds and 150 time steps
using the "Default" integrator settings.
Step 17: Display simulation
Use the ADAMS/View toolbox to animate the model.
Step 18: Display the animation with the skeletal/skin model
Set the external representation to Skin and the internal representation to Skeleton using the
LifeMOD Display Toolbox and use the ADAMS/View toolbox to animate the model.

Interrogating the Results


When the simulation is complete the model may be animated. To gain insight to the comfort
level of each body stiffness profile, the contact force at the pelvis may be plotted and the
animation for each case superimposed.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bed%20Settling.html[06-Jun-15 12:50:01 PM]

LifeMOD Tutorials | Bed Settling

Figure 9: Panel set up to plot the lower torso contact force

Figure 10: Pelvis contact forces for the stiff model and the flexible model

Step 19: Bring up results panel

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bed%20Settling.html[06-Jun-15 12:50:01 PM]

LifeMOD Tutorials | Bed Settling

Set the external representation to none and the internal representation to Skeleton using the
LifeMODs Display Toolbox. Select RESULTS on the main-menu and DATA DISPLAY on the submenu. Select Contacts as the Data Type and select the post processor button.
Step 20: Plot the pelvis contact force for stiff model
Select "Diane_Lower_Torso_Con_1", magnitude component. Select the .World.Stiff as the
analysis. Select CREATE FULL PLOT to create the data curve.
Step 21: Plot the pelvis contact force for flexible model
Select "Diane_Lower_Torso_Con_1", magnitude component. Select the .World.Last_Run as the
analysis. Select Create Full Plot to create the data curve.
Step 22: Display simulation in iso view
Set the view to iso, divide window, and Play to view the animation.
Step 23: Animate superimposed models
Select Compare Cases with .world.stiff as case 1 and world.last_run as case 2. Select Play to
animate both cases simultaneously.
Step 24: DEMO COMPLETE

Further
This model was put forth to demonstrate the capability of combining a human model with an
ADAMS model by importing an external file. This model may be refined in many areas
including:
Developing the bed model to include articulations (motorized bed).
Evaluating settling characteristics of various mattress foam types

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bed%20Settling.html[06-Jun-15 12:50:01 PM]

LifeMOD Tutorials | Bicycle Rider

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation

Human Performance Application - Bicycle Rider


One of the most powerful features of the LifeMOD
Biomechanics Modeler is the capability to create sophisticated
human models which may interact with the environment or
other mechanical systems. In this example a detailed model of
a mountain bicycle is merged with a human model.
The human model is attached to the bicycle and inverse
dynamics simulation is performed with the bicycle pedaling
itself at a set velocity. During this simulation, the muscle
contractile histories are recorded in the legs. The histories are
then used in the muscle force models to produce a forward
dynamics simulation in which the human model then pedals
the bicycle. Three simulations are then performed: 1)
baseline, 2) a simulation with a series of 3 inch bumps, and
3) a simulation with a series of 6 inch bumps.
Muscle forces are then compared for the three trials to
examine the effect of the bump on the strength requirements of the muscles in order to maintain a
constant speed.
Key skills exercised in this tutorial include:
Development of a body model driven by muscle forces (legs) and joint torques (upper body)
Importing a mountain bicycle model (full vehicle dynamics).
Developing human/bike interface forces
Combining a passive strength model (upper body) and active model (lower body)
Development of trainable point-to-point muscle forces
Inverse-dynamics, forward-dynamics simulations
Terrain forces
Parameter variation study
Strip chart data reporting

Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

Sections
Generating the Body Segments
Generating the Joints
Creating Soft Tissues
Merging Bicycle Model
Posing the Human Model
Attaching the Human Model to the Bicycle
Running the Inverse Dynamics Simulation
Running the Forward Dynamics Simulation
Interrogating the Results
Further

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Generating the Body Segments


The process begins by creating the segments of the base human model. For this example, segment
dimensions, scale parameters and pass properties are secured from the GeBod anthropometric
database.

Segment generation panel and the resulting Joe model

Figure 1:

Step 1: Bring up segments panel and set fields


Select SEGMENTS on the main-menu and CREATE BASE SEGMENT SET on the sub-menu. Set units to
"Inch Lbm Lbf" and hands to grip. Select the GeBod anthropometric database. Name the body Joe.
Select APPLY to create the body measurement table.
Step 2: Create the body
Select APPLY again to create the body with the specified parameters.

Generating the Joints


In this phase, the human segments created in the first phase are connected together with kinematic
joints. At the same time torque functions are created at each joint degree of freedom. This model will
have a combination of Hybrid III strength joints and passive stiffness joints. The passive joints are on
the legs to stabilize the model during the inverse-dynamics simulation and the HIII joints are
positioned at the spine and arms for a passive response to the bicycle forces during the forwarddynamics simulation. For information on selecting specific model parameters for this section see
Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Figure 2: Joint base set creation panel

Figure 3: Hybrid III joints set for the spine

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Figure 4: Passive stiffness values for joints on left and right legs

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider


Figure 5: Hybrid III joints set for the left and right arms

Step 3: Bring up joint create panel


Select JOINTS on the main-menu and CREATE BASE JOINT SET on the sub-menu.
Step 4: Create passive spring damper joints (with joint limits) for the model
Select "Prepare Model with Recordable Joints (To be trained in an inverse-dynamics simulation)"
Step 5: Set the parameterized stiffness and damping values
Set the nominal joint stiffness to 100 and the damping to 10.
Step 6: Create the parameterized joints
Select "Modify" to bring up the individual joint set matrices.
Step 7: Create H3 joints for the spine
Set the Hybrid III scale functions as in Figure 3 then select APPLY.
Step 8: Create Passive joints at the left leg
Set the parameters as in Figure 4 then select APPLY.
Step 9: Create H3 joints for the left arm
Set the Hybrid III scale functions as in Figure 5 then select APPLY.
Step 10: Create passive joints at the right leg
Set the parameters as in Figure 4 then select APPLY.
Step 11: Create H3 joints for the right arm
Set the Hybrid III scale functions as in Figure 5 then select APPLY.

Creating Soft Tissues


The next step in the process is to create soft tissues (muscles) on the model. LifeMOD automatically
creates a set of basic muscle groups for the body. Muscles consist of recording elements or trained
elements. The recording elements are simple data collectors which record the contraction history of the
muscle during an activity when the model is moved using external drivers such as motion agents.
Trained elements can be either PID closed-loop force actuators or actuation curve open-loop force
actuators acting to drive the skeleton's motion. Muscle parameters such as physiological cross sectional
area (pCSA) and maximum tissue stress are used to calculate the maximum force potential of the
particular muscle. LifeMOD contains a database of pCSA values for each muscle and is scaled
accordingly based on the input body parameters (ht, wt, gender and age). Further, the force output of
the muscle may be scaled from 0% to 200% to change the contributions of each particular muscle.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Figure 6: Muscle set created on the legs Note that the color of the muscles is "rust" indicating passive
recording elements.

Figure 7: Panel to bring up muscle force panels.

Step 12: Bring up the soft tissue panel


Select SOFT TISSUES on the main-menu and CREATE BASE TISSUE SET on the sub-menu.
Step 13: Set the fields for the muscle generation
Select "Prepare Model with Recording Muscle Elements (To be trained in an inverse-dynamics
simulation)" Set the passive stiffness and damping to 0.1, the muscle resting load to .5 and the muscle
tone multiplier to be 200%, the tissue stress to be 259 lbs/in2 and the muscle resting load to be .5 lbs.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Step 14: Create the soft tissues on the legs


Specify only right and left legs avd select APPLY to create the muscle sets on the legs.

Merging Bicycle Model


A previously created model of a mountain bicycle exists in the environment library. The model consists
of parts, constraints and forces. It also has simple terrain model which simulates the bicycle riding over
a series of bumps. The height of the bumps is parameterized and may be adjusted to observe how the
human model responds to the disturbance.

Figure 9: ADAMS bicycle model to be merged with the human model

Step 15: Bring up the Import Mechanical Environment panel


Select XCHANGE from the main-menu and IMPORT MECHANICAL ENVIRONMENT from the sub-menu.
Select Mechanical Environment Library and Bicycle for the Model Library SLF File.
Step 16: Import the bicycle mechanical model
Select APPLY to import the bicycle model into the human model database.

Posing the Human Model


After the joints are created on the model the posture of the model may be adjusted, and the model
moved into place. The posture may be adjusted by recalling one of several postures in the posture
library then further modify the joint angles if necessary. The body is moved into place by selecting the
Lower_Torso segment and changing the location.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Figure 10: Posture panel set up to add bicycle riding posture

Figure 11: Moving the human model and setting the riding posture

Step 17: Bring up the posture panel


Select POSTURE from the main-menu and CONFIGURE BASE MODEL from the sub-menu.
Step 18: Put model in bicycle riding posture
Select LOAD LIBRARY POSTURE and import the BicycleRiding.slf file to import the joint angles for the
model.

Attaching the Human Model to the Bicycle


With the human model in position relative to the bicycle, the human model is now attached to the
bicycle at the hands, feet and pelvis using bushing force elements.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Figure 12: Connecting the human model to the bicycle with bushing elements

Figure 13: Bushing for left and right hands

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Figure 14: Bushing for left and right feet

Figure 15: Bushing for pelvis

Step 19: Create bushing elements between the hands and the grips
from the forces section in the Main Toolbox. Select .World.Joe_Left_Hand
Select the bushing icon
as the first body and .World.Frame as the second body. Right-click on the ground to bring up the
Location panel under the main toolbox. Enter (7.5, 26, 19.5) and select APPLY. Modify and set values to

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

figure 13.
Create a second bushing selecting .World.Joe_Right_Hand and .World.Frame respectively. Set the
location to be (-7.5, 26, 19.5) and select APPLY. Modify and set values to figure 13.
OR
Use the following ADAMS/View commands to create the bushing forces between the hands and the
grips:
Markers for Left Hand:
marker create marker=.World.Joe_Left_Hand.b1 loc=7.5,26,19.5 ori=0,0,0 rel=.World
marker create marker=.World.Frame.b1 loc=7.5,26,19.5 ori=0,0,0 rel=.World

Bushing Forces for Left Hand:


force cre ele bush bush=.World.Bush1 i_mark=.World.Joe_Left_Hand.b1 j_mark=.World.Frame.b1
stiff=1000.0,1000.0,1000.0 damp=100,100,100 force_preload=0.0,0.0,0.0
tstiffness=1.0E+003,1.0E+003,1.0E+003 tdamping=1.0E+002,1.0E+002,1.0E+002
torque_preload=0.0,0.0,0.0

Markers for Right Hand:


marker create marker=.World.Joe_Right_Hand.b2 loc=-7.5,26,19.5 ori=0,0,0 rel=.World
marker create marker=.World.Frame.b2 loc=-7.5,26,19.5 ori=0,0,0 rel=.World

Bushing Forces for Right Hand:


force cre ele bush bush=.World.Bush2 i_mark=.World.Joe_Right_Hand.b2 j_mark=.World.Frame.b2
stiff=1000.0,1000.0,1000.0 damp=100,100,100 force_preload=0.0,0.0,0.0
tstiffness=1.0E+003,1.0E+003,1.0E+003 tdamping=1.0E+002,1.0E+002,1.0E+002
torque_preload=0.0,0.0,0.0

Step 20: Create bushing elements between the feet and the pedals
Create a bushing using .World.Joe_Left_Foot and .World.Lpedal at (5.7, 0, 7) Modify values to figure 14.
Create a second bushing using .World.Joe_Right_Foot and .World.Rpedal at (-5.7, 0, -7) Modify values
to figure 14.
OR
Use the following ADAMS/View commands to create the bushing forces between the feet and the
pedals:
Markers for Left Foot:
marker create marker=.World.Joe_Left_Foot.b3 loc=5.7,0,7 ori=0,0,0 rel=.World
marker create marker=.World.Lpedal.b3 loc=5.7,0,7 ori=0,0,0 rel=.World

Bushing Forces for Left Foot:


force cre ele bush bush=.World.Bush3 i_mark=.World.Joe_Left_Foot.b3 j_mark=.World.Lpedal.b3
stiff=1000.0,1000.0,1000.0 damp=100,100,100 force_preload=0.0,0.0,0.0
tstiffness=1.0E+001,1.0E+001,1.0E+001 tdamping=1.0E+001,1.0E+001,1.0E+001
torque_preload=0.0,0.0,0.0

Markers for Right Foot:


marker create marker=.World.Joe_Right_Foot.b4 loc=-5.7,0,-7 ori=0,0,0 rel=.World
marker create marker=.World.Rpedal.b4 loc=-5.7,0,-7 ori=0,0,0 rel=.World

Bushing Forces for Right Foot:


force cre ele bush bush=.World.Bush4 i_mark=.World.Joe_Right_Foot.b4 j_mark=.World.Rpedal.b4
stiff=1000.0,1000.0,1000.0 damp=100,100,100 force_preload=0.0,0.0,0.0
tstiffness=1.0E+001,1.0E+001,1.0E+001 tdamping=1.0E+001,1.0E+001,1.0E+001
torque_preload=0.0,0.0,0.0

Step 21: Create bushing elements between the pelvis and the seat
Create a bushing using .World.Joe_Lower_Torso and .World.Frame at (0, 25, -9) Modify to figure 15.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

OR
Use the following ADAMS/View commands to create the bushing forces between the pelvis and the
seat:
Markers:
marker create marker=.World.Joe_Lower_Torso.b5 loc=0,25,-9 ori=0,0,0 rel=.World
marker create marker=.World.Frame.b5 loc=0,25,-9 ori=0,0,0 rel=.World

Bushing Forces:
force cre ele bush bush=.World.Bush5 i_mark=.World.Joe_Lower_Torso.b5 j_mark=.World.Frame.b5
stiff=1000.0,1000.0,1000.0 damp=100,100,100 force_preload=0.0,0.0,0.0
tstiffness=1.0E+003,1.0E+003,1.0E+003 tdamping=1.0E+002,1.0E+002,1.0E+002
torque_preload=0.0,0.0,0.0

Running the Inverse Dynamics Simulation


The bicycle model is equipped with a motion driver at the crank arm, which results in the bicycle
pedaling itself. With the feet attached to the bicycle, the legs will be driven through the pedal cycle.
During this phase, the muscle contraction histories will be recorded and used in the contractile elements
in the subsequent forward-dynamics simulation.

Figure 16: Animation frames from the inverse-dynamics simulation

Step 22: Bring up analyze panel


Select ANALYZE from the main-menu, select DYNAMICS from the sub-menu.
Step 23: Run the simulation
Run the simulation for 5 seconds and 500 time steps using the default integrator settings. (The
graphics can be turned off, making the simulation faster, by unchecking "Update graphics display")
Step 24: Display animation
When the simulation is complete, use the ADAMS/View toolbox to animate the simulation.
Step 25: Display animation with skin/skeletal model
In the LifeMOD Display Toolbox, select Skin for the External graphical representation and Skeleton for
the internal to display a skeletal model with transparent skin.

Running the Forward Dynamics Simulation


With the muscle contraction history recorded from the inverse-dynamics simulation, it is now used in
linear PID-Servo formulation to produce a force to recreate the motion history. The process entails
deactivating the motion agents, in this case the motion of the crank, and updating the muscles. For
information on selecting specific model parameters for this section see Choosing Model Parameters.
The motion drive will be removed from crank and the bicycle will be pedaled by the human model.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Figure 17: Deactivating the crank kinematic motion driver

Figure 16: Panel to edit the muscles to include contractile elements. Select the "light bulb" to bring up the
lower panel.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Figure 18: Panel to edit the muscles to include contractile element

Step 26: Bring up soft tissues training panel


Select SOFT TISSUES on the main-menu and TRAINING on the sub-menu.
Step 27: Install ACTIVE contractile element
Select "Install Trained Closed-loop Contractile Elements on Muscles" to bring up the panel in Figure 16.
Step 28: Set fields and update joints
Specify 1e8 as the proportional gain, 1e5 as the integral gain, and 1e6 as the derivative gain. These
values control how well the PID-servo actuators will track the desired contraction at each time step in
the analysis. Note that the individual muscle will not produce a force greater than the physiological
cross section area (pCSA) times the maximum tissue stress. Select APPLY to update the muscles.
Step 29: Deactivate crank motion on the bicycle
Right-click on crank, highlighting Motion: MOTION_1, and select (DE)ACTIVATE. Uncheck the Object
Active and the Objects Dependents Active Select OK.
OR
Use the ADAMS/View command to deactivate the crank motion driver:
entity attr entity_name=.World.MOTION_1 active=off dependents_active=off

Step 30: Bring up analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 31: Run BASELINE simulation
Set the gravity vector at -386 in the negative Y direction. Run the simulation for 5.0 seconds and 500
time steps using the default integrator settings.
Step 32: Save the baseline analysis
Select SAVE ANALYSIS and enter the name "Baseline". Select OK.
Step 33: Bring up the results panel.
Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu.
Step 34: Display muscle strip charts
Select Joe_VasMed_Rtiss_1 as the Soft Tissue, Tension as the Characteristic and select CREATE STRIP
CHART MEASURE. Select Joe_GlutMax1_Rtiss_1 as the Soft Tissue, Tension as the Characteristic and
select CREATE STRIP CHART MEASURE.
Step 35: Turn muscle graphics scaling on
Select ANIMATION in the sub-menu. Turn on the global scaling of the muscle graphics by selecting

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Scale Joint/Tissue Graphics, Tissues, and Scale Globally. Select the light bulb, to turn on the muscle
scaling.
Step 36: Display animation
Use the ADAMS/View toolset to animate the simulation results.
Step 37: Save the muscle strip chart curves
On each strip chart, right click on the curve and select "SAVE".
Step 38: Set the bump height to 3 inches
Modify one of the parameters in the bicycle model to set the bump height to 3 inches going to EditModify in the task bar. In the field right of "Filter" enter *DV_Bump_Height* and hit enter. Double-click
on .World and select DV_Bump_Height and enter 3 as the standard value. Select OK. See figure 19.
OR
Modify the height using the following ADAMS/View command:
variable modify variable_name=.World.DV_Bump_Height real=3

Figure 19: Using the Database Navigator to modify variable

Step 39: Bring up analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 40: Run Bump_3 simulation
Set the gravity vector at -386 in the negative Y direction. Run the simulation for 5.0 seconds and 500
time steps using the default integrator settings.
Step 41: Save the bump_3 analysis
Select SAVE ANALYSIS and enter the name Bump_3. Select OK.
Step 42: Bring up the results panel.
Select RESULTS on the main-menu and ANIMATION on the sub-menu.
Step 43: Turn muscle graphics scaling on
Turn on the global scaling of the muscle graphics by selecting Tissues, Global and the light bulb under
Animation Scaling Graphics in the Results panel.
Step 44: Display animation
Using the ADAMS/View toolset to animate the simulation results.
Step 45: Save the muscle strip chart curves

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

On each strip chart, right click on the curve and select "save".
Step 46: Bring up analyze panel
Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 47: Set the bump height to 6 inches
Modify the bump height to 6 inches by repeating Step 38 and entering 6 as the the standard value.
OR
Set the bump height to 6 inches using the following ADAMS/View command:
variable modify variable_name=.World.DV_Bump_Height real=6

Step 48: Run Bump_6 simulation


Set the gravity vector at -386 in the negative Y direction. Run the simulation for 5.0 seconds and 500
time steps using the default integrator settings.
Step 49: Save the bump_6 analysis
Select SAVE ANALYSIS and enter the name Bump_6. Select OK.
Step 50: Bring up the results panel.
Select RESULTS on the main-menu and ANIMATION on the sub-menu.
Step 51: Turn muscle graphics scaling on
Turn on the global scaling of the muscle graphics by selecting Tissues, Global and the light bulb under
Animation Scaling Graphics in the Results panel.
Step 52: Display animation
Using the ADAMS/View toolset to animate the simulation results.

Interrogating the Results


When the series of simulations are complete the results may be compared to examine the effect of the
system disturbance on the muscle patterns. In Figure 18 the muscle forces for the Vastus Lateralis,
Semitendonosis, and Adductor Magnus is plotted for the left leg. The effects of the disturbance are
apparent as the model attempts to maintain the same speed through the bump. The effect is seen in
both muscle groups but most noticeably in the quadriceps force as would be expected since the
disturbance occurs on the left leg down stroke.
Figure 21 displays the quadriceps, hamstrings and gasctroc muscle forces for the Baseline simulation.
What can be observed is the timings of the various groups to produce the pedaling action.
Figure 23 displays the same muscle forces with the 6 inch bump. The disturbance is apparent in the
muscle signals.
Various data may be presented from the forward-dynamics simulation including:
Major knee flexor/extensor muscle tensions
Pedal forces
Head accelerations

Figure 20: Successive animation images of model riding over a 6 inch bump.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Figure 21: Vastus Lateralis, Semitendonosis, and Adductor Magnus muscle forces for the Baseline Analysis

Figure 22: Vastus Lateralis, Semitendonosis, and Adductor Magnus muscle forces for the Bump=3 Analysis

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Figure 23: Vastus Lateralis, Semitendonosis, and Adductor Magnus muscle forces for the Bump_6 Analysis

Figure 24: Data for the torques on the neck in the different cases

Step 53: Bring up results panel


Select RESULTS from the main-menu and DATA DISPLAY from the sub-menu. Select "Results Window"
to bring up the results processor.
Step 54: Plot the left vastus lateralis force - Baseline Simulation
Select "Joe_VasLat_Ltiss_1" as the soft tissue, "Tension" characteristic, and .World.Baseline analysis.
Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of 1. Select
CREATE FULL PLOT.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Step 55: Plot the left semitendonosis force - Baseline Simulation


Select "Joe_SemTen_Ltiss_1" as the soft tissue, "Tension" characteristic, and .World.Baseline analysis.
Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of 1. CREATE FULL
PLOT.
Step 56: Plot the left adductor magnus force - Baseline Simulation
Select "Joe_AddMag_Ltiss_1" as the soft tissue, "Tension" characteristic, and .World.Baseline analysis.
Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of 1. CREATE FULL
PLOT.
Step 57: Animate right view
Select ANIMATION from the sub-menu to bring up the animation panel. Select Scale Joint/Tissue
Graphics, Tissues, Scale Globally and the light bulb to scale the tissues during animation. Select right
view and Play the animation.
Step 58: Animate front view
Select front view and select PLAY.
Step 59: Plot the left vastus lateralis force - Bump_3 Simulation
Select DATA DISPLAY in the sub-menu. Select "Joe_VasLat_Ltiss_1" as the soft tissue, "Tension"
characteristic, and .World.Bump_3 analysis. Select a low pass butterworth data filter with a cuttoff
frequency of 5.0 and an order of 1. Select CREATE FULL PLOT.
Step 60: Plot the left semitendonosis force - Bump_3 Simulation
Select "Joe_SemTen_Ltiss_1" as the soft tissue, "Tension" characteristic, and .World.Bump_3 analysis.
Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of 1. Check new
plot and select CREATE FULL PLOT.
Step 61: Plot the left adductor magnus force - Bump_3 Simulation
Select "Joe_AddMag_Ltiss_1" as the soft tissue, "Tension" characteristic, and .World.Bump_3 analysis.
Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of 1. Select
CREATE FULL PLOT.
Step 62: Animate right view
Select ANIMATION from the sub-menu. Select right view and select PLAY.
Step 63: Plot the left vastus lateralis force - Bump_6 Simulation
Select DATA DISPLAY from the sub-menu. Select "Joe_VasLat_Ltiss_1" as the soft tissue, "Tension"
characteristic, and .World.Bump_6 analysis. Select a low pass butterworth data filter with a cuttoff
frequency of 5.0 and an order of 1. Select CREATE FULL PLOT.
Step 64: Plot the left semitendonosis force - Bump_6 Simulation
Select "Joe_SemTen_Ltiss_1" as the soft tissue, "Tension" characteristic, and .World.Bujp_6 analysis.
Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of 1. Check new
plot and select CREATE FULL PLOTt.
Step 65: Plot the left adductor magnus force - Bump_6 Simulation
Select "Joe_AddMag_Ltiss_1" as the soft tissue, "Tension" characteristic, and .World.Bujp_6 analysis.
Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of 1. Select
CREATE FULL PLOT.
Step 66: Animate right view
Select ANIMATION from the sub-menu. Select right view and select PLAY.
Step 67: Bring up joints results panel
Select DATA DISPLAY from the sub-menu. Select JOINTS on the sub-menu.
Step 68: Plot neck forces - Baseline Analysis
Select "Joe_Lower_Neck" as the joint, "Torque" characteristic, Sagittal component and .World.Baseline
analysis. Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of 1.
Select CREATE FULL PLOT.
Step 69: Plot neck forces - Bump_3 Analysis
Select "Joe_Lower_Neck" as the joint, "Torque" characteristic, Sagittal component and .World.Bump_3
analysis. Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of 1.
Select CREATE FULL PLOT.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Bicycle Rider

Step 70: Plot neck forces - Bump_6 Analysis


Select "Joe_Lower_Neck" as the joint, "Torque" characteristic, Sagittal component and .World.Bump_6
analysis. Select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of 1.
Select CREATE FULL PLOT.
Step 71: Animate right view
Select right view and select PLAY.
Step 72: Close plot window
Select MODEL WINDOW to return to the model.
Step 73: DEMO COMPLETE

Further
This model could be used to explore may issues including training methods, bicycle suspension design,
riding postures, etc.
This model may be refined in many areas including:
Creating detailed knee joints to examine the soft tissue strain on the knee during certain riding
postures and loads. (see Detailed Knee Joint Application).
Parametric studies of vehicle parameters including: various terrains, speeds, suspension settings,
bicycle dimensions, etc.
Comparing muscle force requirements for various riding styles including standing vs. sitting, etc.

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bicycle%20Rider.html[06-Jun-15 12:51:36 PM]

LifeMOD Tutorials | Detailed Spine

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine

Orthopedics Application - Cervical Spine


The LifeMOD Biomechanics Modeler creates a standard 19segment human model representation by default, however, the
user may create more detailed human models using the basic
ADAMS/View tools and specific LifeMOD tools. This example
involves the augmentation of the basic 19-segment model to
include a detailed spine model. The neck is flexed and extended
point-to-point muscle forces. Inter-vertebrae compression loads
are then examined.
To simply capture the flexion and extension motion of the neck,
Motion Agents will be added to the model. The motion will have
the effect of simply "pulling and pushing" the head to drive it
through its motion, all the while the contraction of the muscles
will be recorded for the subsequent forward-dynamics simulation.
Features of this model include:
Detailed body segments (cervical spine).
Point-to-point muscle forces
Inverse-dynamics, forward-dynamics simulations.

Sections
Generating the Body Segments
Reducing the Model
Generating the Spinal Joints
Creating Passive Muscle Forces
Refining the Neck Segment
Reassigning Muscle Attachments
Creating the Cervical Spine Joints
Adding Motion Agents to the Human Model
Running the First Inverse-Dynamics Simulation

Tennis

Running the First Direct-Dynamics Simulation

Walking

Running the Second Inverse-Dynamics Simulation

NeckSIM:Whiplash

Running the Second Direct-Dynamics Simulation


Interrogating the Results
Further

Generating the Body Segments


The body segments for the complete body are generated first, then the model is reduced to focus on
the cervical spine. The body is created using the GeBod database for a male who is 70 inches tall
weighing 170 lbs.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Figure 1: Panel settings to create body model

Step 1: Bring up segments panel and set fields


Launch the LifeMOD software and select CREATE NEW MODEL to begin a new modeling session. Select
SEGMENTS from the main-menu and CREATE BASE SEGMENT SET from the sub-menu.
Step 2: Create the body
Generate a full body model using the GeBod database. Select a 170 lbs, 70 inch tall male named Casey.
Set hands to grip, and units to Inch Lbm Lbf. Select "Create Body Parameter Table" to build the human
segment measurement table, and then select "Create Human Model From Parameter Table" to build the
model.

Reducing the Model


The segments of the full body model are reduced to concentrate on the head, neck and upper_torso.
The upper_torso will be fixed to ground in subsequent steps.

Figure 2: Body segment delete panel to remove all segments except for the head, neck and upper_torso

Step 3: Bring up segment delete panel

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Select SEGMENTS in the main-menu and DELETE in the sub-menu.


Step 4: Delete the extra segments
Use the body segment delete panel to remove the leg and foot segments.

Generating the Spinal Joints


In this step, simple rotational joints are generated for the arms, thoracic and lumbar spinal regions.

Figure 3: Panel to create passive joints on the model

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Figure 4: When generating the spinal joints, be sure to deselect the joints for the upper and lower neck

Step 5: Bring up the joint create panel


Select JOINTS in the main-menu and CREATE BASE JOINT SET in the sub-menu
Step 6: Create passive spring damper joints (with joint limits) for the model
Select "Prepare Joints with Recording Joints (To be trained in an inverse-dynamics simulation)" to bring
up the sub-panel.
Step 7: Set the parameterized stiffness and damping values
Specify the nominal joint stiffness to be 1000 and the damping to be 100.
Step 8: Create passive spring damper joints (with joint limits) for the model
Check the Spinal, Left Arm and Right Arms and select MODIFY to bring up the joint set matrix panels.
Step 9: De-select the neck and create the joints for the spine
Deselect the upper and lower neck joint sets (see figure 4) and select APPLY.
Step 10: Create the joint sets for the arms
Select APPLY on both left and right arm panels.

Creating Passive Muscle Forces


The next step in the process is to create soft tissues (muscles) on the model. LifeMOD automatically
creates a set of basic muscle groups for the body. Muscles consist of recording elements or trained
elements. The recording elements are simple data collectors which record the contraction history of the
muscle during an activity when the model is moved using external drivers such as motion agents.
Trained elements can be either PID closed-loop force actuators or actuation curve open-loop force
actuators acting to drive the skeleton's motion. Muscle parameters such as physiological cross sectional
area (pCSA) and maximum tissue stress are used to calculate the maximum force potential of the

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

particular muscle. LifeMOD contains a database of pCSA values for each muscle and is scaled
accordingly based on the input body parameters (ht, wt, gender and age). Further, the force output of
the muscle may be scaled from 0% to 200% to change the contributions of each particular muscle. For
information on selecting specific model parameters for this section see Choosing Model Parameters.

Figure 5: Setting the parameters in the muscle generation panel brings up the muscle generation matrix

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Figure 6: Muscle set created for the neck. Note that the color of the muscles is "rust" indicating passive
training elements.

Step 11: Bring up the soft tissues create base set panel panel
Select SOFT TISSUES on the main-menu and CREATE BASE TISSUE SET on the sub-menu.
Step 12: Set the fields for the muscle generation
Select "Prepare Model with Recording Muscle Elements (To be trained in an inverse-dynamics
simulation)" to bring up the panel displayed in figure 5. Set the passive stiffness and damping to 0,1,
muscle resting load to 0, and set the muscle tone multiplier to 100%.
Step 13: Generate the spinal muscle set
Check Head/Truck only and select APPLY to create the spinal muscle set as seen in Figure 6.

Refining the Neck Segment


In this step, the standard single segment representing the neck or c3-c7 vertebrae is removed and neck
is refined to include a separate body for each vertebra. Inter-vertebrae joints are created.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Figure 7: Cervical vertebrae represented as separate parts

Figure 8: Single segment creation panel set up to create the C3 part

Step 14: Edit the individual vertebrae


Change view and zoom in to focus on the vertebrae
Step 15: Bring up the segment create single panel
Select SEGMENTS on the main-menu and CREATE INDIVIDUAL SEGMENT on the sub-menu
Step 16: Create the C3 vertebrae segment
Set the segment name to C3 and the CM location to (0.0, 25.4, -1.0) and orientation of (0, 0, 0) Select
"Estimate Mass Properties with Ellipsoids" and check "Default Human Tissue Density" and a bounding
ellipsoid of x-length = 4, y-length=1 and z-length=4. For the graphics, select existing geometry of
file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

.World.Casey_C3.Skel_c3. Select APPLY.


Step 17: Create the C4 vertebrae segment
Set the segment name to C4 and the CM location to (0.0, 24.5, -1.0) and orientation of (0, 3.0, 0)
Estimate mass properties using the default human tissue density and a bounding ellipsoid of x-length =
4, y-length=1 and z-length=4. For the graphics, select existing geometry of .World.Casey_Neck.Skel_c4.
Select APPLY.
Step 18: Create the C5 vertebrae segment
Set the segment name to C5 and the CM location to (0.0, 23.5, -0.9) and orientation of (0, 4.0, 0)
Estimate mass properties using the default human tissue density and a bounding ellipsoid of x-length =
4, y-length=1 and z-length=4. For the graphics, select existing geometry of .World.Casey_Neck.Skel_c5.
Select APPLY.
Step 19: Create the C6 vertebrae segment
Set the segment name to C6 and the CM location to (0.0, 22.5, -1.0) and orientation of (0, 4.0, 0)
Estimate mass properties using the default human tissue density and a bounding ellipsoid of x-length =
4, y-length=1 and z-length=4. For the graphics, select existing geometry of .World.Casey_Neck.Skel_c6.
Select APPLY.
Step 20: Create the C7 vertebrae segment
Set the segment name to C7 and the CM location to (0.0, 21.5, -1.1) and orientation of (0, 9.0, 0)
Estimate mass properties using the default human tissue density and a bounding ellipsoid of x-length =
4, y-length=1 and z-length=4. For the graphics, select existing geometry of .World.Casey_Neck.Skel_c7.
Select APPLY.

Reassigning Muscle Attachments


With the new vertebrae segments created, the muscle attachments to the original neck segment must
be reassigned to the new vertebra segments. The physical attachment locations will remain the same.

Figure 9: Reassigning a group of muscle attachments

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Figure 10: Panel to reassign attachment point

Step 21: Bring up the soft tissues edit panel


Select SOFT TISSUES in the main-menu and EDIT PROPERTIES in the sub-menu. Select "Edit Tissue
Attachment Points".
Step 22: Reassign the Right Scalenus Posterior attachment
Use cursor to select the attachment .World.Casey_ScalPos_Rtiss_1.attachment_1, and enter the segment
.World.Casey_C5 to reassign the attachment to. Select APPLY.
Step 23: Reassign the Left Scalenus Posterior attachment
Use cursor to select the attachment .World.Casey_ScalPos_Ltiss_1.attachment_1l, and enter the
segment .World.Casey_C5 to reassign the attachment to. Select APPLY.
Step 24: Reassign the Right Scalenus Medius attachment
Use cursor to select the attachment .World.Casey_ScalMed_Rtiss_1.attachment_1, and enter the
segment .World.Casey_C5 to reassign the attachment to. Select APPLY.
Step 25: Reassign the Left Scalenus Medius attachment
Use cursor to select the attachment .World.Casey_ScalMed_Ltiss_1.attachment_1, and enter the
segment .World.Casey_C5 to reassign the attachment to. Select APPLY.
Step 26: Reassign the Right Scalenus Anterior attachment
Use cursor to select the attachment .World.Casey_neck.RtScalAnt_Mell, and enter the segment
.World.Casey_C5 to reassign the attachment to. Select APPLY.
Step 27: Reassign the Left Scalenus Anterior attachment
Use cursor to select the attachment .World.Casey_neck.LtScalAnt_Mell, and enter the segment
.World.Casey_C5 to reassign the attachment to. Select APPLY.
Step 28: Reassign the Left Splenius Cervicis attachment
Use cursor to select the attachment .World.Casey_SplCerv_Rtiss_1.attachment_2, and enter the
segment .World.Casey_C7 to reassign the attachment to. Select APPLY.
Step 29: Reassign the Right Splenius Cervicis attachment
Use cursor to select the attachment .World.Casey_SplCerv_Ltiss_1.attachment_2, and enter the segment
.World.Casey_C7 to reassign the attachment to. Select APPLY.

Creating the Cervical Spine Joints


Non-standard joints are created at the effective joint center between the vertebrae for this example. For

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

this example the axis and the atlas bones are not used. The skull is joined directly to the C3 vertebrae.
For this simulation the user will go through the exercise of creating kinematic joints, however, bushings
or other force elements could be used to create the relationship between the bones. For more complex
interaction representing disc physics, bushing forces could be used to represent the compliant
relationship between the vertebrae via the disk.

Figure 11: Creating joints between the new neck segments

Figure 12: Panel to create the joint between the head and the C3 vertebrae

Step 30: Create markers between each vertebrae segment


Create the following markers with default orientation:
.World.Casey_C3.m1 at (0.0, 25.7, -1.1)
.World.Casey_C4.m1 at (0.0, 24.9, -1.1)
.World.Casey_C5.m1 at (0.0, 23.8 -1.2)
.World.Casey_C6.m1 at (0.0, 22.8, -1.25)
.World.Casey_C7.m1 at (0.0, 22.0, -1.2)
.World.Casey_Upper_Torso.m1 at (0.0, 21.3, -1.3)

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

OR
Create the markers using the following ADAMS/View commands:
marker
marker
marker
marker
marker
marker

crea
crea
crea
crea
crea
crea

marker=.World.Casey_C3.m1 loc=0.0, 25.7, -1.1 ori=0,0,0 rel=.World


marker=.World.Casey_C4.m1 loc=0.0, 24.9, -1.1 ori=0,0,0 rel=.World
marker=.World.Casey_C5.m1 loc=0.0, 23.8, -1.2 ori=0,0,0 rel=.World
marker=.World.Casey_C6.m1 loc=0.0, 22.8, -1.25 ori=0,0,0 rel=.World
marker=.World.Casey_C7.m1 loc=0.0, 22., -1.2 ori=0,0,0 rel=.World
marker=.World.Casey_Upper_Torso.m1 loc=0.0, 21.3, -1.3 ori=0,0,0 rel=.World

Step 31: Bring up the segments delete panel.


Select SEGMENTS from the main-menu and DELETE from the sub-menu.
Step 32: Delete the original neck segment
Check the Neck box to delete the original base neck segment.
Step 33: Bring up the create single joint panel
Select JOINTS from the main-menu and CREATE INDIVIDUAL JOINT from the sub-menu.
Step 34: Create a joint between the head and the C3 vertebrae
Set the inboard segment to .World.Casey_C3 and the outboard segment to .World.Casey_Head and the
reference axes to .World.Casey_C3.m1. Set X, Y and Z axes to passive with with a stiffness (k) of 0.5
and damping value (c) of 5 + limit of 45 and a - limit of 45 and a bump stiffness of 1e6. Select APPLY.
Step 35: Create a joint between the C3 and C4 vertebrae
Set the inboard segment to .World.Casey_C4 and the outboard segment to .World.Casey_C3 and the
reference axes to .World.Casey_C4.m1. Select APPLY.
Step 36: Create a joint between the C4 and C5 vertebrae
Set the inboard segment to .World.Casey_C5 and the outboard segment to .world.Casey_C4 and the
reference axes to .World.Casey_C5.m1. Select APPLY.
Step 37: Create a joint between the C5 and C6 vertebrae
Set the inboard segment to .World.Casey_C6 and the outboard segment to .world.Casey_C5 and the
reference axes to .World.Casey_C6.m1. Select APPLY.
Step 38: Create a joint between the C6 and the C7 vertebrae
Set the inboard segment to .World.Casey_C7 and the outboard segment to .world.Casey_C6 and the
reference axes to .World.Casey_C7.m1. Select APPLY.
Step 39: Create a joint between the C7 and the Upper_Torso vertebrae
Set the inboard segment to .World.Casey_Upper_Torso and the outboard segment to .world.Casey_C7
and the reference axes to .World.Casey_Upper_Torso.m1. Select APPLY.

Adding Motion Agents to the Human Model


The model, as it exists, is passive and must be driven or manipulated with an external force. To drive
the model to capture the simple flexion and extension motion of the neck, Motion Agents will be added
to the model. The motion will have the effect of simply "pulling and pushing" the head to drive it
through its motion, all the while the contraction of the muscles will be recorded for the subsequent
forward-dynamics simulation.

Figure 13: Data for the driving spline for the motion agent

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Figure 14: Panel set up to create the motion agent to move the head

Step 40: Create a spline using data from Figure 11.


Select Build-Data_Elements-Spline-New from the taskbar. Select "Append Row to X and Y data" until
there are 9 rows. Input data from figure 11. Name .World.Casey_SPLINE_1. Select OK.
OR
Create the spline using the ADAMS/View command:
data_element create spline spline=.World.Casey_SPLINE_1 x=0.0, 1, 2, 3, 4, 5, 6, 7, 8 y=0.0, 3, 6, 3, 0, -3, -6, -3, 0
linear_extrapolate=no units=no_units

Step 41: Bring up motion agent create panel


Select MOTION on the main-menu and CREATE INDIVIDUAL MOTION AGENT on the sub-menu.
Step 42: Create motion agent on head
Select Casey_Head for the body segment. Use the Manually Select Location agent positioning method
with a location of (0.0, 32.6, -0.9) Set the parameters as in Figure 12. Set all dof's to free except for
the z-dof which is set to Driven referring to the Casey_Spline_1 created in the prior step. Select APPLY.

Running the First Inverse-Dynamics Simulation


With the model developed, complete with passive muscle groups and motion agents a inverse-dynamics
simulation may be performed to capture the contraction of the muscles for the flexion-extension activity.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Figure 15. Animations from the inverse-dynamics simulation

Figure 16: Analyze panel set to run inverse-dynamics simulation

Step 43: Create a fixed joint between the upper_torso and ground
from the main toolbox. Select .World.Casey_Upper_Torso as the first
Select the fixed joint icon
body and .World.ground as the second. Right-click on the ground to bring up the location panel under
the main toolbox. Enter
(-1.2086648665, 13.1644132682, -3.3323534021) as the location. Select OK.
OR
Use the following ADAMS/View commands to create a fixed joint between the upper_torso and ground:
marker create marker=.World.Casey_Upper_Torso.MARKER_878 loc=-1.2086648665, 13.1644132682, -3.3323534021
ori=270.0, 90.0, 90.0
marker create marker=.World.ground.MARKER_879 loc=-1.2086648665, 13.1644132682, -3.3323534021 ori=270.0,
90.0, 90.0

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine


constraint create joint Fixed joint_name=.World.Casey_JOINT_16
i_marker_name=.World.Casey_Upper_Torso.MARKER_878 j_marker_name=.World.ground.MARKER_879

Step 44: Bring up the analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 45: Run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 8 seconds and 200 time
steps using the default integrator settings.
Step 46: Display animation
Use the ADAMS/View main toolbox to animate the model.

Running the First Direct-Dynamics Simulation


With the muscle contraction history recorded from the inverse-dynamics simulation, it is now used in
linear PD-Servo formulation to produce a force to recreate the motion history. The process entails
deactivating the Motion Agents and updating the muscles. For information on selecting specific model
parameters for this section see Choosing Model Parameters.

Figure 17: Panel set to edit muscles to set up as a driver based on contraction history recorded from the
inverse-dynamics simulation

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Figure 18: Model with active "trained" muscle force elements. Note that the color of the muscles is now brick
red indicating active elements.

Step 47: Bring up the motion agent delete panel


Select MOTION on the main-menu and DELETE on the sub-menu.
Step 48: Delete all motion agents
Select DELETE ALL on the panel
Step 49: Bring up soft tissue training panel
Select SOFT TISSUES on the sub-menu and TRAINING on the panel.
Step 50: Install ACTIVE contractile element
Select "Install Trained Closed-loop Contractile Elements on Muscles"
Step 51: Set fields and update joints
Specify 1e8 as the proportional gain, 1e5 as the integral gain, and 1e6 as the derivative gain. These
values control how well the PID-servo actuators will track the desired contraction at each time step in
the analysis. Note that the individual muscle will not produce a force greater than the physiological cross
section area (pCSA) times the maximum tissue stress. Select APPLY to update the muscles.
Step 52: Bring up the analyze panel
Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 53: Run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 8 seconds and 200 time
steps using the default integrator settings.
Step 54: Bring up the results panel.
Select RESULTS on the main-menu and ANIMATION on the sub-menu.
Step 55: Turn muscle graphics scaling on
Turn on the global scaling of the muscle graphics by selecting "Scale Joint/Tissue Graphics", Tissues,
Scale Globally and the light bulb to scale the muscle graphics.
Step 56: Display animation
Select left view and play the animation.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Step 57: Turn off muscle scaling


Turn off the light bulb under the muscle scaling.

Running the Second Inverse-Dynamics Simulation


A second simulation case is performed using a different head motion. The passive elements are restored
to the muscle tissues and the motion agent is created with new data to move the head from side to
side.

Figure 19: Second simulation case with the side to side motion

Figure 20: Panel set to create motion agent on the head for the second simulation case

Step 58: Bring up the tissue training panel


Select SOFT TISSUES from the main-menu and TRAINING from the sub-menu.
Step 59: Restore the recording passive elements on the muscles
Select "Re-Install Recording Passive Elements on Muscles"

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Step 60: Bring up the motion agent create panel


Select MOTION from the main-menu and CREATE INDIVIDUAL MOTION AGENT from the sub-menu.
Step 61: Create motion agent on the head
Create a motion agent on the head at the same location with the parameters listed in figure 18.
Step 62: Bring up the analyze panel
Select ANALYZE from the main-menu and DYNAMICS from the sub-menu
Step 63: Run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 8 seconds and 200 time
steps using the default integrator settings.
Step 64: Display animation
Use the ADAMS/View main toolbox to animate the model.

Running the Second Direct-Dynamics Simulation


With the muscle contraction history recorded from the inverse-dynamics simulation, it may now be used
in an active muscle formulation to produce a force to recreate the motion history. spinThe process
entails removing the Motion Agents and updating the muscles.

Figure 21: Panel set to edit muscles to set up as a driver based on contraction history recorded from the
inverse-dynamics simulation

Step 65: Bring up the motion agent delete panel


Select MOTION on the main-menu and DELETE on the sub-menu.
Step 66: Delete all motion agents
Select DELETE ALL on the panel
Step 67: Bring up soft tissue training panel
Select SOFT TISSUES on the sub-menu and TRAINING on the panel.
Step 68: Install ACTIVE contractile element
Select "Insall Trained Closed-loop Contractile Elements on Muscles"
Step 69: Set fields and update joints
Specify 1e8 as the proportional gain, 1e5 as the integral gain, and 1e6 as the derivative gain. These
values control how well the PID-servo actuators will track the desired contraction at each time step in
the analysis. Note that the individual muscle will not produce a force greater than the physiological cross
section area (pCSA) times the maximum tissue stress. Select APPLY to update the muscles.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Step 70: Bring up the analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 71: Run the dynamics simulation
Set gravity at -386.0885826772 in the y direction and run the simulation for 8 seconds and 200 time
steps using the default integrator settings.
Step 72: Display animation
Use the ADAMS/View main toolbox to animate the model.

Interrogating the Results


When the simulation is complete the model may be animated. Figure 21 displays the model animation.
The appearance of the animations may differ from the figure, depending on the placement of the muscle
attachment points.
Various data may be presented from the forward-dynamics simulation including:
Vertebrae Axial Loads
Head Acceleration
Neck Muscle Forces
Inter-Vertebrae Rotations.

Figure 22: Lateral muscle forces

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Figure 23: Neck Muscle Forces and Vertebrae Joint Rotations Data.

Step 73: Bring up results panel


Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu and Soft Tissues as the Data
Type. Select "Results Window" button to bring up the results processor.
Step 74: Plot the right sternocleidomastiodeus muscle forces
Select Casey_Sterno_Rtiss_1 for the soft tissue and tension characteristic. Select a low pass butterworth
data filter with a cutoff frequency of 5.0 and an order of 1. Select CREATE FULL PLOT to create the
curve.
Step 75: Plot the left sternocleidomastiodeus muscle forces
Select Casey_Sterno_Ltiss_1 for the soft tissue and tension characteristic. Select a low pass butterworth
data filter with a cutoff frequency of 5.0 and an order of 1. Select CREATE FULL PLOT to create the
curve.
Step 76: Turn muscle graphics scaling on
Select ANIMATION in the sub-menu. Turn on the global scaling of the muscle graphics by selecting Scale
Joint/Tissue Graphics, Tissues, Scale Globally and the light bulb to scale the muscle graphics.
Step 77: Animate front view
Select divide window. Select Zoom and enter the center coordinates of (-1,25,0) with a Scale of 3.0.
Select front view and select PLAY.
Step 78: Bring up joints panel
Select DATA DISPLAY in the sub-menu Select JOINTS as the Data type and select CLEAR PLOT.
Step79: Plot the head rotation
Select NSjoint_1 with the frontal component, the characteristic of angle. Uncheck the Filter Data box
and select CREATE FULL PLOT to create the curve.
Step 80: Plot the C3 joint rotation
Select NSjoint_2 with the sagittal component and the characteristic of angle. Uncheck the Filter Data
box. Select CREATE FULL PLOT to create the curve.
Step 81: Plot the C4 joint rotation
Select NSjoint_3 with the frontal component and the characteristic of angle. Uncheck the Filter Data
box. Select CREATE FULL PLOT to create the curve.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Detailed Spine

Step 82: Plot the C5 joint rotation


Select NSjoint_4 with the frontal component and the characteristic of angle. Uncheck the Filter Data
box. Select CREATE FULL PLOT to create the curve.
Step 83: Plot the C6 joint rotation
Select NSjoint_5 with the frontal component and the characteristic of angle. Uncheck the Filter Data
box. Select CREATE FULL PLOT to create the curve.
Step 84: Toggle muscle graphics and animate front view
Select ANIMATION in the sub-menu. Turn off the muscles using the LifeMOD Display Toobox. Select
divide window. Select Zoom and enter the center coordinates of
(-1,25,0) with a Scale of 3.0. Select front view and select PLAY.
Step 85: DEMO COMPLETE

Further
This model was put forth to demonstrate the creation of a detailed human spine model. Obviously the
model can be further refined and improved, from the point developed in this example. The intention with
this example was to touch of the various modeling functions of both the LifeMOD Biomechanics
Modeler and ADAMS/View necessary to create a detailed joint of this nature.
This model may be refined in many areas including:
Creating disk-compression forces between the vertebrae
Creating more stabilizing ligaments
Including more muscles in the model

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Detailed%20Spine.html[06-Jun-15 12:51:38 PM]

LifeMOD Tutorials | Ergonomic Lifting

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting

Ergonomics Application - Lifting Styles


This simple example examines the effect of lifting heavy
objects using a "crouch lift" or a knee dominant lift and and
a lift by rotating at the hips.
The shoulder, lumbar, hip and knee torques are compared
for each lift.
An inverse dynamics - forward dynamics method is used to
first "train" the joints to generate the torques necessary
for the human model to lift the objects. Motion capture
data for the correct and incorrect lifts are used to provide
the target motion.
Features of this model include:
Simulation using two sets of motion data
Human model holding objects.
Inverse dynamics forward dynamics simulations

Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

Sections
Generating of the Body Segments, Joints, and Motion Data
Running the Equilibrium Analysis
Create Foot/Floor Attachments
Merging the Objects Model with the Human Model
Running the Inverse-Dynamics Simulation for the Leg_lift Lift
Preparing the Model for Forward-Dynamics for the Leg_lift Lift
Running the Forward-Dynamics Simulation
Set up the Mode for the Back_lift Lift
Running the Inverse-Dynamics Simulation for the Back_lift Lift
Preparing the Model for the Forward-Dynamics Simulation for the Back_lift Lift
Running the Forward-Dynamics Simulation for the Back_lift Lift
Interrogating the Results
Further
Acknowledgement

Generating the Body Segments, Joints, and Motion Data


In this phase, the SLF file is used to create the human body model from measurements, joints from
joint data, posture from posture data and motion from recorded motion data. The body segments are
created using the parameters stored in the SLF file.
This file contains information on the subject name, gender, age, height and weight. LifeMOD uses

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

this information to extract body segment measurements and mass properties from the internal
anthropometric database.
Passive joints are created for the inverse-dynamics phase of the simulation process. For this model
passive joints will be created for the inverse-dynamics simulation. The passive joint consists of a triaxis hinge joint (3 DOF) which includes angulation stops, stiffness and damping torques. This type of
joint is used primarily to stabilize the body during the inverse-dynamics simulation. The parameters
are included in the SLF file
Finally, the motion data (MOCAP) for the Leg_lift lifting activity is imported into the model and used
to drive the motion agents created on the model. There are two components to the motion agent. A
yellow sphere designates the location of the data point and the red sphere designates the marker
location on the human model. The yellow sphere is attached to the red sphere via a bushing element
with properties designated below. During the inverse dynamic simulation, the yellow sphere will move
according to the MOCAP data, while influencing the motion of the red sphere attached to the body. It
is during this analysis that muscle contraction histories will be recorded. The motion agent stiffness
properties are entered in the panel in Figure 1. The motion trajectory data is included in the SLF file.

Figure 1: Exchange panel to import body and joint parameters and motion data

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 2: The resulting model and motion data installed.

Step 1: Bring up import panel


Launch the LifeMOD software. Select CREATE NEW MODEL to start a new modeling session. Select
XCHANGE from the main-menu and IMPORT SLF MODEL FILE.
Step 2: Import the body, joints, posture and motion
Select Model Library and Full Body Lifting with Knees from the Model Library. The panel displayed in
figure 1 will then list a summary of the contents of the file. Also, in the Build line at the bottom of
the file are the components contained in the file. Leave each box checked except ground reaction
force and select APPLY to create the body segments, joints, posture and motion agents.

Running the Equilibrium Analysis


In order to fit the model to the data positions, an equilibrium analysis must be performed. This is a
dynamics analysis which holds the positions of the data-driven motion agents (yellow balls) fixed,
while finding the minimum energy configuration in the springs of the motion agents. The motion
agents with the higher weights will have more influence on the model and the initial configuration.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 3: Imported model (left) After static analysis (center) after synchronization (right).

Step 3: Bring up analyze panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 4: Run the equilibrium simulation
Specify the end time of the simulation as 1 second with 100 time steps using the "Robust" integrator
settings. Check "Freeze Motion Agents for Equilibruim Analysis" and select ANALYZE.
Step 5: Update the model configuration with static results
Select "Update Model Posture with Equilibrium Results" to change the position of the body to match
the last frame in the simulation.
Step 6: Align the body markers with data
After the the configuration is updated there will still be a discrepancy between the yellow spheres
and the red spheres due to differences between the body geometry and the test subject and
differences between the positioning of the markers in the model and the subject. Select "Synchronize
Body Marker Locations with Data Location".

Create Foot/Floor Attachments


With the model in position, the feet are attached to the floor using ADAMS/View bushing elements.
For information on selecting specific model parameters for this section see Choosing Model
Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 4: Attaching the feet of the model to ground using bushing elements

Step 7: Create the left foot contact element


Create an ADAM's bushing force to create ground and feet contact. Select the create bushing icon
from the main toolbox, select .World.Andy_Left_Foot as the first body and .World.ground as the
second body. Right-click on ground to bring up the location panel under the main toolbox, enter
(0.2,0,0.37) as the location. Select OK. Rename .World.BUSH_Lfoot. Modify and set parameters to
figure 5.
OR
Use the following ADAMS/View commands to create markers on the foot and the floor.
marker create marker=.World.Andy_Left_Foot.ground loc= .2,0,.37 rel= .World
marker create marker=.World.ground.Lfoot loc= .2,0,.37 rel= .World

Use the following ADAMS/View command to create the bushing element.


force create element_like bushing bushing_name=.World.BUSH_Lfoot
i_marker_name=.World.Andy_Left_Foot.ground j_marker_name=.World.ground.Lfoot
stiffness=(1e8(newton/meter)),(1e8(newton/meter)),(1e8(newton/meter)) damping=(1e6(newtonsec/meter)),(1e6(newton-sec/meter)),(1e6(newton-sec/meter)) tstiffness=1.0E+006,1.0E+006,1.0E+006
tdamping=1.0E+004,1.0E+004,1.0E+004

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 5: Parameters for contact bushings

Step 8: Create the right foot contact element


Create a second bushing for the right foot. Select the create bushing icon from the main toolbox,
select .World.Andy_Right_Foot as the first body and .World.ground as the second body. Right-click on
ground to bring up the location panel under the main toolbox, enter (0.6,0,0.37). Select OK. Rename
.World.BUSH_Rfoot. Modify and set parameters to figure 5.
OR
Use the following ADAMS/View commands to create markers on the foot and the floor.
marker create marker=.World.Andy_Right_Foot.ground loc= 0.6, 0, 0.37 rel= .World
marker create marker=.World.ground.Rfoot loc= 0.6, 0, 0.37 rel= .World

Use the following ADAMS/View command to create the bushing element.


force create element_like bushing bushing_name=.World.BUSH_Rfoot
i_marker_name=.World.Andy_Right_Foot.ground j_marker_name=.World.ground.Rfoot
stiffness=(1e8(newton/meter)),(1e8(newton/meter)),(1e8(newton/meter)) damping=(1e6(newtonsec/meter)),(1e6(newton-sec/meter)),(1e6(newton-sec/meter)) tstiffness=1.0E+006,1.0E+006,1.0E+006
tdamping=1.0E+004,1.0E+004,1.0E+004

Merging the Objects Model with the Human Model


Pre-built models of a dumbell and rack are imported for each hand and moved into position. Contact
forces are created between the dumbells and racks. Grip forces are created to enable the model to
pick up the dumbells.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 6: Panel used to import external geometry

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 7: Parameters for the rack/dumbell contacts

Figure 8: Panel to create a grip force between the hands and dumbells

Step 9: Bring up the import mechanical environment panel


Select File-Import. Select Parasolid as the file type.
Step 10: Find and select the dumbell file
Right-click and select browse. Go to (Local Disk)/MSC.Software/MSC.ADAMS/(current
version)/lifemod/Libraries/Environment/Mace and select dumbell.x_t as the file to import. Select
OPEN.
Step 11: Create the right dumbell
Select Part Name, right-click in the field and select Part-Create. Name the part .World.Rdumbell. Set
the location to be (7511192876, 0.1859185284, -0.1076989155) and orientation to be
(90.3165821341, 89.9808339216, 299.4156191499). Select OK. Set the location of the parasolid file
to (0,0,0) with and orientation of (0,0,0) relative to .World.Rdumbell. Select OK.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Step 12: Create the left dumbell


Select File-Import. Keep the same file. Right-click in the Part Name field and select Part-Create.
Name the part .World.Ldumbell. Set the location to (7.124068221E-002, 0.1857961908, 0.1076989155) and orientation to (90.2620741209, 89.9214109599, 299.3298260575). Select OK.
Keep the location and orientation at (0,0,0) but relative to .World.Ldumbell. Select OK.
Step 13: Find and select the rack file
Select File-Import. In the same location as the dumbell file select rack.x_t as the parasolids file to
import. Select OPEN.
Step 14: Create the right rack
Right-click in the Part Name field and select Part-Create. Name the part .World.Rrack. Set the
location to (0.742317, 6.22389731E-002, -5.1079164594E-002) and orientation to (90,90,270).
Select OK. Keep the location and orientation of the parasolid file at (0,0,0) but set it relative to
.World.Rrack. Select OK.
Step 15: Create the left rack
Select File-Import. Create a new part named Lrack. Set the location to 6.2317E-002, 6.22389731E002, -5.1079164594E-002) and orientation to (90.0, 90.0, 270.0). Set the parasolid file relative to
.World.Lrack. Select OK.
Step 16: Give the imported files mass
Right-click .World.Rdumbell and select MODIFY. Select Define Mass By Geometry and Material Type
and select .materials.steel. Select APPLY. Select "User Input" and set the mass to 10. Select OK.
Repeat for .World.Ldumbell. For the racks leave the mass as default.
Step 17: Fix the racks to the ground
Select the fixed joint icon from the Main Toolbox. Select .World.Rrack as the first body and
.World.ground as the second. select any vertex on the rack. Seleczt the icon again and select
.World.Lrack as the first body and .World.ground as the second. Select any location the rack.
Step 18: Create contact forces between the right rack and dumbell
Select CONTACTS from the main menu and CREATE INDIVIDUAL CONTACT from the sub-menu. Set
the parameters to figure 7. Set .World.Rdumbell.SOLID310 as contact solid 1 and
.World.Rrack.SOLID312 as contact solid 2. Set .World.Rdumbell.cm as the reference marker. Select
APPLY.
Step 19: Create contact forces between the left rack and dumbell
Select CONTACTS from the main menu and CREATE INDIVIDUAL CONTACT from the sub-menu. Set
the parameters to figure 7. Set .World.Ldumbell.SOLID311 as contact solid 1 and
.World.Lrack.SOLID313 as contact solid 2. Set .World.Ldumbell.cm as the reference marker. Select
APPLY.
Step 20: Create grip force between right dumbell and right hand
Select CONTACTS from the main menu and CREATE GRIP FORCE from the sub-menu. Set the
paramters to figure 8. Select Right Hand as the Body and .World.Rdumbell.cm as the External Entity
Marker. Select APPLY.
Step 21: Create grip force between left dumbell and left hand
Select Left Hand as the Body and .World.Ldumbell.cm as the External Entity Marker. Set parameters
to figure 8. Select APPLY

Running the Inverse-Dynamics Simulation for the Leg_lift Lift


With the human model in the proper position, the model connected to the ground at the feet and a
gripping force installed at the hands, an inverse-dynamics simulation may be performed. In this
phase, the motion agents will drive the model while the learning elements in the joints record the
joint angle histories. The learning elements will be replaced with active elements in a subsequent
forward dynamics simulation.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 9: Successive animation frames from the inverse-dynamics simulation

Step 22: Bring up the motion agents parameters panel


Select _PARAMETERS on the main-menu and MOTION AGENTS on the sub-menu.
Step 23: Increase the weighting on the feet motion agents
Select "Golf Marker Set." Set the weighting coefficients to 10 for RLATM, RHEEL, R2MET, RLATM,
LHEEL, L2MET. This will cause a greater spring force at those locations which will increase the
contribution of the feet agents to the motion of the model. Select INTALL VALUES.
Step 24: Bring up the analysis panel
Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 25: Run the simulation
Set gravity to -9.80665 in the Y direction and run the simulation 3.2 seconds and 160 time steps
using the "Default" integrator settings. Select ANALYZE.
Step 26: Display animation
Use the ADAMS/View toolbox to animate the model.

Preparing the Model for Forward Dynamics Simulation for the Leg_lift Lift
After the inverse-dynamics simulation is performed the joint angle histories are now recorded from
the learning elements each joint. The training elements are then replaced with active elements
utilizing the recorded angle histories for the forward-dynamics simulation. For information on
selecting specific model parameters for this section see Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 10: Panel to update the passive learning joint elements with active elements

Step 17: Bring up the joint training panel


Select JOINTS from the main-menu and TRAINING from the sub-menu.
Step 18: Install ACTIVE contractile elements on muscles
Select "Install Trained Driver Rotational Joint Elements" to bring up the sub-pane. Enter 3e5 for the
proportional gain and 3000 for the derivative gain. Select APPLY.

Running the Forward Dynamics Simulation


With the active elements installed on the joints, the model is now ready for forward dynamics
simulation.

Figure 11: Disable motion agents and run the forward dynamics simulation

Step 19: Bring up the analysis panel

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.


Step 20: Disable motion agents and run the forward dynamics simulation
Select "Disable Motion Agents". Run the simulation 3.2 seconds and 160 time steps using the
"Default" integrator settings. Select ANALYZE.
Step 21: Display animation
Use the ADAMS/View toolbox to animate the model.

Set up the Model for the Back_lift Lift


Motion capture data for the Back_lift lift is read into LifeMOD and the indirect dynamics forward
dynamics process is repeated.

Figure 12: Update the joint formulations with passive (TRAINABLE) elements

Step 22: Save the first analysis


Select SAVE ANALYSIS and enter the name Leg_lift. Select OK.
Step 23: Bring up the MOCAP data import panel
Select MOTION on the main-menu and IMPORT MOTION CAPTURE DATA on the sub-menu.
Step 24: Read in the motion capture data for the Back_lift lift
Select Motion Library and Full_Body: Lifting with Hips for the Motion Library SLF File. Set "Back_lift"
as the data prefix and select APPLY to read the data.
Step 25: Bring up the motion edit base set panel
Select MOTION on the main-menu and EDIT BASE SET on the sub-menu.
Step 26: Exchange the motion data in the existing motion agents
Enter "Back_lift" as the data prefix and select APPLY.
Step 27: Bring up the joints edit base set panel
Select JOINTS on the main-menu and TRAINING on the sub-menu.
Step 28: Update joint formulation with passive (Training) elements
Select "Re-Install Recording Passive Rotational Joint Elements" to reinstall the joint recording
elements for an inverse-dynamics simulation.

Running the Inverse-Dynamics Simulation for the Back_lift Lift

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

With the passive (recording) elements installed on the joints, an inverse-dynamics simulation may be
performed. In this phase, the motion agents will drive the model while the trainable elements in the
joints record the joint angle histories. The recordable elements will be replaced with trained active
elements in a subsequent forward dynamics simulation. Also, the position of the objects to be lifted
must be adjusted due to minor inconsistencies between both sets of motion data.

Figure 13: Successive animation frames from the inverse-dynamics simulation

Figure 14: Moving the weights into place for the new motion capture data

Step 29: Move the objects into place


Use the cursor to select the dumbells, racks and fixed joints. Select the position icon in the main
. Change the view to top-view (SHIFT-T). Translate the parts 8cm to the forward.
toolbox
Cursor select the right dumbell, rack and joint, and translate 7cm to the left. Select the left dumbell,
rack and joint and translate 7 cm to the right.
Step 31: Run the simulation
Run the simulation 3.2 seconds and 160 time steps using the "Default" integrator settings. Select
ANALYZE.
Step 32: Display animation
Use the ADAMS/View toolbox to animate the model.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Preparing the Model for Forward Dynamics Simulation for the Back_lift Lift
After the inverse-dynamics simulation is performed the joint angle histories are now recorded from
the trainable elements each joint. The trainable elements are then replaced with trained active
elements utilizing the recorded angle histories for the forward-dynamics simulation.

Figure 15: Panel to update the passive learning joint elements with active elements

Step 33: Bring up the joint training panel


Select JOINTS from the main-menu and TRAINING from the sub-menu.
Step 34: Install ACTIVE contractile elements on muscles
Select Install Trained Driver Rotational Elements light bulb to bring up the sub-panel and select
Apply.

Running the Forward Dynamics Simulation for the Back_lift Lift


With the trained active elements installed on the joints, the model is now ready for forward dynamics
simulation.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 16: Disable motion agents and run the forward dynamics simulation

Step 35: Bring up the analysis panel


Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 36: Disable motion agents and run the forward dynamics simulation
Select "Disable Motion Agents". Run the simulation 3.2 seconds and 160 time steps using the
"Default" integrator settings. Select ANALYZE.
Step 37: Display animation
Use the ADAMS/View toolbox to animate the model.
Step 38: Save the second analysis
Select SAVE ANALYSIS and enter the name Back_lift. Select OK.

Interrogating the Results


When the simulation is complete the model may be animated and the results reviewed. Various data
may be presented from the forward-dynamics simulation including:
Compare joint torques between the two analyses
Compare joint kinematics

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 17: Thoracic torque for both Leg_lift and Back_lift lifts

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 18: Right hip torque for both lifts

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 19: Right shoulder sagittal plane torque for both lifts

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting


Figure 20: Right knee sagittal plane torque for both lifts

Figure 21: Animation frames display differences in lifting techniques

Figure 22: Animation frames displaying the scaling joint torque graphics

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Figure 23: Results panel and location of the button to toggle between the model window and the post
processor.

Step 39: Bring up results panel


Select RESULTS in the main-menu and DATA DISPLAY in the sub-menu. Select Joints as the Data
Type and the post processor button.
Step 40: Plot the thoracic muscle torque for the Leg_lift case
Specify the .World.Leg_lift analysis. Select Andy_Thoracic for the joint, the torque characteristic and
the sagittal component. Select CREATE FULL PLOT to create the data curve.
Step 41: Plot the thoracic muscle torque for the Back_lift case
Specify the .World.Back_lift analysis. Select Andy_Thoracic for the joint, the torque characteristic and
the sagittal component. Select a low pass butterworth data filter with a cutoff frequency of 30.0 and
an order of 1. Select CREATE FULL PLOT to create the data curve.
Step 42: Animate Leg_lift case side view
Select ANIMATION in the sub-menu. Specify the .World.Leg_lift analysis. Select right view, divide
window. Select PLAY.
Step 43: Turn on the Joint Torque Graphics
Turn on the joint graphics and select the external body representation as none and the internal as
stick using the LifeMOD Display Toolbox. Turn on the local scaling of the joint graphics by selecting
Scale Joint/Tissue Graphics, Joints, Scale Globally and the light bulb to scale the muscle graphics.
See figure 22 for a display of the scaling joint torque graphics.
Step 44: Animate the Leg_lift case, side view
Select right view and select PLAY. Observe the scaling joint torque bubbles.
Step 45: Animate Back_lift case side view
Turn of Joint Torque Scaling, and select skeleton as the internal representation in the LifeMOD
Display Toolbox. Specify the .World.Back_lift analysis. Select right view, divide window. Select PLAY.
Step 46: Turn on the Joint Torque Graphics
Turn on the joint graphics and select the external body representation as none and the internal as
stick using the LifeMOD Display Toolbox. Turn on the local scaling of the joint graphics by selecting
Scale Joint/Tissue Graphics, Joints, Scale Globally and the light bulb to scale the muscle graphics.
See figure 18 for a display of the scaling joint torque graphics.
Step 47: Animate the Back_lift case, side view
Select right view and select PL AY. Observe the scaling joint torque bubbles.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Step 48: Superimpose both cases for animation


In the results panel select Compare Cases and .World.Back_lift for Case 1 and .World.Leg_lift for
Case 2. Select PLAY.
Step 49: Plot the hip joint torque for the Leg_lift case
Select DATA DISPLAY in the sub-menu. Specify the .World.Leg_lift analysis. Select Andy_Right_Hip
for the joint, the torque characteristic and the sagittal component. Check New Plot and select
CREATE FULL PLOT to create the data curve.
Step 50: Plot the hip joint torque for the Back_lift case
Specify the .World.Back_lift analysis. Select Andy_Right_Hip for the joint, the torque characteristic
and the sagittal component. Select a low pass butterworth data filter with a cutoff frequency of 5.0
and an order of 1. Select CREATE FULL PLOT to create the data curve.
Step 51: Animate Leg_lift case side view
Select ANIMATION in the sub-menu. Specify the .World.Leg_lift analysis. Select right view, divide
window. Select PLAY.
Step 52: Animate Back_lift case side view
Specify the .World .Back_lift analysis. Select right view, divide window. Select PLAY.
Step 53: Superimpose both cases for animation
In the results panel select Compare Cases and .World.Back_lift for Case 1 and .World.Leg_lift for
Case 2. Select PLAY.
Step 54: Plot the knee joint torque for the Leg_lift case
Select DATA DISPLAY in the sub-menu. Specify the .World.Leg_lift analysis. Select Andy_Right_Knee
for the joint, the torque characteristic and the sagittal component. Check "New Plot" and select
CREATE FULL PLOT to create the data curve.
Step 55: Plot the knee joint torque for the Back_lift case
Specify the .World.Back_lift analysis. Select Andy_Right_Knee for the joint, the torque characteristic
and the sagittal component. Select CREATE FULL PLOT to create the data curve.
Step 56: Animate Leg_lift case side view
Select ANIMATION in the sub-menu. Specify the .World.Leg_lift analysis. Select right view, divide
window. Select PLAY.
Step 57: Animate Back_lift case side view
Specify the .World.Back_lift analysis. Select right view, divide window. Select PLAY.
Step 58: Superimpose both cases for animation
In the results panel select Compare Cases and .world.Back_lift for Case 1 and .world.Leg_lift for Case
2. Select PLAY.
Step 59: Plot the right shoulder torque for the Leg_lift case
Select DATA DISPLAY in the sub-menu. Specify the .world.Leg_lift analysis. Select
Andy_Right_Shoulder for the joint, the torque characteristic and the sagittal component. Select a low
pass butterworth data filter with a cutoff frequency of 5.0 and an order of 1. Check "New Plot" and
select CREATE FULL PLOT to create the data curve.
Step 60: Plot the right shoulder torque for the Back_lift case
Specify the World .Back_lift analysis. Select Andy_Right_Hip for the joint, the torque characteristic
and the sagittal component. Select a low pass butterworth data filter with a cutoff frequency of 5.0
and an order of 1. Select CREATE FULL PLOT to create the data curve.
Step 61: Animate Leg_lift case side view
Select ANIMATION in the sub-menu.Specify the .World.Leg_lift analysis. Select right view, frame
increment = 2, divide window. Select PLAY.
Step 62: Animate Back_lift case side view
Specify the World .Back_lift analysis. Select right view, divide window. Select PLAY.
Step 63: Superimpose both cases for animation
In the results panel select Compare Cases and .world.Back_lift for Case 1 and .world.Leg_lift for Case
2. Select PLAY.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Ergonomic Lifting

Step 64: DEMO COMPLETE

Further
This model could be further refined:
to examine the effects on full-body muscles
to model grasping in greater detail
to evaluate effects of muscle force weakening

Acknowledgement
A special thanks for furnishing the data for this model to:
John Jolly
University of Pittsburgh
Neuromuscular Research Laboratory
http://www.pitt.edu/~neurolab

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Ergonomic%20Lifting.html[06-Jun-15 12:51:40 PM]

LifeMOD Tutorials | Bungee Jump

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing
Detailed Knee
Detailed Spine
Fall
Fighting
Gait Analysis
Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine
Tennis
Walking
NeckSIM:Whiplash

Injury Evaluation Application - Bungee Jump


This demonstration problem will illustrate the use of a human
model to evaluate the loading conditions on the body for a
recreational bungee cord jump.
A passive human model, with the joint strength of a scaled
Hybrid III crash dummy will be dropped from a height with
elastic forces attached at the ankles.
Two simulations with varying cord properties will be analyzed to
determine the relationship between the cord stiffness and the
loads on the human.
The acceleration loads at the head and neck forces will be
evaluated.
Key skills exercised in this tutorial include:
Using the anthropometric database to scale a model
Hybrid III crash dummy joint strength characteristics
Applying initial conditions to the model
Importing an external mechanical system from the model library
Creating body/environment interface forces
Running a passive simulation
Performing parameter variation study
Results processing with joint muscle graphics scaling with magnitudes
Examine joint reactions, muscle forces, interface force, etc

Sections
Generating the Body Segments
Generating the Joints
Posing the Human Model
Importing the Environment Model
Attach Human Model to the Environment
Creating the Bungee Cord
Running the Passive Simulation
Running the Parameter Variation Study
Interrogating the Results
Further

Generating the Body Segments


In this phase the human body models are generated. The body consists of 19 segments and 18 joints
with the mass properties of a 95% Chinese male and the joint characteristics of the Hybrid III crash
dummy.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Figure 1: Body segment creation panel

Step 1: Bring up segments panel and set fields for body


Launch the LifeMOD software and select CREATE NEW MODEL to begin a new modeling session. Select
SEGMENTS from the main-menu and CREATE BASE SEGMENT SET from the sub-menu.
Step 2: Create the body
Enter "World" for the world model name and "Cartman" for the human body name. Units are Inch-LbmLlbf and the color is set to blue. Hands are set to closed and the full body model is specified. The model
is created from an anthropometric database named GeBOD. Select "MEDIAN" to set the properties for a
median male human model. Select "Create Body Measurement Table" to establish the model parameters
and select "Create Human Segments" to create the Cartman model.

Generating the Joints


In this phase, the human segments created in the first phase are connected together with kinematic
joints. At the same time torque functions are created at each joint degree of freedom. The torque
function is created from the Hybrid III database of torque functions. The torque is based on a nonlinear
joint stiffness, damping, friction and hysteresis (losses), specific to each DOF for each joint as derived
from the physical Hybrid III crash dummy.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Figure 2: Create joints panel

Figure 3: Joint panel set to create the right leg joint set. Use same settings for left leg.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Figure 4: Joint panel set to create the right arm joint set. Use the same settings for the left arm.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Figure 5: Joint panel set to create the spinal joint set.

Step 3: Bring up joint create panel


Select JOINTS in the main-menu and CREATE BASE JOINT SET in the sub-menu.
Step 4: Create Hybrid III strength joints on the model
Select "Prepare Model with Hybrid III Crash Dummy Strength Joints". Enter a scale factor of .14, to
scale the strength profile to be more suited for a bungee jump. Setting this scale function can be a
matter of trial and error until the proper model response is achieved. SELECT ALL body regions and
select MODIFY. From this six panels will appear to create the joint/torque sets for each region of the
body (spinal, left arm, left leg, right arm, right leg).
Step 5: Adjust Hybrid III strength joints on the spine
Set all dof's to Hybrid III. Enter the scale functions as in figure 2 and select APPLY to create the joint
set.
Step 6: Adjust Hybrid III strength joints on the left leg
Set the sagittal and frontal joint dof's of the hip to Hybrid III, the sagittal of the knee and the sagittal
of the ankle. Set the rest of the dof's to "Fixed". Enter the scale functions as in figure 3 and select
APPLY to create the joint set.
Step 7: Adjust Hybrid III strength joints on the left arm
Set the sagttal and frontal joint dof's of the shoulder to Hybrid III and the sagittal of the elbow. Set
the rest of the dof's to "Fixed". Enter the scale functions as in figure 4 and select APPLY to create the
joint set.
Step 8: Adjust Hybrid III strength joints on the right leg
Set the sagittal and frontal joint dof's of the hip to Hybrid III, the sagittal of the knee and the sagittal
of the ankle. Set the rest of the dof's to "Fixed". Enter the scale functions as in figure 3 and select
APPLY to create the joint set.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Step 9: Adjust Hybrid III strength joints on the right arm


Set the sagttal and frontal joint dof's of the shoulder to Hybrid III and the sagittal of the elbow. Set
the rest of the dof's to "Fixed". Enter the scale functions as in figure 4 and select APPLY to create the
joint set.

Posing the Human Model


After the joints are created on the model the posture of the model may be adjusted, and the model
moved into place. The posture may be adjusted by modifying the joint angles. The body is moved into
place by selecting the Lower_Torso segment and changing the location.

Figure 6: Posture adjustment panel

Figure 7: Posture adjustment panel

Step 10: Bring up posture panel


Select POSTURE on the main-menu and CONFIGURE BASE MODEL on the sub-menu.
Step 11: Update the left/right shoulder joints

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Enter -80 for the right and left shoulder, sagittal joint angle. Enter 60 for the right shoulder transverse
angle and 60 for the left shoulder transverse angle. Enter -50 for the right shoulder frontal joint angle
and 50 for the left shoulder frontal joint angle. Then select the SHOULDER button for both arms.
Step 12: Update the left/right elbow joints
Enter -70 for the right and left elbow, sagittal joint angle. Then select the ELBOW button for both arms.
Step 13: Update the left/right hip joints
Enter -20 for the right and left hip, sagittal joint angle. Enter -7 for the right hip frontal joint angle and
7 for the left hip frontal joint angle. Then select the HIP button for both legs.
Step 14: Update the left/right knee joints
Enter 40 for the right and left knee, sagittal joint angle. Then select the KNEE button for both legs.
Step 15: Update the upper neck joint
Enter 10 for the upper neck sagittal joint angle. Then select the UPPERNECK button for both legs.
Step 16: Update the lower neck joint
Enter 10 for the lower neck sagittal joint angle. Then select the LOWERNECK button for both legs.
Step 17: Update the thoracic joint
Enter 20 for the thoracic sagittal joint angle. Then select the THORACIC button to update the joint
angle.
Step 18: Update the lumbar joint
Enter 20 for the lumbar sagittal joint angle. Then select the LUMBAR button to update the joint angle.
Step 19: Rotate and reposition model
Reposition the model by modifying the location of the Lower_Torso segment. Right-click on the
Lower_Torso segment and select Modify. Enter orientation as (180, 60, 90)
OR
Repostion the model by entering the following ADAMS/View command:
part mod rigid name part=.World.Cartman_Lower_Torso orientation=180, 60, 90 rel=.World

Importing the Environment Model


A model of a stone arch is read in from the model library. The arch is secured to ground with a fixed
joint.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Figure 8: Imported model of a stone arch from the model library.

Step 20: Read in the arch from the library


Select XCHANGE from the main-menu and IMPORT MECHANICAL ENVIRONMENT from the sub-menu.
Select Mechanical Environment Library and select Cliff. Select APPLY to import the arch.
Step 21: Create a fixed joint between the arch and ground
Select Create Fixed Joint from Main Toolbox and select Arch and Ground as the two bodies and select a
location on the Arch. Rename .World.FIX.
OR
Create the fixed joint using the following ADAMS/View commands to create a fixed joint between the
cliff and ground.
marker create marker=.World.Arch.ground location=312, -479, -178 rel=.World
marker create marker=.World.ground.Arch location=312, -479, -178 rel=.World
constraint create joint Fixed joint_name=.World.FIX i_marker_name=.World.Arch.ground
j_marker_name=.World.ground.arch

Attach Human Model to the Environment


The human model is now attached to the stone arch via contact forces between the feet and the top of
the arch. Contact forces are created on the model to provide an interaction between the human model
and the environment. LifeMOD contact forces utilize an ellipsoid-plate contact algorithm for efficient
calculation of the reaction of the body segments to impact with the environment. The general form of
the contact force function is:
F n =k *(g**e)+Step (g,0,0,d max ,c max )*dg/dt

where:
g represents the penetration the ellipsoid into the plate
dg/dt is the penetration velocity at the contact point.
e is a positive real value denoting the force exponent.
dmax is a positive real value specifying the boundary penetration to apply the maximum damping coefficient cmax

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Figure 9:Foot/arch contact forces created between foot ellipsoids and the contact marker.

Figure 10: Contact set creation panel with parameters set for foot/ground contact.

Step 22: Create a contact marker on the arch for the feet
Create a marker on the arch with the z-axis pointing in the normal direction by selecting creating a
marker from Main Toolbox named .World.Arch.con at (0.2102175202, -33.9943704309, 12.0834111607) with an orientation of (0, -90, 0) Or create using following ADAMS/View command:
marker create marker=.World.Arch.con location=0.2102175202, -33.9943704309, -12.0834111607 ori=180,90,180
rel=.World

Step 23: Bring up contact panel


Select CONTACTS on the main-menu and CREATE BASE CONTACT SET on the sub-menu. Enter
.World.arch.con in the contact surface marker field and set the parameters as in Figure 11.
Step 24: Create contact between feet and the arch
Select Right_Foot_Single, Left_Foot_Single as the contact segments. Then select APPLY.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Creating the Bungee Cord


With the models generated, joints created, contact forces applied, and set in the right posture, the
bungee cord spring forces will be applied to the model. The forces used to represent the bungee cord
are simple springs with a long freelength. The stiffness value is parameterized to be easily changed for
a parametric evaluation study.

Figure 11: Bungee cord and anchors built into the stone arch.

Step 25: Create markers for anchors on the arch


Create markers by using the Main Toolbox. Create four markers:
.World.Arch.anchor1 at (56, -104, 60) with default orientation
.World.Arch.anchor1a at (56, -104, 30) with an orientation of (180, 50, 180)
.World.Arch.anchor2 at (-49, -104, 60) with an default orientation
.World.Arch.anchor2a (-49, -104, 30) with an orientation of (180, 50, 180)
OR
Create the markers using the following ADAMS/View commands:
marker
marker
marker
marker

create
create
create
create

marker=.World.Arch.anchor1 location=56, -104, 60 rel=.World


marker=.World.Arch.anchor2 location=-49, -104, 60 rel=.World
marker=.World.Arch.anchor1a location=56, -104, 30 ori=180,50,180 rel=.World
marker=.World.Arch.anchor2a location=-49, -104, 30 ori=180,50,180 rel=.World

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Step 26: Create the bungee anchors on the arch


Create the geometry for the anchors by creating four cylinders:
Frame 1: Go to Command Navigator under Tools at the top of the screen. Go to geometry,
create, shape, cylinder. Set name to .World.Arch.Frame_1, center marker
.World.Arch.anchor1, angle extent of 360, length -100, radius 2, and 20 for both Side
Count for Body and Segment Count for Ends. Select OK. Right-click and set color to red
under Appearence.
Frame 1a: Create adjoining support by selecting Create Cylinder from Command
Navigator.Set name to .World.Arch.Frame_2 with a center marker of .World.Arch.anchor1a.
The remaining parameters are the same as Frame 1. Select OK. Right-click and set color to
red under Appearence.
Frame 2: Create supplementary support by selecting by selecing Create Cylinder from
Command Navigator. Set name to .World.Arch.Frame_2 with a center marker of
.World.Arch.anchor2. Use previous parameters. Select OK. Right-click and set color to red
under Appearence.
Frame 2a: Create adjoining support by selecting Create Cylinder from Command Navigator.
Set name to .World.Arch.Frame_2a with a center marker of .World.Arch.anchor2a. Use
previous parameters. Select OK. Right-click and set color to red under Appearence.
OR
Create the anchors using the following ADAMS/View commands:
geometry create shape cylinder cylinder_name = .World.Arch.Frame_1 center_marker = .World.Arch.anchor1
angle_extent = 360.0 length = -100 radius = 2 side_count_for_body = 20 segment_count_for_ends = 20
geometry create shape cylinder cylinder_name = .World.Arch.Frame_1a center_marker = .World.Arch.anchor1a
angle_extent = 360.0 length = -100 radius = 2 side_count_for_body = 20 segment_count_for_ends = 20
geometry create shape cylinder cylinder_name = .World.Arch.Frame_2 center_marker = .World.Arch.anchor2
angle_extent = 360.0 length = -100 radius = 2 side_count_for_body = 20 segment_count_for_ends = 20
geometry create shape cylinder cylinder_name = .World.Arch.Frame_2a center_marker = .World.Arch.anchor2a
angle_extent = 360.0 length = -100 radius = 2 side_count_for_body = 20 segment_count_for_ends = 20

Step 27: Create the bungee force between the right leg and the anchor
Create bungee spring force using the Command Navigator. Go to Variable, Create. Set name to
DV_Stiffness, Set name to DV_Stiffness and Real Value to 0.4. Select OK.
OR
Create bungee spring force using the following ADAMS/View commands:
var create var=DV_Stiffness real=.4

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump


bun

Figure 12: Parameters for bungee forces

Step 28: Create the bungee force between the left leg and the anchor
Use Command Navigator to create the bungee force. Go to Force, Create, Direct,
Single_Component_Force. Set parameters to those in figure 12, using the following function.
step(dm(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1), 120,0,125,1)*
(-.World.DV_Stiffness*dm(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1)(step(vr(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1),0,0,1,1)*
.4*.World.DV_Stiffness*vr(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1)))

To create the geometrical outline of force use the Command Navigator. Go Geometry, Create, Curve,
Outline. Set name to .World.O_Bungee_1 and Marker Name to
.World.Cartman_Left_Lower_Leg.Left_Foot, .World.Arch.anchor1. Select OK. Right-click on the outline
and select Appearence. Change color to black.
OR
Create the force using the following ADAMS/View commands:
force create direct single_component_force single_component_force_name = .World.Bungee_1
type_of_freedom = translational action_only = off function =
"step(dm(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1), 120,0,125,1)*",
"(.World.DV_Stiffness*dm(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1)-",
"(step(vr(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1),0,0,1,1)*",
".4*.World.DV_Stiffness*vr(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1)))"
i_marker_name = .World.Cartman_Left_Lower_Leg.Left_Foot j_marker_name = .World.Arch.anchor1

Create outline using the following ADAMS/View command:


geometry create curve outline outline_name = .World.O_Bungee_1 marker_name =
.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1
entity attributes entity_name = .World.O_Bungee_1 color = .colors.BLACK

The first command above generates the force. The force is an ADAMS/View single component force with
a function which provides a free length transition (ramping the force on from a length of 120 to a length
of 125). The stiffness design variable (DV_Stiffness) is applied against the magnitude of the
displacement between a marker in the ankle and a the anchor marker. Damping is applied using a step
function to make sure the force is only applied in tension with a coefficient of .4 times the stiffness
design variable. The second command generates the outline graphics for the force.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Step 29: Create the bungee force between the right leg and the anchor
Create bungee spring force using the Command Navigator to create a Single_Component_Force. Set the
name to .World.Bungee_2 and use the rest of the parameters from figure 12 using the following
function:
step(dm(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2),126,0,131,1)*
(-.World.DV_Stiffness*dm(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2)(step(vr(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2),0,0,1,1)*
.4*.World.DV_Stiffness*vr(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2)))

Create the geometrical outline for the force using the Command Navigator. Name the outline
.World.O_Bungee_2 Marker Name to .World.Cartman_Right_Lower_Leg.Right_Foot, .World.Arch.anchor2.
Select OK. Right-click on outline and select Appearence. Change color to black.
OR
Create the force using thefollowing ADAMS/View commands:
force create direct single_component_force single_component_force_name = .World.Bungee_2 type_of_freedom =
translational action_only = off function =
step(dm(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2),126,0,131,1)*",
"(.World.DV_Stiffness*dm(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2)-",
"(step(vr(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2),0,0,1,1)*",
".4*.World.DV_Stiffness*vr(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2)))"
i_marker_name = .World.Cartman_Right_Lower_Leg.Right_Foot j_marker_name = .World.Arch.anchor2

Create the outline using the following ADAMS/View commands:


geometry create curve outline outline_name = .World.O_Bungee_2 marker_name =
.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2
entity attributes entity_name = .World.O_Bungee_2 color = .colors.BLACK

Running the Passive Simulation


With the models generated, joints created, contact forces applied, and set in the right posture, the
bungee cords created, the dynamic analysis will be performed. This simulation is termed "passive",
since the human models are responding to forces from the environment.

Figure 12: Setting the initial velocity of the upper and lower torso segments

Step 30: Bring up the analyze, Body Velocity Initial Conditions panel
Select ANALYZE from the main-menu and BODY VELOCITY INITIAL CONDITIONS from the sub-menu.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Step 31: Update the torso segments with an initial velocity


In the panel check Ground as the reference frame and provide a z-axis velocity of 100 inches/s.Select
APPLY.
Step 32: Bring up the analyze panel and run the dynamics simulation
Select DYNAMICS in the sub-menu. Set the gravity vector at -386 in the negative Y direction. Run the
simulation for 10 seconds and 500 time steps using the default integrator settings.
Step 33: Display simulation
When the simulation is complete, animate the model by using the animation tool in Main Tools panel.
Step 34: Display simulation with skin model
Change the display to the skin model and animate using a variety of views.

Running the Parameter Variation Study


To evaluate the effects of the stiffness of the bungee cord the stiffness is reduced and the results are
compared between successive runs.

Figure 13: Changing the bungee cord stiffness from .4 to .5

Step 35: Save the first analysis.


Select SAVE ANALYSIS and enter the name Case_1. Select OK.
Step 36: Increase the bungee stiffness
Set the DV_stiffness variable from .4 to .5 by using the Command Navigator. Go to Variable, Modify and
enter DV_Stiffness and enter 0.5 as the Real Number.
OR
Modify the stiffness using the following ADAMS/View command:
var mod var=DV_stiffness real=.5

Step 37: Run the dynamics simulation


Set the gravity vector at -386 in the negative Y direction. Run the simulation for 10 seconds and 500
time steps using the default integrator settings.
Step 38: Display simulation
When the simulation is complete, animate the model by using the animation tool in Main Toolbox panel.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Step 39: Display simulation with skin model


Change the display to the skin model and animate using a variety of views.
Step 40: Save the first analysis.
Select SAVE ANALYSIS and enter the name Case_2. Select OK.

Interrogating the Results


With the simulations complete, the results may be reviewed in many ways. One of the best ways to
understand model performance is to plot the data and view the animation simultaneously. In this final
section, results for head impact forces and decelerations are compared for both models and both
strength parameters settings.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Figure 14: Animation sequences and plots of the human responses to the fall.

Step 41: Bring up results panel


Select RESULTS in the main-menu and DATA DISPLAY in the sub-menu. Select Body Motion as the data
type and select the post-processor button.
Step 42: Plot the head acceleration for case-1
Select the y-component of the acceleration on the head, Cartman_Head, characteristic cm_acceleration.
Specify the analysis as .World.Case_1. Select a low pass butterworth data filter with a cutoff frequency
of 1.0 and an order of 1. Select CREATE FULL PLOT.
Step 43: Plot the head acceleration for case-2
Select the y-component of the acceleration on the head, Cartman_Head, characteristic cm_acceleration.
Specify the analysis .World.Case_2. Select a low pass butterworth data filter with a cutoff frequency of
1.0 and an order of 1. Select CREATE FULL PLOT.
Step 44: Animate case_1
Select ANIMATION in the sub-menu. Set the analysis to .World.Case_1 and select PLAY.
Step 45: Animate case_2
Set the analysis to .World.Case_2 and select PLAY.
Step 46: Bring up Joint results panel
Select DATA DISPLAY in the sub-menu. Select JOINTS as the data type.
Step 47: Plot the lumbar joint force for case_1
Select Cartman_Lumbar as the entity, and torque as the characteristic and select the sagittal
component. Specify the analysis .World.Case_1. Select a low pass butterworth data filter with a cutoff
frequency of 1.0 and an order of 1. Check New Plot and select CREATE FULL PLOT.
Step 48: Plot the lumbar joint force for case_2
Select Cartman_Lumbar as the entity, and torque as the characteristic and select the sagittal
component. Specify the analysis .World.Case_2. Select a low pass butterworth data filter with a cutoff
frequency of 1.0 and an order of 1. Select CREATE FULL PLOT.
Step 49: Animate the right close-up view for case_1
Select ANIMATION in the sub-menu. Set the analysis to .World.Case_1, check zoom with center
coordinates of (36,-13,4) and a scale of 7 and select PLAY.
Step 50: Animate the right close-up view for case_2

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Bungee Jump

Set the analysis to .World.Case_2, check zoom with center coordinates of (36,-13,4) and a scale of 7
and select PLAY.
Step 51: Animate both cases simultaneously - front view
Check Compare Cases. Select .World.Case_1 as Case 1 and .World.Case_2 as Case 2. Run the
animation for the front view to examine the global effects of the cable with varying stiffness.
Step 52: Animate both cases simultaneously - right view
Use the ADAMS/View tools to divide the window and load the animation for each case in a separate
window. Run the animation for the front view to examine the global effects of the cable with varying
stiffness.
Step 53: Animate both cases simultaneously - close up view
Use the ADAMS/View tools to zoom in to the human model. Set the camera to follow the lower_torso
segment.
Step 54: Animate skeleton model
Use the LifeMOD panel to set the model to skeleton display. Run the animations using the methods
above to gain greater insights to the behavior of the model.
Step 55: Animate skeleton skin model
Use the LifeMOD panel to set the model to skeleton-skin display. Run the animations using the
methods above to gain greater insights to the behavior of the model.
Step 56: Animate dummy model
Use the LifeMOD panel to set the model to dummy display. Run the animations using the methods
above to gain greater insights to the behavior of the model.
Step 57: DEMO COMPLETE

Further
This model was put forth to demonstrate the creation of a passive human model to determine the
physical reactions to a human during a recreational bungee cord jump. Obviously the model can be
further refined and improved, from the point developed in this example. The intention with this example
was to touch of the various modeling functions of both LifeMOD and ADAMS/View necessary to create
a human model of this nature for this application.
This model may be refined in many areas including:
Creating a more biofidelic spine model to examine local loadings on the vertebrae and soft
tissues(see Detailed Cervical Spine).
Creating simulations with varying boundary conditions such as fall height, initial velocity, jump
angle, cable stiffness, joint stiffness, posture, etc.
Adding "human reaction" by adding PD controllers to several joints.

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Bungee%20Jump.html[06-Jun-15 12:51:46 PM]

LifeMOD Tutorials | Dancing

LifeModeler.com | Overview | Modeling | Tutorials | Appendix

Tutorials
Antagonistic Muscles
Bed Settling
Bike
Bungee Jump
Car Crash
Dancing

Human Performance Application Dancing


This demonstration problem will illustrate the generation of
a forward dynamics gait model using motion data recorded
from a digitized motion capture source. The motion capture
(MOCAP) data is assigned to the model using a Motion
Agent set and the inverse dynamics simulation is
performed. The motion agents are removed, and the
recorded joint angle histories are used to drive the torque
functions in the joints for the forward dynamics simulation.
Key skills exercised in this tutorial include:

Detailed Knee

Creating a model, joints, and motion from the model


library

Detailed Spine

Increasing the biofidelity of the foot segment

Fall
Fighting
Gait Analysis

Creating foot/floor contact forces


Assigning MOCAP data through motion agent sets.
Running inverse-dynamics simulations
Running forward-dynamics simulations

Golfing
Grasping
Ground Reaction Force
Hip Replacement
Lifting Styles
Muscle Recruitment
Muscle Relocation
Rehabilitation Machine

Sections
Generating the Body Segments, Joints and Motion
Running the Equilibrium Analysis
Creating the Foot-Floor Contacts
Running the Inverse Dynamics Simulation
Preparing the Model for the Forward Dynamics Simulation
Running the Forward Dynamics Simulation
Interrogating the Results
Further
Acknowledgement

Tennis
Walking
NeckSIM:Whiplash

Generating the Body Segments, Joints and Motion


In this phase, the SLF file is used to create the human body model from measurements, joints
from joint data, posture from posture data and motion from recorded motion data. The body
segments are created using the parameters stored in the SLF file.
This file contains information on the subject name, gender, age, height and weight. LifeMOD
uses this information to extract body segment measurements and mass properties from the
internal anthropometric database.
Passive joints are created for the inverse-dynamics phase of the simulation process referred to
as the "training" phase. For this model passive joints will be created for the inverse-dynamics

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Dancing.html[06-Jun-15 12:51:42 PM]

LifeMOD Tutorials | Dancing

simulation. The passive joint consists of a tri-axis hinge joint (3 DOF) which includes angulation
stops, stiffness and damping torques. This type of joint is used primarily to stabilize the body
during the inverse-dynamics simulation. They are later removed and replaced with Servo-type
torque generators for the "trained" phase. The parameters of the passive joints are included in
the SLF file
Finally, the motion data (MOCAP) for the dancing maneuver is imported into the model and used
to drive the motion agents created on the model. There are two components to the motion
agent. A yellow sphere designates the location of the data point and the red sphere designates
the marker location on the human model. The yellow sphere is attached to the red sphere via a
bushing element with properties designated below. During the inverse dynamic simulation, the
yellow sphere will move according to the MOCAP data, while influencing the motion of the red
sphere attached to the body. It is during this analysis that joint rotation histories will be
recorded. The motion agent stiffness properties are entered in the panel in Figure 1. The motion
trajectory data is included in the SLF file.

Figure 1: Segment creation panel set up for the Jenn model. In this case, it is assumed that the first .5
seconds of the data is unusable.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Dancing.html[06-Jun-15 12:51:42 PM]

LifeMOD Tutorials | Dancing

Figure 2: The resulting model with the joints, posture and motion data installed.

Step 1: Bring up the import panel


Select _XCHANGE from the main-menu and IMPORT SLF MODEL FILE from the sub-menu.
Step 2: Import the body, joints and motion from the model library
Specify Model Library and Full Body Dancing for the Model Library SLF File. Select Body, Joints
and Motion Agents to specify the data to be imported. Select Use PARTIAL Data Set with a
simulation start time of .5 seconds and an end time of 3 seconds. In this example it is assumed
that this window of the data is the most accurate for the simulation. Next, select APPLY to create
the segmented model with joints and motion agents.

Running the Equilibrium Analysis


In order to fit the model to the data positions, an equilibrium analysis must be performed. This is
a dynamics analysis which holds the positions of the data-driven motion agents (yellow balls)

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Dancing.html[06-Jun-15 12:51:42 PM]

LifeMOD Tutorials | Dancing

fixed, while finding the minimum energy configuration in the springs of the motion agents. The
motion agents with the higher weights will have more influence on the model and the initial
configuration.

Figure 3: Data locations when agents first created (left), after moving into center of data cloud
(center) and after equilibrium simulation (right)

Step 3: Bring up parameters panel


Select PARAMETERS on the main-menu and MOTION AGENTS on the sub-menu. Select Plug-ingait Marker Set.
Step 4: Reduce the scale of the translation stiffness/damping on the motion agents
Enter 5e-4 and 5e-3 for the Global Translational Stiffness and Global Translational Damping
respectively. Select INSTALL VALUES to reduce the force in the motion agents springs.
Step 5: Bring up analyze panel
Select ANALYZE on the main-menu and DYNAMICS on the sub-menu.
Step 6: Run the equilibrium simulation
Check "Freeze Motion Agents for Equilibrium Analysis" and run the simulation for 2 seconds and
100 time steps using the robust integrator settings.
Step 7: Update the model configuration with static results
Select "Update Posture with Equilibrium Results" button to adjust the starting posture of the
model to the equilibrium position.
Step 8: Align the body markers with data
After the configuration is updated there will still be a discrepancy between the yellow spheres
and the red spheres due to differences between the body geometry and the test subject and
differences between the positioning of the markers in the model and the subject. Select
SYNCHRONIZE BODY MARKER LOCATIONS WITH DATA LOCATIONS button.

Creating the Foot-Floor Contacts


The contact ellipsoids automatically created at the time of segment generation, will now be used

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Dancing.html[06-Jun-15 12:51:42 PM]

LifeMOD Tutorials | Dancing

to create the foot-floor contact elements. For information on selecting specific model arresters for
this section see Choosing Model Parameters.

Figure 4: Contact generation panel set to create contacts on the ellipsoids of the feet

Step 9: Create the ground contact marker


Create a marker to designate the location and orientation of the ground (z-axis pointing normal
to surface) using the main toolbox. Right-click on the link icon to bring up the geometry, select
the marker icon and place anywhere on the screen. Right-click on the created marker and select
MODIFY. Set the location to be (0, -50, 0) and the orientation of (0, -90, 0). Select OK. Rightclick the marker and select RENAME. Change the name to .World.ground.flr. Select OK.
OR
Create the ground contact marker using the following ADAMS/View commands.
marker cre marker=.World.ground.flr loc= 0,-50,0 ori= 0.0, -90.0, 0.0 rel= .World

Step 10: Bring up the contact panel


Select CONTACTS on the main-menu and CREATE BASE CONTACT SET on the sub-menu.
Step 11: Create the contact forces between the feet and the floor
Specify Ellipsoid-Plane contact. Check "Create Contact Surface Plane," set thickness to 10, Xlength to 5000 and Y-length to 5000, color to blue and set the surface marker to
.World.ground.flr. Check force vectors to create scaled force graphics during animation and check
single so as to create only two vectors instead of one per contact element on the feet. Set the
contact parameters as in figure 4. Select APPLY.

Running the Inverse Dynamics Simulation


From this simulation, it can be seen that the human model will track the motion data.
Discrepancies between the recorded motion history and the performance of the model can be
witnessed by observing the Motion Agents during animation. A yellow sphere will track the
motion exactly, a red sphere is rigidly attached to the body segment. When a discrepancy
between the data and the kinematics restraints in the model occur there will be a separation of
these two spheres (the bushing uniting the two parts extends). This flexibility allows the Motion
Agents to become "motion influencers" rather that motion governors. This allows for errors in
data, measurement and collection.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Dancing.html[06-Jun-15 12:51:42 PM]

LifeMOD Tutorials | Dancing

As a product of the inverse-dynamics simulation or the "training" phase, the rotations of the
joints are recorded to be used in the following forward-dynamics simulation.

Figure 5: Animation sequence for the inverse-dynamics analysis, and close-up view of motion agent
activity (right).

Step 12: Bring up analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 13: Run the simulation
Set the gravity to -9806 in the Y-direction and run the simulation for 2.0 seconds and 200 time
steps using the default integrator settings.
Step 14: Display animation
Select the Animation Icon from the Main Toolbox. Display animation using the playback controls.

Preparing the Model for the Forward Dynamics Simulation


With the joint angle history recorded from the inverse-dynamics simulation, it may now be used
in a proportional-derivative controller to produce a torque to recreate the motion history. The
process entails removing the Motion Agents and updating the joints to include the PD controllers
or "trained" elements.
Also a tracker agent will be installed. The tracker agent is a motion agent which is driven using
data recorded from the inverse-dynamics analysis. The agent will be used to guide the model
and account for any dynamic instabilities. It consists of a simple bushing with a relatively small
spring stiffness. For information on selecting specific model arresters for this section see
Choosing Model Parameters.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Dancing.html[06-Jun-15 12:51:42 PM]

LifeMOD Tutorials | Dancing

Figure 6: Panel to install PD-Servo controllers ("trained" elements) on the joints for forward dynamics
simulation.

Figure 7: Panel to create tracker agent

Step 15: Bring up the joint Training panel


Select JOINTS from the main-menu and TRAINING from the sub-menu.
Step 16: Update the joints with the Active element
Select "Install Trained Driver Rotational Joint Elements."
Step 17: Set fields and update joints
Enter 1e5 and 1e3 for the servo proportional and derivative gain respectively. A rule of thumb in
selecting controller gains is to select a relatively high proportional gain, and a derivative gain at
about 10% of the proportional gain. These values may be varied using the Parameters selection
from the LifeMOD main menu to note the effect on the simulation results.Select APPLY.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Dancing.html[06-Jun-15 12:51:42 PM]

LifeMOD Tutorials | Dancing

Step 18: Bring up the motion agent tracker panel


Select MOTION on the main-menu and CREATE TRACKER AGENT on the sub-menu.
Step 19: Create the tracking agent
Set the stiffness parameters as in Figure 7 and specify all freedoms as driven. Select APPLY.
Step 20: Bring up parameters panel
Select PARAMETERS on the main-menu and MOTION AGENTS on the sub-menu. Select Plug-ingait Marker Set.
Step 21: Change the scale of the translation stiffness/damping on the motion agents
Enter 1.0 for both Global Translational Stiffness and Global Translational Damping. Select
INSTALL VALUES.

Running the Forward Dynamics Simulation


With the joint formulated to include PD-servo controllers ("trained" elements) based on motion
recorded from the inverse-dynamics analysis and the foot-floor contact forces installed, the
model is now ready a forward dynamics simulation.

Figure 8: Animation sequence showing model motion and ground reaction force vectors

Step 22: Bring up analyze panel


Select ANALYZE from the main-menu and DYNAMICS from the sub-menu.
Step 23: Disable motion agents and run the simulation
Set the gravity to -9806 in the Y-direction, check "Disable Motion Agents," and run the
simulation for 2.0 seconds and 200 time steps using the default integrator setting.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Dancing.html[06-Jun-15 12:51:42 PM]

LifeMOD Tutorials | Dancing

Interrogating the Results


When the simulation is complete the model may be animated. To gain insight to the dynamics of
gait and the joint reactions necessary for locomotion.
Hip, knee and ankle torques
Ground reaction force

Figure 9: Panel set up to plot the left hip torque

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Dancing.html[06-Jun-15 12:51:42 PM]

LifeMOD Tutorials | Dancing

Figure 10: Left leg torques (top plot), ground reaction forces (middle plot), and head acceleration
(bottom plot)

Step 24: Display simulation


Use the ADAMS/View toolbox to animate the model.
Step 25: Display simulation with skin/skel model
For another method of viewing the animated model, select Skin as the external representation

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Dancing.html[06-Jun-15 12:51:42 PM]

LifeMOD Tutorials | Dancing

and Skeleton as the internal on the LifeMOD Display Toolbox and run the animation.
Step 26: Bring up results panel
Select RESULTS on the main-menu and DATA DISPLAY on the sub-menu. Select Joints as the
data type. Select "Results Window" button to bring up the post processor.
Step 27: Plot the right hip sagittal torque
Select "Jenn_Right_Hip", torque characteristic and sagittal component. Check "Filter Data" and
select a low pass butterworth data filter with a cuttoff frequency of 5.0 and an order of 5. Select
CREATE FULL PLOT.
Step 28: Plot the right knee joint torques
Select "Jenn_Right_Knee", torque characteristic and sagittal component. Select a low pass
butterworth data filter with a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL
PLOT.
Step 29: Plot the right ankle joint torques
Select "Jenn_Right_Ankle", torque characteristic and sagittal component. Select a low pass
butterworth data filter with a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL
PLOT.
Step 30: Animate side view
Select ANIMATION on the sub-menu. Select front view and select PLAY.
Step 31: Animate front view
Select right view and select PLAY.
Step 32: Animate iso view
Select iso view and select PLAY.
Step 33: Bring up contact results panel
Select DATA DISPLAY in the sub-menu. Select CONTACTS as the data type.
Step 34: Plot the ground reaction force for right foot
Select "Jenn_GRX_Rfoot_1", magnitude component. Select a low pass butterworth data filter with
a cuttoff frequency of 5.0 and an order of 5. Check "New Plot" and select CREATE FULL PLOT.
Step 35: Plot the ground reaction force for left foot
Select "Jenn_GRX_Lfoot_1", magnitude component. Select a low pass butterworth data filter with
a cuttoff frequency of 5.0 and an order of 5. Select CREATE FULL PLOT.
Step 36: Animate iso view
Select ANIMATION on the sub-menu. Select iso view and select PLAY.
Step 37: Animate front view
Select front view and select PLAY.
Step 38: Bring up body motion results panel
Select DATA DISPLAY on the sub-menu. Select BODY MOTION as the data type.
Step 39: Plot the head acceleration
Select "Jenn_Head", Y component and CM_ Acceleration characteristic. Select a low pass
butterworth data filter with a cuttoff frequency of 5.0 and an order of 5. Check New Plot and
select CREATE FULL PLOT.
Step 40: Animate right view
Select ANIMATION from sub-menu. Select right view and select PLAY.
Step 41: DEMO COMPLETE

Further
This model was put forth to demonstrate the capability of a forward dynamics gait model to

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Dancing.html[06-Jun-15 12:51:42 PM]

LifeMOD Tutorials | Dancing

assess the internal reactions and external ground reactions of locomotion.


This model may be refined in many areas including:
Creating the full body
Adding a balance control controller.
Refine the foot further to verify ground reaction results to force plane measurements
Add point-to-point muscle forces instead of torques
Add force-based knee joints to the model.

Acknowledgement
A special thanks for furnishing the data for this model to:
Mike Kocourek
Business Development Manager, Life Sciences Division
Vicon Motion Systems, Inc.
www.vicon.com

Back To Top
Copyright 2010 LifeModeler, Inc.

file:///E|/manjunath/LifeMOD%20Tutorials%20%20%20Dancing.html[06-Jun-15 12:51:42 PM]

You might also like