Dear lammps-users,
Since a while now I have been trying to model compression on a solid cube. Since the mechanics of the cube should be based on the discrete element method (DEM), I would like to use pair_styles of the granular functions of LAMMPS. However, all particles should be bonded, in order for the cube to be an actual solid. When I compress the cube in the z-direction, particles will move apart in the x- and y-direction due to the Poisson’s effect. In this direction, particles do not interact anymore, while I actually would like a bonded contact being streched in the latter directions due to the Poisson’s effect. This should then give stress results of the bindings.
Does anybody know if this is possible to model with LAMMPS?
If yes, with what function could I assign a bonded contact without removing interactions corresponding to DEM?
Below you can see my script so far:
#------------------------------------Initialization--------------------------------------------------------------------------------------------
atom_style sphere
boundary p p p
newton off
comm_modify vel yes
------------------------------------Make geometry--------------------------------------------------------------------------------------------
lattice sc 1
region reg block 0 100 0 100 0 100 units box
create_box 1 reg
create_atoms 1 box
neighbor 0.2 bin
neigh_modify delay 5
#-------------------------------------Define binding criteria----------------------------------------------------------------------------------
pair_style gran/hooke/history 561e6 241e6 50 NULL 5 0
pair_coeff * *
#------------------------------------------Settings--------------------------------------------------------------------------------------------
compute peratom all pe/atom
variable tmp equal “lz”
variable L0 equal {tmp}
print "length, tmp: {tmp}"
print “Initial Length, L0: ${L0}”
#------------------------------------------Deformation-----------------------------------------------------------------------------------------
variable srate equal 1.0e1
variable srate1 equal “v_srate/1.0e3”
fix 2 all deform 1 z erate ${srate1} x volume y volume #units box remap x//box length increases by srate1 * 100 percent
variable L equal “lz - v_L0”
Output strain and stress info to file
variable strain equal “v_L/v_L0”
variable p1 equal “v_strain”
variable p2 equal “-pxx”
variable p3 equal “-pyy”
variable p4 equal “-pzz”
fix def1 all print 100 “{p1} {p2} {p3} {p4}” file solid_comp_lin.def1.txt screen no
#--------------------------------------Run simulation------------------------------------------------------------------------------------------
timestep 0.001
dump 1 all custom 500 dump.solid id type xs ys zs radius c_peratom fx fy fz
run 10000
It would be great if somebody could give me some advice!
Thanks a lot for the input in advance.
Best,
Aksel