I know this is an old question, but I recently worked on this exact problem and I believe none of the answers given are correct. The issue with linuxick's solution is that only two of three possible angles are multiplied together to form the "solid angle". The corner-atoms have only $60^o$ angles, but all the face-atoms have two $120^o$ angles and one $60^o$ angle. There should therefore only be two different ratios, so the statement that the closest and furthest atoms contribute more seems invalid.
The following is (I believe) a more rigid answer.
The answer:
Start with the primitive vectors that define rhombohedral primitive cell of the FCC structure:
$$\vec a_1 = \frac{a}{2}(\hat x + \hat y),\hspace{.5cm}
\vec a_2 = \frac{a}{2}(\hat y + \hat z),\hspace{.5cm}
\vec a_3 = \frac{a}{2}(\hat x + \hat z).
$$
Here $\hat x,\hat y, \hat z$ denotes the traditional unit vectors in the cubic structure, and $a$ is the spacing between the atoms. (We can note that the angle between any two of these vectors is $60^o$).
To determine how much each corner of the rhombohedral contribute to the primitive cell, we can look at the three outgoing lines from a point, and calculate the (proper) solid angle that they span out. The formula for this is (found here):
$$ \Omega(\vec a, \vec b,\vec c) = 2\arctan \left(\frac{(\vec a\times\vec b)\cdot \vec c}{|\vec a||\vec b||\vec c| + |\vec a|(\vec b\cdot \vec c) + |\vec b|(\vec a\cdot \vec c) + |\vec c|(\vec a\cdot \vec b)}\right).
$$
If we take the ratio of this solid angle to the solid angle of a full sphere, $4\pi$, we get the fraction that one of the corners contribute to the primitive cell.
The vectors that go out from each corner of the primitive cell are (named with reference to the FCC structure in OP's figure):
- Lower left corner: $(\vec a_1, \vec a_2, \vec a_3)$
- Upper right corner: $(-\vec a_1, -\vec a_2, -\vec a_3)$
- Left face: $(\vec a_1, \vec a_2, -\vec a_3)$
- Right face: $(-\vec a_1, -\vec a_2, \vec a_3)$
- Front face: $(\vec a_1, -\vec a_2, \vec a_3)$
- Back face: $(-\vec a_1, \vec a_2, -\vec a_3)$
- Top face: $(\vec a_1, \vec a_2, -\vec a_3)$
- Bottom face: $(-\vec a_1, \vec a_2, \vec a_3)$
Before doing an insane amount of algebra, we can first note that the symmetry here makes it such that $\Omega$ will only give two different values, one for the corner-points and one for the face-points. Therefore we can get the total amount of atoms in the primitive cell by calculating
$$\text{# of atoms}=\frac{2\cdot \Omega(\vec a_1,\vec a_2,\vec a_3) + 6 \cdot \Omega(-\vec a_1,\vec a_2,\vec a_3)}{4\pi}$$
This is still more algebra than I want to do, so Sympy to the rescue:
from sympy.vector import CoordSysCartesian
from sympy import Symbol, pi, atan, latex
def solid_angle(a1, a2, a3):
"""Return the solid angle spanned by the three Vectors."""
a1m, a2m, a3m = list(map(lambda x:x.magnitude(), (a1,a2,a3)))
num = a3.dot(a1.cross(a2))
den = a1m*a2m*a3m + a1m*a2.dot(a3) + a2m*a1.dot(a3) + a3m*a1.dot(a2)
return 2*atan(abs(num/den))
N = CoordSysCartesian('N')
x, y, z = N # Our cartesian unit vectors.
a = Symbol('a', nonnegative=True)
a1, a2, a3 = a*(x+y)/2, a*(y+z)/2, a*(x+z)/2
omega = 2*solid_angle(a1, a2, a3) + 6*solid_angle(-a1,a2,a3)
print(latex(omega).replace('operatorname{atan}', 'arctan'))
The output from Sympy is
$$ \Omega_\text{tot} = 4 \arctan{\left (\frac{\sqrt{2}}{5} \right )} + 12 \arctan{\left (\sqrt{2} \right )}.$$
If we ask WolframAlpha (and give it a couple of seconds), we get that this exactly equal to $4\pi$, showing that there is one atom in total in a primitve cell, as expected.
So, the final answer to the question of how much each atom contributes is
$$\text{Each corner}=\arctan(\sqrt{2}/5)/2\pi\approx 0.0438699\\
\text{Each face}=\arctan(\sqrt{2})/2\pi\approx 0.15204336$$
Right, so it turns out this is quite simple. See the figure below.
(a) shows the 1st BZ resulting from the hexagonal and rectangular unit cells of the honeycomb lattice. Note that the hexagon has twice the area of the rectangle, so two bands from the rectangular BZ will be combined to form one band in the hexagonal BZ.
(b1,2) are a pair of bands calculated for the rectangular unit cell. (Calculate them any way you see fit. For this example, I used a finite difference method and zero potential.) It's easy to identify them as a pair because they have the same values around the edges of the rectangular BZ.
(c) cut the second band into four parts as indicated. In this case, it's pretty clear where to cut.
(d) stitch everything together as indicated. The first band from the rectangular BZ goes in the middle and the cut-up parts surround it.
Done!
Best Answer
The unit cell in articles is a primitive cell, and the two points are not two lattices - instead, they are two sublattices of a primitive cell, since they cannot get to each other from translation over a unit vector.