Sphere and multisphere mixing in rotary drum

Submitted by Wu Wencong on Mon, 09/14/2020 - 15:37

Hello,

I try to mix sphere particles and multisphere particles in the rotray drum. The multisphere is consist of two adjacent spheres.

But in the simulation, some particles move strangely, which makes the rusults unreliable. When the drum starts rotating, an "explosion" occurs as shown in the attachment picture 1, 2 and 3. And during rotating, some paricles suddenly jump from the middle of the particle bed as shown in picture 4.

I've tried to decrease coefficient of restitution, decrease rotary speed, only put multispheres in the drum, the problem still exist. But mixing of pure spheres seems normal without such problem. So I guess it may be the problem of the contact model of multisphere particles? I hope someone can help.

Here is my input file:

# Wu,Wencong
#multisphere
#modify_timing on

atom_style sphere
boundary m m m
newton off
atom_modify map array sort 0 0
communicate single vel yes
units si
processors 2 2 4

region reg block -0.12 0.12 -0.12 0.12 -0.005 0.155 units box
create_box 3 reg

neighbor 0.003 bin
neigh_modify delay 0

#Material properties
fix m1 all property/global youngsModulus peratomtype 1e7 1e7 1e7
fix m2 all property/global poissonsRatio peratomtype 0.24 0.24 0.24
fix m3 all property/global coefficientRestitution peratomtypepair 3 0.82 0.82 0.82 0.82 0.82 0.82 0.82 0.82 0.82
fix m4 all property/global coefficientFriction peratomtypepair 3 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5

#pair style
pair_style gran model hertz tangential history #rolling_friction cdt
pair_coeff * *

timestep 0.00001

fix gravi all gravity 9.81 vector 0.0 -1.0 0.0

#import mesh from cad
fix cad1 all mesh/surface file meshes/fandb.stl type 1 #scale 1 move -0.097 -0.097 0.0 curvature 1e-5
fix cad3 all mesh/surface file meshes/wall.stl type 1 #scale 1 move -0.097 -0.097 0.0 curvature 1e-5

#use the inported mesh as granular wall
fix drumwall all wall/gran model hertz tangential history mesh n_meshes 2 meshes cad1 cad3 #cad2

#region of insertion
region bc cylinder z 0.0 0.0 0.0751 0.0 0.15 units box
region bc1 block -0.08 0.08 -0.04 0.01537 0.0 0.15 units box

#bp particles
group bp initialize
group bp type 2
fix intSphere bp nve/sphere
fix pts1 bp particletemplate/sphere 15485863 atom_type 2 density constant 1358.8 radius constant 0.0015
fix pdd1 bp particledistribution/discrete 15485867 1 pts1 1.0

#multishpere particles
group multi initialize
group multi type 3
fix intMulti multi multisphere
fix pts2 multi particletemplate/multisphere 15485863 atom_type 3 density constant 1358.8 nspheres 2 ntry 1000000 spheres file multishape/stone1.test scale 0.001 type 1
fix pdd2 multi particledistribution/discrete 15485867 1 pts2 1.0

#make a dump of particles and the stl file
dump dmp1 bp custom/vtk 2000 post/bp_*.vtk id type type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius
dump dmp2 multi custom/vtk 2000 post/multi_*.vtk id type mol id_multisphere x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius
dump dmp4 bp custom 20000 bp/coor1_*.csv x y z
dump dmp5 multi custom 20000 multi/coor2_*.csv x y z
dump dmp6 all custom 20000 all/coor_*.csv x y z
dump dumpstl all mesh/stl 2000 post/dump*.stl cad3 #cad2

#bp particles insertion
fix ins1 bp insert/pack seed 32452843 distributiontemplate pdd1 vel constant 0 -1.0 0 insert_every once overlapcheck yes all_in yes volumefraction_region 0.1 region bc

#run with particle insertion
run 10000
unfix ins1

#run to let particle settle

run 40000

#multishphere particles insertion
fix ins2 multi insert/pack seed 32452843 distributiontemplate pdd2 vel constant 0 -1.0 0 insert_every once overlapcheck yes all_in yes volumefraction_region 0.2 region bc1
#run with particle insertion
run 10000
unfix ins2

#run to let particle settle

run 40000

#moving mesh
fix movecad1 all move/mesh mesh cad1 rotate origin 0.0 0.0 0.0 axis 0.0 0.0 1.0 period 1.2 #50rpm
fix movecad3 all move/mesh mesh cad3 rotate origin 0.0 0.0 0.0 axis 0.0 0.0 1.0 period 1.2

#run
#restart 1000000 dump.restart
run 3000000 #real time=30s
write_restart drum.restart

Thanks,
Wu, Wencong

AttachmentSize
Image icon 1.png173.82 KB
Image icon 2.png180.32 KB
Image icon 3.png182.62 KB
Image icon 4.png219.31 KB

Wu Wencong | Mon, 09/14/2020 - 17:16

Hellp mschramm,

10.6% of Rayleigh time and 3.6% of Hertzian time.

By the way I use the timestep with 21.2% of Rayleigh time for the sphere particle mixing before, but it seems stable.