Unable to eliminate spurious periodic boundary effects

Hi all,

I don’t know why, but I have been having trouble eliminating the inaccurate representation of high energy atoms at the boundaries in the Y and Z direction I obtain after orienting the crystal with the following script. I have tried using both lattice units and manually calculating and using box units ( lattice parameter times the square root of the sum of the squares of each component of x y and z). Here is the relevant section of script:

units metal
dimension 3
boundary p p p
atom_style atomic

############################Define simulation volume with crystallographic orientation of fcc metal
lattice fcc 4.05 orient x -1 1 0 orient y 1 1 1 orient z 1 1 -2
region whole block 0 57.2756 0 70.14806 0 49.6021672913594 units box
create_box 1 whole
create_atoms 1 region whole

pair_style eam/alloy
pair_coeff * * Al99.eam.alloy Al
neighbor 2.0 bin
neigh_modify every 10 delay 20 check yes
compute csym all centro/atom fcc
compute pe all pe/atom
shell mkdir Test
shell cd Test
dump 1 all cfg 500 dump_FR_*.cfg id type xs ys zs c_csym c_pe
dump_modify 1 element Al
run 2000

OR

region whole block 0 10 0 10 0 10
create_box 1 whole
create_atoms 1 region whole

Does anyone know how to avoid this effect?

Thanks!

Hi all,

[...]

############################Define simulation volume with crystallographic
orientation of fcc metal
lattice fcc 4.05 orient x -1 1 0 orient y 1 1 1 orient z 1 1 -2
region whole block 0 57.2756 0 70.14806 0 49.6021672913594 units box
create_box 1 whole
create_atoms 1 region whole

[...]

OR

region whole block 0 10 0 10 0 10
create_box 1 whole
create_atoms 1 region whole

Does anyone know how to avoid this effect?

yes. in fact, it has been discussed on this list many times. the
solution is simple: don't define your box so that its boundaries
coincide with the lattice point and make sure that your choose the box
dimension that correspond with the periodicity resulting from the
choice of miller indices.

i.e.

region whole block 0.1 10.1 0.1 10.1 0.1 9.1

should do the trick (the z-direction *has* to be divisible by 3. 2 or
5 doesn't do it.)

axel.

That worked brilliantly.

Cheers Axel!
Nathaniel

Hi Axel,

I apologize for the spam- I should have asked this before.

Why must the orientations be offset by 0.1? FOR example, If I use the following script, I still obtain some incorrect energy errors in the y and z directions:

$ region whole block 0.0 10.0 0.0 10.0 0.0 9.0

Is this so that the box boundaries don’t coincide with the lattice- if this is the case, why doesn’t the x axis have the same error (which does coincide with the lattice)?

Furthermore, if the axes must be a multiple of the Miller indices, why isn’t the y-axis [111] required to be a multiple of 3?

One thing that really annoys me are people, that don’t pay attention.
Your first question I already answered and that second question is based on a sloppy reading of what I wrote.

If I was your adviser, I would now grab my GFCB and use it on you.

Axel.

Hi Axel,

I apologize for the spam- I should have asked this before.

Why must the orientations be offset by 0.1? FOR example, If I use the following script, I still obtain some incorrect energy errors in the y and z directions:

$ region whole block 0.0 10.0 0.0 10.0 0.0 9.0

You seem to be one who does not read the doc pages, which is the most handy and useful reference a LAMMPS user can obtain. This is described in the region doc page.

Is this so that the box boundaries don’t coincide with the lattice- if this is the case, why doesn’t the x axis have the same error (which does coincide with the lattice)?

X does have the same problem (so does Y); hence shifted 0.1 in all 3 directions.

Furthermore, if the axes must be a multiple of the Miller indices, why isn’t the y-axis [111] required to be a multiple of 3?

This is not how crystallography and Miller index work! Please re-read your favorite text book on this subject, or talk with your advisor.

Also, this is described in the lattice doc page. Use some crystallographic knowledge, a pencil and a piece of paper, you will figure out why x and y can be any integers of the lattice spacing, while z has to be multiples of 3.

Ray