calculateSelfEnergy(device_configuration, energy=PhysicalQuantity(0.0, eV), kpoint=None, spin=None, contribution=<class 'NL.ComputerScienceUtilities.NLFlag._NLFlag.Left'>, eta=PhysicalQuantity(1e-06, Hartree), self_energy_calculator=None)

Calculate the self energy as a numpy array.

  • device_configuration (DeviceConfiguration | SurfaceConfiguration) – The configuration to use for the calculation.
  • energy (PhysicalQuantity of type energy) – Absolute energy for self energy calculation.
    Default: 0.0 * eV
  • kpoint (tuple of floats) – The kpoint as three floats representing fractional reciprocal space coordinates.
    Default: The Gamma point (0.0, 0.0, 0.0)
  • spin (Spin.Up | Spin.Down | Spin.All) – The spin component for which to perform the calculation.
    Default: Spin.All
  • contribution (Left | Right) – Which electrode (side) should be considered. Only the Left contribution is allowed for a SurfaceConfiguration.
    Default: Left
  • eta (PhysicalQuantity of type energy) – Complex energy for electrode transform matrices, imaginary part.
    Default: 1.0e-6 * Hartree
  • self_energy_calculator (RecursionSelfEnergy | DirectSelfEnergy | KrylovSelfEnergy | SparseRecursionSelfEnergy) – The self energy evaluation strategy to use.
    Default: A default RecursionSelfEnergy instance.

The self energy as an array.

Return type:

PhysicalQuantity of type energy

Usage Examples

Evaluate the self energy of a DeviceConfiguration:

self_energy = calculateSelfEnergy(device_configuration)