OneShotSelfConsistentBornApproximation

class OneShotSelfConsistentBornApproximation(device_configuration=None, energies=None, kpoints=None, kpoints_weights=None, electron_phonon_self_energies=None, loa_order=None, calculate_local_density=None)

Class for performing one-shot self-consistent Born approximation. The currents are calculated using a Pade approximant, which is optimal for the given loa_order.

Parameters:
  • device_configuration (DeviceConfiguration) – The device configuration with attached calculator for which the one-shot SCBA currents should be calculated. The bias voltage used in the calculation will correspond to the one defined by electrode_voltages on the calculator.

  • energies – The energies used in the one-shot SCBA calculation.
    Default: numpy.linspace(-1, 1, 401) * eV

  • kpoints (MonkhorstPackGrid | KpointDensity | RegularKpointGrid | sequence of sequence (size 3) of float) – The k-points used in the one-shot SCBA calculation.
    Default: The sampling along A and B used for the self-consistent calculation.

  • kpoints_weights (sequence of float) – The weight of each k-point.
    Default: The weights corresponding to the MonkhorstPackGrid, or a list of [1.0, 1.0, …] if k-points are specified as floats.

  • electron_phonon_self_energies (list of instances of AcousticDeformationPotentialSelfEnergy | OpticalDeformationPotentialSelfEnergy) – A list of models used to determine the Electron-Phonon scattering self energy. If None is specified, no electron-phonon self energy is included.

  • loa_order (int) – The order of the generalized lowest-order approximation (LOA). Must be a non-negative integer.
    Default: 1

  • calculate_local_density (bool) – Whether to calculate local current density, besides the current.
    Default: False

ballisticCurrent(positive_current_convention=None, spin=None)
Parameters:
  • positive_current_convention (LeftToRight | RightToLeft) – The convention for the direction of the positive current.
    Default: RightToLeft

  • spin (Spin.Up | Spin.Down | Spin.Sum) – The spin flag.
    Default: Spin.Sum

Returns:

The non-interacting component of the current, i.e. the 0th order component.

Return type:

PhysicalQuantity of type current

calculateLocalDensity()
Returns:

Whether to calculate the local densities.

Return type:

bool

current(positive_current_convention=None, spin=None)
Parameters:
  • positive_current_convention (LeftToRight | RightToLeft) – The convention for the direction of the positive current.
    Default: RightToLeft

  • spin (Spin.Up | Spin.Down | Spin.Sum) – The spin flag.
    Default: Spin.Sum

Returns:

The calculated interacting current.

Return type:

PhysicalQuantity of type current

electronPhononSelfEnergies()
Returns:

The objects describing the electron-phonon self energy models.

Return type:

sequence of AcousticDeformationPotentialSelfEnergy | OpticalDeformationPotentialSelfEnergy

energies()
Returns:

The energy used in this SCBA calculation.

Return type:

PhysicalQuantity of type energy

energyZero()
Returns:

The energy zero used for the energy scale in energy dpeendent quantities.

Return type:

PhysicalQuantity of type energy.

kpoints()
Returns:

The k-point grid used in the one-shot SCBA calculation.

Return type:

MonkhorstPackGrid | RegularKpointGrid

kpointsWeights()
Returns:

The weights of the k-points.

Return type:

sequence of float

loaOrder()
Returns:

The order of the LOA.

Return type:

int

localCurrentDensityData(positive_current_convention=None)
Parameters:

positive_current_convention (LeftToRight | RightToLeft) – The convention for the direction of the positive current.
Default: RightToLeft

Returns:

A tuple with the z coordinates, energies, and the calculated local charge density. The local current density is a 2D array specifying the value for each z coordinate and energy.

Return type:

tuple of (

PhysicalQuantity of type length, PhysicalQuantity of type energy, PhysicalQuantity of type current / energy)

metatext()
Returns:

The metatext of the object or None if no metatext is present.

Return type:

str | None

nlprint(stream=None)

Print a string containing an ASCII table useful for plotting the AnalysisSpin object.

Parameters:

stream (python stream) – The stream the table should be written to.
Default: NLPrintLogger()

setMetatext(metatext)

Set a given metatext string on the object.

Parameters:

metatext (str | None) – The metatext string that should be set. A value of “None” can be given to remove the current metatext.

uniqueString()

Return a unique string representing the state of the object.