![]() Ripper.inp Hi all, I am trying to get my head around Granoo but get a bit stuck on the topic of bonds between elements. I am looking to simulate interaction between soil particles and a tool. The attached .inp file works in so far that the tool interacts with the particles, but the particles fly off in all directions. I have made up the domain with the cooker utility. It looks like the particles are paired, but the bond definition is either lacking or not correctly defined ? The Granoo documentation is a bit sparse, if someone could point me in the right direction then that would be greatly appreciated ! Cheers, Peter |
Administrator
|
Hello, sorry for the late reply.
Yes, you need to affect mechanical bond to "element pair". If you want beams, you can use the "CONVERT-ELEMENT-PAIR-TO-BEAM" Plugin. You can take a look into the 00010 example. Cheers, Damien. |
Hi Damien,
Thank you for your reply. I am still learning and I thought it better to set up an Angle of Repose test to see how various parameters affect the simulation. To that end I have made up the attached .inp file, in which the particles made with cooker settle under gravity and then the support shape cylinder is deleted, so the particles can form a cone. However, the "CONVERT-ELEMENT-PAIR-TO-BEAM" Plugin only makes 26 bonds and there are well over 3000 element pairs untouched. The documentation says the plugin should convert all element pairs ? With only 26 bonds the particles probably will not "clump" together like soil particles would ? Cheers, Peter ![]() |
Administrator
|
Hum, probably, the beams reach directlty their ultimate bond strength. Please try :
<CONVERT-ELEMENT-PAIR-TO-BEAM MacroYoungModulus="5e4" MacroPoissonRatio="0.3"/> PS : When a beam is broken, it is directly converted to a "Core::Pair<DEM::Element>" Cheers, Damien |
Hi Damien,
Thank you, yes, increasing the bond strength keeps more bonds intact. Here's another question : I have a container with particles (build with CookingBook.inp) which settle under gravity (AoR_Settle.inp), similar to the Bluewave example. Then I import the resulting final .gdd file in AoR.inp for further simulations. But the imported .gdd file doesn't look anywhere like the final imported .gdd file. Do you know what happens there ? It has me confused, am I missing something ? Cheers, Peter CookingBook.inp AoR_Settle.inp AoR.inp |
Hi all,
Here's another approach : If importing a "settled" domain doesn't work, then maybe adding a "processing" step works. So the "settling" step is followed by a step in which the cylinder support shape is removed, in order to slump the particles. But at reaching line 50 "<DELETE What="DEM::SupportShape" ID="Container" />" I get an error "Can't find the required item to delete with ID 'Container'. This is strange, the documentation clearly states: [PlugIn] : DELETE id : DELETE source file : Lib/GranOO3/PlugIn/Delete.cpp This plugin delete the specified items. Info Process on : All Multithreaded : No Recommended section: PreProcessing, Processing Required param What (string) The type of item to delete : Core::Base, DEM::Element, Physic::Body, Physic::Ground and so on… Optional param Set (string, default=“Global”) The plugin removes only the particular items that belong to the specified set ID (string, default="") If ID is set, the plugin removes only item with the specified ID. It works only for classes that own ID such as Physic::Ground, DEM::Tool or DEM::SupportShape Example <DELETE What="Physic::Ground"/> <DELETE What="DEM::SupportShape" ID="Boundary"/> AND : [PlugIn] : NEW-SUPPORT-SHAPE id : NEW-SUPPORT-SHAPE source file : Lib/GranOO3/PlugIn/NewSupportShape.cpp Creates a new DEM::SupportShape with a given ID. A DEM::SupportShape is a shape that contains a discrete domain. You can associate the DEM::SupportShape with this discrete domain. If you call UPDATE-SUPPORT-SHAPE PlugIn the length of the support shape is recomputed from the state of its associated discrete elements. Info Recommended section: PreProcessing Required param Type (string) Set the type of the DEM::SupportShape. It must be a Cylinder, a Cone, etc… Optional param ID (string) The ID of the new Ground. The new Ground can be retrieved in C++ code with Physic::Ground::glob("ID") or by its child class such as Physic::GroundT<Shape::Sphere>::glob("ID"). Set (string, default="") put the created tool in the specified set. If the set does not exist, a new one is created. To get the list of all the available attributes please refer to the specific documentation of each tool. To get this documentation, simply run granoo with the following argument granoo -d -f SupportShape Example <NEW-SUPPORT-SHAPE Type="Sphere" Radius="1.0" ID="SHShape"/> If I change in line 15 the ID="Container" to Set="Container", then this error pops up : An error occured while reading the <NEW-SUPPORT-SHAPE> element with raw text : '<NEW-SUPPORT-SHAPE Type="Cylinder" Radius="0.078" Length="0.16" FrameID="F2" Set="Container" />' Cannot find the required attribute 'ID' What to make of it ? Cheers, Peter |
Administrator
|
It seems you have a lot of questions! Please send me an email at damien[dot]andre[at]unilim[dot]fr, and we can schedule a short video call so you can ask me everything directly. That will be more efficient.
Cheers, Damien |
Free forum by Nabble | Edit this page |