BrillouinZone¶
-
class
sisl.physics.
BrillouinZone
(obj)[source]¶ A class to construct Brillouin zone related quantities
It takes any object as an argument and can then return the k-points in non-reduced units from reduced units.
The object associated with the BrillouinZone object has to implement at least two different properties:
The object may also be an array of floats in which case an internal SuperCell object will be created from the cell vectors (see SuperCell for details).
Attributes
cell
k
A list of all k-points (if available) rcell
weight
Weight of the k-points in the BrillouinZone
objectMethods
__init__
(obj)Initialize a BrillouinZone
object from a given SuperCellarray
([dtype])Return self with numpy.ndarray
returned quantitiesaverage
([dtype])Return self with yielded quantities mean
([dtype])Return self with yielded quantities tocartesian
(k)Transfer a k-point in reduced coordinates to the Cartesian coordinates toreduced
(k)Transfer a k-point in Cartesian coordinates to the reduced coordinates yields
([dtype])Return self with yielded quantities -
array
(dtype=<type 'numpy.float64'>)[source]¶ Return self with
numpy.ndarray
returned quantitiesThis forces the
__call__
routine to return a single array.Parameters: dtype : numpy.dtype, optional
the data-type to cast the values to
See also
Examples
>>> obj = BrillouinZone(...) >>> obj.array().eigh()
-
average
(dtype=<type 'numpy.float64'>)[source]¶ Return self with yielded quantities
This forces the
__call__
routine to return a an iterator which may yield the quantities calculated.Parameters: dtype : numpy.dtype, optional
the data-type to cast the values to
Examples
>>> obj = BrillouinZone(Hamiltonian) >>> obj.average().eigh()
>>> obj = BrillouinZone(Hamiltonian) >>> obj.average() >>> obj.eigh() >>> obj.eighs()
-
cell
¶
-
k
¶ A list of all k-points (if available)
-
mean
(dtype=<type 'numpy.float64'>)¶ Return self with yielded quantities
This forces the
__call__
routine to return a an iterator which may yield the quantities calculated.Parameters: dtype : numpy.dtype, optional
the data-type to cast the values to
Examples
>>> obj = BrillouinZone(Hamiltonian) >>> obj.average().eigh()
>>> obj = BrillouinZone(Hamiltonian) >>> obj.average() >>> obj.eigh() >>> obj.eighs()
-
rcell
¶
-
tocartesian
(k)[source]¶ Transfer a k-point in reduced coordinates to the Cartesian coordinates
Parameters: k : list of float
k-point in reduced coordinates
-
toreduced
(k)[source]¶ Transfer a k-point in Cartesian coordinates to the reduced coordinates
Parameters: k : list of float
k-point in Cartesian coordinates
-
weight
¶ Weight of the k-points in the
BrillouinZone
object
-
yields
(dtype=<type 'numpy.float64'>)[source]¶ Return self with yielded quantities
This forces the
__call__
routine to return a an iterator which may yield the quantities calculated.Parameters: dtype : numpy.dtype, optional
the data-type to cast the values to
See also
Examples
>>> obj = BrillouinZone(Hamiltonian) >>> obj.yields().eigh()
-