clarifying "Stiffness" term in HuntCrossleyForce settings

Provide easy-to-use, extensible software for modeling, simulating, controlling, and analyzing the neuromusculoskeletal system.
POST REPLY
User avatar
Silas Purja
Posts: 19
Joined: Tue Nov 14, 2023 12:44 am

clarifying "Stiffness" term in HuntCrossleyForce settings

Post by Silas Purja » Wed Jan 10, 2024 7:24 am

Hi everyone,

I'm delving into the world of musculoskeletal modeling in OpenSim and have encountered a bit of a roadblock regarding the stiffness term in the HuntCrossleyForce::ContactParametersSet object. As you can see in the image attached.

My focus is on analysing the gait and static balance of a musculoskeletal model on different floor stiffness, and I'm eager to explore how modifying the floor stiffness might impact these aspects. To effectively navigate this exploration, I need a clear understanding of this elusive stiffness term.

Here are my burning questions:

1)Floor Deformation: When the contact sphere touches the floor, does the floor deform, or is it solely the sphere penetrating the floor?

2) Does the stiffness term solely represent the floor's rigidity, or does it encapsulate the wider interaction between the foot and the ground?

3) I've scoured the "SimTK::HuntCrossleyForce Class Reference" documentation, but the specifics of the stiffness term remain elusive. Could you point me towards any resources that explain to me what exactly is this stiffness?


I'm incredibly grateful for any insights you can share on this topic. Unraveling the mystery of the stiffness term will be instrumental in advancing my research.

Thanks in advance for your help.

Many thanks,
Silas
Attachments
Stiffness_figure.PNG
Stiffness_figure.PNG (253.17 KiB) Viewed 594 times

Tags:

User avatar
Thomas Uchida
Posts: 1778
Joined: Wed May 16, 2012 11:40 am

Re: clarifying "Stiffness" term in HuntCrossleyForce settings

Post by Thomas Uchida » Wed Jan 10, 2024 12:49 pm

Some information can be found in the Simbody Theory Manual (https://github.com/simbody/simbody/blob ... Manual.pdf). See, in particular, Sections 11.1 ("General Force Subsystem") and 11.2 ("Hertz/Hunt and Crossley contact model subsystem"). The following paper contains similar information... some of the implementation details might be missing but it may be an easier reference to start with: Sherman et al., "Simbody: multibody dynamics for biomedical research", Procedia IUTAM 2, 2011 (https://doi.org/10.1016/j.piutam.2011.04.023).

User avatar
Silas Purja
Posts: 19
Joined: Tue Nov 14, 2023 12:44 am

Re: clarifying "Stiffness" term in HuntCrossleyForce settings

Post by Silas Purja » Thu Jan 11, 2024 5:27 am

Hi Thomas,

Thank you so much for your prompt and helpful response. I've reviewed the Simbody Theory Manual and the referenced paper, and it does not shed much light on the stiffness term.

In my quest for a deeper understanding, I was wondering if there is a way to access the coding or algorithm behind the stiffness parameter. This would greatly assist me in unraveling the nuances and incorporating floor stiffness effectively into my musculoskeletal modeling in OpenSim.

Any guidance on how to access the coding or algorithm used for this stiffness parameter would be immensely appreciated.

Thanks again for your assistance.

Best regards,
Silas

User avatar
Thomas Uchida
Posts: 1778
Joined: Wed May 16, 2012 11:40 am

Re: clarifying "Stiffness" term in HuntCrossleyForce settings

Post by Thomas Uchida » Thu Jan 11, 2024 1:57 pm

Simbody is open source; the code can be found on GitHub here: https://github.com/simbody/simbody. I presume the calculation you would be interested in is HuntCrossleyForceImpl::calcForce(), which is here: https://github.com/simbody/simbody/blob ... e.cpp#L101. If that method doesn't answer your questions, you can find related files by typing "HuntCrossley" in the "Go to file" box.

User avatar
Silas Purja
Posts: 19
Joined: Tue Nov 14, 2023 12:44 am

Re: clarifying "Stiffness" term in HuntCrossleyForce settings

Post by Silas Purja » Sat Jan 13, 2024 2:34 am

Thank you very much! :)

POST REPLY