Confusion regarding the contact mechanism on a FEA terrain

33 views
Skip to first unread message

Deniz Tanyildiz

unread,
Feb 8, 2022, 11:40:09 AM2/8/22
to ProjectChrono
Dear Chrono Team,
I'm running a simulation of an HMMWV car on an FEA terrain. I've realized that I've had to define a contact mechanism on the FEA mesh, and I use ChContactSurfaceMesh for this. What I do is, I assign the tire material to the tire first and after that, I assign this material onto the ChContactSurfaceMesh and I assign this to the mesh. So I do the following:

auto my_contactsurface = chrono_types::make_shared<ChContactSurfaceMesh>(wheel_material);
terrain.GetMesh()->AddContactSurface(my_contactsurface);
my_contactsurface->AddFacesFromBoundary();

Is this the correct approach? Because obviously, the terrain has a soil material that is different than the
tire material. However, I assign the tire material as contact material onto the FEA mesh which is
the soil material. I'm not sure if I'm making a mistake here. I'd be very happy if you could help me with this one. Thank you very much in advance and wish you a great day! Best regards, Deniz

Radu Serban

unread,
Feb 9, 2022, 8:43:02 AM2/9/22
to ProjectChrono

Deniz,

 

First of all, you are correct, you must create and attach a collision shape to the FEA mesh.  A surface mesh is likely the appropriate choice (the other option is a node cloud, but that will let objects smaller than the mesh size fall through).  I should maybe modify the FEADeformableTerrain to create this automatically, but as I mentioned in previous messages, you are the only one who is even considering using this type of deformable terrain model.

 

You are not doing anything wrong.  You can certainly share the same contact material between the vehicle wheels and the terrain mesh.  But you can also create a different contact material for each.  Just keep in mind that, at any given identified collision pair, the contact forces are resolved using a so-called “composite material” whose properties are obtained using the current composition rules.  These all have defaults (specific to each material property); for example, by default the coefficient of friction of a composite material is set as the minimum of the coefficients of friction of the two interacting materials.  See the default implementation of ChMaterialCompositionStrategy.  One or more of these rules can be overridden by the user by providing your own derived class; see ChSystem:: SetMaterialCompositionStrategy.

 

So, you could:

  • Specify different contact materials for wheels and terrain and use the default composition rules.
  • Specify different contact materials for the wheels and terrain and provide your own set of composition rules.
  • Specify the same contact material to what you want the interaction to be (keep in mind that contact properties are really associated with a pair of interacting materials;  separating them as we do and using these composition rules is a modeling convenience).  When the materials of two contacting shapes are the same, the composition rules must be such that the composite material is the same as that common material.

 

--Radu

--
You received this message because you are subscribed to the Google Groups "ProjectChrono" group.
To unsubscribe from this group and stop receiving emails from it, send an email to projectchron...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/projectchrono/eed9a878-3cf6-4491-b0cd-bbaeb3e32755n%40googlegroups.com.

Deniz Tanyildiz

unread,
Feb 14, 2022, 7:01:07 AM2/14/22
to ProjectChrono
Dear Radu Serban,
thank you very much for your reply! Now I understand. I was a bit confused because we have two types of materials for the soil, the soil properties, and the soil contact material. I was not sure if I was making a mistake by assigning an extra soil contact material the same as the tire material since the soil already has its own material, but it's more clear now.
Thank you very much and have a nice day.
Kind regards,
Deniz

You received this message because you are subscribed to a topic in the Google Groups "ProjectChrono" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/projectchrono/DGMwIFGIpjc/unsubscribe.
To unsubscribe from this group and all its topics, send an email to projectchron...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/projectchrono/PH0PR06MB8237C117493B0CF3A8720B09A72E9%40PH0PR06MB8237.namprd06.prod.outlook.com.
Reply all
Reply to author
Forward
0 new messages