Hi Chris,
The glenohumeral joint is actually a bit tricky because of the
GHreaction. First of all you can have a look at the Jnt.any file in
the Arm folder. Here you will find the following lines defining the
GH joint :
AnyKinLinear GHLin = {
AnyRefNode &scapula_gh = …Seg.Scapula.gh;
AnyRefNode &humerus_gh = …Seg.Humerus.gh;
Ref=0; //use this for shifting between the two ref systems:
scapula=0, humerus=1
};
//This file includes the glenohumeral reactions created by a number
of pushing muscles
//if this file is not include the normal reactions of the GH joint
should be set to "On On On"6
#include “GHReactions.any”
/**This is the reactions of the GH joint they are normally set
to “Off Off Off” if the file
GHReactions.any is being used, if this is not the case the reactions
should be set to “On On On”
*/
AnyKinEq GHLinCon = {
AnyKinMeasure &GHLinCon = .GHLin;
Reaction.Type={Off,Off,Off};
};
You can see in the GHLin that the Scapula is mentioned first. So the
ref frame of the reaction force should be the local scapula frame. I
think this is what I told you in the last posting. Well that is not
exactly true. It’s a lack of attention from my part and I apologize
for it. This is valid only when you are not including the
GHReaction.any file, and when the reaction forces are provided by the
Reaction.Type of GHLinCon.
But when using the GHReaction file then the reaction force FTotal is
given in global coordinate system. I’m really sorry that I skipped
this in the last message. The mechanism of the GHReaction is a bit
hard to understand, and so it is to explain.
Regarding to the CenterNode and CenterNodeRotated, they help to build
and orient the EdgeNodes that represent the edge of the glenoid
cavity. Also if you draw the force vector you will see it is applied
to the centre of the glenoid as here is the center of the spherical
joint.
I hope it makes it clearer.
Best regards,
Sylvain, AnyBody Support.
— In anyscript@yahoogroups.com, “chrisjgatti” <cjgatti@…> wrote:
>
> I can see in other joints the listing of which segments are first
and
> second, but cannot see this for GHreactions. What should I be
looking
> for and in which file?
>
> In the GHreactions.any file I see that there is a CenterNode and
> CenterNodeRotated in the Scapula folder of GHreactions, with both
> nodes at the center of the glenoid. When I display these coordinate
> systems in the model, the CenterNode coordinate system has the same
> orientation as the scapular system (x axis lateral right, y axis
> superior, z axis posterior), and the CenterNodeRotated coordinate
> system is the scapular system rotated -90 degrees about the local
> y-axis (x axis posterior, y axis superior, z axis medial left). For
> reference, the global system has the x axis anterior, y axis
superior,
> and z axis lateral right.
>
> For 30 degrees of abduction in the coronal plane with a -10N hand
> weight, I get FTotal of GHreactions to be [-262.83, -14.29, -
474.1]. I
> assume the the z component must be in the compressive direction to
the
> glenoid, so it seems like this z axis must match with the z axis of
> either the global or the CenterNodeRotated system (I’m also not sure
> if GHreactions is the reaction forces on or of the scapula). Beyond
> that, I’m a little confused. Any help here?
>
> Thanks,
>
> Chris
>
> — In anyscript@yahoogroups.com, “AnyBody Support” <support@>
wrote:
> >
> > Hi Chris,
> >
> > By default the force Ftotal of GHreaction is measured in the
local
> > coordinate system of the scapula. The best way to visualize the
frame
> > and compare it with you model is to draw it with an
AnyDrawRefFrame
> > in the Scapula folder.
> >
> > In general you can know what is the ref frame of the reaction
force
> > of a joint by looking at the definition of this joint. If there
is no
> > Ref=… present then the ref frame is the first segment or node
> > declared in the joint (by default). If there is Ref=-1; the ref
frame
> > is the GlobalRef, with Ref=0; the ref frame is the first node
> > declared and for Ref=1; the ref frame is the second node declared.
> >
> > In some models the ref frame for the GHReaction has been
modified,
> > maybe that is why you read different versions.
> >
> > Best regards,
> > Sylvain, AnyBody Support.
> >
> >
> >
> >
> > — In anyscript@yahoogroups.com, “chrisjgatti” <cjgatti@> wrote:
> > >
> > > Thanks again Sylvain,
> > >
> > > Can I get some clarification concerning in which coordinate
system
> > > FTotal of GHreactions is measured (along with anatomical
directions
> > so
> > > I can ensure my model is similar)? I have seen some things that
say
> > > global coordinate system, some say scapular coordinate system,
and
> > > others say in the GHcenternode coordinate system. How do you
know in
> > > which coordinate system these forces are measured?
> > >
> > > Thanks,
> > >
> > > Chris
> > >
> > > — In anyscript@yahoogroups.com, “AnyBody Support” <support@>
> > wrote:
> > > >
> > > >
> > > > Hi Chris,
> > > >
> > > > The file GHreaction.any has two functions. One of them as you
> > > > understood it is to constrain the glenohumeral reaction force
to
> > > > point inside the glenoid cavity. If it not the shoulder would
> > > > dislocate in a real body. To do so the muscle recruitment can
be
> > > > modified. However in lot of movements the reaction force
probably
> > > > points naturally inside the glenoid cavity, so muscle forces
does
> > not
> > > > need to be changed. That is why you didn’t see any changes in
the
> > > > muscles forces with and without the GHreaction.any file.
> > > >
> > > > The second function of the GHreaction.any file is to create
the
> > > > unilateral contact of the glenoid. This is done by the 8
pushing
> > > > muscles (pushing only so the contact is really unilateral).
The
> > > > result of this contact is the reaction FTotal. Now GHlincon
is
> > > > different. It is actually a driver creating the spherical
joint
> > of
> > > > the shoulder by driving the 3 linear measure of the joint to
> > zero.
> > > > This driver has reaction forces like all the drivers, and
those
> > > > reaction forces are switched off when GHreaction.any is used
> > (because
> > > > GHreaction.any already provides the reaction forces). But if
> > > > GHreaction.any is not used, then it doesn’t provide the
reaction
> > > > forces anymore and it is the driver GHlincon that will
provide
> > the
> > > > reaction forces by switching the Reaction.Type to “On”. The
> > reaction
> > > > forces are then given by GHlincon.Reaction.Fout.
> > > > I hope the difference between GHlincon.Reaction.Fout and the
> > FTotal
> > > > is clear.
> > > >
> > > > So physiologically GHreaction.any represents the unilateral
> > contact
> > > > of the glenoid surface, and also a stability criterion
preventing
> > the
> > > > shoulder to dislocate.
> > > >
> > > > Best regards,
> > > > Sylvain, AnyBody Support.
> > >
> >
>