opensim-org / opensim-core

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

Error on low activated DeGroote muscles at specific poses #3739

Closed mrrezaie closed 3 months ago

mrrezaie commented 3 months ago

Hi, following this post on forum in which the error occurred when working with API, here is an example to reproduce the error in GUI as well:

  1. replace the muscles of Rajagopal model with DeGrooteFregly2016Muscle (or download this already converted one: DeGroote.zip)
  2. in GUI, set hip_flexion_r coordinate to a value more than 80 (or less than -10)
  3. open plotter and plot tendon force of semiten_r muscle against knee_angle_r
  4. set Activation override to 0.2

image AnalyzeTool::run() unable to equilibrate muscles at time = 0.0. Reason: Model::equilibrateMuscles() Function has same sign at bounds of 0.0 and 5.0. Thrown at CommonUtilities.cpp:164 in solveBisection().. DeGrooteFregly2016Muscle 'recfem_r' is exceeding maximum contraction velocity at time 0.0 s. As you see in this example, the error is related to an other muscle, recfem_r.

nickbianco commented 3 months ago

Hi @mrrezaie, I will address this question on the forum, since I don't see a clear bug here yet. This is probably explained by differences in how these muscles handle muscle-tendon equilibrium.

If we do find a bug, we can reopen this later.