Orienting lattice to (111) plane

I have a silicon system which I am attempting to orient so that the (111) plane is perpendicular to any of the axes. This is so that I can place a layer of carbon parallel to that plane and study the interaction of the (111) plane with the graphene layer.

Any suggestions on how to do this would be appreciated. I am currently attempting to use this set of commands:

variable t equal sqrt(2)
variable u equal -sqrt(2)
lattice diamond 5.43071 orient x $t -1 1 orient y 0 $t $t orient z $u -1 1

However, I get a “Lattice orient vectors are not orthogonal”, even though they are. Searching the documentation and mailing lists seems to indicate that this is because these values must be integers, although I am not sure how to rotate the system how I want it without using irrational numbers.



Your orient commands are incorrect. Several important points to keep in mind.

1). If “the (111) plane is perpendicular to any of the axes”, then one of the axes MUST be [111], which is along the plane normal of (111),

2). The Miller indices must be integers,

3). The three principal axes must be orthogonal and right-handed, and

4). Please keep in mind that after orient commands “there is no guarantee that the lattice spacing is an integer multiple of the periodicity of the lattice in that direction.”

So I’d suggest you set any one of the axes to [111], then follow the right-hand rule to figure out the rest two, and pay extra attention to periodicity.