POV-Ray : Newsgroups : povray.general : Brillouin zones - Voronoi type construct (math/programming) : Brillouin zones - Voronoi type construct (math/programming) Server Time
20 Nov 2024 06:28:11 EST (-0500)
  Brillouin zones - Voronoi type construct (math/programming)  
From: Simon de Vet
Date: 21 Oct 2001 17:27:06
Message: <Xns9141BC31BD307sdevetistarca@204.213.191.226>
I'm taking a solid state course, and have been learning about Brillouin 
zones. Brillouin zones are simple to construct, but a bit tricky to 
visualize. 

Imagine you have a repeating lattice of points. 

1) Choose one of the points, and measure the distance to all other points.
2) Take the closest points, and draw lines connecting them to the central 
point.
3) Bisect each line with a plane (ie: a plane located at the halfway point 
and with a normal parallel to the line)
4) The shape enclosed by the planes is the first brillouin zone.

The second brillouin zone is constructed by repeating the process using the 
second closest points, and subtracting the first zone. The third is 
constructed by using the third closest points and subtracting the first and 
second zones, and so forth.

These structures have interesting properties. Every zone has exactly the 
same volume as all the others. The bits of every zone can be moved by 
integer multiples of the lattice spacing to construct the next lowest zone.

Generally, one can imagine the first zone witohut trouble, but beyond the 
second the shapes get too complex to visualize without a computer.

This is what I want POV to do. I think I can construct the Nth zone without 
much difficulty if I know the locations of the Nth nearest points, but I 
don't know how hard this will be to do. Any ideas?

-- Simon

PS: I think I could do this using some simple C code that generates a data 
file, but I'd prefer to do it natively in POV.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.