treams.misc.firstbrillouin2d

treams.misc.firstbrillouin2d(kpar, b, n=2)

Map wave vector to first Brillouin zone in 2D.

The reduction to the first Brillouin zone is first approximated roughly. From this approximated vector and its 8 neighbours, the shortest one is picked. As a sufficient approximation is not guaranteed (especially for extreme geometries), this process is iterated n times.

Parameters:
  • kpar (1d-array) – parallel wave vector

  • b (2d-array) – reciprocal lattice vectors

  • n (int) – number of iterations

Returns:

(1d-array)