Particles are disappearing at the buttom of cylinder

Submitted by gibel on Wed, 07/12/2023 - 09:30

This was supposed to be an easy simulation but I am stuck here.
1) I am inserting particles in cylinder for few seconds
2) After insertion I want to settle it and make a packing in cylinder. My main aim is to fill cylinder more than 80% and make packing tighter.

When I run my script, simulation goes well. But while visualizing it, I see that particles are not piling up in cylinder instead, it penitrate my cylinder buttom and goes out.

I did used f f f boundary condition but I am still not able to fix it.

For sure, my mesh file does have solid buttom.

I am expecting quick suggestion of help ....

I have uploaded my script and mesh file here..

THank youy

```

###################################Header for General commands#######################################################

atom_style granular #Simulation of particles

boundary f f f #fixed boundaries -> particles will be deleted if leaving the simulation box

units si

communicate single vel yes #default

newton off #default

###################################System variables##################################################################

#Definition of boundaries
variable xmin equal -5
variable xmax equal 5

variable ymin equal -5
variable ymax equal 5

variable zmin equal 0
variable zmax equal 35

#Definition of the timestep

variable dt equal 1e-6 #timestep = 0.0001 second; Each iteration step represents 0.0001 seconds.

###################################Specific variables for current simulation#########################################

variable natoms equal 2

####variable for material properties####

####Young Modulus####
variable youngmodulus1 equal 1e8 #N/mm²
variable youngmodulus2 equal 1e8 #N/mm²

####Poission ratio####
variable poission1 equal 0.3
variable poission2 equal 0.3

####variable for contact properties####

####coefficient of restitution####
variable CoR11 equal 0.6
variable CoR12 equal 0.6
variable CoR21 equal 0.6
variable CoR22 equal 0.6

####sliding friction coefficient####
variable sf11 equal 0.3
variable sf12 equal 0.3
variable sf21 equal 0.3
variable sf22 equal 0.3

####rolling friction coefficient####
variable rf11 equal 0.6
variable rf12 equal 0.6
variable rf21 equal 0.6
variable rf22 equal 0.6

####variable for particle####3) inserted so far.
#Number of particle radius
variable nradii equal 1

variable radius1 equal 0.1 #m

variable frac1 equal 1.0 #100%

variable density equal 2000 #kg/m³

####filling parameters####

variable filltime equal 8 #seconds

variable fillmass equal 8000 #kg

variable fillmassrate equal ${fillmass}/${filltime} #kg/s

variable fillsteps equal ${filltime}/${dt} #Transform time to iteration steps

####settle time####

variable settletime equal 10 #second

variable settlesteps equal ${settletime}/${dt} #Transform time to iteration steps

###################################Definition of simulationbox#######################################################

region reg block ${xmin} ${xmax} ${ymin} ${ymax} ${zmin} ${zmax} units box

create_box 2 reg

neighbor 0.004 bin #default3) inserted so far.
neigh_modify delay 0 #default

#################################Definition of the contact models####################################################

pair_style gran model hertz tangential history rolling_friction epsd2 #contact model

pair_coeff * * #default

timestep ${dt}

fix integrator all nve/sphere #default

fix gravi all gravity 9.81 vector 0.0 0.0 -1.0 #gravity of 9.81 m/s² in negative z direction

###################################Definition of Material properties#################################################

fix m1 all property/global youngsModulus peratomtype ${youngmodulus1} ${youngmodulus2}

fix m2 all property/global poissonsRatio peratomtype ${poission1} ${poission2}

fix m3 all property/global coefficientRestitution peratomtypepair ${natoms} 0.6 0.6 0.6 0.6

fix m4 all property/global coefficientFriction peratomtypepair ${natoms} ${sf11} ${sf12} ${sf21} ${sf22}

fix m5 all property/global coefficientRollingFriction peratomtypepair ${natoms} ${rf11} ${rf12} ${rf21} ${rf22}

###################################Generation and Loading of the Geometry .stl#######################################

fix cylinder all mesh/surface file cylinder.stl type 2 scale 0.001

fix walls all wall/gran model hertz tangential history rolling_friction epsd2 mesh n_meshes 1 meshes cylinder

###################################Generation and Insertion of the particles#########################################

fix pts1 all particletemplate/sphere 10487 atom_type 1 density constant ${density} radius constant ${radius1}

fix pdd1 all particledistribution/discrete 32452867 ${nradii} pts1 ${frac1}

fix ins_mesh all mesh/surface/planar file insertionface.stl type 1 scale 0.91

fix ins all insert/stream seed 86028157 distributiontemplate pdd1 &
mass ${fillmass} massrate ${fillmassrate} overlapcheck yes all_in yes vel constant 0 0 -0.1 &
insertion_face ins_mesh extrude_length 1

###################################Dumping of the data for post-processing to visualize############################

shell mkdir post

#Definition of the dumptime

variable dumptime equal 0.05 # Every 0.05 s 1 image
variable dumpstep equal ${dumptime}/${dt} #Transform to iteration steps
dump dmpparticle all custom ${dumpstep} post/particles_*.liggghts id type x y z vx vy vz fx fy fz radius mass
dump dmpcylinder all mesh/stl ${dumpstep} post/cylinder*.stl cylinder
dump dmp all custom/vtk ${dumpstep} post/particles_*.vtk id type type x y z ix iy iz vx vy vz fx fy fz mass radius
dump dmp0 all custom ${dumpstep} preprocessing_data/dump*.data id type x y z mass radius

fix ts_check all check/timestep/gran ${dumpstep} 0.1 0.1
thermo_style custom step cpu atoms ke f_ts_check[1] f_ts_check[2] #f_ressort # ke
thermo ${dumpstep}

####################################RUN the simulation filling###########################################################

#run ${fillsteps}
run 15000000

unfix ins

##################################RUN the simulation #settling#############################################################

run ${settlesteps}
unfix ins

```