particles blowing upon contact

Submitted by NSalloum on Wed, 01/09/2019 - 11:20

hello,

I am trying to perform a simulation for a flowing cohesive powder with high moisture content (10%), so I thought about using the washino/capillary/viscous model, but the particles are repelling with high speed (blowing) once they get in contact from the very 1st time-step, and they keep acting in the same manner .
The % of Hertz time is exceeding 10 unlikely although the particles are flowing freely due to gravity, and % of Reyleigh time is below 20.

So may you please provide me by some suggestions that would solve the issue.

best wishes,

Please find the input script I use:

###### Angle of Repose ######
#coarse graining application
coarsegraining 20.0 model_check warn
modify_timing verbose
### Initialization

# Preliminaries
########## Standard block #############
atom_style sphere
atom_modify map array
boundary f f f
newton off
communicate single vel yes
units si
######################################

# Simulation Domain
region domain block -0.05 0.05 -0.05 0.05 -0.086 0.2 units box
create_box 2 domain

# Neighbor listing
neighbor 0.0000075 bin #radius_max #particle diameter
neigh_modify delay 0 #binsize 0.000124

### Setup

#Material_1=Maize Starch extra white
#Material_2=Container_Aluminium #Youngs_M_7e10

# Define Material propertiesf
fix m1 all property/global youngsModulus peratomtype 1.0e7 1.0e7
fix m2 all property/global poissonsRatio peratomtype 0.3 0.3
fix m3 all property/global coefficientRestitution peratomtypepair 2 0.6 0.3 0.3 0.3
fix m4 all property/global coefficientFriction peratomtypepair 2 0.44 0.129 0.129 0.1
fix m5 all property/global coefficientRollingFriction peratomtypepair 2 5.2 2 2 0.1

fix m6 all property/global minSeparationDistanceRatio scalar 1.01
fix m7 all property/global maxSeparationDistanceRatio scalar 1.1
fix m8 all property/global surfaceLiquidContentInitial scalar 0.01
fix m9 all property/global surfaceTension scalar 1.456
fix m10 all property/global fluidViscosity scalar 0.0178
fix m11 all property/global contactAngle peratomtype 30.0 15.0
#fix m12 all property/global maxLiquidContent peratomtype 25.0 25.0

# Define contact model
pair_style gran model hertz tangential history cohesion washino/capillary/viscous rolling_friction epsd2
pair_coeff * *

# Time step
timestep 0.0000017 #1.7e-6

# Define Gravity
fix grav all gravity 9.81 vector 0.0 0.0 -1.0

# Import mesh from cad
fix cad1 all mesh/surface file meshes/meshed_Hopper_D6_1_face_extension.stl type 2 rotate axis 1 0 0 angle -90 move 0.0 0.0 38.01 scale 0.001

fix cad2 all mesh/surface file meshes/meshed_Container_face_1.stl type 2 rotate axis 1 0 0 angle 90 move 0.0 0.0 -80.0 scale 0.001

fix cad3 all mesh/surface file meshes/meshed_Simplified_Auger_D5,9_ST3,5_KD2,2_58_160mm.stl element_exclusion_list read exclude3 type 2 rotate axis 1 0 0 angle 90 move 0.0 0.0 63.0 &
scale 0.001 curvature_tolerant yes

fix cad4 all mesh/surface file meshes/meshed_8-108-090-138_p01_Ruehrer.stl type 2 rotate axis 1 0 0 angle 180 &
move 0.0 0.0 51.0 scale 0.001 curvature 1e-5

# Use the imported meshes as granular walls
fix geometry1 all wall/gran model hertz tangential history cohesion washino/capillary/viscous rolling_friction epsd2 mesh n_meshes 4 meshes cad1 cad2 cad3 cad4

#regions of insertion
region factory1 cylinder z 0.0 0.02 0.01 0.045 0.046 units box
region factory2 cylinder z 0.0 -0.02 0.01 0.045 0.046 units box

# Integrator
fix integrate all nve/sphere

#Defining region to measure the mass flow rate

region mass_cylinder cylinder z 0 0 0.023 -0.08 -0.02 units box

#Variables for calculating the flow and the time step that are required in the print data

variable t equal "step*dt"
variable mass equal "mass(all,mass_cylinder)*1000"

# Create stopper for funnel
fix stopper all wall/gran model hertz tangential history cohesion washino/capillary/viscous rolling_friction epsd2 primitive type 2 zplane 0.0

# Particle insertion
fix pts1 all particletemplate/sphere 15485863 atom_type 1 density constant 1493.6 &
radius constant 0.0000075 volume_limit 1e-20

fix pdd all particledistribution/discrete 15485867 1 pts1 1.0

fix ins1 all insert/rate/region seed 32452843 distributiontemplate pdd &
mass 0.0025 massrate 0.0025 insert_every 1000 &
overlapcheck yes vel constant 0.0 0.0 -1.0 region factory1 ntry_mc 10000

fix ins3 all insert/rate/region seed 32452843 distributiontemplate pdd &
mass 0.0025 massrate 0.0025 insert_every 1000 &
overlapcheck yes vel constant 0.0 0.0 -1.0 region factory2 ntry_mc 10000
#5g

# Thermodynamic output settings
thermo_style custom step atoms ke cpu
thermo 10000
thermo_modify lost ignore norm no

# Check time step and initialize dump file
fix ctg all check/timestep/gran 1 0.01 0.01
run 1

# Create imaging information #make a dump of particles and the stl file
dump dmp all custom/vtk 58824 post/movingMesh_*.vtk id type type mass x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius diameter
dump dumpstl all mesh/stl 58824 post/dump*.stl

### Execution and further settings

# Fill the hopper
run 705883 upto

# Pull the stopper
unfix stopper

#apply rotation to the auger

variable w1 equal -5.23598775 #50 RPM
variable w2 equal -5.23598775 #50 RPM

fix rotatecad3 all move/mesh mesh cad3 rotate/variable origin 0.0 0.0 0.0 axis 0.0 0.0 1.0 omega v_w1
fix rotatecad4 all move/mesh mesh cad4 rotate/variable origin 0.0 0.0 0.0 axis 0.0 0.0 1.0 omega v_w2

#printout mass flow

fix output all print 294118 "$t,${mass}" file output_mass.csv screen yes title "t,mass"

run 35294118

#Simulation is Done
print "The Simulation is now Ready"

Philippe's picture

Philippe | Wed, 01/23/2019 - 08:12

Your time step is most likely too large. Cohesion models often require a smaller timestep than the Hertz contact model.

cheers
Philippe

NSalloum | Wed, 01/23/2019 - 08:36

Thanks Philippe for your note.

The thing is that I tried lowering the time step also until I reached less than 10% as a percentage of Reyleigh time, but the particles are still blowing.

best wishes,
Nizar

Philippe's picture

Philippe | Tue, 02/05/2019 - 13:28

You may need 1% or even lower with some cohesion models. Just give it a shot and see if you can find a stable timestep.

cheers
Philippe

paul | Tue, 01/29/2019 - 09:30

Create a simulation where only two particles are approaching each other. If this is unstable, do reduce contact model complexity (i.e. take out the cohesion), and reintroduce them one at a time.

For this specific one, I'd advise going way below 10% of the Rayleigh time, although this is dependent on the material properties of the liquid bridge and cutoff radii.

Philippe's picture

Philippe | Tue, 02/05/2019 - 13:26

I second this. The timestep sizes necessary for some cohesion models are well below those needed for a "dry" granular simulation.