triqs.lattice.utils.k_space_path
- triqs.lattice.utils.k_space_path(segments, num=101, bz=None, relative_coordinates=True)[source]
Generate an array of k-vectors along a path defined by a list of pairs of k-vectors
- Parameters:
segments (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 of the overall path
bz (brillouin_zone, optional) – When a Brillouin Zone is passed, calculate distance in absolute units
relative_coordinates (bool, optional) – Return k-vectors in reciprocal units. (Default True)
- Returns:
kvecs (numpy.ndarray [shape=(len(segments)*num,3)]) – Two-dimensional numpy array containing the path vectors (in reciprocal units) as rows
dist (numpy.ndarray [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.
ticks (numpy.ndarray [shape=(len(segments)+1)]) – Array with tick points, i.e. distances at the interfaces between segment. Includes the initial and final distance.