Lost atoms

I tried to deposit silica on a silicon substrate, but when I added silica after relaxation, I got an atom loss error, what is the reason for this?

my input file:

dimension 3
units real
atom_style full
boundary p p f

neighbor 2.0 bin
neigh_modify every 100 delay 0 check yes

read_data Si.data extra/atom/types 2 extra/bond/types 1 extra/angle/types 1 extra/special/per/atom 2 extra/dihedral/types 1 extra/bond/per/atom 2 extra/angle/per/atom 1 extra/dihedral/per/atom 1

region fix1 block INF INF INF INF INF -9.964 units box
region con_temp block INF INF INF INF -9.964 -5.891 units box
region free_layer block INF INF INF INF -5.891 0.5 units box

group fix1 region fix1
group con_temp region con_temp
group free_layer region free_layer

group Si type 1
group addatoms type 2 3

mass 1 28
mass 2 16
mass 3 28

pair_style reax/c lmp_control checkqeq yes
pair_coeff * * ffield7.reax Si O Si

timestep 1

velocity all create 300 39849 mom yes rot yes dist gaussian
velocity fix1 set 0 0 0 units box

fix f1 fix1 setforce 0.0 0.0 0.0
fix nvt1 Si nvt temp 300 300 1.0
fix nvt2 addatoms nvt temp 300 300 1.0
fix 1 all qeq/reax 1 0.0 10.0 1.0e-6 reax/c

min_style cg
minimize 1.0e-4 1.0e-6 1000 10000

dump 1 all custom 10000 dump.xyz id type x y z
dump_modify 1 sort id

thermo 1000
thermo_style custom step temp pe ke etotal time

run 10000

molecule dimer SiO2.dimer

region slab block 5 30 5 30 32 36 units box

fix deposit1 addatoms deposit 100 0 10000 12345 region slab mol dimer near 3.0 vz -10 -10 units box
fix r1 all wall/reflect zhi EDGE

run 1100000

print “Program successfully finish!”

Read molecule template dimer:
1 molecules
0 fragments
3 atoms with max type 2
2 bonds with max type 1
1 angles with max type 1
0 dihedrals with max type 0
0 impropers with max type 0
Setting up Verlet run …
Unit style : real
Current step : 10016
Time step : 1
Per MPI rank memory allocation (min/avg/max) = 11.6 | 16.93 | 23.54 Mbytes
Step Temp PotEng KinEng TotEng Time
10016 303.40315 -104174.91 993.92149 -103180.99 10000
ERROR: Lost atoms: original 1103 current 1100 (…/thermo.cpp:436)
Last command: run 1100000

It is probably a combination of reasons, the 1fs timestep with a reaxff force field being one of them.

It should be easy to see, if you dump your coordinates more frequently and then visualize the trajectory.
You may also want to change your boundary settings from “p p f” to “p p m”.

I tried depositing silica on a silicon substrate with a reaction force field, and the F boundary selected in the z-axis, the M boundary seemed impossible

You have to explain that in more detail. It is quite possible to replace “f” with “m”.

I tried to deposit silica on a silicon substrate, silica 30 angstroms above the silicon substrate to the surface of the silicon substrate, I put the silica topology in the molecular template file, including bonds, number of corner atom types, etc., but when using the fix deposit command for molecular deposition, silica atoms were lost

You keep repeating the same thing, but you are not paying attention or following up on what is being suggested to debug or improve your simulation. This way you will never be able to run a successful simulation and people will stop making suggestions when they see their advice is not being followed.

In ReaxFF simulations there must be no bonds or angles etc. Those are implicit in the ReaxFF force field and recomputed on the fly. Please study the publications describing ReaxFF.

Thanks for the suggestion