erlab.plotting.bz¶
Utilities for plotting Brillouin zones.
Functions
|
Calculate the edge of the first Brillouin zone (BZ) from lattice vectors. |
|
Plot a 2D hexagonal BZ overlay on the specified axes. |
- erlab.plotting.bz.get_bz_edge(basis, reciprocal=True, extend=None)[source]¶
Calculate the edge of the first Brillouin zone (BZ) from lattice vectors.
- Parameters:
basis (
ndarray[tuple[int,...],dtype[float64]]) –(N, N)numpy array whereN = 2``or ``3with each row containing the lattice vectors.reciprocal (
bool, default:True) – IfFalse, thebasisare given in real space lattice vectors.extend (
tuple[int,...] |None, default:None) – Tuple of positive integers specifying the number of times to extend the BZ in each direction. IfNone, only the first BZ is returned (equivalent to(1,) * N).
- Returns:
lines (
array-like) –(M, 2, N)array that specifies the endpoints of theMlines that make up the BZ edge, whereN = len(basis).vertices (
array-like) – Vertices of the BZ.
- Return type:
tuple[ndarray[tuple[int, …], dtype[float64]], ndarray[tuple[int, …], dtype[float64]]]