Hi Sonja,
AMS is an inverse dynamics system - so changing the stiffness by default will not change the motion. But yes, it is possible to model a fusion by fixing one of the joints through a kinematic constraint. The problem is that the default spine behavior is handled by a kinematic rhythm linking intervertebral angles to a thoracopelvic angle. If you want to fix one level - then you would either need to change the rhythm or add your own motion for the entire lumbar spine.
It is also possible to make the rhythm soft, meaning that the kinematic drivers can be violated depending on the given weights. You can set the weight of relevant joint to be 0, and define the joint angle that is supposed to represent the fusion configuration.
Add the following block of code before this line:
#include "<ANYBODY_PATH_BODY>\HumanModel.any"
This will make the rhythm soft and exclude L4L5 joint.
#define BM_TRUNK_LUMBAR_RHYTHM RHYTHM_SOFT
// AnyJoint &u1 = ..SacrumPelvisJnt;
// AnyJoint &u2 = ..L5SacrumJnt;
// AnyJoint &u3 = ..L4L5Jnt;
// AnyJoint &u4 = ..L3L4Jnt;
// AnyJoint &u5 = ..L2L3Jnt;
// AnyJoint &u6 = ..L1L2Jnt;
// AnyJoint &u7 = ..T12L1Jnt;
// 0 weight for L4L5
Main.HumanModel.BodyModel.Trunk.JointsLumbar.SpineRhythmDrv.Weights.Fun.Value = {0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0, 0, 0, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01};
Then specify the angle by adding a driver to the L4L5, for example, i fix it to 0:
Main.Model.ModelEnvironmentConnection = {
AnyKinEq FixL4L5 = {
AnyJoint &jnt = Main.HumanModel.BodyModel.Trunk.JointsLumbar.L4L5Jnt;
};
};
Or use AnyKinEqSimpleDriver to define an angle.
Kind regards,
Pavel