CMC Settings

Provide models that can estimate force and moment generating capacity of the lower limb and reveal relationships between muscle architecture and function.
POST REPLY
User avatar
J.J. Mordang
Posts: 26
Joined: Mon Mar 22, 2010 7:04 am

CMC Settings

Post by J.J. Mordang » Tue Jun 22, 2010 8:23 am

Hi,


I was wondering how your CMC is set up. I made treadmill data and the scaling, inverse kinematics and residual reduction look just fine. However, when I want to compute muscle control I encounter a lot of problems.

1. When I check the "append to muscle's force data" instead of replace, the program just stops after printing : Setting cmc controller to not use verbose printing.

2. When I check the replace box, most times the CMC stops at a certain percentage (both slow and fast target). And if it finishes the model joints angles are all tangled up. I got one simulation nearly right (very high optimal force at the foot joints) but no muscle excitations could be seen after simulation.

3. I added 4 segments to the foot as that is what I'm interested in so I prefer not to lock them.

Are there any tips you can give me about configuring the .xml files needed for the CMC? I only have the Gait model as a template.

Thank you very much for your time and help.


Kind regards,

Jan-Jurre



User avatar
Edith Arnold
Posts: 44
Joined: Fri Apr 06, 2007 2:07 pm

RE: CMC Settings

Post by Edith Arnold » Mon Jun 28, 2010 2:42 pm

Hi Jan-Jurre,
I have a lot of thoughts on your problem and they fall into two categories: technical details of getting CMC to find a solution and the big picture of the appropriateness of these tools for your application. I'll start with the technical details because they're more straightforward, but depending on the answers to the second part, the first section may be moot.

First, the CMC stuff:

I have <replace_force_set> set to false, because I don't want to replace the muscles (this is why there are no muscle excitations in point 3), I just want to append some reserve forces in case the muscles aren't strong enough. These reserves are defined in an xml file.

If you start with the reserve actuators really strong (high optimal_force) then this will help you get a CMC solution if the muscles aren't strong enough. If your simulation has to use all reserves, then it's a sign that the muscle forces need to be higher. This is a common issue.

You should use the fast target for CMC:
<use_fast_optimization_target> true </use_fast_optimization_target>

What are the segments you've added and how are the joints defined? I always lock the subtalar and mtp joints in my gait simulations because the experimental marker data at that point is very noisy the model is under-actuated in the foot. Since that's what you're interested in, here's some things to try or check:

Do each of your new segments have mass?
Before getting to CMC, can you get an inverse dynamics solution? If you can, this will give you something to compare to, if you can't it will reveal other problems.
Are the new joints coupled or each independent? If they're independent did you add reserve actuators for each one?
Try a very small window for CMC before a long one, see if things fall apart right away, or if the first few time steps are ok.

Second, the big picture:
There is almost no musculature in the foot in this model because this model was created with the entire leg in mind, and it wasn't necessary to zoom in on the foot. So, I'm not surprised you're having trouble getting a CMC solution for these new segments. That's why I lock the subtalar and mtp joints in my gait simulations: there aren't enough elements to produce the forces necessary (intrinsic muscles, ligaments, fascia...), the muscle architecture data used don't describe the foot muscles in great detail, and the gait data I'm using are not that detailed in the foot.

If you need a forward actuated simulation that captures detailed foot mechanics (and it's worth considering whether you really do, or if a static optimization or inverse dynamics analysis would be sufficient to answer your research question) then you'll have to add some actuators that move these joints. Those might be muscles if you have good architecture data for them or they might be idealized torque actuators and passive elements.

Thank you for posting these questions publicly, these are common issues and this will be a useful archive for others. If you'd like me to take a look at your files in more detail in the next few weeks you can send them to me directly.

-Edith

POST REPLY