Hi Wenxuan,

1. You can generate particles after the system initialization in DEME. An 
example is GRCPrep_Part1 
<https://github.com/projectchrono/DEM-Engine/blob/main/src/demo/DEMdemo_GRCPrep_Part1.cpp>,
 
where new particles are brought into the simulation in batches after the 
simulation starts using *AddClumps *then *UpdateClumps*. However, defining 
how they are generated is the responsibility of the user. If you would like 
to generate at a mass rate, then you have to write in your script the code 
that instantiates the initial positions of the particles that suffice this 
mass rate, and add them to the simulation with an appropriate frequency. Of 
course, depending on the problem to simulate, sometimes it's easier to 
generate all particles needed first, then use some sort of geometry to help 
release them with a certain flow rate into the simulation region of 
interest.

2. I am not sure if you meant whether it can simulate a (mesh-represented) 
conveyor belt, or simulate using a specific contact force model called the 
conveyor belt model. If it's just mesh--particle contact with a moving 
mesh, then DEME can do that. If the challenge is that the mesh is 
deformable, then DEME can do that as well (see the flexible mesh demo 
<https://github.com/projectchrono/DEM-Engine/blob/main/src/demo/DEMdemo_FlexibleMesh.cpp>)
 
as well, but it is more advanced and the deformation of the mesh has to be 
simulated using an external solid mechanics solver: DEME can only provide 
the granular force the belt experiences, but not calculate how it deforms. 
However, if the idea is that the soft-material nature of the belt is 
modeled by a special force model (instead of the default Hertz--Mindlin 
model) rather than the actual deformation of the belt, then it can be done 
with a custom force model (a good example with a custom force model is used 
is probably the material fracture demo 
<https://github.com/projectchrono/DEM-Engine/blob/main/src/demo/DEMdemo_Fracture_Box.cpp>).
 
This is also a more advanced usage of DEME, and it is certainly not a 
one-liner call. In short, this is a scientific question. The approach and 
the viability depend on what you'd like to explore and achieve with the 
simulation. 

3. I don't know if I understand the question correctly. I think you meant 
scenarios such as a rotating object that also revolves around something 
else. You can do this and there is more than one way. You can use a tracker 
to track the geometry, then set the position and quaternion of the geometry 
using this tracker step by step, so you have explicit control over it, 
regardless of how complex the motion is. You can probably use the 
electrostatic demo 
<https://github.com/projectchrono/DEM-Engine/blob/main/src/demo/DEMdemo_Electrostatic.cpp>
 
as the example, and see how the *rod_tracker *object is used to *SetPos *of 
the geometry step by step. Another approach is when the motion is simple 
enough and prescribed, you can give this geometry a family tag and then use 
*SetFamilyPrescribedLinVel 
*along with *SetFamilyPrescribedAngVel *to enforce the motion. The 
*SetFamilyPrescribedAngVel *method sets the prescribed rotational motion of 
the geometry about its own local coordinate system, then the 
*SetFamilyPrescribedLinVel *method can be used to define the global 
revolution you probably need (you can write something like *sin(3.14 * t)* 
as the prescribed motion). The excavator plowing demo 
<https://github.com/projectchrono/DEM-Engine/blob/main/src/demo/DEMdemo_Plow.cpp>
 
might help you understand the usage. 

Thank you,
Ruochun

On Tuesday, December 19, 2023 at 3:04:18 AM UTC-6 [email protected] wrote:

> Hi, all
>    
>     I have the following functions and would like to inquire if DEME can 
> implement them?
> 1. Does DEME have the function of dynamically generating particles? For 
> example, generating at a certain mass rate.
> 2. Does DEME have a conveyor belt contact model?
> 3. Can DEME set multiple rotational motions for geometry?
>
> Best regards,
> Wenxuan Xu
>

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/projectchrono/28b00faa-f721-4264-809f-166063016153n%40googlegroups.com.

Reply via email to