How do I calculate the area the Wigner Seitz cells cover in a square?

4k Views Asked by At

It's my first time here, so I appologise in advance if I break any rules through this post.

So I have a Cartesian Lattice spanning across the Euclidean plane and a unit square. The lattice points inside the square are highlighted in green and their coordinates are known. Each of them has around it an area of control or a Wigner Seitz cell, that I know how to calculate. How do I calculate how much of the square is covered by the Wigner-Seitz cells?

enter image description here

1

There are 1 best solutions below

0
On BEST ANSWER

This is very similar to a problem in computer graphics where you only want to render the parts of triangles which are visible on the screen. Essentially, you want to perform clipping on any cell which is not either completely inside or completely outside of your 'viewport' (unit square). The basic idea is to find which edges of your polygon intersect edges of the viewport, and compute those intersection points to get a new polygon. Once you have the clipped polygons, computing their areas and summing them should be straightforward. (Hint: break each polygon into triangles - the area of a triangle is half the magnitude of the cross product of two of its sides)