Name

calculateLocalDensityOfStates Calculates the density of states (DOS) for atoms located in the central region of a two-probe system.

Synopsis

Namespace: ATK.TwoProbe
LocalDensityOfStates calculateLocalDensityOfStates(
self_consistent_calculation,
energy,
quantum_number,
green_function_infinitesimal
)

Description

The function calculateLocalDensityOfStates() calculates and returns the spatially resolved density of states

\displaystyle

	n(E,\mathbf{r},\mathbf{k}, \sigma) =
	\sum_{\alpha}|\psi_{\alpha,\mathbf{k},\sigma}(\mathbf{r})|^2
	\delta(E-\epsilon_{\alpha,\mathbf{k},\sigma})

where E is the energy, \mathbf{k} is a point in the 2D Brillouin zone perpendicular to the transport direction, and \sigma is the spin. \psi_{\alpha,\mathbf{k},\sigma}(\mathbf{r}) is an eigenstate \alpha> with eigenenergy \epsilon_{\alpha,\mathbf{k},\sigma}.

List of arguments

self_consistent_calculation

An object returned from a previously performed self-consistent calculation for a BulkConfiguration.

Default: None

energy

Energy E for which the local density of states is calculated; e.g. 0.0*eV.

Default: None

quantum_number

Quantum numbers (k,σ) for which the local density of states is to be calculated (see below).

Default: None

green_function_infinitesimal

The imaginary infinitesimal added to the energy of the retarded Green's function.

Default: 1.0e-5*eV

Returned object methods

The returned object has the following two query methods:

  • Array toArray(): Returns the real-space representation of the local density of states as a NumPy array.

  • PhysicalUnit toUnit(): Returns the unit of the local density of states.

Usage examples

from ATK.TwoProbe import *
...
scf = executeSelfConsistentCalculation(...)
ldos = calculateLocalDensityOfStates(
    scf,
    energy = 0.0*eV,
    quantum_number=[[0.,0.],Spin.Up]
    )

Notes

The energy is measured relative to the average Fermi level of the two electrodes.

The quantum numbers depend on whether the system is spin-polarized or not, and should be specified as

  • ([k_point], spin) for spin-polarized systems.

  • [k_point] for unpolarized systems.

where:

  • k_point is a dimensionless two-dimensional list of coordinates representing a k-point in the 2D Brillouin zone of the unit cell transverse to the transport direction. The coordinates must be given in units of the reciprocal lattice vectors.

  • spin is the spin σ.