triqs.lattice.utils.k_space_path

triqs.lattice.utils.k_space_path(paths, num=101, bz=None)[source]

Generate an array of k-vectors along a path defined by a list of pairs of k-vectors

Parameters:
  • paths (list of pairs of three-vectors of floats) – List of pairs of k-vectors (in reciprocal units) to create a path in-between.

  • num (int, default=100) – Number of k-vectors along each segment the paths

  • bz (brillouin_zone, optional) – When a Brillouin Zone is passed, calculate distance in absolute units

Returns:

  • kvecs (numpy.array [shape=(len(paths)*num,3)]) – Two-dimensional numpy array containing the path vectors (in reciprocal units) as rows

  • dist (numpy.array [shape=(kvecs.shape[0])]) – One-dimensional numpy array containing, for each element in kvecs, the distance travelled along the path. Useful for plotting. If bz is provided, calculate the distance in absolute units. The distances for the relevant k-points in paths can be obtained with dist[num-1::num].