Dear Lammps developers and users,
I am new to LAMMPS and have a basic question on GCMC fix. I wrote a simple LAMMPS code (attached here) to model the adsorption of carbon atoms on the surface of a metallic nanoparticle (e.g., a nickel nanoparticle here). GCMC has been widely used for studying vapor deposition (e.g., 10.1103/PhysRevLett.115.205502).
I need to insert and remove carbon atoms within a shell region around the surface of the nanoparticle. (Here, I defined a sphere with a specified inner and outer diameter).
However, when I activate the GCMC fix, I face an error (i.e., ERROR: Lost atoms: original 1289 current 218 (…/thermo.cpp:438)).
When I disable the “fix gcmc” command in the code, I don’t get any errors. To resolve the issue, I turned off the MC movement in the GCMC fix, and also changed the potential value (mu) as well as other parameters. Unfortunately, none of these steps resolved the problem, and I still face the error. I am using the version of lammps/20Nov2019 + MPI. I have attached the code and the potential I am using.
I checked the topics on “GCMC for atom adsorption instead of molecule one” but couldn’t find a similar issue posted by other users. I do appreciate it if someone tells me how to fix this issue.
Bests,
Hossein
LAMMPS Code:
variable T universe 500 600 #Temperature
variable R universe 1 2 #Run Step
variable D universe 3 3 #particle diameter nm
variable O universe 33 43 #outer shell in A
variable I universe 27 37 #inner shell in A
label my_loop
units metal
atom_style atomic
dimension 3
boundary p p p
lattice fcc 3.52
read_data Ni_NPs_dp$D_annealed.txt
mass 1 12.011 # C
mass 2 58.710 # Ni
group carbon_impurities type 1
group Ni_NPs_grp type 2
pair_style hybrid airebo 3 0 0 eam morse 4.0
pair_coeff * * airebo CH.airebo C NULL
pair_coeff 2 2 eam Ni_u3.eam
pair_coeff 1 2 morse 0.433 3.244 2.316 4
minimize 1e-8 1e-8 1000 100000
velocity all create 300 25489521 mom no rot no
fix fix_1_2 all nvt temp 300 300 50
fix fix_3_additiona5_3 Ni_NPs_grp recenter INIT INIT INIT units box
fix fix_3_additiona5_2 Ni_NPs_grp momentum 1 angular
neighbor 2 bin
neigh_modify every 10 delay 0 check no
thermo_style custom step time temp ke pe
thermo 2000
run 5000
#----------------------------------------------------------------------
unfix fix_1_2
fix fix_1_3 all nvt temp 300 $T 25
run 60000
#----------------------------------------------------------------------
unfix fix_1_3
fix fix_1_4 all nvt temp $T $T 25
run 60000
#----------------------------------------------------------------------
unfix fix_1_4
region spr_in_reg sphere 0 0 0 55 units box
region spr_out_reg sphere 0 0 0 95 units box
region shell_insert_del_reg intersect 2 spr_out_reg spr_in_reg
group shell_insert_del_grp region shell_insert_del_regfix fix_1_5 all nvt temp $T $T 50
fix my_gcmc_1 carbon_impurities gcmc 10 100 100 1 2949445 $T -5.5 0.1 group carbon_impuritiestimestep 0.25
dump vdump_1 all custom 20000 ROOT_$R_MD_NiC_VD_dp_$D_$T_K_xyz id type x y z
run 100000
#----------------------------------------------------------------------
undump dump_1
unfix fix_1_5
unfix deposit_atoms_VD_MD1
unfix fix_3_additiona5_3
unfix fix_3_additiona5_2
unfix my_NVT_Ni
clear
next T R A D B U W
jump Deposition_in.lammps my_loop
Deposition_in.lammps (2.5 KB)
CH.airebo (904.9 KB)
Ni_u3.eam (35.6 KB)
Ni_NPs_dp3_annealed.txt (31.1 KB)