RecursiveSI¶
-
class
sisl.physics.RecursiveSI(spgeom, infinite, eta=0.0001)[source]¶ Self-energy object using the Lopez-Sancho Lopez-Sancho algorithm
Methods
__init__(self, spgeom, infinite[, eta])Create a
SelfEnergyobject from any SparseGeometrygreen(self, E[, k, dtype, eps])Return a dense matrix with the bulk Green function at energy E and k-point k (default Gamma).
self_energy(self, E[, k, dtype, eps, bulk])Return a dense matrix with the self-energy at energy E and k-point k (default Gamma).
self_energy_lr(self, E[, k, dtype, eps, bulk])Return two dense matrices with the left/right self-energy at energy E and k-point k (default Gamma).
-
green(self, E, k=(0, 0, 0), dtype=None, eps=1e-14, **kwargs)[source]¶ Return a dense matrix with the bulk Green function at energy E and k-point k (default Gamma).
- Parameters
- Efloat/complex
energy at which the calculation will take place
- karray_like, optional
k-point at which the Green function should be evaluated. the k-point should be in units of the reciprocal lattice vectors.
- dtypenumpy.dtype
the resulting data type
- epsfloat, optional
convergence criteria for the recursion
- **kwargsdict, optional
arguments passed directly to the
self.parent.Pkmethod (notself.parent.Sk), for instancespin
- Returns
- self-energythe self-energy corresponding to the semi-infinite direction
-
self_energy(self, E, k=(0, 0, 0), dtype=None, eps=1e-14, bulk=False, **kwargs)[source]¶ Return a dense matrix with the self-energy at energy E and k-point k (default Gamma).
- Parameters
- Efloat/complex
energy at which the calculation will take place
- karray_like, optional
k-point at which the self-energy should be evaluated. the k-point should be in units of the reciprocal lattice vectors.
- dtypenumpy.dtype
the resulting data type
- epsfloat, optional
convergence criteria for the recursion
- bulkbool, optional
if true, \(E\cdot \mathbf S - \mathbf H -\boldsymbol\Sigma\) is returned, else \(\boldsymbol\Sigma\) is returned (default).
- **kwargsdict, optional
arguments passed directly to the
self.parent.Pkmethod (notself.parent.Sk), for instancespin
- Returns
- self-energythe self-energy corresponding to the semi-infinite direction
-
self_energy_lr(self, E, k=(0, 0, 0), dtype=None, eps=1e-14, bulk=False, **kwargs)[source]¶ Return two dense matrices with the left/right self-energy at energy E and k-point k (default Gamma).
Note calculating the LR self-energies simultaneously requires that their chemical potentials are the same. I.e. only when the reference energy is equivalent in the left/right schemes does this make sense.
- Parameters
- Efloat/complex
energy at which the calculation will take place, if complex, the hosting
etawon’t be used.- karray_like, optional
k-point at which the self-energy should be evaluated. the k-point should be in units of the reciprocal lattice vectors.
- dtypenumpy.dtype, optional
the resulting data type, default to
np.complex128- epsfloat, optional
convergence criteria for the recursion
- bulkbool, optional
if true, \(E\cdot \mathbf S - \mathbf H -\boldsymbol\Sigma\) is returned, else \(\boldsymbol\Sigma\) is returned (default).
- **kwargsdict, optional
arguments passed directly to the
self.parent.Pkmethod (notself.parent.Sk), for instancespin
- Returns
- leftthe left self-energy
- rightthe right self-energy
-