Page 1 of 1

Modeling and Simulation of Musculotendon Dynamics

Posted: Thu Jun 15, 2017 3:38 pm
by y_ammouche
Dear all,

I'd like to have some information about the musculotendon dynamics. A detailed publication https://web.stanford.edu/~tkuchida/pape ... cs-JBE.pdf about the equations solved by the models but a I've got some equations about it.

For the equilibrium with elastic tendon formulation of the musculotendon dynamics these are the following equation

1 - the equilibrium equation

2 - the constant height of the muscle.

3/4 - the length and the velocity of the muscle+tendon complex imposed by the musculoskeletal motion

And we have 5 unknows : pennation angle, length of muscle, velocity of muscle, length of tendon and velocity of tendon.

I guess that the velocity of the muscle computed at time t is used to guess the lenght of muscle at time t+dt by an implicit scheme so it add another equation ?

Nevertheless, even if we know the length of the muscle plus the tendon at t=0, how the length is splited between the tendon and the muscle at t=0 ?

How the first equation computing the velocity by inversing the force-velocity curve is solved ? By a newton-Raphson algorithm ?

Thanks for your time.

Re: Modeling and Simulation of Musculotendon Dynamics

Posted: Fri Jun 16, 2017 12:40 am
by tkuchida
The algorithm is described in comments in the source code. See the Millard2012EquilibriumMuscle::estimateMuscleFiberState() class in Millard2012EquilibriumMuscle.cpp, from line 1219: https://github.com/opensim-org/opensim- ... .cpp#L1219

The fiber velocity and force–velocity multiplier are estimated from the relative fiber and tendon stiffnesses (from line 1327).

The algorithm was slightly different in 3.3; you can view the changes over time by clicking the "History" button above line 1.

Re: Modeling and Simulation of Musculotendon Dynamics

Posted: Wed Jun 21, 2017 9:52 am
by y_ammouche
Thank you very much, they are indeed using a newton-raphson to determine the length of the muscle and the velocity of the musculotendon is split depending the relative stiffness of the tendon and muscle.

Once the initialization is finished, the velocity of the muscle is used to predict the length of the muscle at the next step ? Because I did not find such an algorithm on the code.

Yanis

Re: Modeling and Simulation of Musculotendon Dynamics

Posted: Thu Jun 22, 2017 2:42 pm
by tkuchida
Once the initialization is finished, the velocity of the muscle is used to predict the length of the muscle at the next step ? Because I did not find such an algorithm on the code.
Fiber length is a state and is computed by the integrator given its derivative (fiber velocity).

Re: Modeling and Simulation of Musculotendon Dynamics

Posted: Thu Jun 22, 2017 3:58 pm
by y_ammouche
Thank you, I had a huge feeling the fiber velocity was used to compute the fiber length. I know it may be much to ask, but can you tell me in which C++ file the integrator are coded ?

Re: Modeling and Simulation of Musculotendon Dynamics

Posted: Thu Jun 22, 2017 4:06 pm
by tkuchida
but can you tell me in which C++ file the integrator are coded ?
The integrators live in Simbody here: https://github.com/simbody/simbody/tree ... rators/src.