Dear All,

There was a problem when I calculated the intrinsic stacking fault (ISF) of Si. Two different potentials, namely, Tersoff (J. Tersoff, PRB, 37, 6991 (1988)) and SW (Stillinger and T. Weber, Phys. Rev. B, 31, 5262, (1985)), were used. Different simulation boxes were tested. The ISF was finally obtained as 0.112 eV/A2 for Tersoff and 0.096 eV/A2 for SW, both are much greater than that of DFT method with a result of 0.006 eV/A2 (Phys. Rev. B, 50, 5890, 1994 ). I tried to solve this problem, but I failed at last.

I set the orients x [112], y [-110], z [-1-11], the displacement of a half relative to another *b*p= a/6[112]= 5.4308 A. My code is as follows,

# ------------------------ INITIALIZATION ----------------------

units metal

dimension 3

boundary p p s

atom_style atomic

variable latparam1 equal 5.4308

variable xdim equal {latparam1}*sqrt(6)/2*30
variable ydim equal {latparam1}*sqrt(2)/2*30

# ----------------------- ATOM DEFINITION ----------------------

lattice diamond ${latparam1}

region 1 block 0 {xdim} 0 {ydim} 0 100

region 2 block 0 {xdim} 0 {ydim} 100 200

region whole block 0 {xdim} 0 {ydim} 0 100 units box

create_box 1 whole

lattice diamond ${latparam1} orient x 1 1 2 orient y -1 1 0 orient z -1 -1 1

create_atoms 1 region 1

lattice diamond ${latparam1} orient x 1 1 2 orient y -1 1 0 orient z -1 -1 1

create_atoms 1 region 2

# ----------------------- FORCE FIELDS -----------------------

pair_style tersoff

pair_coeff * * Si.tersoff Si

# ------------------------- SETTINGS --------------------------

group top region 1

group bot region 2

# ------------------------- Displacement -----------------------

displace_atoms bot move -2.2171 0.0 0.0 units box

compute peratom all pe/atom

compute eatoms all reduce sum c_peratom

# Dump to comp for Ovito post processing

dump 1 all custom 1 dump.comp.* id type xs ys zs c_peratom fx fy fz

thermo 1

thermo_style custom step pe c_eatoms

mass * 1.0

fix 1 all setforce 0 0 NULL

min_style cg

minimize 1e-10 1e-10 1 1

# SIMULATION DONE

# print ${x}

print “All done”

# ----------------------- END --------------------

Are there any mistakes in my code for the large discrepancy?

Thank

in advance.

Sincerely,

-Wilhelm