2
$\begingroup$

I have a .car file that contains dimensions (periodic boundary conditions) for the unit-cell of a hexagonal crystal material I'm working with:

PBC 27.1979 27.1979 15.4999 90.0000 90.0000 120.0000 (P1)

That's the a, b, c lengths and $\alpha$, $\beta$, $\gamma$ angles.

I need to convert this information into basis vectors in cartesian space, e.g.

basis1 27.1979 ? 0.0 basis2 0.0 27.1979 0.0 basis3 0.0 0.0 15.4999

This may be better suited as a math question but it's computational-chemistry specific.

$\endgroup$

1 Answer 1

-1
$\begingroup$

I found the way to convert the hexagonal parameters:

I have a,b,c and $\alpha$, $\beta$, $\gamma$. The solution in basis vectors is:

basis1 = (a, 0, 0)
basis2 = (xy, yx, 0)
basis3 = (xz, yz, c)

where \begin{align} xy &= b\cdot\cos(\gamma)\\ yx &= b\cdot\sin(\gamma)\\ xz &= c\cdot\cos(\beta)\\ yz &= \frac{b\cdot c\cdot \cos(\alpha) - xy \cdot xz}{\sqrt{b^2 - xy^2}}\\ \end{align}

Thus my solution was:

basis1 = (27.1979,  0,       0     )
basis2 = (-13.5990, 23.5541, 0     )
basis3 = (0,        0,       15.499)
$\endgroup$
1
  • 1
    $\begingroup$ Since $\alpha=\beta=90^\circ$, you may simplify this a great deal. Your third vector is just $(0,0,c)$. $\endgroup$ Commented Jan 16, 2017 at 21:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.