(sorry if you’re seeing this msg twice. the first one wasn’t sent. here it is again in its entirety)
It’s not really a diffusion coefficient in the strictest sense of the word in the way that a molecular solute has a diffusion coefficient. But in case it’d be of interest, I was only exploring ‘diffusion’ in granular flows due to this 2014 paper. Right now, I am putting aside trying to obtain the diffusion coefficient until I’ve read enough papers on previous studies related to it.
My question this time is about chute flows in LAMMPS. As I’ve mentioned previously, when I run my simulations I always get flagged by an error which reads ‘Lost atoms: original x current y.’ The documentation page for this specific error message attributes the loss of atoms to bad dynamics and I cannot quite figure out why since my script is rather simple – it’s just a flow of 9900 0.5mm beads (discs) over a bed of discs with twice the diameter:
units si
dimension 2
atom_style sphere
atom_modify id yes
boundary p fs p
newton off
comm_modify vel yes
variable diam equal 0.0005
lattice sq ${diam}
region hill block 0 100 0 100 0 1 units lattice
create_box 1 hill
neighbor 0.001 bin
neigh_modify delay 0
variable kn equal 200000
variable dcnormal equal 33.5
variable dctangent equal 0
variable syc equal 0.5
variable tdf equal 1
pair_style gran/hertz/history {kn} NULL {dcnormal} {dctangent} {syc} ${tdf}
pair_coeff * *
timestep 0.0001
create_atoms 1 region hill
group gm id > 100
group bed id <> 1 100
set group bed diameter 0.001 density/disc 2450
set group gm diameter ${diam} density/disc 2450
fix 1 gm nve/sphere disc
fix 2 bed freeze
fix 4 all wall/gran hertz/history {kn} NULL {dcnormal} NULL {syc} {tdf} yplane 0 NULL
reset_timestep 0
fix 7 all gravity 9.8 chute 18
thermo 100
thermo_style custom step atoms ke pe etotal
thermo_modify lost warn norm no
dump dc1 all custom 100 diff.incflo.grandiff* id x y
fix 5 all enforce2d
run 5000
However, I wrote another script in lj units while (retaining g=9.8) and the 2:1 diameter ratio of the roughened surface to the flowing assembly (positions contained in data.2dposgen ) and the problem goes away.
units lj
dimension 2
atom_style sphere
boundary p fs p
newton off
comm_modify vel yes
read_data data.2dposgen
group gm id > 100
group bed id <> 1 100
neighbor 0.1 bin
neigh_modify delay 0
variable kn equal 200000
variable dcnormal equal 33.5
variable dctangent equal 0
variable syc equal 0.5
variable tdf equal 0
pair_style gran/hooke/history {kn} NULL {dcnormal} {dctangent} {syc} ${tdf}
pair_coeff * *
timestep 0.0001
fix 1 gm nve/sphere disc
fix 2 bed freeze
fix 4 all gravity 9.8 chute 23.0
thermo 100
thermo_style custom step atoms ke pe etotal
thermo_modify lost warn norm no
fix 5 all enforce2d
run 110000
What could be the possible reason/s for the ‘loss of atoms’ in si and the non-appearance of this error in lj units?
Lastly, the documentation page for fix id gravity g chute theta has g=1 as a default value and is also g value in the sample chute input script that come with LAMMPS. Since g is in units of force/mass and force in lj units is f*/m = fsigma/(mass*epsilon) with mass=epsilon=sigma=1, would it not make sense to set the value of g to 9.8 instead of 1?
Thank you for your patience and guidance.