Dear all,
I want to bond several particles into a whole, then give it a horizontal velocity in granular system and observe its vertical movement. May it be possible with LIGGGHTS?
Best Regards
A project by DCS Computing and CFDEMresearch
This website uses cookies to ensure you get the best experience on our website. By continuing to browse the site you are agreeing to our use of cookies. This website uses cookies. By continuing to browse the site you are agreeing to our use of cookies. More info
mschramm | Wed, 04/12/2017 - 02:25
Using different groups
This should be able to be done by using multiple groups. One group can be the bonded particle mass and the other group can be the rest of your particles. You can then set the bonded particle group to behave one way while the rest of the particles behave another way.
https://www.cfdem.com/media/DEM/docu/region.html
https://www.cfdem.com/media/DEM/docu/group.html
https://www.cfdem.com/media/DEM/docu/create_atoms.html
https://www.cfdem.com/media/DEM/docu/fix_move.html
apple | Wed, 04/12/2017 - 05:07
Could you give me an example script of how to bond?
Thank you very much for your reply. I already know the object bonded by several particles can move in the granular system from your reply. Now I want to know how to bond the particles. Could you give me an example script?
Best Regards
mschramm | Wed, 04/12/2017 - 20:53
Depends on what bond properties
To answer this, I will need to know more about what types of properties you want in your bond. I saw (and replied to) your other post about stiff flexible fiber models. I can help with some scripts but, I have altered this package quite a bit and don't want to release it until all of the physics are working correctly for the dampening.
Note: If you do not care that there is no velocity based dampening, you can use this package.
Note: There are some bugs that deal with the parallel capabilities and you may encounter some segmentation fault errors.
apple | Thu, 04/13/2017 - 05:36
Thank you very much. We want
Thank you very much. We want to bond several particles into a whole, and make it move in granular system. We hope that the bond is unbreakable, because we want to observe the movement of the whole boned object. We will modify the velocity of some particles by id in the "fix_nve_sphere.cpp" file. Will the bonded object move accordingly if we modify the velocity of one particle of the bonded object ? That's what we want.
We use "fix_nve_sphere" to update the velocity and location of all particles. We modify the "fix_nve_sphere.cpp" file by insert the following sentences
if (tag[i] == 1080) {
v[i][0] = 0;
v[i][1] = 0;
v[i][2] =-1;
}
the "1080" is the id of the particle whose velocity we want to modify.
Best Regards
mschramm | Thu, 04/13/2017 - 06:52
multisphere vs bonded
Do you need this mass to flex, or are you trying to approximate a different shape? Do you need your bonded mass to deform?
As for moving the mass, you do not need to alter the nve_sphere file.
Assuming your simulation resides inside a 1 meter cube with one corner at 0,0,0 and another at 1,1,1.
Your bonded mass of particles in the region defined as inside the cube such that x > 0.5
Your other particles be in the region defined as inside the cube such that x < 0.5
define a region around the bonded particle and make it a group (bond_group) then us the fix
fix move_bond_group bond_group move linear vx null null
this will move the bonded particles at velocity vx in the x component while the y and z directions are time integrated.
https://www.cfdem.com/media/DEM/docu/fix_move.html
apple | Sat, 04/15/2017 - 13:41
Could you explain the following sentences?
"bond_coeff 1 1 1e8 1e8 ${stressbreak} 1e4 1e4 "
"fix bondcr all bond/create/gran 1 1 1 0.0051 1 6 "
Could you explain the meaning of every number ?
mschramm | Sat, 04/15/2017 - 19:09
meanings...
bond_coeff 1 1 1e8 1e8 ${stressbreak} 1e4 1e4
bond_coeff [bond_type] [bond_radius] [normal_stiffness] [tangential_stiffness] [bond_break_type] [normal_max_stress] [tangential_max_tress]
fix bondcr all bond/create/gran 1 1 1 0.0051 1 6
fix bondcr all bond/create/gran [try_to_make_bonds_every_#_steps] [atom_type_m] [atom_type_n] [bond_type] [bond_create_cutoff_distance][newperts]
I think newperts is how many bonds can leave a single atom per bond create step... not 100%
apple | Tue, 04/18/2017 - 11:00
Could you explain the following sentences?
question one :
compute b1 all property/local batom1x batom1y batom1z batom2x batom2y batom2z batom1 batom2 btype
Thank you very much!
dump bnd all local 100 post/bonds*.bond c_b1[1] c_b1[2] c_b1[3] c_b1[4] c_b1[5] c_b1[6] c_b1[7] c_b1[8] c_b1[9]
What's the meaning of every terms?
question two:
I want to bond several particles into a ellipsoid. But the region command only have "style = delete or block or cone or cylinder or plane or prism or sphere or mesh/tet or union or intersect or wedge". Do you know how to achieve it?
Best regards
mschramm | Tue, 04/18/2017 - 16:11
bonds
Part 1
compute b1 all property/local batom1x batom1y batom1z batom2x batom2y batom2z batom1 batom2 btype
[liggghts compute command] [id] [group_id] [property/local] [atom1_x-loc] [atom1_y-loc] [atom1_z-loc] [atom2_x-loc] [atom2_y-loc] [atom2_z-loc] [atom1_id] [atom2_id] [bond_type]
"Compute the following values and place them into identifier b1"
b1 contains local property information about the bonds.
batom1x, batom1y, batom1z have information about the position of one "bonded particle" while
batom2x, batom2y, batom2z have information about the other bonded particles position.
batom1 and batom2 are the two atoms that are bonded together and btype is the type of bond the two share.
These can be found in the file "compute_property_local.cpp".
dump bnd all local 100 post/bonds*.bond c_b1[1] c_b1[2] c_b1[3] c_b1[4] c_b1[5] c_b1[6] c_b1[7] c_b1[8] c_b1[9]
[liggghts_write_to_file_command] [id] [group_id (not important but must stay...)] [want_local_attributes] [write_to_file_every_100_steps] [write_files_to_location_"post/bonds*.bond", the * symbol means that the step number will be inserted] [c_b1[k] means use the compute commands b1 variable] The c_ is in front of it because b1 is called using a compute command.
Part 2
I really don't have a good answer for this. I have been struggling with this myself as I can not use the built in tools to create my spawn locations for my fibers. To get around this, I wrote my own monte-carlo random insertion for simple shapes (currently only for box and hollow cylinder). You may need to define the atom locations outside of liggghts and use the read_data command to read in the atom location. Once they are in, you can define the bonds between them.
apple | Sat, 04/22/2017 - 10:25
How to resolve this problem
In a simulation, we don't achieve the process that a part of particles are bonded and others are not. We have tried ,but failed. The feedback is :
ERROR: Fix bond/create can only be used together with dedicated 'granular' bond styles (../fix_bond_create_gran.cpp:225)
Do you know the reason? How to resolve this problem?
Best regards
apple | Fri, 04/14/2017 - 03:55
Thank you very much. We don't
Thank you very much. We don't need the mass to flex or deform, and we are trying to approximate a shape.
Best Regards
apple | Sat, 04/22/2017 - 14:35
How to resolve this problem
In a simulation, we don't achieve the process that a part of particles are bonded and others are not. We have tried ,but failed. The feedback is :
ERROR: Fix bond/create can only be used together with dedicated 'granular' bond styles (../fix_bond_create_gran.cpp:225)
Do you know the reason? How to resolve this problem?
Best regards