Hi Ruochun, After removing the line which prescribe the linear motion, the particles can contact with the plate. However, if we have to prescribe a velocity for the particles, where should we add this line?
Thank you, Weigang On Friday, June 21, 2024 at 3:12:06 PM UTC+8 Ruochun Zhang wrote: > Hi Weigang, > > This is because you prescribed the linear motion of family 1 (which is for > all the particles) to be -1.0. When the velocity is prescribed, the > simulation entities won't accept the influence of physical contacts, and > will keep the prescribed velocity no matter what. This is exactly what we > see in the simulation. Removing that line should fix it. You probably meant > to add an initial velocity. > > Ruochun > > > > On Friday, June 21, 2024 at 9:05:11 AM UTC+8 weigan...@gmail.com wrote: > >> Hi Ruochun: >> >> The script is attached below. >> >> Thank you, >> Weigang >> >> On Thursday, June 20, 2024 at 7:27:35 PM UTC+8 Ruochun Zhang wrote: >> >>> I assume you are doing it via a custom force model. In that case, this >>> problem is very similar to the exact demo we provided (which runs). You >>> have to tell us what you changed in order for us to give suggestions. >>> >>> Thank you, >>> Ruochun >>> >>> On Thursday, June 20, 2024 at 6:55:10 PM UTC+8 weigan...@gmail.com >>> wrote: >>> >>>> Hi Ruochun, >>>> >>>> I am currently modelling the impact of a rock block against a plate. >>>> However, as shown below, the spheres penetrate through the plate without >>>> any contact with the plate. Could you give some suggestions? >>>> [image: 微信图片_20240620185350.jpg] >>>> >>>> Thank you, >>>> Weigang >>>> >>>> On Thursday, June 20, 2024 at 5:02:38 PM UTC+8 Ruochun Zhang wrote: >>>> >>>>> Hi Weigang, >>>>> >>>>> Yes. And that's exactly what we did in the fracture demo to begin >>>>> with, is it not? >>>>> >>>>> Thank you, >>>>> Ruochun >>>>> >>>>> On Thursday, June 20, 2024 at 3:07:07 PM UTC+8 weigan...@gmail.com >>>>> wrote: >>>>> >>>>>> Hi Ruochun, >>>>>> >>>>>> Do you mean that we can add a if statements in the >>>>>> ForceModelWithFracture.cu to differentiate types of contacts? >>>>>> >>>>>> Thank you, >>>>>> Weigang >>>>>> >>>>>> >>>>>> >>>>>> On Thursday, June 13, 2024 at 8:30:45 PM UTC+8 Ruochun Zhang wrote: >>>>>> >>>>>>> Currently, DEM-Engine custom model functionality permits only one >>>>>>> script, meaning that in principal, you are writing a unified force >>>>>>> model >>>>>>> that goes for sphere-sphere, sphere-boundary, *and *sphere-mesh. >>>>>>> Just think of the sphere-compressor contact as a special case, which is >>>>>>> the >>>>>>> contact between a normal sphere and an infinitely-large sphere. >>>>>>> >>>>>>> About enforcing different models for different objects, you can >>>>>>> associate different objects with respective family numbers, then use if >>>>>>> statements to differentiate types of contacts. I talked about this in >>>>>>> one >>>>>>> of the earlier replies in this thread, please go back and have a look. >>>>>>> >>>>>>> Thank you, >>>>>>> Ruochun >>>>>>> >>>>>>> >>>>>>> On Thursday, June 13, 2024 at 1:31:37 PM UTC+8 weigan...@gmail.com >>>>>>> wrote: >>>>>>> >>>>>>>> Hi Ruochun, >>>>>>>> >>>>>>>> Thank you for your reply. In fact, I am puzzled that there is not >>>>>>>> any sentence in the Fracture-Box demo to declare the contact model >>>>>>>> between >>>>>>>> spheres and the compressing plate. So, how to declare the contact >>>>>>>> model, >>>>>>>> especially for the case in which there has been another contact model, >>>>>>>> such >>>>>>>> as the ForceModelWithFracture.cu? >>>>>>>> >>>>>>>> Thank you, >>>>>>>> Weigang >>>>>>>> >>>>>>>> On Thursday, June 13, 2024 at 12:03:52 AM UTC+8 Ruochun Zhang wrote: >>>>>>>> >>>>>>>>> Hi Weigang, >>>>>>>>> >>>>>>>>> Note that in general, if you use a custom force model, then that >>>>>>>>> model alone is used, there is no fallback so I wouldn't call that >>>>>>>>> anything >>>>>>>>> has "defaulted" to Hertz–Mindlin. Specific to the Fracture-Box demo, >>>>>>>>> it's >>>>>>>>> just that the force model (ForceModelWithFracture.cu) is written in a >>>>>>>>> way >>>>>>>>> that when the bond between two particles breaks, the "else" branch of >>>>>>>>> that >>>>>>>>> big if statement is executed, and something similar to Hertz–Mindlin >>>>>>>>> is >>>>>>>>> enforced. >>>>>>>>> >>>>>>>>> I said it's similar since it's not a pure spring–damper model now, >>>>>>>>> it's a spring–damper model with the resting location (zero-force >>>>>>>>> location) >>>>>>>>> being the penetration depth the moment when the bond broke. This >>>>>>>>> implementation avoids a potential problem with a pure spring–damper >>>>>>>>> model: >>>>>>>>> Without the adjusted resting location, a newly broken-away pair of >>>>>>>>> particles would see the bond suddenly gone but there were still >>>>>>>>> left-over >>>>>>>>> penetration, therefore immediately pushing each other away with high >>>>>>>>> velocity, resulting in non-physical results. Shout-out to Bona for >>>>>>>>> implementing this. >>>>>>>>> >>>>>>>>> Thank you! >>>>>>>>> Ruochun >>>>>>>>> >>>>>>>>> >>>>>>>>> On Wednesday, June 12, 2024 at 8:33:55 PM UTC+8 >>>>>>>>> weigan...@gmail.com wrote: >>>>>>>>> >>>>>>>>>> Hi Ruochun, >>>>>>>>>> >>>>>>>>>> Thank you for your great work. The demo now is runs well. I have >>>>>>>>>> a question about the Fracture-Box demo. After the bond between two >>>>>>>>>> particles breaks, is it right that the contact model between them >>>>>>>>>> change >>>>>>>>>> defaultly from ForceModelWithFracture to Hertz–Mindlin model? >>>>>>>>>> >>>>>>>>>> Thank you, >>>>>>>>>> Weigang >>>>>>>>>> >>>>>>>>>> On Friday, May 31, 2024 at 8:05:24 PM UTC+8 Ruochun Zhang wrote: >>>>>>>>>> >>>>>>>>>>> Hi Weigang, >>>>>>>>>>> >>>>>>>>>>> The problem appears to be fixed now. Please pull the newest main >>>>>>>>>>> branch and try the fracture demo again. I suggest you do a clean >>>>>>>>>>> rebuild >>>>>>>>>>> from an empty directory, because only a force model file is changed >>>>>>>>>>> and if >>>>>>>>>>> you just "make", cmake probably thinks nothing needs to be done. Or >>>>>>>>>>> you can >>>>>>>>>>> simply manually copy the modified cu file over to the appropriate >>>>>>>>>>> location >>>>>>>>>>> in the build folder. >>>>>>>>>>> >>>>>>>>>>> The problem was that we left an uninitialized variable in the >>>>>>>>>>> force model file. On data center cards, the compiler zeros it out >>>>>>>>>>> automatically, but on consumer cards it does not. We therefore >>>>>>>>>>> missed it >>>>>>>>>>> initially. Should be all good now. >>>>>>>>>>> >>>>>>>>>>> Thank you, >>>>>>>>>>> Ruochun >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Tue, May 28, 2024, 11:00 PM Ruochun Zhang <ruoc...@gmail.com> >>>>>>>>>>> wrote: >>>>>>>>>>> >>>>>>>>>>>> Hi Weigang, >>>>>>>>>>>> >>>>>>>>>>>> It's not like recommending a card; rather, if you happen to >>>>>>>>>>>> have a data center card available (A100, A5000 etc.), you can >>>>>>>>>>>> circumvent >>>>>>>>>>>> this problem for now by using them. Otherwise, let's hope we find >>>>>>>>>>>> a >>>>>>>>>>>> solution very soon, or at least find a workaround. We'll keep you >>>>>>>>>>>> posted. >>>>>>>>>>>> >>>>>>>>>>>> Thank you, >>>>>>>>>>>> Ruochun >>>>>>>>>>>> >>>>>>>>>>>> On Monday, May 27, 2024 at 7:27:10 PM UTC+8 weigan...@gmail.com >>>>>>>>>>>> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Hi Ruochun, >>>>>>>>>>>>> >>>>>>>>>>>>> My card is indeed a gaming card NVIDIA GeForce RTX 2070 Super. >>>>>>>>>>>>> Could you recommend a card? >>>>>>>>>>>>> >>>>>>>>>>>>> Thanks, >>>>>>>>>>>>> Weigang >>>>>>>>>>>>> >>>>>>>>>>>>> On Saturday, May 25, 2024 at 10:44:17 PM UTC+8 Ruochun Zhang >>>>>>>>>>>>> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> Hi Weigang, >>>>>>>>>>>>>> >>>>>>>>>>>>>> I would like to answer Question 2 first. You can use >>>>>>>>>>>>>> variables *AOwnerFamily *and *BOwnerFamily *to refer to >>>>>>>>>>>>>> clump (or owner) A's and clump B's family numbers directly in >>>>>>>>>>>>>> the force >>>>>>>>>>>>>> model. So you can write *if *statements that treat each case >>>>>>>>>>>>>> accordingly. This is mentioned in the DEME paper: You can check >>>>>>>>>>>>>> out Table 2. >>>>>>>>>>>>>> >>>>>>>>>>>>>> For Question 1, the situation is more complicated. We are >>>>>>>>>>>>>> actually able to reproduce the problem you encountered >>>>>>>>>>>>>> (simulation >>>>>>>>>>>>>> freezing), but on consumer/gaming cards only. It runs perfectly >>>>>>>>>>>>>> on data >>>>>>>>>>>>>> center cards and that's what we used for generating this >>>>>>>>>>>>>> experiment, >>>>>>>>>>>>>> therefore it did not appear a problem for us. It's likely due to >>>>>>>>>>>>>> different >>>>>>>>>>>>>> GPU architectures running the same code differently, we'll try >>>>>>>>>>>>>> to find a >>>>>>>>>>>>>> solution and let you know in the following days, so stay tuned. >>>>>>>>>>>>>> By the way, >>>>>>>>>>>>>> you are using a gaming card to run the simulations, correct? >>>>>>>>>>>>>> >>>>>>>>>>>>>> Thank you, >>>>>>>>>>>>>> Ruochun >>>>>>>>>>>>>> >>>>>>>>>>>>>> On Friday, May 24, 2024 at 8:47:00 AM UTC+8 >>>>>>>>>>>>>> weigan...@gmail.com wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> Thank you for your reply! I have two questions about the >>>>>>>>>>>>>>> demo "DEMdemo-Fracture-Box". >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> (1) After i have run this demo for one day, there is still >>>>>>>>>>>>>>> nothing outputed. Is it fact that the DEME will run a long time >>>>>>>>>>>>>>> once a >>>>>>>>>>>>>>> fracture model is used? >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> (2) How to tell DEME the contact force models between >>>>>>>>>>>>>>> different familys? I did not see any snippet which undertakes >>>>>>>>>>>>>>> this work, >>>>>>>>>>>>>>> although the demo has at least two kinds of contact force >>>>>>>>>>>>>>> model. The >>>>>>>>>>>>>>> question i really want to ask is that, if we have more than >>>>>>>>>>>>>>> three familys >>>>>>>>>>>>>>> in our model and there are more than two familys consist of >>>>>>>>>>>>>>> spherical >>>>>>>>>>>>>>> particles, how to tell DEME the contact force model between >>>>>>>>>>>>>>> different >>>>>>>>>>>>>>> familys, and tell DEME the contact force model between the >>>>>>>>>>>>>>> particles of a >>>>>>>>>>>>>>> family in the same time. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Thank you, >>>>>>>>>>>>>>> Weigang >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Thursday, May 23, 2024 at 10:10:14 PM UTC+8 Ruochun Zhang >>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> No. That's because the *sphere components* in a clump are >>>>>>>>>>>>>>>> just shape representations, and they have no physics, only >>>>>>>>>>>>>>>> material >>>>>>>>>>>>>>>> properties. If they did have interaction with each other then >>>>>>>>>>>>>>>> every clump >>>>>>>>>>>>>>>> would've immediately exploded upon simulation starting. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Thank you, >>>>>>>>>>>>>>>> Ruochun >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> On Thursday, May 23, 2024 at 12:16:32 PM UTC+8 >>>>>>>>>>>>>>>> weigan...@gmail.com wrote: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Hi Ruochun, >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Thank you for your reply! I have a question about the >>>>>>>>>>>>>>>>> clump. Do the particles in a clump interact with each other >>>>>>>>>>>>>>>>> via any force >>>>>>>>>>>>>>>>> model? >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Thank you, >>>>>>>>>>>>>>>>> Weigang >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> On Monday, May 20, 2024 at 10:26:03 PM UTC+8 Ruochun Zhang >>>>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> Hi Weigang, >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> Yes. Again, DEME only cares about the position and >>>>>>>>>>>>>>>>>> radius of the initial spheres, so you can supply it however >>>>>>>>>>>>>>>>>> you want. If >>>>>>>>>>>>>>>>>> you have a file that records this information using your own >>>>>>>>>>>>>>>>>> format, then >>>>>>>>>>>>>>>>>> the easiest thing is to have your own C++ or Python script >>>>>>>>>>>>>>>>>> that reads it >>>>>>>>>>>>>>>>>> into arrays and then feeds them to the solver. If your >>>>>>>>>>>>>>>>>> file shares the format with DEME's standard clump output >>>>>>>>>>>>>>>>>> file, or your file >>>>>>>>>>>>>>>>>> is simply the output of *WriteClumpFile*, then you can >>>>>>>>>>>>>>>>>> conveniently load clump positions and orientations by >>>>>>>>>>>>>>>>>> *ReadClumpXyzFromCsv >>>>>>>>>>>>>>>>>> *and *ReadClumpQuatFromCsv *(examples are in >>>>>>>>>>>>>>>>>> GRCPrep_Part1 and 2). Note that currently, sphere radius >>>>>>>>>>>>>>>>>> cannot be read >>>>>>>>>>>>>>>>>> from standard clump output files since it's part of the >>>>>>>>>>>>>>>>>> clump template >>>>>>>>>>>>>>>>>> information thus not in the clump output. >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> Thank you, >>>>>>>>>>>>>>>>>> Ruochun >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> On Monday, May 20, 2024 at 12:56:56 PM UTC+8 >>>>>>>>>>>>>>>>>> weigan...@gmail.com wrote: >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Hi Everyone, >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> I would like to generate a block which consists of a >>>>>>>>>>>>>>>>>>> assembly spheres. Is it possible to generate the block by >>>>>>>>>>>>>>>>>>> other code, and >>>>>>>>>>>>>>>>>>> then load it into DEM-Engine via a file containg the >>>>>>>>>>>>>>>>>>> informations (such as >>>>>>>>>>>>>>>>>>> position and radius) of the spheres? >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Thank you, >>>>>>>>>>>>>>>>>>> Weigang >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>> 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/1910af21-d1e3-43dd-a779-0c229e6150a6n%40googlegroups.com >>>>>>>>>>>> >>>>>>>>>>>> <https://groups.google.com/d/msgid/projectchrono/1910af21-d1e3-43dd-a779-0c229e6150a6n%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>>>>>>> . >>>>>>>>>>>> >>>>>>>>>>> -- 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 projectchrono+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/projectchrono/953c6f17-86d3-4e7b-aaf9-3d159047a751n%40googlegroups.com.