sisl.physics.WideBandSE
- class sisl.physics.WideBandSE
Bases:
SelfEnergySelf-energy object with a wide-band electronic structure
Such a self-energy only have imaginary components on the diagonal, with all of them being equal to the eta value.
- Parameters:
spgeom – for a SparseGeometry only the length will be queried.
eta – the imaginary part (\(\eta\)) of the self-energy
Methods
broadening_matrix(*args, **kwargs)Calculate the broadening matrix by first calculating the self-energy
green([E, k, dtype])Return a dense matrix with the self-energy
se2broadening(SE)Calculate the broadening matrix from the self-energy
self_energy([E, k, dtype])Return a dense matrix with the self-energy
- broadening_matrix(*args, **kwargs)
Calculate the broadening matrix by first calculating the self-energy
Any arguments that is passed to this method is directly passed to
self_energy.See
self_energyfor details.This corresponds to:
\[\boldsymbol\Gamma = i(\boldsymbol\Sigma - \boldsymbol \Sigma ^\dagger)\]Examples
Calculating both the self-energy and the broadening matrix.
>>> SE = SelfEnergy(...) >>> self_energy = SE.self_energy(0.1) >>> gamma = SE.broadening_matrix(0.1)
For a huge performance boost, please do:
>>> SE = SelfEnergy(...) >>> self_energy = SE.self_energy(0.1) >>> gamma = SE.se2broadening(self_energy)
Notes
When using both the self-energy and the broadening matrix please use
se2broadeningafter having calculated the self-energy, this will be much, MUCH faster!See also
se2broadeningconverting the self-energy to the broadening matrix
self_energythe used routine to calculate the self-energy before calculating the broadening matrix
- Return type:
- green(E=None, k=(0, 0, 0), dtype=np.complex128, **kwargs)
Return a dense matrix with the self-energy
Since \(\mathbf S\) is part of the equation, it depends on whether the passed sparse matrix has a non-orthogonal basis set.
- Parameters:
E (Optional[complex]) – locally override the eta value for the object, will only use the complex part of the passed energy
k (KPoint) – only used if the passed spgeom upon initialization is a sparse matrix. In which case it will use the overlap matrix to return something that is similar to the atomic structure. Otherwise, not used.
dtype (np.dtype) – the returned data-type.
- Return type:
np.ndarray
- static se2broadening(SE)
Calculate the broadening matrix from the self-energy
\[\boldsymbol\Gamma = i(\boldsymbol\Sigma - \boldsymbol \Sigma ^\dagger)\]- Parameters:
SE (
matrix) – self-energy matrix- Return type:
- self_energy(E=None, k=(0, 0, 0), dtype=np.complex128, **kwargs)[source]
Return a dense matrix with the self-energy
Since \(\mathbf S\) is part of the equation, it depends on whether the passed sparse matrix has a non-orthogonal basis set.
- Parameters:
E (Optional[complex]) – locally override the eta value for the object, will only use the complex part of the passed energy
k (KPoint) – only used if the passed spgeom upon initialization is a sparse matrix. In which case it will use the overlap matrix to return something that is similar to the atomic structure. Otherwise, not used.
dtype (np.dtype) – the returned data-type.
- Return type:
np.ndarray