Chrono Project Code

126 views
Skip to first unread message

Heming Chang

unread,
Jun 10, 2023, 5:45:08 AM6/10/23
to ProjectChrono
Dear professors,

I noticed that the official website displays models of tracked vehicles and discrete road surfaces. May I know which modules are used in that code and where can I find that code.As a developer and fan of Chrono, I am eager to study and learn from the projects displayed.

I would greatly appreciate it if you could provide me with access to the project code or any relevant resources that would enable me to gain a deeper understanding of the concepts and techniques employed in Chrono's projects. I assure you that I will treat the code with utmost confidentiality and respect.

Thank you for considering my request. I admire the work done by your team and look forward to any guidance or assistance you can provide.

Best regards.

Radu Serban

unread,
Jun 12, 2023, 3:44:30 PM6/12/23
to ProjectChrono

If you refer to the image displayed in the carrousel on the Project Chrono website, that is an old simulation (we probably have the code somewhere, but the Chrono software has evolved so much since then that it’d be a bit of work to reproduce that simulation).

 

Having said that, we now have much better support for modeling tracked vehicles in Chrono::Vehicle and those can interact with any of the deformable terrains available in Chrono & Chrono::Vehicle. 

  • Simulations on deformable terrain tend to be slower, except for the case of SCM terrain. For that, look at demo_VEH_SCMTerrain_TrackedVehicle.
  • If you are interested in representing the terrain with DEM (granular dynamics), there are multiple ways of doing that in Chrono.  One is using a CPU-based solution through the Chrono::Multicore module.  There’s demo_VEH_multicore_M113 which can be set to use DEM terrain. More modern DEM modules in Chrono use GPU computing. We currently do not have a demo that uses a tracked vehicle from Chrono::Vehicle with granular terrain with Chrono::GPU (but see below).
  • A more recent addition to Chrono in terms of deformable terrain uses a so-called continuum representation of granular dynamics and leverages the Chrono::FSI module (also GPU-based).  This approach can be an order of magnitude (or more) faster than a DEM deformable terrain representation. In Chrono::Vehicle, we have an SPHTerrain class that models a terrain with this approach suitable for Chrono::Vehicle simulations. I recently added demo_VEH_SPHTerrain_TrackedVehicle which simulates an M113 tracked vehicle on deformable terrain.
  • Finally, there’s the vehicle co-simulation module which provides a co-simulation framework for both wheeled and tracked vehicles on any of the deformable terrain representations available in Chrono (as well as external third-party terramechanics libraries). This also has support for DEM terrain modeled with Chrono::GPU.  Having said that, there is currently no demo for the co-simulation code that exercises a tracked vehicle (although the code is in there). I will likely add such a demo in the next few weeks.

 

A couple of final comments:

  • Simulations with deformable terrain, especially when using a tracked vehicle, are quite a bit more sophisticated and difficult to set up.  Look at the existing demos (see above) and wait for a couple more that will come in the near future.
  • Different approaches for deformable terrain simulation in Chrono will require you to enable additional Chrono modules. These also have additional dependencies which you must first install.  Various demos will be enabled and built only if all requirements are in place.
  • The GPU-based codes require an NVIDIA GPU and CUDA.  Chrono::Multicore requires the Thrust library (comes with CUDA) and the Blaze linear algebra library. Some demos only work with the Chrono::OpenGL run-time visualization module.  The vehicle co-simulation framework uses an MPI backbone, so you will need an MPI distro for that.  Look in the various CMakeList files to see what modules are required for different demos (those I listed above and others).
  • Make sure to pull the latest Chron code in the ‘main’ git branch.

 

--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/3373e5b0-0e09-4197-a8ae-d75281289d76n%40googlegroups.com.

Reply all
Reply to author
Forward
0 new messages