Question regarding sway study using AnyBody

Hello,

I’ve been trying to reproduce a 3-D sway study using AnyBody and have
a little difficulty.
The model I’m using is quite simplified for now in that the model has
head, arms, trunk, thighs, shanks, and feet segments. Hip, knee, and
ankle joint is respectively, set to be spherical, revolute, and
universal. Vicon motion capture data are used to drive each segment.

By using selected coordinates to be driven and a relaxed kinematic
tolerance, the model sways back and force without any error or
warning.

Does this mean that AnyBody can determine a velocity of each segment?

However, when forces and moments are applied on the feet, AnyBody
says it’s kinematically incomplete. The forces and moments are
applied in the same way that you did in the Gait webcast. I attached
a dummy segment on the sole of a foot using AnyKinEqDriver and used
AnyForce3D & AnyMoment3D to this dummy segment.

So, the problem is that I’m not sure what to look for to make the
model work.

Regards,
Sunwook

Hello Sunwok,

Before going into a long exlanaion, I just want to be sue that you
have read this tutorial:
http://www.anybodytech.com/57.0.html
If not, then it might provide some valuable information for you.

Once you have read the tutorial, the best way to proceed is to
initially focus on the kinematics problem. If you need to use a
relaxed kinematic tolerence to run the kinematic analysis, then you
probably have over-constrained the model.

Try running the ModelInformation study and read the output carefully.
It should reveal whether the model has the correct number of
kinematic constraints.

Please report back about your findings, and we will be happy to
assist you further.

Best regards,
AnyBody Support

— In anyscript@yahoogroups.com, “ninegu_sun” <ninegu_sun@y…>
wrote:
> Hello,
>
> I’ve been trying to reproduce a 3-D sway study using AnyBody and
have
> a little difficulty.
> The model I’m using is quite simplified for now in that the model
has
> head, arms, trunk, thighs, shanks, and feet segments. Hip, knee,
and
> ankle joint is respectively, set to be spherical, revolute, and
> universal. Vicon motion capture data are used to drive each
segment.
>
> By using selected coordinates to be driven and a relaxed kinematic
> tolerance, the model sways back and force without any error or
> warning.
>
> Does this mean that AnyBody can determine a velocity of each
segment?
>
> However, when forces and moments are applied on the feet, AnyBody
> says it’s kinematically incomplete. The forces and moments are
> applied in the same way that you did in the Gait webcast. I
attached
> a dummy segment on the sole of a foot using AnyKinEqDriver and used
> AnyForce3D & AnyMoment3D to this dummy segment.
>
> So, the problem is that I’m not sure what to look for to make the
> model work.
>
> Regards,
> Sunwook

Hello,

As you pointe out, the model was over-determined. After keeping DoFs
and the number of constraints, the kinematic analysis was done without
a relaxed kinematic tolerance.

So, I thought that the inverse dynamics would be completed if I applied
force plate data on each foot. The forces and moments are applied on
the fixed point of a foot and no muscle is considered for now. However,
Anybody claims that the problem is unbounded.

The problem is that I don’t see why the problem is unbounded when we
complete the kinematic analysis correctly and know external forces on
each foot. (the external data are from the force plate)

I guess I don’t still quite understand how Anybody works.

Thank you for your time.
Sunwook

Hi Sunwook,

It sounds like you are missing sufficient boundary conditions. If you
just apply the force plata data under the feet, then these forces are
most likely not in perfect equilibrium with the gravity and inertia
forces from the sway. If you think of the physics, it would be like
the body floating free in space under the influence of slightly
unbalanced forces. This would make it accelerate in some direction
and fly away.

This is why any model needs boundary conditions, i.e. enough links to
the global reference frame to balance the model.

It sounds like you may have studied our gait model. In that model we
apply forces under the feet and balance them with a boundary
condition at the pelvis.

The dicision of where to link your model to the global reference
frame is a difficult one because you have the entire body in the
model. But you could at least initially try with an AnyReacForce at
the pelvis. Have a look at the gait model if you are in doubt of how
to do it.

Best regards,
AnyBody Support

— In anyscript@yahoogroups.com, “ninegu_sun” <ninegu_sun@y…>
wrote:
> Hello,
>
> As you pointe out, the model was over-determined. After keeping
DoFs
> and the number of constraints, the kinematic analysis was done
without
> a relaxed kinematic tolerance.
>
> So, I thought that the inverse dynamics would be completed if I
applied
> force plate data on each foot. The forces and moments are applied
on
> the fixed point of a foot and no muscle is considered for now.
However,
> Anybody claims that the problem is unbounded.
>
> The problem is that I don’t see why the problem is unbounded when
we
> complete the kinematic analysis correctly and know external forces
on
> each foot. (the external data are from the force plate)
>
> I guess I don’t still quite understand how Anybody works.
>
> Thank you for your time.
> Sunwook

Hi, I really thank you for the quick response.

As you said, I’ve been already using AnyReacForce at the pelvis to
boudn the model; however, the inverse dynamics hasn’t worked out yet.

Thus, I further simplified the model to have HAT and lower extermity,
used AnyReacForce at the HAT. Yet, the simplified one doesn’t get to
the inverse dynamics, either. Now I have little idea of what to do
next to make the model work.

Do you think using different coordinates to drive segments may solve
the current problem?

Sincerely,
Sunwook

— In anyscript@yahoogroups.com, “AnyBody Support” <support@a…>
wrote:
> Hi Sunwook,
>
> It sounds like you are missing sufficient boundary conditions. If
you
> just apply the force plata data under the feet, then these forces
are
> most likely not in perfect equilibrium with the gravity and inertia
> forces from the sway. If you think of the physics, it would be like
> the body floating free in space under the influence of slightly
> unbalanced forces. This would make it accelerate in some direction
> and fly away.
>
> This is why any model needs boundary conditions, i.e. enough links
to
> the global reference frame to balance the model.
>
> It sounds like you may have studied our gait model. In that model
we
> apply forces under the feet and balance them with a boundary
> condition at the pelvis.
>
> The dicision of where to link your model to the global reference
> frame is a difficult one because you have the entire body in the
> model. But you could at least initially try with an AnyReacForce at
> the pelvis. Have a look at the gait model if you are in doubt of
how
> to do it.
>
> Best regards,
> AnyBody Support
>
>
>
> — In anyscript@yahoogroups.com, “ninegu_sun” <ninegu_sun@y…>
> wrote:
> > Hello,
> >
> > As you pointe out, the model was over-determined. After keeping
> DoFs
> > and the number of constraints, the kinematic analysis was done
> without
> > a relaxed kinematic tolerance.
> >
> > So, I thought that the inverse dynamics would be completed if I
> applied
> > force plate data on each foot. The forces and moments are applied
> on
> > the fixed point of a foot and no muscle is considered for now.
> However,
> > Anybody claims that the problem is unbounded.
> >
> > The problem is that I don’t see why the problem is unbounded when
> we
> > complete the kinematic analysis correctly and know external
forces
> on
> > each foot. (the external data are from the force plate)
> >
> > I guess I don’t still quite understand how Anybody works.
> >
> > Thank you for your time.
> > Sunwook

Well, we try to be quick :wink:

Anyway, there is only so much we can guess without actually seeing
the model. To help you much further, we probably need to have a look
at your model.

Could you zip it and upload it to the files section here in the
group? Then we will have a look at it as soon as we can get the time.

Best regards,
AnyBody Support

— In anyscript@yahoogroups.com, “ninegu_sun” <ninegu_sun@y…>
wrote:
> Hi, I really thank you for the quick response.
>
> As you said, I’ve been already using AnyReacForce at the pelvis to
> boudn the model; however, the inverse dynamics hasn’t worked out
yet.
>
> Thus, I further simplified the model to have HAT and lower
extermity,
> used AnyReacForce at the HAT. Yet, the simplified one doesn’t get
to
> the inverse dynamics, either. Now I have little idea of what to do
> next to make the model work.
>
> Do you think using different coordinates to drive segments may
solve
> the current problem?
>
> Sincerely,
> Sunwook
>
>
> — In anyscript@yahoogroups.com, “AnyBody Support” <support@a…>
> wrote:
> > Hi Sunwook,
> >
> > It sounds like you are missing sufficient boundary conditions. If
> you
> > just apply the force plata data under the feet, then these forces
> are
> > most likely not in perfect equilibrium with the gravity and
inertia
> > forces from the sway. If you think of the physics, it would be
like
> > the body floating free in space under the influence of slightly
> > unbalanced forces. This would make it accelerate in some
direction
> > and fly away.
> >
> > This is why any model needs boundary conditions, i.e. enough
links
> to
> > the global reference frame to balance the model.
> >
> > It sounds like you may have studied our gait model. In that model
> we
> > apply forces under the feet and balance them with a boundary
> > condition at the pelvis.
> >
> > The dicision of where to link your model to the global reference
> > frame is a difficult one because you have the entire body in the
> > model. But you could at least initially try with an AnyReacForce
at
> > the pelvis. Have a look at the gait model if you are in doubt of
> how
> > to do it.
> >
> > Best regards,
> > AnyBody Support
> >
> >
> >
> > — In anyscript@yahoogroups.com, “ninegu_sun” <ninegu_sun@y…>
> > wrote:
> > > Hello,
> > >
> > > As you pointe out, the model was over-determined. After keeping
> > DoFs
> > > and the number of constraints, the kinematic analysis was done
> > without
> > > a relaxed kinematic tolerance.
> > >
> > > So, I thought that the inverse dynamics would be completed if I
> > applied
> > > force plate data on each foot. The forces and moments are
applied
> > on
> > > the fixed point of a foot and no muscle is considered for now.
> > However,
> > > Anybody claims that the problem is unbounded.
> > >
> > > The problem is that I don’t see why the problem is unbounded
when
> > we
> > > complete the kinematic analysis correctly and know external
> forces
> > on
> > > each foot. (the external data are from the force plate)
> > >
> > > I guess I don’t still quite understand how Anybody works.
> > >
> > > Thank you for your time.
> > > Sunwook

Hi Sunwook,

Thanks for uploading the model. It is great work!

I think the matter is quite simple: When you do InverDynamicAnalysis,
you are essentially computing the forces in the model. This requires
that enough elements are available to balance the model. In a normal
body, the muches are playing that role. Your model does not have any
muscles yet. Hence the system is not able to balance the model,
unless you define muscles or some other “motors” to do the job.

Before making a decision of what to do, please consider what you wish
to do afterwards. Do you plan to add muscles to the model, or will
you only use it for traditional “joint torque” inverse dynamics?

Best regards,
AnyBody Support.

— In anyscript@yahoogroups.com, “ninegu_sun” <ninegu_sun@y…>
wrote:
> Hi, I really thank you for the quick response.
>
> As you said, I’ve been already using AnyReacForce at the pelvis to
> boudn the model; however, the inverse dynamics hasn’t worked out
yet.
>
> Thus, I further simplified the model to have HAT and lower
extermity,
> used AnyReacForce at the HAT. Yet, the simplified one doesn’t get
to
> the inverse dynamics, either. Now I have little idea of what to do
> next to make the model work.
>
> Do you think using different coordinates to drive segments may
solve
> the current problem?
>
> Sincerely,
> Sunwook
>
>
> — In anyscript@yahoogroups.com, “AnyBody Support” <support@a…>
> wrote:
> > Hi Sunwook,
> >
> > It sounds like you are missing sufficient boundary conditions. If
> you
> > just apply the force plata data under the feet, then these forces
> are
> > most likely not in perfect equilibrium with the gravity and
inertia
> > forces from the sway. If you think of the physics, it would be
like
> > the body floating free in space under the influence of slightly
> > unbalanced forces. This would make it accelerate in some
direction
> > and fly away.
> >
> > This is why any model needs boundary conditions, i.e. enough
links
> to
> > the global reference frame to balance the model.
> >
> > It sounds like you may have studied our gait model. In that model
> we
> > apply forces under the feet and balance them with a boundary
> > condition at the pelvis.
> >
> > The dicision of where to link your model to the global reference
> > frame is a difficult one because you have the entire body in the
> > model. But you could at least initially try with an AnyReacForce
at
> > the pelvis. Have a look at the gait model if you are in doubt of
> how
> > to do it.
> >
> > Best regards,
> > AnyBody Support
> >
> >
> >
> > — In anyscript@yahoogroups.com, “ninegu_sun” <ninegu_sun@y…>
> > wrote:
> > > Hello,
> > >
> > > As you pointe out, the model was over-determined. After keeping
> > DoFs
> > > and the number of constraints, the kinematic analysis was done
> > without
> > > a relaxed kinematic tolerance.
> > >
> > > So, I thought that the inverse dynamics would be completed if I
> > applied
> > > force plate data on each foot. The forces and moments are
applied
> > on
> > > the fixed point of a foot and no muscle is considered for now.
> > However,
> > > Anybody claims that the problem is unbounded.
> > >
> > > The problem is that I don’t see why the problem is unbounded
when
> > we
> > > complete the kinematic analysis correctly and know external
> forces
> > on
> > > each foot. (the external data are from the force plate)
> > >
> > > I guess I don’t still quite understand how Anybody works.
> > >
> > > Thank you for your time.
> > > Sunwook

First of all, I really thanked you for the response and bearing with
me.

I guess I was wrong. :slight_smile: I thought setting Reaction.Type of a joint to
be 1 would enable the model to create joint torques in accordance to
external forces.

I am doing this sway model only as my AnyBody practice. So, I prefer
to work step by step. That is, I’d like to complete with “joint
torque” inverse dyn. and then with muscle included.

Could you give me some suggestions on how I can turn on “motors”?

Regards,
Sunwook

— In anyscript@yahoogroups.com, “AnyBody Support” <support@a…>
wrote:
> Hi Sunwook,
>
> Thanks for uploading the model. It is great work!
>
> I think the matter is quite simple: When you do
InverDynamicAnalysis,
> you are essentially computing the forces in the model. This
requires
> that enough elements are available to balance the model. In a
normal
> body, the muches are playing that role. Your model does not have
any
> muscles yet. Hence the system is not able to balance the model,
> unless you define muscles or some other “motors” to do the job.
>
> Before making a decision of what to do, please consider what you
wish
> to do afterwards. Do you plan to add muscles to the model, or will
> you only use it for traditional “joint torque” inverse dynamics?
>
> Best regards,
> AnyBody Support.
>
>
>
> — In anyscript@yahoogroups.com, “ninegu_sun” <ninegu_sun@y…>
> wrote:
> > Hi, I really thank you for the quick response.
> >
> > As you said, I’ve been already using AnyReacForce at the pelvis
to
> > boudn the model; however, the inverse dynamics hasn’t worked out
> yet.
> >
> > Thus, I further simplified the model to have HAT and lower
> extermity,
> > used AnyReacForce at the HAT. Yet, the simplified one doesn’t get
> to
> > the inverse dynamics, either. Now I have little idea of what to
do
> > next to make the model work.
> >
> > Do you think using different coordinates to drive segments may
> solve
> > the current problem?
> >
> > Sincerely,
> > Sunwook
> >
> >
> > — In anyscript@yahoogroups.com, “AnyBody Support”
<support@a…>
> > wrote:
> > > Hi Sunwook,
> > >
> > > It sounds like you are missing sufficient boundary conditions.
If
> > you
> > > just apply the force plata data under the feet, then these
forces
> > are
> > > most likely not in perfect equilibrium with the gravity and
> inertia
> > > forces from the sway. If you think of the physics, it would be
> like
> > > the body floating free in space under the influence of slightly
> > > unbalanced forces. This would make it accelerate in some
> direction
> > > and fly away.
> > >
> > > This is why any model needs boundary conditions, i.e. enough
> links
> > to
> > > the global reference frame to balance the model.
> > >
> > > It sounds like you may have studied our gait model. In that
model
> > we
> > > apply forces under the feet and balance them with a boundary
> > > condition at the pelvis.
> > >
> > > The dicision of where to link your model to the global
reference
> > > frame is a difficult one because you have the entire body in
the
> > > model. But you could at least initially try with an
AnyReacForce
> at
> > > the pelvis. Have a look at the gait model if you are in doubt
of
> > how
> > > to do it.
> > >
> > > Best regards,
> > > AnyBody Support
> > >
> > >
> > >
> > > — In anyscript@yahoogroups.com, “ninegu_sun”
<ninegu_sun@y…>
> > > wrote:
> > > > Hello,
> > > >
> > > > As you pointe out, the model was over-determined. After
keeping
> > > DoFs
> > > > and the number of constraints, the kinematic analysis was
done
> > > without
> > > > a relaxed kinematic tolerance.
> > > >
> > > > So, I thought that the inverse dynamics would be completed if
I
> > > applied
> > > > force plate data on each foot. The forces and moments are
> applied
> > > on
> > > > the fixed point of a foot and no muscle is considered for
now.
> > > However,
> > > > Anybody claims that the problem is unbounded.
> > > >
> > > > The problem is that I don’t see why the problem is unbounded
> when
> > > we
> > > > complete the kinematic analysis correctly and know external
> > forces
> > > on
> > > > each foot. (the external data are from the force plate)
> > > >
> > > > I guess I don’t still quite understand how Anybody works.
> > > >
> > > > Thank you for your time.
> > > > Sunwook

Hi Sunwook

I am very sorry that you have got the wrong answer:

Setting the reaction.type =1 does mean that the driver will carry
the load.

I have been looking into your model and found the following which
should be changed to make the invers analysis run:

You should add reaction forces on the hip joints in the file
StickFigureJoints.any. If these are not present there is no way as i
see the model to make sure the leg is balanced. You have reactions
on knees and ankles but this is not enough to balance the legs.

This makes the model run the invers analysis. I may have overlooked
something you might have an explanation for not having them, but i
do not see this :wink: ?

I would also recommed you to use the following solver
RecruitmentSolver = MinMaxNRSimplex
if you have recruitment problems, instead of the solver
RecruitmentSolver = MinMaxOOSolQP;
that you use now, since this is the most stable one of the two.

Best regards
AnyBody Support

— In anyscript@yahoogroups.com, “ninegu_sun” <ninegu_sun@y…>
wrote:
> First of all, I really thanked you for the response and bearing
with
> me.
>
> I guess I was wrong. :slight_smile: I thought setting Reaction.Type of a joint
to
> be 1 would enable the model to create joint torques in accordance
to
> external forces.
>
> I am doing this sway model only as my AnyBody practice. So, I
prefer
> to work step by step. That is, I’d like to complete with “joint
> torque” inverse dyn. and then with muscle included.
>
> Could you give me some suggestions on how I can turn on “motors”?
>
> Regards,
> Sunwook
>
>
> — In anyscript@yahoogroups.com, “AnyBody Support” <support@a…>
> wrote:
> > Hi Sunwook,
> >
> > Thanks for uploading the model. It is great work!
> >
> > I think the matter is quite simple: When you do
> InverDynamicAnalysis,
> > you are essentially computing the forces in the model. This
> requires
> > that enough elements are available to balance the model. In a
> normal
> > body, the muches are playing that role. Your model does not have
> any
> > muscles yet. Hence the system is not able to balance the model,
> > unless you define muscles or some other “motors” to do the job.
> >
> > Before making a decision of what to do, please consider what you
> wish
> > to do afterwards. Do you plan to add muscles to the model, or
will
> > you only use it for traditional “joint torque” inverse dynamics?
> >
> > Best regards,
> > AnyBody Support.
> >
> >
> >
> > — In anyscript@yahoogroups.com, “ninegu_sun” <ninegu_sun@y…>
> > wrote:
> > > Hi, I really thank you for the quick response.
> > >
> > > As you said, I’ve been already using AnyReacForce at the
pelvis
> to
> > > boudn the model; however, the inverse dynamics hasn’t worked
out
> > yet.
> > >
> > > Thus, I further simplified the model to have HAT and lower
> > extermity,
> > > used AnyReacForce at the HAT. Yet, the simplified one doesn’t
get
> > to
> > > the inverse dynamics, either. Now I have little idea of what
to
> do
> > > next to make the model work.
> > >
> > > Do you think using different coordinates to drive segments may
> > solve
> > > the current problem?
> > >
> > > Sincerely,
> > > Sunwook
> > >
> > >
> > > — In anyscript@yahoogroups.com, “AnyBody Support”
> <support@a…>
> > > wrote:
> > > > Hi Sunwook,
> > > >
> > > > It sounds like you are missing sufficient boundary
conditions.
> If
> > > you
> > > > just apply the force plata data under the feet, then these
> forces
> > > are
> > > > most likely not in perfect equilibrium with the gravity and
> > inertia
> > > > forces from the sway. If you think of the physics, it would
be
> > like
> > > > the body floating free in space under the influence of
slightly
> > > > unbalanced forces. This would make it accelerate in some
> > direction
> > > > and fly away.
> > > >
> > > > This is why any model needs boundary conditions, i.e. enough
> > links
> > > to
> > > > the global reference frame to balance the model.
> > > >
> > > > It sounds like you may have studied our gait model. In that
> model
> > > we
> > > > apply forces under the feet and balance them with a boundary
> > > > condition at the pelvis.
> > > >
> > > > The dicision of where to link your model to the global
> reference
> > > > frame is a difficult one because you have the entire body in
> the
> > > > model. But you could at least initially try with an
> AnyReacForce
> > at
> > > > the pelvis. Have a look at the gait model if you are in
doubt
> of
> > > how
> > > > to do it.
> > > >
> > > > Best regards,
> > > > AnyBody Support
> > > >
> > > >
> > > >
> > > > — In anyscript@yahoogroups.com, “ninegu_sun”
> <ninegu_sun@y…>
> > > > wrote:
> > > > > Hello,
> > > > >
> > > > > As you pointe out, the model was over-determined. After
> keeping
> > > > DoFs
> > > > > and the number of constraints, the kinematic analysis was
> done
> > > > without
> > > > > a relaxed kinematic tolerance.
> > > > >
> > > > > So, I thought that the inverse dynamics would be completed
if
> I
> > > > applied
> > > > > force plate data on each foot. The forces and moments are
> > applied
> > > > on
> > > > > the fixed point of a foot and no muscle is considered for
> now.
> > > > However,
> > > > > Anybody claims that the problem is unbounded.
> > > > >
> > > > > The problem is that I don’t see why the problem is
unbounded
> > when
> > > > we
> > > > > complete the kinematic analysis correctly and know
external
> > > forces
> > > > on
> > > > > each foot. (the external data are from the force plate)
> > > > >
> > > > > I guess I don’t still quite understand how Anybody works.
> > > > >
> > > > > Thank you for your time.
> > > > > Sunwook