opensim-org / opensim-core

SimTK OpenSim C++ libraries and command-line applications, and Java/Python wrapping.
https://opensim.stanford.edu
Apache License 2.0
800 stars 323 forks source link

[Feature Request] make Static Optimization tool more robust #3910

Open mrrezaie opened 2 months ago

mrrezaie commented 2 months ago

Hi, I'm a fan of the simplicity of Static Optimization. If I'm not mistaken, the Static Optimization tool in OpenSim only takes fiber force-length-velocity relationship into account and excludes tendon elasticity and passive fiber force.

As shown in this research, the Millard2012EquilibriumMuscle can include tendon elasticity (and passive fiber force) at the expense of excluding fiber force-velocity relationship, which is superior compared to the the default option [Link].

Also, evidence [Link] [Link] has shown that muscle volume weight (the product of optimal fiber length and PCSA or max isometric force) can solve the muscle discretization problem [Link], which could lead to better and more physiological muscle recruitment.

It would be great if you could make the OpenSim Static Optimization tool more robust by the following changes:

  1. If tendon is rigid, only consider force-length-velocity curve (the current OpenSim implementation)
  2. If tendon is compliant, consider tendon, active and passive fiber force-length curves
  3. A check box to whether or not use muscle volume-weighted cost function

So, non-scripting users can get the most out of the muscles in OpenSim Static Optimization tool when this is the only valid tool they could use (I mean when the lab configuration, for instance when only one force plate is available during walking task, does not allow them to use more advanced tools like CMC).

Thank you in advance.