Granular terrain type availability in PyChrono?

71 views
Skip to first unread message

Alexander Schepelmann

unread,
Oct 12, 2022, 9:57:01 AM10/12/22
to ProjectChrono
Good morning! I am looking to implement a granular terrain using PyChrono. 

Searching through the demos/API, I see that several terrain types are exposed in PyChrono (RigidTerrain, SCMDeformableTerrain, etc.), but I am not able to find a function for initializing a granular terrain.  Is this currently available in PyChrono? 

Alternatively, I remember seeing a bullet point in one of the ProjectChrono presentations that mentioned a helper method for initializing a rectangle filled with particles that follow a specified particle size distribution (for applications such as filling containers, etc.).  Unfortunately I seem to be unable to find this presentation again, but I was wondering if this functionality currently available in PyChrono?

Thank you for your help!

Ruochun Zhang

unread,
Oct 17, 2022, 6:10:10 PM10/17/22
to ProjectChrono
Hi Alex,

From what I know, the granular terrain or the related submodule Chrono::GPU is not wrapped in PyChrono. I'd mention that Chrono's DEM/granular support is moving towards being based on a new DEM package that I'm working on, which can interface Chrono like its predecessor, but is faster and supports complex/various sized particles. You can have look at the movie of a simulation this solver generates. If this is something you are looking for, then we can discuss more details. This package however, is now in C++. Its Python wrapper is expected to be online, but it can take ~3 months.

About the "rectangle filled with particles" presentation, it is probably Chrono::Multicore, but I am not familiar with that.

Thank you!
Ruochun

Radu Serban

unread,
Oct 24, 2022, 4:39:43 PM10/24/22
to ProjectChrono

Hi Alexander,

 

While technically it could be used with ChSystemSMC or ChSystemNSC, the granular terrain in Chrono::Vehicle is really meant to be used with the parallelized solvers in the Chrono::Multicore module.  But that module is currently not exposed in PyChrono.  It’s on my todo list, but that is not going to happen very soon.

 

As for the utilities you are referring to, those are available in the core Chrono module.  However, they rely on some templated classes and as such Swig will not wrap them properly without some additional extensions to the Swig interface files.  When I make the necessary changes to wrap the Chrono::multicore module, I will also make sure the utils::Generator class and associated helper classes can also be used in PyChrono.

 

--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/64802a6a-44f9-423c-9b5b-0c6d72ba8839n%40googlegroups.com.

Reply all
Reply to author
Forward
0 new messages