Go Back   Forums > General Forum > AnyBody Modeling System


Thread Tools Display Modes
Old 07-14-2017, 10:51 AM
hujiayu1315 hujiayu1315 is offline
Junior Member
Join Date: Jun 2014
Posts: 8
Smile Patella_tendon

why the patella tendon was modeled as a rigid linkage between the patella and tibia? is this assumption based on the literature?
Many thanks
Reply With Quote
Old 07-16-2017, 10:51 AM is offline
Join Date: May 2010
Posts: 98

The patella tendon is technically a ligament, which transfers the full force of the strongest muscle group in our body, the quadriceps, between the patella and the tibia. For this reason, it is quite thick. It is also short, meaning that it is quite stiff. Of course, nothing in this world is completely stiff, but we make the assumption of stiffness of bones and other elements to make the simulation faster and easier. It might be possible to model the elasticity of the patella ligament by using force-dependent kinematics (FDK) but I do not think the effect would justify the added computational cost.
You can probably look up values for the stiffness of the patella ligament in the anatomical literature. You can then compare it with the forces transferred through the ligament in your simulations and quickly estimate the extent of elastic deformation. This would allow you to assess whether the question deserves closer investigation.
Reply With Quote
Old 07-17-2017, 04:28 AM
hujiayu1315 hujiayu1315 is offline
Junior Member
Join Date: Jun 2014
Posts: 8

many thanks for your answers.
In the Anybody, the definition of Patella tendon is below
AnyKinPLine Patella = {
// These are the nodes that the measure refers to. The connection is regarded
// as being stiff.
AnyRefNode &Origin_patella_tendon = ...Seg.Patella.Origin_patella_tendon;
AnyRefNode &Insertion_patella_tendon = ...Seg.Shank.Insertion_patella_tendon;

//AnyRefNode &Insertion_patella_tendon = ...Seg.Shank.Insertion_patella_tendon;

AnyDrawPLine Patella_tendon =
Thickness = 0.001;
RGB = {1,0,0};
AnyKinEqSimpleDriver PatellaMovement = {
AnyKinPLine &Jnt = .KinematicMeasures.Patella;

// Scale patella tendon length based on the over all leg length
AnyVar lengthScale = (vnorm(..Seg.Thigh.HipJoint.sRel-..Seg.Thigh.KneeJoint.sRel) + vnorm(..Seg.Shank.KneeJoint.sRel - ..Seg.Shank.AnkleJoint.sRel))
/ (vnorm(..Seg.Thigh.StdPar.HipJoint-..Seg.Thigh.StdPar.KneeJoint) + vnorm(..Seg.Shank.StdPar.AnkleJoint-..Seg.Shank.StdPar.KneeJoint));

AnyVar TendonLength = lengthScale *..ModelParameters.PatellarLigamentLength;

DriverPos = {TendonLength};
DriverVel = {0.0};
Reaction.Type = {On}; // The muscles must do the work

does it mean the distance between the patella and tibia was a constant during the simulation? By this way, the computational cost was reduced without considering the physiological character of elongation and strain for the patella tendon.
Reply With Quote
Old 07-17-2017, 11:34 AM
pgalibarov's Avatar
pgalibarov pgalibarov is offline
Senior Member
Join Date: Oct 2010
Posts: 960


Yes, the distance between a point on patella and a point on tibia remains the same. But patella rotates wrt. the femoral condyles.

And yes, this is what John said - the computational effort was reduced by this simplification. If this simplification is unacceptable for your application - you may change this behaviour.

Kind regards,
Reply With Quote

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT +2. The time now is 04:10 AM.