I have a model of the right arm on the thorax. All other extremities and the muscles in the thorax are switched off. The model is fixed to the GlobalRef at the sacrum in all 6 DoF.
The upper arm is brought into a certain position (120° abduction) and the activities of all muscles for this holding work against gravity are read out.
In the next step, with the help of the Upper & LowerBounds, each muscle of the ShoulderArm is given its specific activity (both bounds are extremely close).
Using a driver with Reaction.type = Off, the arm is now given a movement that is so large that the physiological muscles of the model cannot perform it because of their given activity.
In order to be able to perform this movement, six new external muscles are implemented, which are placed in such a way that they can take over every rotation of the upper arm around the shoulder joint in both directions. These new muscles are fixed to the GlobalRef and lead to the humerus. Their origins do not move. The external muscles are set very strong and do not come close to their maximum force during movement.
Up to this point, the model loads and the inverse dynamics runs without error.
Now I have tried changing the maximum force of the six external muscles. The study still runs, but now I get different values for Fm of the external muscles. How can this be?
Isn't the aim of the numerical solver to innervate the muscles as minimally as possible? Shouldn't Fm remain the same regardless of how big it can get?
My first idea was that maybe a driver that is set to ON intervenes here. However, a driver would directly take over the entire movement if it could, wouldn't it? The fact that Fm increases with higher available maximum force, even though it never goes beyond 10 % activity, is not something I can explain by a driver that I have possibly overlooked.
I am very grateful for AnyAnswer or idea that could help.
AnyBody version: 22.214.171.12418
AMMR version: 2.2.3
I set the following drivers to ON (only during the second study with fixed muscle activities):
ElbowFlexionDriverRight ElbowPronationDriverRight WristDriverRightFlexion WristDriverRightAbduction ScapulaElevationDriver ScapulaProtractionDriver SpineRhythmDrv CervicalFlexionRhythmDrv CervicalLateralBendingRhythmDrv CervicalLateralBendingRhythmDrv CervicalRotationRhythmDrv SkullThoraxFlexionDriver SkullThoraxLateralBendingDriver SkullThoraxRotationDriver PostureDriverBending PostureDriverRotation PostureDriverExtension
#define BM_MANNEQUIN_DRIVER_DEFAULT ON #define BM_ARM_DETAILED_HAND OFF #define BM_SCALING _SCALING_STANDARD_ #define BM_ARM_SHOULDER_RHYTHM ON #define BM_ARM_DELTOID_WRAPPING ON #define BM_ARM_LEFT OFF #define BM_LEG_LEFT OFF #define BM_LEG_RIGHT OFF #define BM_LEG_TRUNK_INTERFACE _MORPH_TRUNK_TO_LEG_ #define BM_TRUNK_CERVICAL_RHYTHM ON #define BM_TRUNK_LUMBAR_RHYTHM ON #define BM_TRUNK_RHYTHM OFF #define BM_ARM_SHOULDER_RHYTHM_RIGHT ON #define EXCLUDE_FOOT_CONSTRAINTS #define EXCLUDE_COM_BALANCE_DRIVERS #define BM_TRUNK_LUMBAR_MUSCLES OFF #define BM_TRUNK_MUSCLES OFF #define BM_ARM_MUSCLES_BOTH OFF #define BM_ARM_MUSCLES_LEFT OFF #define BM_ARM_MUSCLES_RIGHT _MUSCLES_3E_HILL_ #define BM_LEG_MUSCLES_BOTH OFF#define BM_LEG_MUSCLES_LEFT OFF #define BM_LEG_MUSCLES_RIGHT OFF #define BM_LEG_MODEL OFF #define BM_FOOT_MODEL _FOOT_MODEL_NONE_