Wrapping force and FDK

Dear Sir/Madam,

I am currently working on implementing a 2D-sheet ligament model into a knee model using the AnyKinSPSheet class. This results in a 2D-sheet wrapping over a surface (representing a bone).

My goal is to include the wrapping force (force exerted by the ligament onto the bone at the sites of wrapping) into the FDK-loop such that I can observe the influence of the wrapping force on the knee-joint kinematics.

I have a couple of questions to which the answers might really help my work forward a lot.

  1. Am I right that AnyKinSPSheet wraps the ligament around the bone geometrically, but the sheet does not exert a wrapping force onto the bone?

  2. If "question1." is wrong, and the AnyKinSPSheet does exert a wrapping force onto the bone. Am I right to say this force is not taken into account in the FDK-loop and therefore does not influence the knee-joint-kinematics?

  3. I read that the class "AnyShortestPathMuscle" does exert a wrapping force. I was wondering whether this class's force is standardly included in the FDK-loop? Is it possible to include it in the FDK-loop to influence the kinematics?

  4. Is there a way for us to make AnyKinSPSheet influence the kinematics using FDK?

  5. This would be my strategy to answer "question 4." above. As far as I understood, AnyKinSPSheet uses an iterative loop to find 'points of contact' between the sheet and a surface at each instant.I was wondering if it would be possible to assign a LinearMeasure 'between' 2 points of contact. Then I would assign a calculated force to the LinMeasure and change the CType of the LinMeasure to {ForceDep}.. Is this a reasonable strategy?

  6. I am quite new to AnyBody and not sure whether users commonly have access to the Source code of functions. Is it common or possible for users to see Source code of a couple of Classes and create new classes by e.g. combining features of some classes or writing new code?

I know this is quite a lot of information, but if any of you would like to give some thoughts on these, that would be very helpful.

Yours sincerely,

Louis

Hi Louis,

Here are some answers

  1. Am I right that AnyKinSPSheet wraps the ligament around the bone geometrically, but the sheet does not exert a wrapping force onto the bone?

No not exactly the sheet will act on the underlying surface being a cyl, ellipsoid or sphere. The force will be transmitted from the anchoring point on the surface to the segment it is attached on. So e.g. the muscles wraps a cylinder and create forces along the line, these forces are transmitted to the segment by three forces and three moments in the surface attachment point.

  1. If "question1." is wrong, and the AnyKinSPSheet does exert a wrapping force onto the bone. Am I right to say this force is not taken into account in the FDK-loop and therefore does not influence the knee-joint-kinematics?

No this is not correct the contact forces will be transmitted to the segment and it will influence the motion of the FDK dofs.

  1. I read that the class "AnyShortestPathMuscle" does exert a wrapping force. I was wondering whether this class's force is standardly included in the FDK-loop? Is it possible to include it in the FDK-loop to influence the kinematics?

Honestly i have never tried to do this, but i am certain that the contact forces will be accounted for. The FDK is simply an extra loop on the inverse kinematics.

  1. Is there a way for us to make AnyKinSPSheet influence the kinematics using FDK?

I have never tested this combination but i have absolutely no reason to think that AnyKinSPSheet would ot influence FDK (there could be other reasons for this, e.g. high forcetol or no activity in muscle). The combination of FDK and AnyKinSPSheet will be very slow. In the new AMS version 7.3.0 we have release a beta version of a new muscle wrapping, which is significantly faster than the old version, and for a FDK model this difference will be even bigger. Please see this page on the new AMMR version https://anyscript.org/ammr-doc/changelog.html#whats-new which includes a section on the muscle wrapping. Please also see this announcement on AMS AnyBody Modeling System v.7.3.0 released 🎉

  1. This would be my strategy to answer "question 4." above. As far as I understood, AnyKinSPSheet uses an iterative loop to find 'points of contact' between the sheet and a surface at each instant.I was wondering if it would be possible to assign a LinearMeasure 'between' 2 points of contact. Then I would assign a calculated force to the LinMeasure and change the CType of the LinMeasure to {ForceDep}.. Is this a reasonable strategy?

No, this will not be possible and the sheet should exert forces to the model and thus change the FDK. One simple question do you have any muscle activity in the sheet muscle? if not you will see no impact.

  1. I am quite new to AnyBody and not sure whether users commonly have access to the Source code of functions. Is it common or possible for users to see Source code of a couple of Classes and create new classes by e.g. combining features of some classes or writing new code?

I am sorry but this is not not possible you can not change functions and access source code, you can use a python hook to calculate things that is otherwise difficult to do in anyscript.

In your case i would strongly recommend to use regular shortest path lines AnyKinSPLine instead (you can introduce multiple of these instead). With the the new version this will be order of magnitudes faster to calculate than the sheet, so unless you have very specific reasons for wanting to have as a sheet please consider this.

Best regards
Søren

1 Like

@toerholm

Dear Søren,

Thank you for your response. I am happy to hear that AnyKinSPSheet does influence the FDK.

  1. Does AnyKinSPLine influence the FDK as well? (I would say yes after reading your answer, but just to be sure).

  2. I have another question concerning the difference between AnyKinSPLine and AnyKinSPSheet. If I understand correctly, AnyKinSPSheet needs a longitudinal and lateral stiffness and the stretch of the sheet determines the forceload/stresses of the ligament-sheet. AnyKinSPLine does not have such a stiffness, but an AnyForce is otfen defined to define the forceload in longitudinal direction. Is that correct?

Thank you for your time.

Kind regards,

Louis

Hi Louis,

Yes AnyKinSPLine influence FDK for sure in the same way as the sheet muscle would do, it is just much faster to calculate particular in the AMS new version. Sheet muscles are very slow and rather difficult to work with, currently we do not deploy them in the body models simply because they are too slow.

On both AnyKinSPLine and AnyKinSPSheet you can apply a force in the longitudinal direction.

It is true that the AnyKinSPSheet has stiffness defined but these stiffness's are used to control the shape of the sheet not to apply a force. So forces needs to be applied on the lines the sheet consist of and the actual force applied on the AnyKinSPSheet will not change its shape. The shape of the sheet comes from the stiffness defined and the geometry not the forces applied to it. This means that the sheet can be calculated at a kinematic step before the the inverse dynamic analysis applies forces to it either as a muscle or a ligament force.

Hope it is more clear, please also read the comments in the AnyKinSPSheet in the reference manual.

Best regards
Søren

1 Like

Dear Søren,

Thanks a lot for the help! This helps a lot.

Yours sincerely,

Louis

Dear Søren,

I have one more question on this topic. The wrapping force (3 forces and 3 moments) applied by a 2D Sheet onto a surface is calculated by the class. I was wondering how this is done. I was guessing that it is done by composing a static equilibrium of the components involved. In the equilibrium, the forces in longitudinal direction applied upon the ligaments-sheet (defined by a AnyForce) are taken into account. Consequently, the wrapping force onto the surface is dependent on the force (AnyForce) applied on the ligament in longitudinal direction.

Could you confirm this is how it is more or less done?

I appreciate the effort and time.

Yours sincerely,

Louis

Hi Louis,

Please have a look at the description of the mathematics on this object which is available in the reference manual on this object.

The force and moments applied on the surface will for sure depend on the AnyForce applied on the lines in the longitudinal direction.

Best regards
Søren

1 Like

This topic was automatically closed 125 days after the last reply. New replies are no longer allowed.