calculateLocalDensityOfStates — Calculates the density of states (DOS) for atoms located in the central region of a two-probe system.
The function calculateLocalDensityOfStates() calculates
and returns the spatially resolved density of states
where
is the energy,
is a point in the 2D
Brillouin zone perpendicular to the transport direction, and
is the spin.
is an
eigenstate
with eigenenergy
.
List of arguments
An object returned from a previously performed self-consistent calculation for a BulkConfiguration.
Default:
None
Energy
for which the local density of states is calculated;
e.g. 0.0*eV.
Default:
None
Quantum numbers (k,σ) for which the local density of states is to be calculated (see below).
Default:
None
The imaginary infinitesimal added to the energy of the retarded Green's function.
Default: 1.0e-5*eV
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.
from ATK.TwoProbe import * ... scf = executeSelfConsistentCalculation(...) ldos = calculateLocalDensityOfStates( scf, energy = 0.0*eV, quantum_number=[[0.,0.],Spin.Up] )
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 σ.