Electronic Transport (NEGF)

Transport with NEGF in a nutshell

The Non-Equilibrium Green’s Functions formalism (NEGF) is a theoretical framework for modeling electron transport through nano-scale devices. Electron transport is treated as a one-dimensional coherent scattering process in the “scattering region” for electrons coming in from the electrodes:

_images/NEGF_regions.png

Our goal is to compute the transmission function \(T(E)\), which describes the rate at which electrons of energy \(E\) are transferred from the left electrode to the right electrode by propagating through the scattering region. From the transmission function we can calculate the electric current for given Bias Voltage \(V\) applied between the electrodes:

\[I(V) = \frac{2e}{h} \int_{-\infty}^\infty T(E) \left( f(E - \mu_L) - f(E - \mu_R) \right) dE\]

where \(f(E)\) is the Fermi-Dirac distribution function for a given temperature, and \(\mu_L\) (\(\mu_R\)) is \(\epsilon_F + eV/2\) (\(\epsilon_F - eV/2\)), \(\epsilon_F\) being the Fermi energy of the electrodes.

The transmission function \(T(E)\) can be computed from the Green’s function of our system.

The Green’s function \(G(E)\) of the scattering region is obtained solving the following equation:

\[(E S - H) G(E) = I\]

where \(S\) is the overlap matrix, \(H\) is the Hamiltonian and \(I\) is the identity matrix. The Hamiltonian is composed as follows (L, C and R denote the left lead, the central region and the right lead respectively):

\[\begin{split}H = \left( \begin{array}{ccc} H_L + \Sigma_L & H_{LC} & 0 \\ H_{LC} & H_C & H_{RC} \\ 0 & H_{RC} & H_R + \Sigma_R \end{array} \right)\end{split}\]

The two self-energies \(\Sigma_L\) and \(\Sigma_R\) model the two semi-infinite electrodes.

The transmission function \(T(E)\) can be calculated from the Green’s function \(G(E)\) and the so-called coupling matrices \(\Gamma_L(E)\) and \(\Gamma_R(E)\) (which are related to \(\Sigma_L\) and \(\Sigma_R\)):

\[T(E) = Tr[G(E) \Gamma_R(E) G(E) \Gamma_L(E)]\]

See also

PhD Thesis of Mahdi Ghorbani-Asl (DFTB-NEGF developer)

Simulations work flow

The computation of the transmission function \(T(E)\) within the DFTB-NEGF formalisms requires three individual simulations.

Tip

Use ADFInput (GUI) to set up your DFTB-NEGF calculation (see the DFTB-NEGF GUI tutorial)

1): DFTB leads calculation

A 1D-periodic DFTB calculation of the leads (StoreMatrices: yes, KSpace sampling 13):

_images/NEGF_lead_calc.png

The Hamiltonian matrices \(H_L\) and \(H_{R}\) and the Fermi energy of the electrode \(\epsilon_F\) are computed in this calculation (\(H_L\), \(H_{R}\) and \(H_{LR}\) are also used to compute the surface Green’s functions \(g_L\) and \(g_R\) of the semi-infinite electrodes).

2): DFTB scattering-region calculation

A a 1D-periodic DFTB calculation of the scattering region (StoreMatrices: yes, gamma-only, i.e., no KSpace sampling):

_images/NEGF_scattering_region_calc.png

The Hamiltonian matrices \(H_{LC}\) and \(H_{RC}\) and \(H_{C}\) are computed in this calculation.

3): Conductance calculation
The Conductance program computes the NEGF transmission function \(T(E)\) using the Hamiltonians and Overlap matrices from the previous two DFTB calculations.

Conductance Input options

The Conductance program computes the transmission function using the NEGF approach. This is the input structure of the conductance program:

$ADFBIN/conductance <<EOF > conductance.out

  EnergyGrid Min=value Max=value Num=value

  Files
     Leads       /path/DFTB_lead_filename.rkf
     Scattering  /path/DFTB_scattering_filename.rkf
  End

  Technical
     Eta                   value
     OverwriteLeads        True|False
     SetOffDiagonalToZero  True|False
  End

  end input
EOF
EnergyGrid

Defines the energies for which the Transmission function \(T(E)\) is computed.

Min
Default: -5 eV. Minimum value for the energy grid.
Max
Default: 5 eV. Maximum value for the energy grid.
Num
Default: 200. Number of energy values in which the interval Min-Max is subdivided.
Files

DFTB results files (.rkf) containing the Hamiltonians and overlap matrices.

Leads
Path (either absolute or relative) of the results file (.rkf) of the DFTB leads calculation (first calculation).
Scattering
Path (either absolute or relative) of the results file (.rkf) of the DFTB scattering-region calculation (second calculation).
Technical
Eta
Default: 1.0E-5. To avoid poles of the Green’s function, a small imaginary number is added to the energy, \(E := E + i \eta\). If you have matrix inversion problems in Conductance, try changing this parameter (e.g., 1.0E-4 or 1.0E-6)
OverwriteLeads
Default: True. If True, the Hamiltonians \(H_L\) and \(H_R\) are taken from the DFTB-leads calculation. If False, they are taken from the DFTB scattering-region calculation.
SetOffDiagonalToZero
Default: True. If true, \(H_{LR}\) and \(S_{LR}\) are explicitly set to zero. If False, they are taken from the DFTB scattering-region calculation.

Miscellaneous remarks on DFTB-NEGF

  • You should make sure that your results are converged with respect to the number of lead repetitions; the results should not change significantly if you increase the number of lead repetitions.
  • It’s good practice to include at least one lead repetition in the central region.
  • The transmission function is computed at zero bias voltage. The zero-bias transmission function is then used for computing the electric current for non-zero bias voltage.