Tracking problem of particle 'id' in CFDEMcoupling...

Submitted by bhwang on Sun, 12/17/2017 - 09:06

Hi, I'm simulating particles (~ 20000) moving in the fluid (with no initial flow).
After the calculation, I wanted to track the location of some particles (5~10 particles) in the simulation using paraview.
However, here is the problem that the 'id' of particle keeps changing with time variation.
(it means that if the 'id' of lowest positioned particle is No.490, after some time steps later the 'id' of same particle is not No.490)
The problem occurs due to the parallel processing?? or array style??
If anyone knows about the answer, please comments about my question.

Here is the script of my LIGGGHTS input.
Thanks :)

=========================================================================================
# Pour granular particles into chute container, then induce flow
log ../DEM/log.liggghts
# thermo_log ../DEM/post/thermo.txt

atom_style granular
atom_modify map array sort 0 0
communicate single vel yes
processors 2 2 3

boundary f f f
newton off

units si

# read the restart file
read_restart ../DEM/post/restart/liggghts.restart
reset_timestep 0

neighbor 0.003 bin
neigh_modify delay 0 binsize 0.0 #use default value

# Material properties required for granular pair styles [kN?]

fix m1 all property/global kn peratomtypepair 2 89298 89298 89298 89298
fix m2 all property/global kt peratomtypepair 2 35156 35156 35156 35156
fix m3 all property/global gamman peratomtypepair 2 0.25582 0.25582 0.25582 0.25582
fix m4 all property/global gammat peratomtypepair 2 0.16052 0.16052 0.16052 0.16052
fix m5 all property/global poissonsRatio peratomtype 0.27 0.27
fix m6 all property/global coefficientFriction peratomtypepair 2 0.3 0.3 0.3 0.3
fix m7 all property/global coefficientRollingFriction peratomtypepair 2 0.1 0.1 0.1 0.1

# pair style
pair_style gran model hooke/stiffness tangential history rolling_friction cdt
pair_coeff * *

# timestep, gravity
timestep 0.000001
fix gravi all gravity 9.81 vector 0.0 0.0 -1.0

# walls
fix funnel all mesh/surface file ../DEM/kyushu_mod.stl type 2 scale 1.0
fix geometry all wall/gran model hooke/stiffness tangential history mesh n_meshes 1 meshes funnel
#fix stopper all wall/gran model hooke/stiffness tangential history primitive type 2 zplane 0.925
fix xwalls1 all wall/gran model hooke/stiffness tangential history primitive type 2 zcylinder 0.1875 0.0 0.0
fix zwalls1 all wall/gran model hooke/stiffness tangential history &
primitive type 2 zplane 0.0

# cfd coupling
fix cfd all couple/cfd couple_every 100 mpi
fix cfd2 all couple/cfd/force

#variable vx equal vx[1]
#variable vy equal vy[1]
#variable vz equal vz[1]
#variable time equal step*dt
#fix extra all print 100 "${time} ${vx} ${vy} ${vz}" file ../DEM/post/velocity.txt title "#" screen no

# apply nve integration to all particles that are inserted as single particles
fix integr all nve/sphere

# screen output (5000->2000)
compute rke all erotate/sphere
thermo_style custom step atoms ke c_rke vol
thermo 500000
thermo_modify lost ignore norm no
# compute_modify thermo_temp dynamic yes

# insert the first particles so that dump is not empty (5000 -> 2000)
dump dmp all custom 20000 ../DEM/post/dump.liggghts_run id type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius

run 0
=========================================================================================================

paul | Sat, 12/30/2017 - 10:58

If you want to preserve particle identity by id, do not use atom_modify map array sort.

- Paul

bhwang | Wed, 01/10/2018 - 05:54

I saw your comment now! Thank you! :)