Hello all,
I want to build a project like Glass impact and Brick wall in the Gallery. I build two discreteElement object, the first like a wall, and the second like a bullet. Any discreteElement with its nearest six element has ElementPair. And I convert it to beam. I set _ApplyForce to bullet. But the plugin _ManageCollision doesn't make sense. The bullet will go through the wall without collision. If anyone can send the sample, I will be very pleasure. Wang Zeyuan |
Administrator
|
Hello,
Can you share with us your input file ? Best regards, Damien. |
Dear Damien,
I'm sorry to bother you. Now I am trying to simulate the result that you showed in the paper called "Using the discrete element method to simulate brittle fracture in the indentation of a silica glass with a blunt indenter". I can't handle the whole GranOO in a short time, you know, I need to test every plugin and some plugin's document has some mistakes and my professor want me to do it as fast as I can. So I want to know where I can find the source code of this paper. Thank you Wang |
Administrator
|
Hello, please find in attached a qualitative version of this test. Fracture begins at 20.000 iterations.
I have no more version for granoo v2. Damien. indentation.zip |
Hello,
I have tried to simulate brittle fracture in the indentation. I use 100*100*1 discrete domain. I am not familiar with RCP, so I just arrange them one by one. However, the result is like using the standard failure criterion. So, my question is: Did you introduce the developed failure criterion and if the answer is yes, what should I do to apply it? Is there a convenient way to change the failure criterion, or I have to change Beam.cpp and rebuild it? regards, Wang |
Administrator
|
Hello Wang,
As i said in another thread, I really need your input file for helping you.... Best regards, Damien. |
Hello,
I am sorry about that, here is my input file: <GranOO Version="2.0" TotIteration="inf" OutDir="Results" TimeStep="1e-8" ThreadNumber="4"> <PreProcessing> <PlugIn Id="_ReadDomain" FileName="MyFirstDomain.agdd"/> <PlugIn Id="_SetDensity" Density="3000" /> <PlugIn Id="_Convert" What="ElementPair" To="Beam" YoungModulus="500e9" RadiusRatio="0.4" PoissonRatio="0.33" /> <PlugIn Id="_NewFrame" Center="(0, 1.5, 0)" ID="F1" /> <PlugIn Id="_NewTool" Type="Sphere" Radius="0.5" Density="3000" ID="indentor" Set="indentor" FrameID="F1" /> <PlugIn Id="_PutInContact" ID="indentor" Direction="(0, -1, 0)" InitialStep="0.1" Precision="1e-10" /> <PlugIn Id="_ComputeOptimalTimeStep" Ratio="0.1" /> </PreProcessing> <Processing> <PlugIn Id="_Check" /> <PlugIn Id="_ClearLoad" /> <PlugIn Id="_ApplyBondLoad" /> <PlugIn Id="_ManageCollision" Between="DiscreteElement/Tool" BroadPhase="Tool" ToolID="indentor" Set="up" CallBack="Standard" Stiffness="1e9" /> <PlugIn Id="_IntegrateAcceleration" Linear="Yes" Angular="Yes"/> <PlugIn Id="_ComputeVirialStress" FailureMode="BRITTLE" HydrostaticCriterion="5e6" VolumeFraction="1.0" ApplyCriterionOn="CLOSEST" NeighbourLevel="1" IterLoop="5"/> <PlugIn Id="_ImposeDisplacement" Y="0" Set="up"/> <PlugIn Id="_ImposeDisplacement" Z="0" Set="Global" /> <PlugIn Id="_ImposeDisplacement" X="0" Y="-1e-7*it" Set="indentor" /> <PlugIn Id="_SaveDomain" IterLoop="100" Type="gdd"/> <PlugIn Id="_MonitorItemNumber" What="DEM::Beam" IterLoop="100" /> </Processing> <PostProcessing> </PostProcessing> </GranOO> The input file is just similar with the file you gave me, so I didn't realize that. Sorry for my carelessness. Regards |
Administrator
|
Hello,
good, I am able to answer now ^^ Do you mean that you use regular discrete domains ? It is not a good idea ! You can have better results if you use numerical samples that come form the cooker program. http://www.yakuru.fr/granoo//tutorial/basic_3_building-discrete-domain.html Yes, I introduce it in GranOO. In fact you are using it with this line : <PlugIn Id="_ComputeVirialStress" FailureMode="BRITTLE" HydrostaticCriterion="5e6" VolumeFraction="1.0" ApplyCriterionOn="CLOSEST" NeighbourLevel="1" IterLoop="5"/> |
Hello everyone,
I want to simulate brittle fracture in 3D. However, in the beginning, there are a few beam delete. It's hard to notice where the beams are broken. So is there any method to make the brittle fracture more clearly such as changing the color or etc? regards, Wang |
Administrator
|
This post was updated on .
Hello,
Yes, when they are deleted, the DEM::Beam objects are changed in DEM::ElementPair object. So, if you go into the viewer, you can highlight the broken beam by changing the color of the "Global" set of DEM::ElementPair. |
Hello,
I try to simulate herzian cone crack. I choose kilogram, micron, second as units. This is my input file: <?xml version="1.0" encoding="UTF-8" standalone="no"?> <GranOO Version="2.0" TotIteration="60000" TimeStep="1.5e-11" OutDir="Final" ThreadNumber="4"> <PreProcessing> <PlugIn Id="_ReadDomain" FileName="3D.agdd"/> <PlugIn Id="_SetDensity" Density="2.33e-15"/> <PlugIn Id="_Convert" What="ElementPair" To="Beam" YoungModulus="72.5e3" RadiusRatio="0.4" PoissonRatio="0.17"/> <PlugIn Id="_NewFrame" Center="(0,21,0)" ID="F1"/> <PlugIn Id="_NewTool" Type="Sphere" Radius="10" Density="7.86e-15" ID="indentor" Set="indentor" FrameID="F1"/> <PlugIn Id="_EnergyBalance" /> <PlugIn Id="_PutInContact" ID="indentor" Direction="(0,-1,0)" InitialStep="0.00001" Precision="1e-10"/> </PreProcessing> <Processing> <PlugIn Id="_Check" /> <PlugIn Id="_ClearLoad" /> <PlugIn Id="_ApplyBondLoad"/> <PlugIn Id="_ManageCollision" Between="DiscreteElement/Tool" BroadPhase="Tool" ToolID="indentor" Set="Boundary" CallBack="Standard" Stiffness="1e9" /> <PlugIn Id="_IntegrateAcceleration" Linear="Yes" Angular="Yes" BetaLinear="1.3" BetaAngular="1.3"/> <PlugIn Id="_ComputeVirialStress" FailureMode="BRITTLE" HydrostaticCriterion="3.2e6" VolumeFraction="1.0" ApplyCriterionOn="CLOSEST" NeighbourLevel="1" IterLoop="5"/> <PlugIn Id="_ImposeDisplacement" Y="0." Set="Boundary-yMin"/> <PlugIn Id="_SetLinearVelocity" X="0." Y="-3e5" Z="0." Set="indentor"/> <PlugIn Id="_SaveDomain" IterLoop="2000"/> <PlugIn Id="_MonitorItemNumber" What="DEM::Beam" IterLoop="100"/> </Processing> <PostProcessing> </PostProcessing> </GranOO> However, in the beginning, a few domain are too far to simulate, and the program also stops. I don't know where I'm wrong, please give me a hint. Wang |
Administrator
|
Hello,
What happen if you use meter as unit ? |
Hello,
In this paper, the discrete silica sample is composed by 80000 discrete elements and 1040000 cohesive beams. Its size is 40 µm along the x and z axes and 20 µm along the y axis. If I choose meter as unit. The size will be 40e-6 m along the x and z. I am afraid that the discretes will not be visible. Do I have an exact understanding? Wang |
Administrator
|
Hello,
No problem with this size, you can use meter as unit. My opinion is that (double) float precision becomes critical around 10e-12.... |
Hi Damien,
In "_ManageCollision" PlugIn: <PlugIn Id="_ManageCollision" Between="DiscreteElement/Tool" BroadPhase="Tool" ToolID="indentor" Set="Boundary" CallBack="Standard" Stiffness="1e9" /> How to determine the Stiffness? Thank, Danh |
Administrator
|
Hello Danh,
There is no definitive way to determine the local stiffness. Generally, this is not really critical for simulations, so you can put here a high value around 10e6. Kind regards, Damien. |
Thank Damien,
Danh |
Hi Damien,
I want to use PlugIn_ManageCollision between two SetOf, it correct if I write: <PlugIn Id="_ManageCollision" Between="body/body" Set1="Fiber" Set2="Matrix" CallBack="Standard" Stiffness="1e7" RestitutionCoeff="0.5" /> Thank you, Danh |
Administrator
|
Hello Danh,
I hope so, please test it and give me your feedback. Ty, Damien. |
Hello Damien,
It does not run: Can you hel me? Thank you, Danh |
Free forum by Nabble | Edit this page |