Segment Orientation in StandingModel

I am working on a study in which we interested in taking all of the net
forces on the glenohumeral joint (muscles, gravity, inertia, etc.) and
transforming the vectors into components of a coordinate system local
to the glenoid, with axes pointing superior-inferior,
anterior-posterior, and compression-tension (of humeral head into the
glenoid). I am planning on using the StandingModel available in the
repository as a starting point. Where do I find how the orientation of
the segments are related to each other so I can covert forces in terms
of global axes into components of the glenoid system discussed above?
I see that in Brep\Aalborg\Arm3D\Seg.any Clavicula_Axes is defined as a
3x3 matrix, but I am unsure what the command “Sign” does, as well as if
these are axes of a new coordinate system or rotation axes from another
system to the current one. Also, what are these values with respect
to? global? the segment defined immediately previous to it?

Nick Flieg

Hi Nick,

In all segments (AnySeg) there is a member called ‘Axes’. It is
indeed the (current) rotational transformation matrix for the
segmental frame, i.e., in principle the basis vectors of the system
set up in a 3 by 3 matrix.
‘Axes’ does also exist in other types of reference frame such a
nodes on segments (AnyRefNode).

Do not mix ‘Axes’ up with ‘Axes0’, which is the intial orientation.
I believe (without having checked though) that the Clavicula_Axes
you found is also variable used in making the initial position of
the segments, so this will probably be constant and not what you
need.

All forces (AnyForce) in AnyBody refers to kinematic measure. This
means they are vectors that match the dimension of a certain
kinematic measure. Linear forces are associated with linear measure,
torques with rotational measure, etc. (you can read more about this
in the reference manual on AnyForce and derived classes I believe)
Therefore, AnyForce(s) does NOT provide a good quantity for finding
the associated net moment contribution about a point directly.
The AnyForceMomentMeasure is a class that can “measure” forces
(AnyForces) in terms of 3d force and moment vectors. This you will
probably need as an intermediate step. Gravity and inertia forces
you have to handle manually.

You may think of this approach as a defficiency of the system and
you are right - so do we. We are actually developing another “force-
moment measure” exactly for your purpose and it includes inertia and
gravity optionally.
I believe a beta version of this measure will be released in the
next minor update of version 2.0, but not until after the summer.

Best regards,

Michael
AnyBody Support

— In anyscript@yahoogroups.com, nflieg@… wrote:
>
> I am working on a study in which we interested in taking all of
the net
> forces on the glenohumeral joint (muscles, gravity, inertia, etc.)
and
> transforming the vectors into components of a coordinate system
local
> to the glenoid, with axes pointing superior-inferior,
> anterior-posterior, and compression-tension (of humeral head into
the
> glenoid). I am planning on using the StandingModel available in
the
> repository as a starting point. Where do I find how the
orientation of
> the segments are related to each other so I can covert forces in
terms
> of global axes into components of the glenoid system discussed
above?
> I see that in Brep\Aalborg\Arm3D\Seg.any Clavicula_Axes is defined
as a
> 3x3 matrix, but I am unsure what the command “Sign” does, as well
as if
> these are axes of a new coordinate system or rotation axes from
another
> system to the current one. Also, what are these values with
respect
> to? global? the segment defined immediately previous to it?
>
> Nick Flieg
>