Abnormal hip joint reaction peaks

I am simulating sit-from-stand movement in which I got abnormal peaks of the hip joint as seen in the attachment.

I checked the input C3D file and I figured out that the way the force plates recorded the ground reaction could be the root issue.
In the recording, the subject starts the movement by standing with both legs on a force plate, which is set to zero (i.e the force plate recording at that stating position is zero despite its being compressed under the body load)

When the subject start to sit down movement, the forces recorded by the force plate do not change up to the contact with the seat, then the force plate starts to be relaxed giving reaction force in the +ve direction which reaches its maximum when the subject weight is completely supported by the seat, not the force plate.

How to fix that?

In other words, if the recording starts with no contact with the force plate, then a contact, the force plate will record a full body weight in -ve direction..then once the subject start to sit down, this recorded ground reaction will start to decrease as the weight is transiting gradually to be supported by the seat..at the end the force plate will be under almost no load.

Another question:
The optimization of the markers according to:
Do these X, Y, and Z coordinates follow the local coordinates of the bone segment to which the marker is attached, or are the Global coordinates?

Hi @Ahmed

The marker coordinate systems follow the segments - yes.

For the GRF question. How did you model the seat?
If your GRF data is zero when the model is standing then there is no force to balance it. You can try and add the missing force by multiplying the subjects weight in newtons to the force data for a quick fix.

Best regards,

Hi @Bjorn

Thank you for the answer.
Concerning the seat, it is mounted on the ground -not a force plate-
So I simulate the movement just before the first contact with the seat.

Now the situation is that I have the subject standing with both legs on a force plate and once the subject start to sit down, the reaction in the perpendicular direction to the plate starts to increase in +ve (due to force plate relaxation)

Where should I fix that?..in Mokka or AnyBody?
As you see in this graph, the force which is in +ve and at the end of the movement cycle, should be in -ve and at the beginning of the movement (how to do that?)

You can add the bodyweight force in anybody by adding it to the GRF data or the force directly.
it is probably something like: Main.EnvironmentModel.ForcePlates.Plate1.ForcePlate.Force.Flocal.

How did you model the transfer of force from the model to the seat when it comes in contact?
Are you getting a warning regarding positive force values in the data?

Best regards,

Ok, will try that with the following script

ForcePlateAutoDetection Plate1(
LIMB1 = Main.HumanModel.BodyModel.Right.Leg.Seg.Foot,
LIMB2 = Main.HumanModel.BodyModel.Left.Leg.Seg.Foot,
HeightTolerance = 0.07,
VelThreshold = 2.2,
) = { };
AnyForce3D AppliedForce = {
Flocal = {0, 0, -824};
AnyRefFrame &obj = Main.EnvironmentModel.ForcePlates.Plate1.ForcePlate.ForcePlateSeg;

is that AnyForce3D construct correct?
I added weight value as -ve, correct?

At the moment I do not include the seat in the simulation. Considering that the peak of loading happens before contact.
I know that if I want to include the seat in my simulation, I should use a plate with GRF prediction class (shifted up to the seat height and hooked to some nodes on the pelvis)..correct?

No, I did not get such a warning..there is only that message of "Origin Z value", but this is related to the force plate coordinate system which is corrected automatically by AnyBody.

Hi @Ahmed

When your model squats down to sit and the forceplates become unloaded - then you don't have any GRF, which is why you could try and add the force of the body - since that is still in contact. Instead of applying it to the forceplateseg you should apply it to the body as a ground reaction force.

You thoughts on doing the contact between the seat and model with the GRF prediction class is correct yes.

Best regards,

Hi @Bjorn
And concerning my proposal above

to correct the recorded GRF by the force plate, so the recorded reaction forces be something like that

Is that script the right way to get the correct loading exerting on the legs?
The yellow curve is my target after fixing the recorded C3D data of sitting down movement.
It's really important to know how that local force works and if the end result of input loading is what is hand drawn in the attached figure.

Thanks in advance for clarifying this and your help!

What is the right way to do that, and in which part of the model script to implement it?