Hi all,
I'm working with a two legged model (a modified version of the Hamner full-body model). The model definition appears to be bilaterally symmetric in both the skeleton and the muscles (i.e. the left leg is a mirrored copy of the right leg). However, when I run forward simulations with the model with symmetric controls, I get states that are slightly different between the right and left sides. The differences are small, maybe a few hundredths of a degree at most over a one-second simulation.
Has anyone else encountered this too? I've been unable to discover the source. Playing with the integrator accuracy (RKM) had no effect. I added foot-floor contact and coordinate limit forces at the joints but have ruled those out (the effect appears even if the additions are removed).
Thanks!
Ross
Asymmetry in states of symmetric two-legged model
- Ross Miller
- Posts: 375
- Joined: Tue Sep 22, 2009 2:02 pm
- Ross Miller
- Posts: 375
- Joined: Tue Sep 22, 2009 2:02 pm
Re: Asymmetry in states of symmetric two-legged model
Found it, the muscles weren't actually symmetric. It looks like there's a discrepancy in the 4th path coordinates on the left and right side for the vastus intermedius (aside from the flipping of the z-coordinate).
Here's for vas_int_r:
<location> 0.05546322 0.02529232 0.00180000 </location>
and for vas_int_l:
<location> 0.06175755 0.02098402 -0.00140000 </location>
The y-coordinates for the splines defining the motion of this point are different too.
Here's for vas_int_r:
<location> 0.05546322 0.02529232 0.00180000 </location>
and for vas_int_l:
<location> 0.06175755 0.02098402 -0.00140000 </location>
The y-coordinates for the splines defining the motion of this point are different too.
- Ayman Habib
- Posts: 2252
- Joined: Fri Apr 01, 2005 12:24 pm
Re: Asymmetry in states of symmetric two-legged model
Thanks much for reporting Ross, we'll investigate the source of this and correct it if needed in the next release.
Best regards,
-Ayman
Best regards,
-Ayman
- Ross Miller
- Posts: 375
- Joined: Tue Sep 22, 2009 2:02 pm
Re: Asymmetry in states of symmetric two-legged model
Hi Ayman,
It looks like all the definitions are completely symmetric in the model now (the one I'm using), but I still get some small asymmetries. They are functionally pretty meaningless (like a few hundredths of a degree at most). I'm not sure why.
I have all the non-saggital DOF locked but the ground contact model is still applying force three dimensionally, which I think might be related. I can send some data along if you'd find it helpful.
Ross
It looks like all the definitions are completely symmetric in the model now (the one I'm using), but I still get some small asymmetries. They are functionally pretty meaningless (like a few hundredths of a degree at most). I'm not sure why.
I have all the non-saggital DOF locked but the ground contact model is still applying force three dimensionally, which I think might be related. I can send some data along if you'd find it helpful.
Ross
- Ayman Habib
- Posts: 2252
- Joined: Fri Apr 01, 2005 12:24 pm
Re: Asymmetry in states of symmetric two-legged model
Hi Ross,
I wouldn't expect results to be identical for the two sides unless that was built into the methods (e.g build a model of only one half) as most methods work to meet some specific non-zero tolerances and there could be multiple close solutions that satisfy constraints and solution/integration tolerances etc.
If the PathPoint coordinates that you found different between the two sides were in a MovingPathPoint then I wouldn't worry about it as the location given the file is the instantaneous position based on coordinate values and is recomputed live based on coordinate values.
Please let me know if that explains or if you have any further questions.
All the best,
-Ayman
I wouldn't expect results to be identical for the two sides unless that was built into the methods (e.g build a model of only one half) as most methods work to meet some specific non-zero tolerances and there could be multiple close solutions that satisfy constraints and solution/integration tolerances etc.
If the PathPoint coordinates that you found different between the two sides were in a MovingPathPoint then I wouldn't worry about it as the location given the file is the instantaneous position based on coordinate values and is recomputed live based on coordinate values.
Please let me know if that explains or if you have any further questions.
All the best,
-Ayman
- Ross Miller
- Posts: 375
- Joined: Tue Sep 22, 2009 2:02 pm
Re: Asymmetry in states of symmetric two-legged model
Hi Ayman,
That makes sense re: constraint tolerances, etc.
It is indeed a MovingPathPoint, but both the splines defining its position as a function of the coordinate value (the knee angle, in this case) are also different, along with the positions specified in the <location> tag. The <x> values for the spline (i.e. the knee angles, I think) are the same for both muscles but the <y> values (the 3D location of the point) are different (looks to be an offset of about [-7, 2, 0.4] millimeters).
I attached the snippet from the XML code of the original model if you'd like to see it.
I don't think it makes hardly any difference in the model's performance (it was never off by more than 0.1 degrees and the muscle forces were essentially symmetric), I only noticed it because I was expecting symmetric controls to produce states that were exactly the same left vs. right.
Thanks for your help!
Ross
That makes sense re: constraint tolerances, etc.
It is indeed a MovingPathPoint, but both the splines defining its position as a function of the coordinate value (the knee angle, in this case) are also different, along with the positions specified in the <location> tag. The <x> values for the spline (i.e. the knee angles, I think) are the same for both muscles but the <y> values (the 3D location of the point) are different (looks to be an offset of about [-7, 2, 0.4] millimeters).
I attached the snippet from the XML code of the original model if you'd like to see it.
I don't think it makes hardly any difference in the model's performance (it was never off by more than 0.1 degrees and the muscle forces were essentially symmetric), I only noticed it because I was expecting symmetric controls to produce states that were exactly the same left vs. right.
Thanks for your help!
Ross
- Attachments
-
- vas_int.xml
- (4.43 KiB) Downloaded 57 times