calculateSelfEnergy¶
- 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.
- Parameters:
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 * eVkpoint (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.Allcontribution (
Left|Right) – Which electrode (side) should be considered. Only theLeftcontribution is allowed for aSurfaceConfiguration. Default:Lefteta (PhysicalQuantity of type energy) – Complex energy for electrode transform matrices, imaginary part. Default:
1.0e-6 * Hartreeself_energy_calculator (
RecursionSelfEnergy|DirectSelfEnergy|KrylovSelfEnergy|SparseRecursionSelfEnergy) – The self energy evaluation strategy to use. Default: A defaultRecursionSelfEnergyinstance.
- Returns:
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)
Notes¶
Evaluate the Fourier transformed self energy of an electrode in a DeviceConfiguration.
The calculator assigned to the device must be density matrix-based for this function to perform successfully.
Consider Spin for details on how to handle the spin parameter.