Error during analysis

Hi, we are now working with musculo-skeletal simulation of swimming.
We already developed input data, that is, body motion and external
force acting on the human body during swimming.

However, the analysis stops due to the unknown error.
The error message says as follows:


ERROR(OBJ1) : \Repository.6\ARep\Aalborg\Butterfly-Mus1
\ButterflyMus1.Main.any(84) : ‘Study’ : Muscle recruitment
analysis failed, simplex solver reports that solution does not
satisfy all constraints.

Since which part induces this error is not shown, we can not
identify the part of the problem, and therefore can not eliminate
this error.

Could anyone please give us any suggestion for this error?

our simulation data are located at

http://www.hei.mei.titech.ac.jp/research/motomu/Repository.zip
(6.34MB)

and open ButterflyMus1.Main.any at Repository.6-Butterfly
/Arep/Aalborg/Butterfly-Mus1 .
In this case, the analysis stops at time step 6.

Thank you in advance,

Motomu

Dear Motomu,

What a fantastic model. It is really impressive that you have been
able to define such a complex full-body movement. I think I have
partially soled your problem, but it may be instructive for you and
other members to know how to debug a model in a case like this, so I
will explain it in steps:

  1. The error message means that the equilibrium equations do not have
    a solution. This means that either there are not enough muscles
    internally to carry the loads, or the model is not balanced against
    the environment.

  2. I first checked the external balance. In the joints and drivers
    file, the pelvis is driven in six degrees of freedom with reactions
    switched on. This should be enough.

  3. Then I removed all the muscles by selecting the NoMuscles version
    of the body model in the main file. I did this because I wanted a
    model that loads and runs faster for debugging. The NoMuscles version
    is equipped with joint torque providers on all degrees of freedom so
    it should be able to do the InverDynamicAnalysis. I ran it, and it
    failed, indicating that there is some other unbalanced element.

  4. Then I ran the ModelInformation operation. This provides a review
    list of segments and other stuff. I checked that the model did not
    have any segments that did not belong to the body and therefore
    needed its own support. There were none.

  5. Then I went to the JointAndDrivers file and replaced all the
    driver Reaction.Type to {On}. That made the model run, proving that
    the problem is an internal degree of freedom that is not carried.

  6. Then I went on to successively changing “On” to “Off” in these
    drivers until the model failed. I noticed that you have introduced
    two additional articulations in the knee, but you have not provided
    joint torque muscles for these. Leaving the reactions “On” for the
    two new degrees of freedom made the model run about half way through
    the movement.

  7. Further experiments revealed that there is a problem with the
    right shoulder, where I had to leave two of the reactions “On”. I
    have not found out why, but this makes the model run all the way in
    InverseDynamicAnalysis without muscles.

  8. I then switched the muscles back on to verify that that the model
    can run. It does indeed run a few steps, but then one of the shoulder
    muscles is causing a problem. I am sure you have had a few of these
    with the very large shoulder rotations you are using. I think the
    primary problem you will encounter is to get the shoulder muscles
    working for these large articulations.

I shall upload the modified JointsAndDrivers file to the files
section of the group. Please do keep us posted on your progress with
this fantastic model.

Best regards,
John

— In anyscript@yahoogroups.com, “Motomu Nakashima”
<motomunakashima@…> wrote:
>
> Hi, we are now working with musculo-skeletal simulation of swimming.
> We already developed input data, that is, body motion and external
> force acting on the human body during swimming.
>
> However, the analysis stops due to the unknown error.
> The error message says as follows:
>
> -------------
> ERROR(OBJ1) : \Repository.6\ARep\Aalborg\Butterfly-Mus1
> \ButterflyMus1.Main.any(84) : ‘Study’ : Muscle recruitment
> analysis failed, simplex solver reports that solution does not
> satisfy all constraints.
> -------------
>
> Since which part induces this error is not shown, we can not
> identify the part of the problem, and therefore can not eliminate
> this error.
>
> Could anyone please give us any suggestion for this error?
>
> our simulation data are located at
>
> http://www.hei.mei.titech.ac.jp/research/motomu/Repository.zip
> (6.34MB)
>
> and open ButterflyMus1.Main.any at Repository.6-Butterfly
> /Arep/Aalborg/Butterfly-Mus1 .
> In this case, the analysis stops at time step 6.
>
> Thank you in advance,
>
> Motomu
>

Dear John,

Thank you very much for your very instructive comments.
After your comment, we also found other suggestions to the problems
similar to ours in this newsgroup.
We are now testing all those things.
If things go well, I would like to present the results
at ISCSB conference in Taiwan.

Best regards,

Motomu Nakashima

— In anyscript@yahoogroups.com, “AnyBody Support” <support@…>
wrote:
>
> Dear Motomu,
>
> What a fantastic model. It is really impressive that you have been
> able to define such a complex full-body movement. I think I have
> partially soled your problem, but it may be instructive for you
and
> other members to know how to debug a model in a case like this, so
I
> will explain it in steps:
>
> 1. The error message means that the equilibrium equations do not
have
> a solution. This means that either there are not enough muscles
> internally to carry the loads, or the model is not balanced
against
> the environment.
>
> 2. I first checked the external balance. In the joints and drivers
> file, the pelvis is driven in six degrees of freedom with
reactions
> switched on. This should be enough.
>
> 3. Then I removed all the muscles by selecting the NoMuscles
version
> of the body model in the main file. I did this because I wanted a
> model that loads and runs faster for debugging. The NoMuscles
version
> is equipped with joint torque providers on all degrees of freedom
so
> it should be able to do the InverDynamicAnalysis. I ran it, and it
> failed, indicating that there is some other unbalanced element.
>
> 4. Then I ran the ModelInformation operation. This provides a
review
> list of segments and other stuff. I checked that the model did not
> have any segments that did not belong to the body and therefore
> needed its own support. There were none.
>
> 5. Then I went to the JointAndDrivers file and replaced all the
> driver Reaction.Type to {On}. That made the model run, proving
that
> the problem is an internal degree of freedom that is not carried.
>
> 6. Then I went on to successively changing “On” to “Off” in these
> drivers until the model failed. I noticed that you have introduced
> two additional articulations in the knee, but you have not
provided
> joint torque muscles for these. Leaving the reactions “On” for the
> two new degrees of freedom made the model run about half way
through
> the movement.
>
> 7. Further experiments revealed that there is a problem with the
> right shoulder, where I had to leave two of the reactions “On”. I
> have not found out why, but this makes the model run all the way
in
> InverseDynamicAnalysis without muscles.
>
> 8. I then switched the muscles back on to verify that that the
model
> can run. It does indeed run a few steps, but then one of the
shoulder
> muscles is causing a problem. I am sure you have had a few of
these
> with the very large shoulder rotations you are using. I think the
> primary problem you will encounter is to get the shoulder muscles
> working for these large articulations.
>
> I shall upload the modified JointsAndDrivers file to the files
> section of the group. Please do keep us posted on your progress
with
> this fantastic model.
>
> Best regards,
> John
>
>
> — In anyscript@yahoogroups.com, “Motomu Nakashima”
> <motomunakashima@> wrote:
> >
> > Hi, we are now working with musculo-skeletal simulation of
swimming.
> > We already developed input data, that is, body motion and
external
> > force acting on the human body during swimming.
> >
> > However, the analysis stops due to the unknown error.
> > The error message says as follows:
> >
> > -------------
> > ERROR(OBJ1) : \Repository.6\ARep\Aalborg\Butterfly-Mus1
> > \ButterflyMus1.Main.any(84) : ‘Study’ : Muscle recruitment
> > analysis failed, simplex solver reports that solution does not
> > satisfy all constraints.
> > -------------
> >
> > Since which part induces this error is not shown, we can not
> > identify the part of the problem, and therefore can not eliminate
> > this error.
> >
> > Could anyone please give us any suggestion for this error?
> >
> > our simulation data are located at
> >
> > http://www.hei.mei.titech.ac.jp/research/motomu/Repository.zip
> > (6.34MB)
> >
> > and open ButterflyMus1.Main.any at Repository.6-Butterfly
> > /Arep/Aalborg/Butterfly-Mus1 .
> > In this case, the analysis stops at time step 6.
> >
> > Thank you in advance,
> >
> > Motomu
> >
>