Dear all
I am currently implementing force dependent kinematics in the shoulder joint.
I got the model running and as a next step I want to include contact sufaces between the scapula and the humerus head. Most examples show how this is done with including implants sufaces but I would like to use the surface of the anybody bones. What would be the most straightforward way to do so?
I tried the following but it gave me an unknown error and I assume it might be too easy:
AnyForceSurfaceContact FSurf =
{
AnySurface &sMaster = Main.HumanModel.BodyModel.Right.ShoulderArm.STL.FileNameHumerus;
AnySurface &sSlave = Main.HumanModel.BodyModel.Right.ShoulderArm.STL.FileNameScapula;
PressureModule = 3e9;//3.7e9;//600e8; //Vol Pen
ForceViewOnOff = On;
MeshRefinementMaster = 0;
MeshRefinementSlave = 0;
SingleSidedOnOff= On;
};
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 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;
//MEJ3:
CType = {ForceDep,ForceDep,ForceDep};
Reaction.Type = {Off,Off,Off};
};
//******************* include stiffness (taken from FDK hip example) ************************
AnyForce ShoulderStiffnessRight =
{
AnyFloat Stiffness = 5e4; // N/m
AnyKinLinear lin =
{
//Ref = -1;
AnyRefFrame &r1= Main.HumanModel.BodyModel.Right.ShoulderArm.Seg.Scapula.gh;
AnyRefFrame &r2 = Main.HumanModel.BodyModel.Right.ShoulderArm.Seg.Humerus.gh;
};
F = - Stiffness * lin.Pos;
};
Thank you for your help and best regards
Johanna