Hi,
I am new to the LIGGGHTS and I just want to simulate the powder spreading process. I have the STL file of a roller, and a surface to store the powder. But when I was doing the simulation, the particles always pass through the wall I imported from an STL file. Can anyone help me with this?
Thanks,
Mill
The input file:
# Moving mesh example
atom_style granular
atom_modify map array
boundary f f f
newton off
communicate single vel yes
units cgs
#region
region reg block 0 1.0 0 10 0 2.0 units box
create_box 1 reg
neighbor 0.05 bin
neigh_modify delay 0
#Material properties
fix m1 all property/global youngsModulus peratomtype 5.e7
fix m2 all property/global poissonsRatio peratomtype 0.45
fix m3 all property/global coefficientRestitution peratomtypepair 1 0.9
fix m4 all property/global coefficientFriction peratomtypepair 1 0.05
fix m5 all property/global characteristicVelocity scalar 2.
fix m6 all property/global cohesionEnergyDensity peratomtypepair 1 300000
#pair style
pair_style gran model hertz tangential history cohesion sjkr #Hertzian with cohesion
pair_coeff * *
timestep 0.0000001
fix integr all nve/sphere
fix gravi all gravity 981 vector 0.0 0.0 -1.0
#box walls
fix boxwalls_x1 all wall/gran model hooke tangential history primitive type 1 xplane 0.0
fix boxwalls_x2 all wall/gran model hooke tangential history primitive type 1 xplane +1.0
fix boxwalls_y1 all wall/gran model hooke tangential history primitive type 1 yplane 0.0
fix boxwalls_y2 all wall/gran model hooke tangential history primitive type 1 yplane +10.0
fix boxwalls_z1 all wall/gran model hooke tangential history primitive type 1 zplane -0.0
fix boxwalls_z2 all wall/gran model hooke tangential history primitive type 1 zplane +2.0
#import mesh from cad:
fix cad1 all mesh/surface file bed1.stl type 1
fix cad2 all mesh/surface file bed2.stl type 1
fix cad3 all mesh/surface file bed3.stl type 1
fix feedstock all mesh/surface/stress file feedstock.stl type 1
fix platform all mesh/surface/stress file platform.stl type 1
fix roller all mesh/surface/stress file roller.stl type 1
fix granwalls all wall/gran model hertz tangential history cohesion sjkr mesh n_meshes 6 meshes cad1 cad2 cad3 feedstock platform roller
#region of insertion
region bc block 0 1 1 4 0.5 1.2 units box
#particle distributions
fix pts1 all particletemplate/sphere 15485863 atom_type 1 density constant 2500 radius constant 0.004
fix pdd1 all particledistribution/discrete 15485867 1 pts1 1.0
fix ins all insert/pack seed 32452843 distributiontemplate pdd1 vel constant 0. 0. -80 &
insert_every 2000 overlapcheck yes all_in yes particles_in_region 10000 region bc
#group nve_group region reg
#fix integr nve_group nve/sphere
#thermo settings
compute 1 all erotate/sphere
thermo_style custom step atoms ke c_1 vol
thermo 1000
thermo_modify lost ignore norm no
#make a dump of particles and the stl file
dump dmp all custom/vtk 200 post/movingMesh_*.vtk id type type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius
#dump dumpstress all mesh/gran/VTK 200 post/mesh_*.vtk stress wear roller
dump dumpstl all mesh/stl 200 post/dump*.stl
#run with particle insertion
run 8000 upto
unfix ins
#run to let particle settle
run 10000 upto
run 1
#moving mesh
#fix moveplatform all move/mesh mesh platform linear 0 0. -10.0
#run 11000 upto
#unfix moveplatform
#now spread
fix moveroller all move/mesh mesh roller linear 0 100. 0
run 25000
Attachment | Size |
---|---|
![]() | 2.55 KB |
![]() | 2.55 KB |
![]() | 2.55 KB |
![]() | 4.3 KB |
![]() | 4.3 KB |
arnom | Wed, 08/08/2018 - 11:06
Have you verified that the
Have you verified that the timestep restriction is satisfied? You can do that using fix check/timestep/gran.
qq935074410 | Thu, 09/06/2018 - 16:16
Solved
Thank you for your reply. This problem has been solved, the Young's modulus I was using is too big. I just tried a smaller young's modulus and I believe decrease the time step can also solve this.
Now I am considering to output the volume fraction of the compacted particles. Do you have any experience of doing this? I am using the fix ave/euler to calculate it and want to use dump euler/vtk to output the value. But I can not find any document about the dump euler/vtk fucntion.
Thanks,
Miao