# NEB simulation of vacancy hopping in silicon crystal units metal atom_style atomic atom_modify map array boundary p p p atom_modify sort 0 0.0 # coordination number cutoff variable r equal 2.835 # diamond unit cell variable a equal 5.431 lattice custom $a & a1 1.0 0.0 0.0 & a2 0.0 1.0 0.0 & a3 0.0 0.0 1.0 & basis 0.0 0.0 0.0 & basis 0.0 0.5 0.5 & basis 0.5 0.0 0.5 & basis 0.5 0.5 0.0 & basis 0.25 0.25 0.25 & basis 0.25 0.75 0.75 & basis 0.75 0.25 0.75 & basis 0.75 0.75 0.25 region myreg block 0 4 & 0 4 & 0 4 #create_box 1 myreg #create_atoms 1 region myreg #mass 1 28.06 #write_data initial.sivac read_data initial.sivac # make a vacancy group Si type 1 group del id 300 delete_atoms group del compress no group vacneigh id 174 175 301 304 306 331 337 # choose potential pair_style sw pair_coeff * * Si.sw Si # set up neb run variable u uloop 20 # initial minimization to relax vacancy displace_atoms all random 0.1 0.1 0.1 123456 minimize 1.0e-6 1.0e-4 1000 10000 reset_timestep 0 # only output atoms near vacancy #dump events vacneigh custom 1000 dump.neb.sivac.$u id type x y z fix 1 all neb 1.0 thermo 100 # run NEB for 2000 steps or to force tolerance timestep 0.01 min_style quickmin neb 0.0 0.01 100 100 10 final final.sivac