Aligning body frame with joint child frame

Provide easy-to-use, extensible software for modeling, simulating, controlling, and analyzing the neuromusculoskeletal system.
POST REPLY
User avatar
Birgitt Peeters
Posts: 8
Joined: Tue Jan 11, 2022 2:16 am

Aligning body frame with joint child frame

Post by Birgitt Peeters » Tue Oct 17, 2023 8:30 am

Hi!

I'm currently working with image-based models of the spine (created by a former colleague of mine). I am trying to model the stiffness of the intervertebral joints using OpenSim ExpressionBasedBushingForces, but I have ran into an issue that I am not able to resolve. To use the bushings, it's important that in the 'resting' pose there are no deflections or forces present. I aligned the bushing frames with the joint frames, so that the deflection would equal the joint angle and should be zero in the 'resting' pose (joint frames aligned). This approach works for models with generic geometries of the bones, as the body frame is aligned with the joint frames in resting pose. However, in the models I am using, the body frame is not aligned with the joint frame (see image below). Is there a way to make sure the body frame and joint frames are aligned in 'resting' pose, without altering the spinal alignment (it's really important that the spinal alignment is not altered for my application!)? I tried to do this, but ended up altering the alignment, and I have not found a solution for this issue.

I would really appreciate any help!
Screenshot 2023-10-17 112936.png
Screenshot 2023-10-17 112936.png (217.49 KiB) Viewed 603 times

Tags:

User avatar
Thomas Uchida
Posts: 1793
Joined: Wed May 16, 2012 11:40 am

Re: Aligning body frame with joint child frame

Post by Thomas Uchida » Tue Oct 17, 2023 11:51 am

Let P be the frame on the parent body and C be the frame on the child body, with the ExpressionBasedBushingForce acting between P and C. You could try defining a PhysicalOffsetFrame POF on the child body where the origin of POF is the same as the origin of C, and the orientation of POF with respect to ground is the same as the orientation of P with respect to ground when the model is in its "resting" pose. The ExpressionBasedBushingForce can then act between P and POF, which by construction will be aligned when the model is in its "resting" pose. (If it's more convenient, you could define the POF on the parent body instead, using an analogous strategy.)

User avatar
Birgitt Peeters
Posts: 8
Joined: Tue Jan 11, 2022 2:16 am

Re: Aligning body frame with joint child frame

Post by Birgitt Peeters » Thu Oct 19, 2023 5:52 am

Thanks for the answer, that seems indeed like a good solution for handling the bushing elements in my models!
I was just wondering whether an approach like this would also work to alter the reference frame of the body? I am afraid that not having them aligned might affect the results I get when calculating the joint reaction loads, and I was just thinking that therefore it might be a good idea to try and align the body frame of the child with the joint frames. Could I use the same approach using PhysicalOffsetFrames, or would this also result in an alteration of the spinal alignment?

Thanks again!

User avatar
Thomas Uchida
Posts: 1793
Joined: Wed May 16, 2012 11:40 am

Re: Aligning body frame with joint child frame

Post by Thomas Uchida » Thu Oct 19, 2023 2:48 pm

I was just wondering whether an approach like this would also work to alter the reference frame of the body?
You could adjust the orientation of the body's reference frame; however, you would then need to modify everything else that has been defined with respect to this frame (inertia, marker locations, other joint locations, etc.). I suspect it would be simplest to define a PhysicalOffsetFrame on the Body with the desired orientation and use this new PhysicalOffsetFrame as the "child_frame" of the joint.

POST REPLY