[lammps-users] Issue on "lattice orient" command

Dear all

I want to simulate some behaviors on various surface orientations of Au.

I used “lattice orient” command and succeeded in calculation, however, I found that potential energy of each atom was not correct.

The input script is as follows:

units metal

boundary p p p

atom_style atomic

lattice fcc 4.08 orient x 1 -1 0 orient y 1 1 -2 orient z 1 1 1

region space block 0.0 10.0 0.0 10.0 0.0 10.0

create_box 1 space

create_atoms 1 region space

mass 1 196.97

pair_style eam

pair_coeff * * ./Au_u3.eam

compute Au_temp all temp

compute eng all pe/atom

fix 1 all nve

fix 2 all temp/rescale 100 300 300 5.0 0.9

thermo 100

thermo_style custom step atoms temp pe

thermo_modify norm yes

dump Posidump all custom 1000 300kAu_111_*.dat type x y z c_eng

timestep 0.001

run 10000

And the summarized dump file at the zero step is as follows:

ITEM: TIMESTEP

0

ITEM: NUMBER OF ATOMS

15839

ITEM: BOX BOUNDS

0 57.6999

0 66.6261

0 70.6677

ITEM: ATOMS

-> 1 5.76999 14.9909 0 -3.62013

-> 1 7.21249 12.4924 0 -3.92694

-> 1 4.32749 12.4924 0 -3.84706

-> 1 0 14.9909 0 -3.61885

-> 1 1.4425 12.4924 0 -3.74341

-> 1 4.32749 14.1581 2.35559 -3.83265

:

1 5.76999 14.9909 7.06677 -3.93

1 5.76999 11.6596 9.42236 -3.93

1 4.32749 9.16109 9.42236 -3.93

:

-> 1 2.885 0 0 -1.0259

-> 1 5.76999 0 0 -1.02579

:

In principle, all energies of Au should be 3.93 eV, but, some atoms show wrong value. (‘->’ line)

I guess that the problem is originated from a kind of round-off error.

How do you think about this issue?

Thanks in advance.

Sang-Pil

Do you have a periodic system? If not, energies
of atoms near the boundary will be messed up.
There's no guarantee that a 10x10x10 box will
give a periodic system for some arbitrary lattice orientiation.

Steve

Yes, as you see in the input script, periodic boundary conditions were
applied in all direction.
So far as I know, LAMMPS set the box size considering the lattice options.
This means that the box size in each direction will be determined by the
orientation vectors. The default value of orientation vector is 1 0 0 / 0 1
0 / 0 0 1. If we don't use "orient" option in the lattice command, the box
size will be set in proportion to the lattice parameter itself.
However, if we use "orient" option, the box size will be changed with
respect to the orientation vectors.
In my case the orientation vectors were set to 1 -1 0 / 1 1 -2 / 1 1 1.
Consequently, as you see in the dump file, box size in x-direction was set
not 40.8 (=4.08*10) but 57.6999 (=4.08*10*sqrt(1^2 + (-1)^2 + 0^2)).

Sang-Pil

Are you positive that 57.7 is a periodic repeat distance
for that direction in the lattice? If the atoms that have
a different energy are near the boundaries of the simulation
box, then I am guessing you do not have a periodic system.

Steve

I attach log and dump file for the (110) surface in Z-direction.
In this dump file, potential energies of the all atoms are -3.93 eV without
exception.
I'm confusing...

Sang-Pil

log.lammp_Au011 (5.84 KB)

300kAu_011_0.dat (230 KB)