qimpy.lattice.WignerSeitz

class WignerSeitz(v_basis, tol=1e-06)

Bases: object

Wigner-Seitz cell / Brillouin zone of lattice in real / reciprocal space.

Parameters:
  • v_basis (Tensor)

  • tol (float)

__init__(v_basis, tol=1e-06)

Initialize Wigner-Seitz lattice.

Parameters:
  • v_basis (Tensor) – Basis vectors (i.e. lattice vectors in real-space or reciprocal space)

  • tol (float)

Return type:

None

Methods

__init__

Initialize Wigner-Seitz lattice.

get_plane_distance

Signed distance of r from each perpendicular bisector plane from 0->faces.

reduce_index

Find the point within the Wigner-Seitz cell equivalent to iv (mesh coordinates with sample count S).

reduce_vector

Find the point within the Wigner-Seitz cell equivalent to x (Cartesian coords).

write_x3d

Construct x3d file to visualize the constructed Wigner-Seitz cell

ws_boundary_distance

Distance to WS boundary for Cartesian coords in last axis of r.

ws_plane_count

Number of planes each point in r is on.

Attributes

v_basis

edges

vertices

faces

i_faces

tol

get_plane_distance(r)

Signed distance of r from each perpendicular bisector plane from 0->faces.

reduce_index(iv0, S, tol=1e-08)

Find the point within the Wigner-Seitz cell equivalent to iv (mesh coordinates with sample count S).

reduce_vector(r, tol=1e-08)

Find the point within the Wigner-Seitz cell equivalent to x (Cartesian coords).

write_x3d(filename)

Construct x3d file to visualize the constructed Wigner-Seitz cell

Parameters:

filename (str)

Return type:

None

ws_boundary_distance(r)

Distance to WS boundary for Cartesian coords in last axis of r. Result is negative for points inside and positive outside.

ws_plane_count(r)

Number of planes each point in r is on.