Joint Rotation and Translation

Hello,

I am a new Anybody user and I have some questions that I haven’t been able to find an answer to. I have gone through all the tutorials (with the exception of the FEA tutorial) so I have a basic understanding of what Anybody is capable of. I understand that one of the primary purposes of AnyBody is to find muscle forces that result from a kinematic motion. Another is to analyze joint reaction forces, and with the help of a FEA program, the stresses and strains that result from those forces. However, I am now specifically thinking about the function of AnyBody and how it could perform the analysis that we usually perform in-vivo in our lab. We do a lot of motion analysis using markers and motion tracking cameras in order to track the rotation and translation of adjacent bones in joint locations, such as the knee and hip, at the micron level. These analysis are usually performed in order to compare the biomechanics of an intact joint to a total joint replacement. We would like to replace motion tracking experiments with virtual simulation. Therefore I ask the following questions:

When simulating a model using a THA implant, how do you determine the joint location? Is marker data required to find the joint center of rotation (as it was done in the tutorial “Making Things Move: Lesson 4: Parameter Identification”) and then used as the standard when modeling the kinematics of an implant?

Is it possible to simulate physical contact between bones such that during kinematics, they don’t go inside, (or superimpose) each other? Is there any paper, tutorial or discussion describing how to use AnyKinMeasureNormComb? I only found one discussion on it from 2008.

Is anybody useful for analyzing, or virtually tracking, rotation and translation in joint interfaces at the micron level?

Thank you for your help.

Sincerely,
Chris Cookston

Hi Chris,

Thanks for your interest in AnyBody and for your persistence in going through the tutorials. Let me try to answer your questions:

First question:
A THA implant is very close to being a perfect ball-and-socket joint, and that is a big advantage from a modeling point-of-view compared to many of the anatomical joints, which are less conforming. It means that the model assumption of a spherical joint in the hip is a good one for this case. If the objective specifically is to identify the hip joint center and if this is something you do frequently, then my advice would be to establish a procedure involving the following:
[ol]
[li]A marker protocol on well-defined bony landmarks on the pelvis and femur. Notice that these markers do not have to be at any particular location compared with the joint, but the more markers you have on each segment, the better and the markers should preferably cover the external dimensions of each limb.
[/li][li]An experimental protocol involving as large articulations as possible of the hip joint in many different directions
[/li][li]A model morphing (we are working on a tutorial about that and will have a web cast on the subject on March 1) based on the marker points.
[/li][li]An AnyBody model set up for this specific purpose. This involves definition of the marker protocol and definition of design variables. The point here is that the over-determinacy of the markers allows you to optimize unknown model parameters. But you cannot optimize everything in the model, so the more certain you are about the marker placements, the better will be the accuracy of the determination of unknown parameters, in this case the hip joint center.
[/li][/ol]
So, in brief, the answer is: Yes, it is possible to determine the hip joint center this way and yes, it involves a mocap experiment with markers.

Second question:
About bone collisions. Detecting collision in AnyBody is possible today but not very convenient. You basically have to know in advance which points on the two bones may potentially touch each other. Then you can create AnyKinPLine measures between all the pairs of points you want to watch, and you can monitor in the analysis whether any of these measures approach zero. In a more complex context it is probably possible to combine these measures with the joint in a norm measure, as you propose, and obtain the ability of a femoral neck impingement to crowbar the head out of the socket and simulate dislocation. But, as I said, it is complicated and not very convenient.

It might also be possible to approximate the different bones with analytical surfaces such as ellipsoids and cylinders. These surfaces of these can typically be defined with norm measures (http://wiki.anyscript.org/index.php/Tips_and_tricks#Create_a_joint_between_an_ellipsoid_and_a_point)

The developers are well aware of the need for something more useful in this department, so they are working hard on a real surface contact measure. Stay tuned for software updates!

I recently presented a paper at the orthopaedic research society’s annual meeting in Long Beach about the subject of impingement. In this case we simply used the system’s graphical capabilities to visually detect impingement and found several cased during ingress/egress of a sports car. Unfortunately I cannot attach the file, but I would be happy to email it to you if you contact me directly.

Third question:
The answer is yes. AnyBody does have the ability to make the best of the kinematic data that you have, but in most cases the skin artifact of the underlying motion capture experiment is too large to reliably recover the micro motions. Andersen et al. have investigated this in detail by comparing bone pin marker data with skin-mounted markers.

I hope this answers your questions. Thanks again for your interest in AnyBody.

John

Oops, I neglected to tell that version 5.0 actually contains a feature that allows a point cloud to define a surface and that you can measure the shortest distance between this surface and a given other points. The class in question is AnyKinPointSurface. Please have a look in the reference manual.

Best regards,
John

Thank you for your response, John. That helps me understand better.

Chris