bonded particle simulation

Submitted by Rahul Kumar on Thu, 01/16/2020 - 06:56

Hello every one

I am trying to run bonded particle simulation but I am getting an error

----------------------------------------------------------------------
ERROR: Invalid atom_style command (../atom_vec.cpp:75)
--------------------------------------------------------------------------

#bond

atom_style hybrid granular bond/gran n_bondtypes 1 bonds_per_atom 6
#atom_style granular
atom_modify map array
boundary f f f
newton off

#processors 2 1 1

communicate single vel yes

units si

region reg block 0 2 0 2 0 2 units box
create_box 1 reg #bonds 1 6

neighbor 0.002 bin
neigh_modify delay 0

#New pair style
pair_style gran model hertz tangential history
pair_coeff * *

#bond
bond_style gran

variable simplebreak equal 0
variable stressbreak equal 1

#fix boxwalls_x1 all wall/gran model hertz tangential history primitive type 1 xplane 0
#fix boxwalls_x2 all wall/gran model hertz tangential history primitive type 1 xplane 2
#fix boxwalls_y1 all wall/gran model hertz tangential history primitive type 1 yplane 0
#fix boxwalls_y2 all wall/gran model hertz tangential history primitive type 1 yplane 2
#fix boxwalls_z1 all wall/gran model hertz tangential history primitive type 1 zplane 0
#fix boxwalls_z2 all wall/gran model hertz tangential history primitive type 1 zplane 2

#for simplebreak
#bond_coeff 1 0.0025 10000000000 10000000000 ${simplebreak} 0.002501

#for stressbreak
bond_coeff 1 1 1e8 1e8 ${stressbreak} 1e4 1e4

# ==============================================================
# create particles IN A DEFINED REGION to collide against a wall
# ==============================================================
#region bc mesh/tet file sphere_fine.vtk scale 0.05 move 1 1 1 rotate 0. 0. 0. units box #scale 0.05 move 0.05 0.05 0.05 rotate 0. 0. 0. units box
region bc sphere 0.1 0.1 0.1 0.05 units box
lattice sc 0.005
create_atoms 1 region bc
group bonded region bc
set group all density 2500 diameter 0.005
set group all vz 0 vx 0

###TODO blow the particles up (see examples/LIGGGHTS/Tutorial_Public/packing/###

#Material properties required for new pair styles

fix m1 all property/global youngsModulus peratomtype 1.e7
fix m2 all property/global poissonsRatio peratomtype 0.3
fix m3 all property/global coefficientRestitution peratomtypepair 1 0.2
fix m4 all property/global coefficientFriction peratomtypepair 1 0.3

mass 1 1.0 #dummy

fix bondcr all bond/create/gran 1 1 1 0.0051 1 6

timestep 0.00001

fix gravi all gravity 9.81 vector 0.0 0.0 -1.0

fix top all mesh/surface file top.stl type 1 #move 0.05 0.05 0.2
fix bottom all mesh/surface file bottom.stl type 1 #move 0.05 0.05 0.05
fix walls all wall/gran model hertz tangential history mesh n_meshes 2 meshes top bottom

#region and insertion

group nve_group region reg

#apply nve integration to all particles that are inserted as single particles
fix integr nve_group nve/sphere

#output settings, include total thermal energyg
compute 1 all erotate/sphere
variable etotal equal ke+c_1
thermo_style custom step atoms numbond
thermo 1000
thermo_modify lost ignore norm no
compute_modify thermo_temp dynamic yes

#insert the first particles so that dump is not empty
shell mkdir post
dump dmp all custom 100 post/dump*.liggghts id type x y z vx vy vz fx fy fz omegax omegay omegaz radius
dump dumpstl all mesh/stl 100 post/dump*.stl

compute b1 all property/local batom1x batom1y batom1z batom2x batom2y batom2z batom1 batom2 btype
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]

#insert particles
run 1
fix_modify bondcr every 0

# ================================================
# after the bonds are formed,
# exclude pairwise interaction ?
# ================================================
#neigh_modify exclude group bonded bonded

#run

fix movecad1 all move/mesh mesh top linear 0 0 -0.5

run 10000 upto

unfix movecad1

run 20000

#run 3500 upto
#dump_modify dmp every 5
#run 500

mschramm | Thu, 01/16/2020 - 18:04

Hello,
Which version of LIGGGHTS are you using? The public release of LIGGGHTS from CFDEM's github, LIGGGHTS-WITH-BONDS from richti83's github, or LIGGGHTS_Flexible_Fibers from schrummy14's github?
The public version does NOT handle this type of bond.
The command is correct for both richti83's and schrummy14's versions.

Rahul Kumar | Sat, 01/18/2020 - 14:56

I type make auto from src folder, but I got the following error

Makefile:72: recipe for target 'auto' failed
make: *** [auto] Error 1

mschramm | Sun, 01/19/2020 - 23:10

I believe the command to compile is make fedora. This should work in most cases but you may need to specify where your libraries are.

The Flexible_Fibers LIGGGHTS version is 3.8 and is able to be compiled utilizing the make auto command if you would like to give that repo a try.
The major difference is that the bond coeff command will be different but there is a doc page with examples on how to use it.

Rahul Kumar | Mon, 01/20/2020 - 07:39

make fedora is working

But I am having problem in visualization of Particle in paraview. I have noticed that particle are dump as dump*.liggghts where as in LIGGGHTS 3.8 it is in .vtk format.

dump dmp all custom 100 post/dump*.liggghts id type x y z vx vy vz fx fy fz omegax omegay omegaz radius
dump dumpstl all mesh/stl 100 post/dump*.stl

Can you help me through this. I am using paraview 5.4