principia_materia.plotting.kpath module
- class principia_materia.plotting.kpath.KPath(vertices, vertices_names, npoints=101, rvec=None)
Bases:
object
Generate K-points path for plotting band structure.
- Parameters:
vertices (array of Fraction or float, shape(N, dim) or shape(N-1, 2, dim)) – Vertices of K-path in either points or lines format.
vertices_names (array of str, shape(N, )) – The name of the vertices points.
npoints (int, optional, default to 100) – The number of K-points to generate between a poir of vertices points.
rvec (array of float, shape(dim, dim), optional, default to None) – Reciprocal basis vector used to renormalize K-points. If None, use identity matrix.
- property dim
Dimension of the K-points.
- get_gridpoints_on_path(supa, tol=1e-06)
Find the grid points of a given mesh/supa that are on the K-points path.
This search algorithm can search beyond first BZ, finding points that are on non-trivial K-paths that are not fully within the first BZ.
- Parameters:
supa (array of int, shape(dim, dim)) – Supercell matrix.
tol (float, optional, default to 1.0E-6) – Error tolerance.
- Returns:
kpoints (array of float, shape(N, dim)) – The K-points from supa that are on the path.
kpoints_distances (array of float, shape(N)) – The distances of the K-points from supa that are on the path used in plotting.
- property kpoints
All the K-points generated along the K-path.
- property kpoints_distances
The distances of the K-points used in plotting.
- property n_vertices
Number of vertices points.
- property npoints
Number of points to generate between the vertices.
- point_on_kpath(points, tol=1e-06)
Find the distances of the K-points if they are on the K-path.
- Parameters:
points (array of float, shape(dim, ) or (N, dim)) – The points to check.
tol (float, optional, default to 1.0E-6) – Error tolerance.
- Returns:
distances – The distances of each points on the kpath used in plotting.
- Return type:
nested list of float
- property rvec
Reciprocal basis vector to renormalize K-points.
- set_kpath()
Generate the K-points along the K-path and their distances for plotting.
- property vertices
The vertices of K-path in lines format.
- property vertices_distances
The distances of the vertices K-points used in plotting.
- property vertices_names
The names of the veritces.